Want to create a polygon from points

07-03-2014 01:50 PM
New Contributor
I would like to create a polygon representing a stream channel. I have points taken along the stream length, with an attribute for the stream channel width at each point. I have tried buffering the points by their given widths, and then aggregating those polygons together, but the resulting polygon is extremely clunky and often exceeds the buffered points. Does anyone have any suggestions? The resulting polygon will obviously not be perfect, as some points are 60 feet apart, but I'd love to get a solution for this as I have quite a few streams to represent.

Thank you!
Tags (2)
0 Kudos
2 Replies
Occasional Contributor III

You could try the tool "Points to Line" or "XY to Line" and then symbolize the lines by your field values. Using representations you may then be able to make a more realistic river representation.



0 Kudos
MVP Honored Contributor

I agree that the Points to Line or XY to Line tools should be used.to convert the points to a line.  For the widths, I would convert the line created by the other tools to a Route using the Create Route tool with measures based on length.  Then I would get the original points on the line as events using the Locate Features Along Route tool.

Sort the point event table by route and measure and calculate a To_FID field with the values of FID + 1.  Join this field to the FID field of a copy of the table.  Select the records that have identical RouteID values in both joined tables matched.  Use the field calculator to calculate a To Measure field for the line length using the measure of each table added together and divided in half.  Break the join and reverse the Join by making the FID field join to the FID+1 field, redo the selection for matching RouteIDs in the two tables and calculate a From Measure using the same calculation.

The table with the From and To Measures can now be converted to a line event table and you can use 1/2 the width of the stream to buffer each of these segments with a mitered cap.  Those segment buffers can be merged together into one polygon to get an approximate shape for the stream and you could use the Smooth Polygon tool to smooth out the jagged appearance of the merged buffered polygon segments.

Alternatively, use a side offset for the original point event table with 1/2 the width as the offset distance.  Now create a line from these offset points to form the connection of point to point for one side of the stream.  Offset with the negative value of 1/2 the stream width to do the other side.  Create lines at each end of these two sides so that the lines match up end to end in a loop and use the Feature to Polygon tool to convert the lines to polygons.  This representation will not be jagged and may be closer to the shape you want.

Here is a picture of the way the points to form the side would look for the second appoach.  the points are 500 feet apart along the stream and varying widths along the stream.


0 Kudos