¿Dónde está la herramienta de medición de ángulo en ArcMap 10?
Parece que no puedo encontrarlo.
¿Dónde está la herramienta de medición de ángulo en ArcMap 10?
Parece que no puedo encontrarlo.
Respuestas:
En ArcGIS 10.1 y versiones posteriores, hay una herramienta llamada COGO , ubicada en la Barra de herramientas del editor / Más herramientas de edición / COGO. En la barra de herramientas hay un botón llamado Reporting COGO descriptions . Esta herramienta de informes tiene una característica llamada " Ángulo entre dos líneas " que informa el ángulo entre 3 puntos en una línea.
Esta herramienta de script de Python hará el truco. Para usarlo, agréguelo como una herramienta de secuencia de comandos, establezca el parámetro en Conjunto de características y establezca su esquema en una clase de entidad de línea. Este script debería funcionar con 10.0 y posterior.
# calculate an azimuth angle from a interactively entered
# line (feature set)
#
# Curtis Price, cprice@usgs.gov, 9/18/2013 11:51:10 AM
import math
import arcpy
# read line (This parameter should be a line feature set)
line = arcpy.GetParameterAsText(0)
# to see how this is used, see the help:
# http://resources.arcgis.com/en/help/main/10.1/index.html#//001500000028000000
# http://resources.arcgis.com/en/help/main/10.1/index.html#//002w00000023000000
def get_angle(xy1, xy2):
"""Calculate azimuth angle from two points. (Zero is north.)"""
import math
try:
# ArcPy point objects
x1, y1, x2, y2 = xy1.X, xy1.Y, xy2.X, xy2.Y
except:
# xy strings, e.g. "0 0"
x1, y1 = [float(x) for x in xy1.split()]
x2, y2 = [float(x) for x in xy2.split()]
dx, dy = (x2 - x1, y2 - y1)
return 90 - math.degrees(math.atan2(dy, dx))
try:
# get first and last point of a line
SHAPE = arcpy.Describe(line).shapeFieldName
Rows = arcpy.SearchCursor(line,"","",SHAPE)
feat = Rows.next().getValue(SHAPE)
pt1 = feat.firstPoint
pt2 = feat.lastPoint
angle = get_angle(pt1, pt2)
msg1 = " First point: {0:.1f}, {0:.1f}".format(pt1.X, pt1.Y)
msg2 = " Last point: {0:.1f}, {0:.1f}".format(pt2.X, pt2.Y)
msg3 = " Azimuth angle (in degrees): {0:.1f}".format(angle)
arcpy.AddMessage("{0}\n{1}\n{2}".format(msg1, msg2, msg3))
except:
raise Exception, "Invalid line input"
Para medir un acimut desde un punto con solo una licencia básica, puede usar herramientas de edición de características:
Cree un archivo de forma ficticia con características lineales
Iniciar sesión de edición
Seleccione "Herramienta de línea" para comenzar a crear una nueva característica
Haga clic izquierdo en el punto desde el que desea medir su acimut
Haga clic derecho en el punto al que desea medir el acimut (aparecerá el menú emergente contextual)
Seleccione la opción "Dirección ..."
El cuadro de edición donde se supone que debes colocar en la dirección tendrá el acimut actual.
Aclara la respuesta de @TvsGIS . En ArcMap 10.3, use la barra de herramientas COGO, seleccione Informe COGO (séptimo botón desde la izquierda) y luego seleccione "Descripción COGO de una entidad existente" (2da desde la derecha: flecha apuntando al centro de una línea). Luego haga clic en la función de línea. Esto proporciona el ángulo y la longitud en coordenadas de cuadrícula (mapa) y terreno (mediciones de levantamiento). La transformación de la cuadrícula a la tierra es el desplazamiento de dirección ADD y se divide por el factor de distancia de opciones de edición> Unidades> cuadro de diálogo.
Si usa "Dirección y distancia de una línea" (primer botón a la izquierda), seleccione interactivamente los puntos de inicio y finalización de la línea. El ángulo es desde su punto inicial hasta su punto final. Sin embargo, el segmento de línea puede dibujarse en la dirección opuesta.
Con Agregar atributos de geometría en la caja de herramientas Administración de datos \ Características, puede crear un rumbo de línea: agrega un atributo para almacenar el rumbo de principio a fin de cada entidad de línea. Los valores varían de 0 a 360, donde 0 significa norte, 90 este, 180 sur, 270 oeste, y así sucesivamente.