Join Line Segments (road segments) SDO_AGGR_UNION/SDO_AGGR_CONCAT_LINES

Hi,
I have road segments I need to join/merge in order to get the complete road axe. Unfortunately I have some segements which are not joined and the resulting road axe has a gap.
When I look at the road segements and the join result it seems to me that aggregation does not work for roads which either have segements which are disjoint (we have a few roads where single segments do not touch) or if a road has two or more "branches" (just take the letter "Y" as example for it).
(1) SDO_AGGR_CONCAT_LINES
Didn't work at all - I could not create a view using SDO_AGGR_CONCAT_LINES. As the documention mentions - not suitable if you have arcs (we have).
(2) SDO_AGGR_UNION
I tried SDO_AGGR_UNION as well although the documentation mentions - "Do not use SDO_AGGR_UNION to merge line string or multiline string geometries; instead, use the SDO_AGGR_CONCAT_LINES spatial aggregate function."
(3) SDO_AGGR_SET_UNION
I tried SDO_AGGR_SET_UNION as well. It sounded promising as the documentation doesn't mention anything related to arcs but says: "Can aggregate sets of lines..."
2 and 3 give the same result. Please have a look at the screenshot (mh, looks like I can't upload a picture...)
I would like to aggregate the segements - is there another function in Oracle I could use?
Any idea, whether SDO_AGGR_UNION / SDO_AGGR_SET_UNION are / are not suitable for my dataset?
Many thanks, Rob
My view definitions:
CREATE OR REPLACE FORCE VIEW AV_V_STRASSEN_2
AS
  SELECT l.fid,
    ln.location_name,
    SDO_AGGR_UNION(sdo.SDOAGGRTYPE(rs.geom, 0.005)) geom
  FROM lm_lo_location l,
    lm_lo_location_name ln,
    lm_lo_road_section rs
  WHERE l.fid = ln.fid_lo_location
  AND l.fid   = rs.fid_lo_location
  GROUP BY l.fid,
    ln.location_name;
    CREATE OR REPLACE FORCE VIEW AV_V_STRASSEN_3
AS
    SELECT l.fid,
    ln.location_name,
    sdo_aggr_set_union (get_geom_set ('lm_lo_road_section', 'geom','fid_lo_location = ', l.fid), .0005 ) geom
  FROM lm_lo_location l,
    lm_lo_location_name ln,
    lm_lo_road_section rs
  WHERE l.fid = ln.fid_lo_location
  AND l.fid   = rs.fid_lo_location
  GROUP BY l.fid,
    ln.location_name;

R o b wrote:
after some further tests I found out that the cause of the issue seems to be the application I used for viewing my road network.
I displayed the view in SQLDeveloper and with FME and both look fine - result is expected (for view 2 and 3). But initially I used a different package for checking the view visually.
Yes, that can happen sometimes. Currently I've been working with one of the biggest GIS-applications out there, and I have noticed that especially when zooming in or out rapidly gaps appear between lines (when I know for certain that there are no gaps - because I checked). It's weird that, but it can trick you into believing things are not right.
R o b wrote:
Stefan - thanks for yopur reply:
- I need the roads not road segements when displaying the data in our GIS system, most users want a road not single segements
- performance : will see, if it's not good I will create a mat. view, road network is quite static and doesn't change often
- gaps : there are no gaps in our data set (but "gaps" appeared when I displayed the view in one specific software package).
- sdo_aggr_union / sdo_aggr_set_union seem to do what I want and seem to work with our data as well
Roads do make more sense to users - that is true. If you also need segments, maybe the LRS stuff can help you there: create the necessary segments on the fly when needed? On the other hand you are right, road networks tend to stay the same for a long time, and if the do change you usually have plenty of notification so an MV might be best (also depends on the number of users and the type of users I suppose).
Glad it's working for you now!
Cheers,
Stefan

Similar Messages

  • /rootconfig: line 815: 26425 Segmentation fault $CH/bin/ocrconfig -upgrade

    Hi All,
    Not able to install Oracle Cluster. root.sh is going in error. please help me out.
    OS = RHEL 5.5
    DB= 10.2.0.1
    root@auh-clusternode1 crs]# ./root.sh
    WARNING: directory '/home/orarac/oracle' is not owned by root
    WARNING: directory '/home/orarac' is not owned by root
    Checking to see if Oracle CRS stack is already configured
    Setting the permissions on OCR backup directory
    Setting up NS directories
    /home/orarac/oracle/crs/install/rootconfig: line 815: 23174 Segmentation fault $CH/bin/ocrconfig -upgrade $CRS_ORACLE_OWNER $CRS_DBA_GROUP
    Failed to upgrade Oracle Cluster Registry configuration
    [root@auh-clusternode1 crs]#
    Thanks
    Maulik Jani

    Hi,
    Did you find the answer for this error? I'm getting exactly the same issue.
    But, only difference is I'm installing 11.1.0.6 RAC on RHEL 5.3 (64 bit). I'm using VMWare 2-node virtual machines and NFS.

  • IF Statement in Join Line

    Is it possible to use a IF statement (i.e. CASE, DECODE) in the Join Line?
    I need create a query that depending on the value of a column it will determine if I use a column A or column B in my join statement. I was thinking something like the following:
    Select a.Value1, a.Value2, b.ColumnA, b.ColumnB
    FROM Table1 a
    INNER JOIN Table2 b ON a.Value2 = (if b.ColumnZ='Dept' then b.ColumnA else b.ColumnB END)
    Oracle Version 10g
    OS Windows XP
    Thanks in advance!

    Hi,
    Remember what a CASE expression does: it returns a single value in one of the SQL data types (such as VARCHAR2, NUMBER or DATE).
    Each THEN (or ELSE) clause of a CASE expression references something that the CASE expression might return, so after each THEN (or ELSE) keyword there must be a single value in one of the SQL data types.
    So you can't say:
    case tdsi.level_code
         when  'L'  then  tdsid.privilege_code = tdlm.location_code
         when  'R'  then  tdsid.privilege_code = tdlm.region_code
         when  'C'  then  tdsid.privilege_code = tdlm.country_code
    endWhat is the data type being returned? "tdsid.privilege_code = tdlm.location_code" is not a single value in any of the SQL data types.
    If location_code, region_code, country_code and privilege_code all have the same data type, then you can do something like this:
    join      dirpipe.dirpipe_location_map      tdlm      on      case tdsi.level_code
                                            when 'L' then tdlm.location_code
                                            when 'R' then tdlm.region_code
                                            when 'C' then tdlm.country_code
                                       end     = tdsid.privilege_code

  • Illustrator CS3 crashes if join lines on different layers

    Sent in a crash report earlier, but didn't realize the source of the error at the time -- which was that the two lines I was attempting to join were located in separate sublayers. Illustrator did not give me an error message when I attempted to join the lines, instead the lines I had joined simply vanished. If I then hit command Z to undo, the file would crash. This behavior was repeatable multiple times.
    I realize this is a bug in an older version of the software, but having this info in the forums may be of use for people still running CS3, and, if this bug has not yet been corrected in more recent versions of the software, then I hope the tech folks will take notice.

    Peter, Steve -
      That's interesting - and I was sure I'd isolated the source of the problem. I'm working in the mac OS (snow leopard) and CS3 suite is the Design Premium version. I had 3 sublayers in my layer, and each of those sublayers had about 20 paths in them. The behavior occurred repeatedly when I tried to join 2 lines that were in different sublayers (one of the endpoints was created by clipping a section out of an oval on one of the sublayers). I thought it was not a random behavior, b/c I reproduced it 4 or 5 times in a row, with 2 different pairs of lines. Yet I was able to join lines on any sublayer with no problem, and when I pulled all the lines out of the sublayers, I was able to join the two sets of lines that had previously been causing the crash without any difficulty. So I'm not sure why your tests did not reproduce the problem -- or why I had the problem in the first place.
    Thanks,
    Suzi

  • Undo segment & Rollback segment

    Hi,
    What is the difference between Undo segment & Rollback segment?Is it a standard practice of creating roll back segments for each tablespace?
    Regards,
    Cherry

    What is the difference between Undo segment & Rollback segment?
    Undo Mode
    Undo mode provides a more flexible way to migrate from manual undo management to automatic undo management. A database system can run in either manual undo management mode or automatic undo management mode. In manual undo management mode, undo space is managed through rollback segments. In automatic undo management mode, undo space is managed in undo tablespaces. To use automatic undo management mode, the database administrator needs only to create an undo tablespace for each instance and set the UNDO_MANAGEMENT initialization parameter to AUTO. You are strongly encouraged to run in automatic undo management mode.
    Is it a standard practice of creating roll back segments for each tablespace?See above and http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14220/logical.htm#sthref449

  • Joining Line Segments

    The line looks like it's connected, but it's not. When I apply the brush effect it becomes disjointed. I want it to be one smooth stroke. Is there any way to join the line segments without having to redraw the stroke? I ask this because the line was imported into Illustrator from Flash, there are many more and I don't want to have to redraw them all. Thanks in advance for any help.

    Bob,
    Hopefully, you can:
    1. Deselect the path and then drag across each set of Anchor Points where the brushes go thin;
    2. Object>Path>Join.
    If you select the lot before 1+2, and look in the Layers palette, or open Window>Document Info, and select Objects in the flyout menu, you should be able to see that there are multiple paths; the latter shows the number of points in each selected object.
    If 1 + 2 do (or should it be does) not work, there are probably multiple Anchor Points at the end(s) of either/both of the paths to be joined; the surplus should be deleted.
    Or the paths may be grouped, and should be ungrouped first; that may also be seen in the Layers palette/Document info.

  • Joining Line Segments in CS6

    I am drawing a simple diamond shape made with one rectanlge shape and multiple line segments.  As I drew the design, I made sure to connect all the segments at the anchors.  When I select all of the segments and try to join the paths, the end points or corners are not smooth.  In other words, some of the line segment ends hang over the edges...  What am I doing wrong?  Thanks!
    The image below shows the left side of the diamond, where the top portion meets the bottom...

    Thank you, DayForce.  Changing the corner type to "round join" did the trick!  May I ask another question?  When I select all the segments and join the paths, I get an additional line segment from one point to another.  How can I elminiate this?

  • AutoCAD drawings INTO Illustrator / How can I join line segments?

    Good day;
    ~ using Illustrator 5
    ~ importing technical drawings from CAD (think, complex mining shafts / exploded drawings and the like...)
    ~ want to manipulate imagery in Illustrator
    ~ all drawings are importing as individual lines / shape....a simple rectangle is four separate lines
    ~ is there an efficient way to "OPEN' or to "IMPORT" these complex drawings and have the CAD lines unite as closed shapes?!
    ~ isolating each shape / selecting nodes / 'joining' / is just NOT the best way to kill my day
    ~ willing to download solid recommended plug-ins
    S.O.S.!!
    Thank you in advance,
    Laura

    Laura,
    Here is a thread for FrameMaker users that has some data you might find useful in doing what you want: http://forums.adobe.com/thread/316489
    I have to handle this headache on occasion with MicroStation DGN files and I don't know of any plug-ins that will do this for either DWG or DGN. I try to get an EPS export from the CAD program first, if that export option is available, and bring it into Adobe Illustrator. This should be a standard for any CAD software. The next thing I try is PDF export and bring that into AI. If that doesn't work...
    Your next problem is that version 5 of Illustrator is 17 years old! I'm sorry to inform you but that could be the problem you face, your software and computer are too old and that version of Illustrator isn't sophisticated enough to handle what you want to handle. You may have no option but to get a newer Mac or Windows computer and get a newer version of AI, at least!
    I run Windows XP on a Dell Dimension 5150 and AI CS4 at work and I can barely get by at home with a 4 year old Mac Mini running Mac OS X 10.5 and AI CS2. That should give you a baseline to work from.
    I hope this last hasn't upset you too much.

  • Cutting a line geometry into segments on intersections.

    Hi guys, I am trying to cut all my road center lines into segments on every intersection. I have tried to use the SDO_LRS.SPLIT_GEOM_SEGMENT function but it only cuts the line on a certain distance and not at a certain point on the line...
    Any help on the matter will be appreciated.
    Thanks in advance

    Hi
    You will have to do the following:
    SDO_LRS.GET_MEASURE( SDO_LRS.PROJECT_PT(....
    see the example in the user manaual: http://download.oracle.com/docs/html/B14255_01/sdo_lrs_ref.htm#sthref1933
    This will get you the measure of the project point (even it is on the line) on the line and pass that into to split procedure.
    Luc

  • New line for each segment for Inhouse files using bic mapping..!!

    Hi ,
    Idoc to File scenario.
    In the receiver adapter, we need to convert the XML into file(Inhouse format) by using seeburger mapping.
    We have generated the map for this in bic and used in Module configuration of receiver adapter.
    Now the question is I need to get each segment of XML file into a separate line in the output file like below.
    HDR ... ......
    DTL .........
    DTL ........
    where HDR is the header and DTL is the details segments.
    Iam getting the output in a single line like HDR.........DTL.........DTL.........
    but not as expected like above  .
    I tried by using newLine = true in module configuration, but no use.
    I digged into bic designer to search for any option , but no use.
    Kindly suggest me if any one has any idea on this.
    Thanks&Regards'
    Deepthi.

    Hi Deepthi,
        Did you find the solution, please let me now if you get.
    did you mention the below code to solve the issue.
    copy the below section in the NewMapping Program:
       SetDestinationDelimiter("SubElement", ">");
       SetDestinationDelimiter("Element", "~");
       SetDestinationDelimiter("Segment", "\n");
    Regards,
    Varun Reddy.K

  • Sales Order Line Item - Profit Segment

    Hi - Could you please tell me how I can see in config that determinines values in Profit Segment?
    I want to see how Billing Type field is being controlled.
    Above field is at line it
    Thanks
    Ramesh

    Ramesh,
    Check these links
    [Regarding :Product Name and Region in Profit Segment in VA01]
    [http://help.sap.com/bp_dm603/BBLibrary/Documentation/245_BB_ConfigGuide_EN_CN.doc]
    I want to see how Billing Type field is being controlled. Above field is at line it
    The Profit center that gets affected during Billing its details can be obtained in  VBRP  item details table.
    Regards
    Sathya

  • Unable to see line items in segment clearing account

    Friends,
    Why we are unable to see the line items in intersegment clearing account/zero balance clearing account, eventhough the master is maintained as open item  and line item display.

    Hi,
    I have received the following error message.
    Account 1999990, company code xxxx is clearing account
    Message no. MSITEM111
    Diagnosis
    You have stored account 1999990 in company code xxxx as a clearing account. At the same time, you use line item management with this account.
    System Response
    Error message issued because line item display cannot read data for an account in a ledger if line items exist partially in the entry view together with clearing items for which there are no line items. In such cases, only the data with line items would be selected.
    Procedure
    Check the Customizing settings or account control. Change the settings so that only automatic postings without line items can be made to the account, or select a different account as the clearing account.

  • Value for IDoc Segment field SEGMENT

    Hello,
    In the Integration Repository, while creating Message Mapping between a flat file (inbound) & an IDoc (outbound), I'm getting an error that not all target fields are mapped. In the target structure (IDoc), each segment has a field named <b>SEGMENT</b>. Can someone please tell me what value should go here. These are not part of the IDoc but seem to be a requirement in XI message mapping.
    There is also a segment called <b>BEGIN</b> (<u>Type</u> - xsd:string) which is defined as required. Please write as to what should be populated in this segment.
    Any help is greatly appreciated.
    Thanx in advance.
    Homiar.

    My current scenario is
    File Adapter -
    > XI -
    > SAP R/3 (Idoc Adapter).
    I will be using FIDCPP2 IDOC.  
    1. For an instance following is the structure, in this case how can I achieve getting a set of data in one IDOC and another set in other IDOC based on document no.
    CC        Doc No.        line items        
    UK01         456                 1
    UK01         456                 2  -
    > IDOC 1
    UK03         456                 3
    UK04         450                 1
    UK04         450                 2 -
    > IDOC 2
    UK04         450                 3
    i). Is there any way to create instances of idocs in XI or any alternative way out.
    ii). Where/ how can I give the condition, that based on Document No. should create another IDOC instance.

  • How to join lines

    I've just started using illustrator to design a few templates. I'm struggling with the lines, typically where I've deleted a portion of line I find that the two adjacent lines don't fully connect. how do I rectify it? see picture.

    mdk,
    The end points seem to at least almost coincide. If not, averaging may change the adjacent segments visibly.
    Normally, you may find and correct a lack of coinciding by using the Direct Selection Tool together with the Smart Guides (with the right settings). You may:
    1) Click each of the path segments adjacent to the end point and then follow the path with the mouse hovering all the way;
    If the end Anchor Points coincide, Smart Guides will say path until you reach the end, then anchor, for the topmost path, and they will end saying intersect for the bottommost path.
    If they say anchor for both (maybe after saying intersect first for the bottommost path) you have a mismatch;
    If you have a mismatch, you may:
    2) ShiftClickDrag the end Anchor Point(s) in question to coincide with the other path/Anchor Point.

  • Joining line paths in CS5

    Hi,
    I am working on a line art project and trying to figure out how to join an endpoint on one path to another path. Here is pic of what I am trying to do:
    http://imageshack.us/photo/my-images/862/screenshot20111215at150.png/
    Is there a way to join a line to the middle of another line and keep the line styles? Right now some of my paths end abruptly in a square end, but how do I joint them together? I tried using the "join" command, but that requires 2 endpoints.

    Spinky,
    It seems that in this case you may give the chin/cheek paths white fills and extend the troublesome paths, keeping them underneath the others; if that is not too cheeky.

Maybe you are looking for

  • Magsafe adapter issue

    I purchased a non apple 60 watt magsafe adapter after my 2 year old macbook pro was having issues, I replaced the battery with a apple battery and the non charging issue continued, I would have to wiggle or place a phone on adapter where it magnetica

  • How to stop doing LIV for the goods which are rejected during quality check

    Hi, My client requirement is 1. System should not allow doing LIV for complete quantity entered during GR, but it should be as per accepted quantity after quality inspection has been done. For. ex. Vendor sends 100 quantity of item X. GR will be done

  • Portal logoff:  Need to redirect KM html page

    Hi all, Currently When I click logoff button its rediredt to log in page. But I need to put one KM html page with some message and if user want to re-login i will give one CLICK here for relogin. Im trying to do this through PAR file.  Please some on

  • Login attempts with wrong /expired password..Security

    Hi, I need to know dictionary view , which tells which user is trying to login with wrong password. Actually login history for oracle user account. please tell procedure or configurations for this. Thanks in advance. Aj

  • Trouble installing itunes 7

    yes i tried installing itunes 7 because the other version isnt working. about 3 minutes into the new download this pops up: PC Windows 2000 BEFORE, this popped up when opened the other version how can i sucessfully install itunes and open it? PC   Wi