7 votos

¿Calcular X e Y de la línea inicial y final de línea con ArcPy?

Tengo una serie de polilínea shapefiles y estoy tratando de automatizar el proceso de cálculo de las coordenadas X e y de la línea de inicio y de fin de línea usando Python.

He añadido los 4 campos (startx, starty, endx, endy) en Python con el siguiente código:

Arcpy.addfield_management ("Polyline","startx","DOUBLE")

Puedo realizar esta tarea haciendo clic derecho en el atributo y el cálculo de la geometría, pero quiero automatizar este proceso durante unos 30 polilíneas.

Tengo el siguiente código que he encontrado que puede ser capaz de realizar la tarea deseada con algunas modificaciones:

xExpression = "float(!SHAPE.CENTROID!.split()[0])"
yExpression = "float(!SHAPE.CENTROID!.split()[1])"

arcpy.CalculateField_management("Polyline", "startx", xExpression, "PYTHON")
arcpy.CalculateField_management("Polyline", "starty", yExpression, "PYTHON")

Este código sólo calcula las coordenadas en el centro de la forma que yo creo. Hay expresiones que me pueden agregar a este código para calcular las coordenadas X e y de los puntos de inicio y final de la polilínea?

Estoy utilizando ArcGIS 10.1, con licencia de ArcInfo.

14voto

Aaron Puntos 25882

Estoy de acuerdo con Barbarossa eso acceso a la energía de la `` módulo sería beneficioso. Aquí es muy limpio enfoque de secuencias de comandos:

10voto

Hameno Puntos 129

La expresión de métodos de campo para hacer esto es:

Principio de línea:

Final de línea:

4voto

David Puntos 2901

Sería recorrer cada polilínea con arcpy.da.SearchCursor, leyendo la "forma @" campo. Entonces lee el firstPoint y lastPoint de la geometría de la polilínea.

3voto

Marcela_R Puntos 21

No tiene experiencia de codificación pero he modificado uno de los ejemplos de recursos de esri y funcionó para mí...

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X