Sdo_geom.concave_hull returns 'wrong' polygon

The sdo_geom.sdo_concavehull function returns on some Multipoints a wrong Polygon.
Some points of the calculated Polygon seem to be nearly in the middle of the Multipoint Geometry.
It's hard to explain, so I made a screenshot from SQL Developer:
[http://666kb.com/i/bxk5jz56tk7tthmbm.gif]
The black dots is my Multipoint, the red line the result of sdo_geom.sdo_concavehull.
Is the problem known? Is there any other way to create a concavehull?
regards

Not sure if this is the same problem as bug 12847220.
If you'd like to, you can give us your data set, or contact oracle support.

Similar Messages

  • Sdo_geom.validate_geometry_with_context returns error for a valid polygon

    Hi people,
    I have found a strange case, where sdo_geom.validate_geometry_with_context returns an error:
    select sdo_geom.validate_geometry_with_context(SDO_GEOMETRY(2003, 8307, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 1), SDO_ORDINATE_ARRAY(0.0, 51.9273, 0.3556, 51.9273, 0.3910, 51.9274, 0.1964, 51.9274, 0.0, 51.9273)), 1) from dual;
    13349 [Element <1>] [Ring <1>][Edge <3>][Edge <1>]
    The tolerance for SRID 8307 is in meters, right? The shape is a parallelogram, although the lat dimension is about 0.0001 grad or ~11 meters. Any hints why there is an error?
    // using Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    Edited by: Slava2 on May 27, 2013 3:12 AM

    You defined a spheric polygon in WGS84, that has a self intersection near <0.22945371630245; 51.9274226210077> :
    WITH l1 AS
    (SELECT SDO_GEOMETRY(2002, 8307, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(0.0000,51.9273, 0.3556,51.9273)) geom
        FROM dual),
        l2 AS
    (SELECT SDO_GEOMETRY(2002, 8307, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(0.3910,51.9274, 0.1964,51.9274)) geom
    FROM dual)
    SELECT  sdo_geom.sdo_intersection(l1.geom, l2.geom,0.00001) FROM l1, l2;
    (2001; 8307; ; (1; 1; 1); (0.22945371630245; 51.9274226210077))
    1 row selected.

  • Report returns wrong data when run on server

    Hi,
    I'm runing CRS XI R2 on Windows Server 2003 SP2.  When I refresh a report in the Crystal Reports XI Designer, I'm getting correct data.  But when I schedule the report to run on the server it returns wrong data.  The data is different from what I see when I refresh it from the designer.  In the report I have running totals set up to count customers that meet a certain criteria.  The report is very large.  It take almost 2 hours to refresh.
    I was wondering what is causing the difference in running total data between refreshing it on the designer and running it on the server.  Is it returning wrong data b/c of it not reading all the records?  Should I be making any changes to the server settings?  I saw that under pageserver, there are options for  setting the 'Minutes Before an Idle Report Job is Closed' and 'Database Records To Read When Previewing Or Refreshing a Report".  Do either of those have anything to do with the report returning incorrect data when being scheduled to run on the server?
    Thanks,
    Kim

    Hi Xuandao,
    You would need to Use Cell Binding and Trigger concept to accomplish this.
    Its simple, however, you would have to work on a trial and error basis to understand this concept as implementing the same is subject to your dashboard and WEBI Design.
    Open you LiveOffice.
    Insert your WEBI, Now, go to Object Properties of your WEBI, select the second tab that says Prompt, Here, it lists the prompts that you have for your WEBI. This would also enlist your BEx variables as well. Select this BEx variable and click on the button that says Prompt at the bottom of this window. Here, select choose Excel Data Range and click on the cell select button on the right (small button that lets you choose what cell you want to bind this prompt to), Now select a free cell that would not be even populated later on when you run the dashboard say A1 (remember the value that you select). Click on OK and again OK. The WEBI Refreshes and you can see all the prompt values at the cell A1. These are all the possible values stored for your BEx prompt variables (these values are fetched from BW system dynamically).
    Now, save this LiveOffice, Go to you dashboard. Connect your dashboard to your Live office. Go to Data-> connections-> Now, select the WEBI and in the right hand pane  go to Usage tab, here, Click on Trigger cell button on the right hand side and select A1 in you LiveOffice.
    It should work fine.
    Let me know.
    Rgds,
    Sreekul Nair

  • Statvfs returns wrong values

    Hi,
    I am developing a program the will check for disk space (used,blocks, available ...) and i am using the statvfs.h file.
    When tested with small capacity disks (~5G) it works fine (compared to df -k).
    When tested with large capacity disks (~400G) it returns wrong values(compared to df -k).
    I am using f_bavail and i am casting from fsblkcnt_t to integer/long.
    Please help.
    Thanx R.

    Thanks for your answer.
    I have discovered that it (statvfs.h) doe's not work with vxfs, only with ufs.
    I am using Veritas Cluster Server.
    Any chance of an answer ??
    thanks,
    R.

  • JSObject returns wrong date. How can I extract correct date from digital signature?

    I'm trying to extract name and date from digital signatures by using JSObject in Excel VBA, but JSObject returns wrong date. Year, month, hour and minute are correct, but only day is incorrect.
    Here is my code. I'm using Acrobat 8.1.3.
    Please tell me what's wrong with this code and how I can extract correct date from digital signatures.
    Public Sub sbTest()
    Dim oApp As Acrobat.acroApp
    Dim oPDDoc As Acrobat.AcroPDDoc
    Dim jso As Object
    Dim f As Object
    Dim sig As Object
    Dim strFileName As String
    Set oApp = CreateObject("AcroExch.App")
    Set oPDDoc = CreateObject("AcroExch.PDDoc")
    strFileName = "C:\Test.pdf"
    If (oPDDoc.Open(strFileName)) Then
    Set jso = oPDDoc.GetJSObject
    Set f = jso.getField("Signature1.0")
    Set sig = f.signatureInfo()
    Debug.Print sig.Name
    Debug.Print sig.Date
    End If
    Call oPDDoc.Close
    Call oApp.Exit
    End Sub

    Hi
    You can use TDMS file format to save the data. I have attached a reference Vi.
    On button click you can log the data or remove the case structure and continuous log the complete acquisition data.
    Thanks and Regards
    Himanshu Goyal
    Thanks and Regards
    Himanshu Goyal | LabVIEW Engineer- Power System Automation
    Values that steer us ahead: Passion | Innovation | Ambition | Diligence | Teamwork
    It Only gets BETTER!!!
    Attachments:
    Data Save in File.vi ‏35 KB

  • SXPG_COMMAND_EXECUTE  return wrong parameter value

    Dear all.
    We have an Abap program that pulls an encrypted FTP file and saves it to our network.
    After that we activate an external command via transaction SM69 by calling FM SXPG_COMMAND_EXECUTE.
    This command is an execution of a batch file that executes a decryption method via PGP decryption software.
    The problem is that we get an output parameter of this FM (STATUS) as u201CEu201D (error) although the decryption is being executed successfully.
    We have the same process being activated same way successfully with another folders (rest is exactly the same).
    Why does SXPG_COMMAND_EXECUTE return wrong status value ?
    Regards,
    Rebeka

    SXPG_COMMAND_EXECUTE runs under certain operating system user account. Looks like that account does not have enough privileges to do what you want it to do. Look at the operating system for privileges (read,write,execute) of the user account SAPServiceuser or equivalent.
    /Simo

  • Please Help Urgent:Fast Search returning wrong result sets

    Hi All,
    We are facing below issue with fast search.
    Currently in My project  when  we are searching  for a phrase it is returning wrong result sets.
    For example if we search for “Endura”, It is returning documents related to
    Endura  as well as Centura.
    But the expected results are only Endura documents.
    When we look in to the documents we didn’t find the search term (“Endura” ) either inside document content or in its meta data.
    In order to resolve the issue we tried the below steps
    1-     
    We manually edited and saved the document, to ensure the appropriate Guid association to metadata.
    2-     
    Index reset
    3-     
    Full crawl
    But no luck  so far.
    Please help.Thanks in advance.
    Regards
    Subrat

    Subrat,
    This may be related to spellchecking or may be synonym. Spellcheck is based on indexed terms.
    The best test would be to run the queries from qrserver (13280) and then look at the spellcheck query transformations. If spellchecking is not doing it, then you must have a synonym setup .Check your keyword/synonyms from the SharePoint side. 

  • SQL query return wrong Windows version

    when excuting   'select @@VERSION' returns wrong Windows version. Why?

    when excuting   'select @@VERSION' returns wrong Windows version. Why?
    SELECT @@VERSION will return SQLServer version and not windows version
    Even in case of sql, if you're seeing a different version from what your management studio suggests, then it may be that you're SSMS (client tool) is of another later version whereas the server instance which you're actually connecting to may
    be of different (earlier) version.
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • Function sometimes return wrong data

    Hi all.
    I have a very strange problem with a function. Situation is this: I have an application that handles processes. Each process have a number of steps that is arranged in a matrix like layout. User clicks a step to start/execute it.
    Now in a list of current processes i want to have an indication of how "far" a process has reached so i created a function for that and included that in my processlist fetch.
    gchs_user_process_steps is the table where the user data for the process step is
    gchs_process_steps is the definition table of what steps a process has
    gchs_steps is the definition table of all steps
    The below function is supposed to return latest step user clicked in the display matrix. tier is used to store the column number and sortorder is the row number of any step user clicked.
    CREATE OR REPLACE FUNCTION FN_REACHEDSTEP(p_user_process_id NUMBER)
    RETURN VARCHAR IS
      ret VARCHAR(30);
      ret_id INTEGER;
      ret_num INTEGER;
    BEGIN
       ret := '';
       ret_id := 0;
       ret_num := 0;
       BEGIN
    SELECT substr(step_name,1,30),step_id,reached INTO ret,ret_id,ret_num
    FROM (
    SELECT a.*, rownum rnum
    FROM (
        SELECT s.name AS step_name, ps.id AS step_id, max((ps.tier*1000)+ps.sortorder) AS reached
        FROM gchs_user_process_steps ups, gchs_process_steps ps, gchs_steps s
        WHERE ups.gchs_process_step_id=ps.id AND
           ps.gchs_step_id=s.id AND
           ups.gchs_user_process_id=p_user_process_id
        GROUP BY s.name,ps.id
        ORDER BY 3 DESC) a
    WHERE rownum <= 1 )
    WHERE rnum >= 1;
       EXCEPTION
         WHEN OTHERS THEN
            ret:='';
       END;     
          RETURN ret;
      EXCEPTION
    WHEN OTHERS THEN
           ret := '';
       RETURN ret;
    END FN_REACHEDSTEP;
    Now the problem is that the function sometimes return wrong value. The name of the step that is returned is not the one i get if i run the SQL by itself.
    So doing a
    SELECT substr(step_name,1,30),step_id,reached INTO ret,ret_id,ret_num
    FROM (
    SELECT a.*, rownum rnum
    FROM (
        SELECT s.name AS step_name, ps.id AS step_id, max((ps.tier*1000)+ps.sortorder) AS reached
        FROM gchs_user_process_steps ups, gchs_process_steps ps, gchs_steps s
        WHERE ups.gchs_process_step_id=ps.id AND
           ps.gchs_step_id=s.id AND
           ups.gchs_user_process_id=21680
        GROUP BY s.name,ps.id
        ORDER BY 3 DESC) a
    WHERE rownum <= 1 )
    WHERE rnum >= 1;
    and a
    select fn_ReachedStep(21680) from dual;
    will sometimes return different values.
    So is the function fundamentally wrong or is there any cache or something that i've missed that could hold "old" function outputs or am i missing something else.
    Thankful for any clues.
    I'm using Oracle 10.2.0.1.0
    Best regards
    /Tomas
    Edit: Here's some data that the system uses.
    gchs_steps
    ID           NAME
    10000     Step 1
    10020     Step 2
    10021     Step 3
    10022     Step 4
    10023     Step 5
    10060     Step 6
    10140     Step 7
    gchs_process_steps
    ID          GCHS_STEP_ID      TIER     SORTORDER
    10000     10000               0          1
    10001     10020               1          1                                                                                                                   
    10002     10021               1          2                                                                                                                   
    10003     10022               2          1
    10020     10023               3          5
    10060     10060                3          4
    10080     10140               3          2
    10040     10040               3          3
    10100     10160               4          3
    10160     10220               4          2
    11640     11640               3          1
    11660     11660               0          6
    11661     11661               0          7
    11600     11600               0          4
    11620     11620               4          1
    gchs_user_process_steps
    ID          GCHS_USER_PROCESS_ID     GCHS_PROCESS_STEP_ID
    35541     21680                         10002
    38441     21680                         10020
    38440     21680                         10000
    52062     21680                         10060
    Relations beween table is
    gchs_user_process_steps.gchs_process_step_id=gchs_process_steps.id
    and
    gchs_process_steps.gchs_step_id=gchs_steps.id
    So doing the SQL alone will always return
    SUBSTR(..)     STEP_ID REACHED
    Step 5      10020 3005
    but executing the function sometimes returns
    FN_REACHEDSTEP(21680)
    Step 6
    Also removing the rownum limits return and doing a
    SELECT s.name AS step_name, ps.id AS step_id, max((ps.tier*1000)+ps.sortorder) AS reached
    FROM gchs_user_process_steps ups, gchs_process_steps ps, gchs_steps s
    WHERE ups.gchs_process_step_id=ps.id AND
    ps.gchs_step_id=s.id AND
    ups.gchs_user_process_id=21680
    GROUP BY s.name,ps.id,ps.tier, ps.sortorder
    ORDER BY 3 DESC
    give this result
    STEP_NAME     STEP_ID     REACHED
    Step 5          10020     3005
    Step 6          10060     3004
    Step 3          10002     1002
    Step 1          10000     1
    Edited by: user4935832 on 2008-sep-19 01:38

    ORDER BY 3 DESC) a
    WHERE rownum <= 1 )
    WHERE rnum >= 1;Just some thoughts.
    1. You could replace "ORDER BY 3" by "ORDER BY reached"
    2. the rownum <=1 and rnum>=1 will return only one row... I don't understand the second one.
    Lastly, the difference might come from a duplicate value return by your MAX() function.
    If there is two rows (or more) with same MAX, Oracle might return one row arbitrary.
    To get the same row, you have to use some aggregation function like MAX() KEEP (DENSE_RANK LAST...).
    Here a try for your query, obviously not tested :
    SELECT max(substr(step_name,1,30)) keep (dense_rank last order by reached) as step_name,
           max(step_id) keep (dense_rank last order by reached,step_name) as step_id,
           max(reached) as reached
    FROM   (SELECT s.name AS step_name,
                   ps.id AS step_id,
                   max((ps.tier*1000)+ps.sortorder) AS reached
            FROM   gchs_user_process_steps ups,
                   gchs_process_steps ps,
                   gchs_steps s
           WHERE   ups.gchs_process_step_id=ps.id
           AND     ps.gchs_step_id=s.id
           AND     ups.gchs_user_process_id=21680
           GROUP BY s.name,ps.id) a;Nicolas.

  • Why does the cell style index returning wrong CellFormat value when parsing excel cells using OpenXml SDK?

    Consider a General format cell having a value of 39.95. When I fetch the CellFormat of the cell it returns wrong cell format-
    CellFormat thisCellFormat = ((CellFormat)cellFmts.ChildElements[(int)thisCell.StyleIndex.Value]);
    int fmtId = Convert.ToInt32(thisCellFormat.FormatId.Value);
    The value of fmtId returned is 1, and in some cases 38, where it should be 2 or 39.
    This issue is only for General format cells, I am getting correct id for Number format cells.
    Below is the
    Standard ECMA-376 Office Open XML File Formats specified set of implied cell formats for reference-
    ID Format Code
    0 General
    1 0
    2 0.00
    3 #,##0
    4 #,##0.00
    9 0%
    10 0.00%
    11 0.00E+00
    12 # ?/?
    13 # ??/??
    14 mm-dd-yy
    15 d-mmm-yy
    16 d-mmm
    17 mmm-yy
    18 h:mm AM/PM
    19 h:mm:ss AM/PM
    20 h:mm
    21 h:mm:ss
    22 m/d/yy h:mm
    37 #,##0 ;(#,##0)
    38 #,##0 ;Red
    39 #,##0.00;(#,##0.00)
    40 #,##0.00;Red
    45 mm:ss
    46 [h]:mm:ss
    47 mmss.0
    48 ##0.0E+0
    49 @

    The purpose of this forum is to support the Open Specifications documentation. You can read about the Microsoft Open Specifications program here,
    http://www.microsoft.com/openspecifications/en/us/default.aspx
    The library of Open Specification documents is located here,
    http://msdn.microsoft.com/en-us/library/dd208104.aspx
    It doesn’t appear that you are implementing one of the protocols cited.  Your question may be more applicable to MSDN's Microsoft Office for Developers/Open XML Format SDK forum at
    https://social.msdn.microsoft.com/Forums/office/en-US/home?forum=oxmlsdk
    Bryan S. Burgin Senior Escalation Engineer Microsoft Protocol Open Specifications Team

  • On Firefox stage.stageWidth stage.stageHeight return wrong values

    Hello,
    I have a problem on firefox windows 8, stage.stageWidth and stage.stageHeight return wrong values,
    swfobject.embedSWF("mySwf.swf", "mySwf", "500", "500", "14.0.0","expressInstall.swf", flashvars, params, attributes);
    on ie, Chrome stage.stageWidth and stage.stageHeight return 500
    on iFirefox stage.stageWidth and stage.stageHeight return 750 and my animation is smaller (66%)
    Thanks

    In order to target iPhone 5 you need to use AIR 3.5 beta or AIR 3.4
    pointing to iOS 6 SDK. Be sure to include the [email protected] to
    trigger the iPhone 5 size. In other words, the app has to be built
    targeting the iOS 6 SDK and have the new default png to trigger the full
    size on the iPhone 5.
    AIR 3.5 beta includes the bits that to target iOS 6 SDK, but you can
    target iOS 6 with AIR 3.4 by using the external SDK path in the package
    ANE prompt in FB 4.6
    http://labs.adobe.com
    iBrent

  • Robot getpixelColor returns wrong color sometimes...

    Hey
    I ve got a problem. I read Pixels from a Game with the Robot getPixelColor method. Sometimes it returns right values, sometimes wrong! I check some pixels if they are white. The pixels dont move, so this same pixels are white everytime!.
    Now sometimes he returns wrong colors. Instead of 255,255,255 ...it returns 0,12,25 or something like that. (with the same x, y coordinate).
    My assumption is: My code is like following
    CheckPixel(MyRobot.getPixelColor(30,40);
    CheckPixel(MyRobot.getPixelColor(31,45);
    CheckPixel(MyRobot.getPixelColor(36,20);
    CheckPixel(MyRobot.getPixelColor(51,70);
    Now it has to return 255,255,255 but somtimes its not working, he return 0,0.12 .... 0,0,15..... 255,255,255 .. or something like that
    Could it be, that java does not refresh the robot object so fast when I call getPixelColor so fast in a row?
    Is there a command with which I force Java to wait until the pointer is on the right x,y coordinate? Except of Thread.Sleep();
    Thank you for your help..

    ok I try:
    Robot r = new Robot();
    int x, int y;
    x = getItSomehwere();
    y = getitsomehwere();
    for (int i= 0, i< 20; i++) {
    if (isThatPixelsWhite(x, y) != 0) {
      DoSomething;
    public int isThatPixelsWhite(int x, int y) {
    if  (
    r.getPixelColor(x+5,y+15).equals(Color.WHITE)  &&
    r.getPixelColor(x+7,y+19).equals(Color.WHITE) &&
    r.getPixelColor(x+9,y+11).equals(Color.WHITE) &&
    r.getPixelColor(x+21,y+5).equals(Color.WHITE) &&
    r.getPixelColor(x+13,y+2).equals(Color.WHITE) &&
    r.getPixelColor(x+23,y+7).equals(Color.WHITE) &&
    r.getPixelColor(x+9,y+9).equals(Color.WHITE) &&
    r.getPixelColor(x+10,y+21).equals(Color.WHITE) &&
    r.getPixelColor(x+11,y+22).equals(Color.WHITE)
    ) return 1;
    return 0;
    }Thats the relevant code.
    I guess the fast calling of getPixelColor in this if struct (in Method isthatPixelsWhite) overburd java ..

  • When orientation change and soft keyboard is activated, return wrong value

    Hello,
    in a View, when the orientation change and the soft keyboard is activated, this.navigator.height return wrong value.
    systemManager.stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, orientationChangeHandler);
    public function orientationChangeHandler(event:StageOrientationEvent):void {
    inp.text=String(this.navigator.height);
    thanks.

    Can you attach a simple sample application that demonstrates this?  What device are you seeing this issue on?

  • SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT returns ORA-13199 SRID does not exist

    Hi everyone,
    I'm facing with this error while I was trying to list wrong spatial data (11.0.2.0.3 RAC (AIX))
    Select   *
    From     table
    Where    SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT (GEOMETRY,0.001)! ='TRUE'
    It returns :
    ORA-13199: SRID does not exists
    ORA-06512: at "MDSYS.MD", line 1723
    ORA-06512: at "MDSYS.MDERR", line 17
    ORA-06512: at "MDSYS.SDO_CS", line 5328
    ORA-06512: at "MDSYS.SDO_GEOM", line 483
    ORA-06512: at "MDSYS.SDO_GEOM", line 560
    ORA-06512: at line 1
    Is there anyone who faced with this kind of issue or any idea ?
    Thanks in advance
    Regards

    There is no such SRID 2000303. However, this one sure looks like it does the same thing. Replace all the SRID values with 2320 and you should be set.
    SQL> select *
      2  from MDSYS.SDO_COORD_REF_SYSTEM
      3  where srid = 2320;
          SRID COORD_REF_SYS_NAME                                                              COORD_REF_SYS_KIND
    COORD_SYS_ID  DATUM_ID GEOG_CRS_DATUM_ID SOURCE_GEOG_SRID PROJECTION_CONV_ID CMPD_HORIZ_SRID CMPD_VERT_SRID
    INFORMATION_SOURCE
    DATA_SOURCE                              IS_LE LEGACY_CODE
    LEGACY_WKTEXT
    LEGACY_CS_BOUNDS(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)
    IS_VA SUPPO
          2320 ED50 / TM30                                                                      PROJECTED
            4530                        6230            4230              16370
    General Command of Mapping via EuroGeographics; http://crs.ifag.de/
    EPSG                                    FALSE
    TRUE  TRUE

  • GetCallerPrincipal() returns wrong object

    I have implemented my own realm and was successfull doing so. I also
    created my own User object and that is returned in the authentication
    method.
    My problem is that when I call getCallerPrincipal() from within an EJB
    the object returned has the correct login name but is an instance of
    weblogic.security.acl.User. Is this normal? I fille my own object with
    som extra info and was hoping that I could access them.
    Has anyone the same experience? Is this a bug or is my
    doing/understanding wrong?
    // Björn Caroll
    Itech AB
    http://www.itech.se/

    Did you happen to solve the issue? We are experiencing the exact same thing in our QA environment, although it doesn't appear to be the result of a heavy load. It happens from time to time when at most 3 users are unit testing the application. Problem is, nobody in development can replicate it.... Very frustrating to say the least. Anyhow, hopefully you figured it out, as I don't see any other posts on any other forums with a fix for this and I can't find a bug for OAS 10.1.3.1 for this either.

Maybe you are looking for