10 votos

Donde es la Medida del Ángulo de la Herramienta en ArcMap 10?

Me parece que no puede encontrar.

10voto

Michael Puntos 604

En ArcGIS 10.1 y posteriores, hay una herramienta llamada COGO - situado en la Barra de herramientas del Editor/Más Herramientas de Edición/COGO. En la barra de herramientas hay un botón llamado de Informes COGO descripciones. La herramienta de informes tiene una característica llamada "Ángulo entre dos líneas" que indica el ángulo entre 3 puntos en una línea.

9voto

Neall Puntos 261

alt text Te refieres a esto? Seleccione y, a continuación, toque en ángulo, por lo que u hizo en 931? Todavía se puede hacer la dirección de la longitud en combinado también. Déjame saber si esto no es lo ur después de

8voto

Lazer Puntos 3926

Esta secuencia de comandos de Python herramienta hará el truco. Para usarlo, agregar como una herramienta de secuencia de comandos, establezca el parámetro a la Función de Fijar y establecer su esquema a una clase de entidad de línea. Este script debe trabajar con 10.0 y más tarde.

# 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"

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