Solved

buffering road center line issues.


Badge

I am working on a project where I am trying to take a road center-line file and create the actual road size with it. So what i am doing is taking the center-line and buffering it to account for curb to curb size of the road. The plan is to buffer different amounts based on number of lanes and type of road. example, a four lane freeway is much larger than a standard city street. So i buffer it larger. Right now I am running the roads file through a re-projector to get center-lines in state plane of location I need in US ft. That way the geographic buffer set to ft can buffer it correctly.

centerline.shp file to re-projector to attribute filter (based on # of lanes and road type) to geographic buffer

after the buffer it looks like circle with tons of squares slightly rotated. Before the buffer it looks like a road way. How do I make it look like a buffered roadway with slightly larger poly-lines or polygons for the streets instead of a circle with squares that looks nothing like what i am after?

icon

Best answer by erik_jan 5 February 2016, 16:01

View original

17 replies

Userlevel 2
Badge +12

Two things come to mind (Both on the Bufferer transformer):

The buffer amount might be set too high, which will create very wide buffers.

And the End Cap Style should be set to None (no extension on the end of the roads).

Hope this helps.

Userlevel 2
Badge +12

Two things come to mind (Both on the Bufferer transformer):

The buffer amount might be set too high, which will create very wide buffers.

And the End Cap Style should be set to None (no extension on the end of the roads).

Hope this helps.

Attached is a template file (FME 2015) with an example.road-buffers.fmwt

Badge +22

If you're reprojecting to a coordinate system that uses feet, then the simply use the Bufferer, not the GeographicBufferer, which assumes your input data is in GeographicCoordinates (lat, long)

Badge

Two things come to mind (Both on the Bufferer transformer):

The buffer amount might be set too high, which will create very wide buffers.

And the End Cap Style should be set to None (no extension on the end of the roads).

Hope this helps.

So I am using FL83-WF as the coordinate system in the reprojector. Then it filters by road type and then into a geographic buffer set to 2 and feet just to see if it will work. Have endcap set to none. It still creates a round shape. i am not sure what I am doing wrong. before the buffer it looks like a street layout in a city

Badge

If you're reprojecting to a coordinate system that uses feet, then the simply use the Bufferer, not the GeographicBufferer, which assumes your input data is in GeographicCoordinates (lat, long)

I am getting same issues. I switched to a normal buffer and have it set at 2 for distance and endcap of no. everything else is the factory defaults in the tool. I have used buffers before and never had these issues. Attached are some images:

beforebuffer.jpg

after-buffer.jpg

Userlevel 2
Badge +12

So I am using FL83-WF as the coordinate system in the reprojector. Then it filters by road type and then into a geographic buffer set to 2 and feet just to see if it will work. Have endcap set to none. It still creates a round shape. i am not sure what I am doing wrong. before the buffer it looks like a street layout in a city

Does that Shape file contain lines or just a large amount of points?

In the case of points each point will be buffered and you will end up with cirkels.

Badge +22

I am getting same issues. I switched to a normal buffer and have it set at 2 for distance and endcap of no. everything else is the factory defaults in the tool. I have used buffers before and never had these issues. Attached are some images:

beforebuffer.jpg

after-buffer.jpg

That definitely looks like your buffer distance is wonky. Is the beforebuffer image before or after the reprojection? Does your original data have the projection defined? If your data was originally in lat/long, but didn't have a defined projection, then the reprojected will simply cast it into FL83-WF rather than reprojecting.

Userlevel 4
Badge +25

As @erik_jan points out, points that are buffered will result in circles, very short lines (many many times shorter than your buffer length) will have pretty much the same effect. Those very short lines may be caused by the reprojection if, as @jdh mentions, the source coordinate system is undefined. Can you route the data to the Data Inspector after the reprojection and have it show a background map, so you can check whether it's in the right place?

Badge

As @erik_jan points out, points that are buffered will result in circles, very short lines (many many times shorter than your buffer length) will have pretty much the same effect. Those very short lines may be caused by the reprojection if, as @jdh mentions, the source coordinate system is undefined. Can you route the data to the Data Inspector after the reprojection and have it show a background map, so you can check whether it's in the right place?

It is in a projection of lat/long. I have inspected before and after the reprojector and it seems to be right. I even looked after the filter just before the filter and it seems to be ok. Its just going through the buffer. If I join the line segments togeather some and make a larger line, do you think that this will take care of the issue? I really thought this would be a easy workbench to build and I am having more issues than I thought.

Badge

That definitely looks like your buffer distance is wonky. Is the beforebuffer image before or after the reprojection? Does your original data have the projection defined? If your data was originally in lat/long, but didn't have a defined projection, then the reprojected will simply cast it into FL83-WF rather than reprojecting.

Ya, i am not sure what to do because i want to extend the segments left and right to get a correct distance width for the roads from the centerline data.

Userlevel 2
Badge +12

A LineJoiner, grouped by road type and number of lanes might improve the speed of the process and the outcome.

Could you share a sample of your data, so we could have a look at the potential issues?

Badge +22

Ya, i am not sure what to do because i want to extend the segments left and right to get a correct distance width for the roads from the centerline data.

Could you provide a sample of the original data? A few roads would be sufficient.

Badge

A LineJoiner, grouped by road type and number of lanes might improve the speed of the process and the outcome.

Could you share a sample of your data, so we could have a look at the potential issues?

test1.zip

Here is a sample of my data. It is in a lat/lon coordinate system. I took just 300 segments and turned into a shape file. Category is what I am using the attribute filter on if that is important

Userlevel 2
Badge +12

test1.zip

Here is a sample of my data. It is in a lat/lon coordinate system. I took just 300 segments and turned into a shape file. Category is what I am using the attribute filter on if that is important

Hi @kouri1986

I tried this and it looks absolutely fine. Attached is a workspace (FME 2016) that creates the buffers.

esrishape2none.fmw

Badge

Then I have no clue, maybe my program is corrupt. I will reinstall and see if it works. Thank you for looking at it

Badge

@Eric_JAN. I reinstalled FME and everything seemed to work the way it was suppose to.

Userlevel 2
Badge +12

@Eric_JAN. I reinstalled FME and everything seemed to work the way it was suppose to.

Nice that this has been solved, but strange it was not working before!

Reply