Skip to main content

So I just figured out how to get a buffer to work on my centerline file to create the proper width of each road. Thanks to eric_jan for helping. I am now trying to make sure when different roads meet at intersections the roads layer is trimmed so none of the roads are in the intersection. For my project this will give a cleaner result. I was wondering if this is possible and how to go about doing this. I took my buffered centrline file and joined them based on road name Now I want to look where different roads intersect and split them their so nothing is in the intersection. Is this even possible?

Hi,

Seems to be this question is continuation of some other thread, can you explain in-detail or provide the link of other thread.

Pratap


You can use the AreaonAreaOverlayer on the buffered centerlines.

Ad a list to the transformer parameters.

Then use the ListDuplicateRemover to remove intersections with the same name.

If the list has multiple entries (ListElementCounter and Tester) your intersection has multiple names.


Hi,

Seems to be this question is continuation of some other thread, can you explain in-detail or provide the link of other thread.

Pratap

Sorry I should of made it more clear. on a roads network when two or more roads intersect at a intersection I want them not to touch. I want that intersection to

A. Break the buffered center-line lines that go through them if they do.

B: snip off the ends at that vertex to make sure that no line segments are in the intersection.

Is something like this even possible.

examples:

not-what-i-want.jpg

what-i-want.jpg (sorry for crude drawing in paint)


Sorry I should of made it more clear. on a roads network when two or more roads intersect at a intersection I want them not to touch. I want that intersection to

A. Break the buffered center-line lines that go through them if they do.

B: snip off the ends at that vertex to make sure that no line segments are in the intersection.

Is something like this even possible.

examples:

not-what-i-want.jpg

what-i-want.jpg (sorry for crude drawing in paint)

I think my answer below should give you the wanted result.


You can use the AreaonAreaOverlayer on the buffered centerlines.

Ad a list to the transformer parameters.

Then use the ListDuplicateRemover to remove intersections with the same name.

If the list has multiple entries (ListElementCounter and Tester) your intersection has multiple names.

I have been trying it your way and it seems like it should work but I can not get them to delete. It shows the area_over area results where they do overlap but when i sure the delete list duplicate it does nothing.


I have been trying it your way and it seems like it should work but I can not get them to delete. It shows the area_over area results where they do overlap but when i sure the delete list duplicate it does nothing.

And you are using the list.road_name attribute to remove the duplicates?


I am, so after the features go through thebuffer i bring them to the areaonArea and then the list duplicate remover

AreaoverArea tool:

group by: name

overlap Count Attribute: -Count

List_name: i created it called Road_name

ListDuplicateRemover tool:

List attribute: Road_name{}name


I am, so after the features go through thebuffer i bring them to the areaonArea and then the list duplicate remover

AreaoverArea tool:

group by: name

overlap Count Attribute: -Count

List_name: i created it called Road_name

ListDuplicateRemover tool:

List attribute: Road_name{}name

Do not group by name. That way only areas with the same name are overlayed and the list will contain one name only! Leave the group by blank!


I am, so after the features go through thebuffer i bring them to the areaonArea and then the list duplicate remover

AreaoverArea tool:

group by: name

overlap Count Attribute: -Count

List_name: i created it called Road_name

ListDuplicateRemover tool:

List attribute: Road_name{}name

output-after-the-list-duplicate-remover.jpg

here is a image after i did what you said about leaving group by blank. Two roads meet, the overlay area is defined with the areaoverarea tool and then the list duplicate remover does nothing. I have it set to the road_name{}name so it should only look at the road name to see if it is overlaid to delete.


You can use the AreaonAreaOverlayer on the buffered centerlines.

Ad a list to the transformer parameters.

Then use the ListDuplicateRemover to remove intersections with the same name.

If the list has multiple entries (ListElementCounter and Tester) your intersection has multiple names.

yes i am using the name element to remove.


output-after-the-list-duplicate-remover.jpg

here is a image after i did what you said about leaving group by blank. Two roads meet, the overlay area is defined with the areaoverarea tool and then the list duplicate remover does nothing. I have it set to the road_name{}name so it should only look at the road name to see if it is overlaid to delete.

The ListDuplicateRemover will only remove list entries with the same name. After using that transformer the ListElementCounter will tell you if multiple polygons exist on the same area with different names (the _element_count will be more than 1). All polygons with an element count more than 1 can be deleted (disregarded) from the Tester (test on _element_count = 1 and disregard the Failed output).


I assume you relate the result of the AreonArea to the Original buffered roads.

A tst for overlaps>1 would do. But how are going to choose wich u want to remove?

Your pic suggests it is better to first snap the endpoint (so you dont create slivers ans tiny overshoots; for these also would meet the overlaps=1 criteria), and then use a counter to create an id wich is not road dependent.

Consider creating a grou_ by value by first calculating angles where lines meet to control wich lines get dissolved .

Dissolve by the created ID.

The overlay this with the buffered roads. Then remove the overlaps >2 and after that remove the dissolved roads.


I assume you relate the result of the AreonArea to the Original buffered roads.

A tst for overlaps>1 would do. But how are going to choose wich u want to remove?

Your pic suggests it is better to first snap the endpoint (so you dont create slivers ans tiny overshoots; for these also would meet the overlaps=1 criteria), and then use a counter to create an id wich is not road dependent.

Consider creating a grou_ by value by first calculating angles where lines meet to control wich lines get dissolved .

Dissolve by the created ID.

The overlay this with the buffered roads. Then remove the overlaps >2 and after that remove the dissolved roads.

Can you say that again with a little more detail. Sorry I understood most of it but not everything. It sounds like it will work but not sure what parameters i am suppose to be settting in each tool. Thanks


I assume you relate the result of the AreonArea to the Original buffered roads.

A tst for overlaps>1 would do. But how are going to choose wich u want to remove?

Your pic suggests it is better to first snap the endpoint (so you dont create slivers ans tiny overshoots; for these also would meet the overlaps=1 criteria), and then use a counter to create an id wich is not road dependent.

Consider creating a grou_ by value by first calculating angles where lines meet to control wich lines get dissolved .

Dissolve by the created ID.

The overlay this with the buffered roads. Then remove the overlaps >2 and after that remove the dissolved roads.

So i tried to use the snapper before the "areaoverarea' tool, but not sure what to set the counter on. But when I try to snap I do not get anything coming through the snapper. I am not sure what I am setting wrong inside the snapper


I assume you relate the result of the AreonArea to the Original buffered roads.

A tst for overlaps>1 would do. But how are going to choose wich u want to remove?

Your pic suggests it is better to first snap the endpoint (so you dont create slivers ans tiny overshoots; for these also would meet the overlaps=1 criteria), and then use a counter to create an id wich is not road dependent.

Consider creating a grou_ by value by first calculating angles where lines meet to control wich lines get dissolved .

Dissolve by the created ID.

The overlay this with the buffered roads. Then remove the overlaps >2 and after that remove the dissolved roads.

So this is what I am getting. I cannot get the snapper to work, I guess what settings do you suggest I use and I thought i needed to put before the area over area tool


Hi,

It is possible to send sample of road center lines and required output of the sample, such that I can try out

Pratap


Ya for sure. I am having issues to send the data, i cant make it under 1 mb and make sense. I can give you a email i have just created celicaowner1321@yahoo.com. Send me a email and i will send the data. The smallest I can make it is 11mb and this wont let me add anything larger than 1mb


Reply