Hello,
I would like to calculate drag curves/ swept paths for a very long truck which transports rotor blades of a wind turbine. Is there a possibility to do this in arcgispro in a simplified manner for a line feature class?
I don't know of a tool that would do this for you out of the box.
You could write something in Python.
You can iterate over features in a feature class using a search cursor, and you can iterate over parts of a geometry to get the individual vertices of a line. With this, you could iterate over the line, get each vertex, draw a line segment starting and ending at the appropriate length between that vertex in the direction of the previous one.
import arcpy
# Set the path to your line feature class
line_feature_class = r"C:\Users\myusername\Documents\ArcGIS\Projects\MyProject6\MyProject6.gdb\Streets_feat"
# Create a SearchCursor to access the geometry
# The SHAPE@ token returns the geometry object for each feature
with arcpy.da.SearchCursor(line_feature_class, ["OID@", "SHAPE@"]) as cursor:
# Iterate through each row (feature) in the feature class
for row in cursor:
object_id = row[0]
geometry = row[1]
print(f"Processing Feature OID: {object_id}")
# Polylines can have multiple parts (e.g., multipart lines)
# Iterate through each part of the geometry
for part_num, part in enumerate(geometry):
print(f" Part: {part_num}")
# Iterate through each point (vertex) in the current part
for pnt_num, pnt in enumerate(part):
# Check if the point is not None (handles interior rings in polygons, though not applicable to simple lines)
if pnt:
print(f" Vertex {pnt_num}: X={pnt.X}, Y={pnt.Y}")
else:
# This case would generally indicate an interior ring in a polygon,
# but for simple lines, it signifies the end of a segment within a part.
print(" Segment break within part (not a vertex)")
print("Vertex iteration complete.")
Thank you for the code and explanation. But I think the further steps exceed my python possibilities. There's specialized commercial software like autoturn or heavyGoods:
https://heavygoods.net/de/apps/swept-paths