Де знаходиться інструмент вимірювання кута в ArcMap 10?
Я не можу його знайти.
Де знаходиться інструмент вимірювання кута в ArcMap 10?
Я не можу його знайти.
Відповіді:
В ArcGIS 10.1 і пізніших версіях є інструмент під назвою COGO - розташований на панелі інструментів редактора / Інструменти редагування / COGO. На панелі інструментів є кнопка під назвою Звіти про описи COGO . Цей інструмент звітності має функцію під назвою " Кут між двома лініями ", яка повідомляє кут між 3 точками на лінії.
Цей інструмент сценарію Python зробить трюк. Щоб використовувати його, додайте його як інструмент сценарію, встановіть параметр Набір функцій - і встановіть його схему на клас функції ліній. Цей сценарій повинен працювати з 10.0 і пізнішими версіями.
# 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"
Для вимірювання азимуту з точки лише з базовою ліцензією ви можете використовувати засоби редагування функцій:
Створіть файл форми манекена з лінійними ознаками
Почніть сеанс редагування
Виберіть "Інструмент лінії", щоб розпочати створення нової функції
Клацніть лівою кнопкою миші на точці, від якої потрібно виміряти азимут
Клацніть правою кнопкою миші на точку, в якій потрібно виміряти азимут (контекстне спливаюче меню спливе)
Виберіть варіант "Напрямок ..."
У вікні редагування, куди ви повинні ввести напрямок, буде присутній поточний азимут.
Уточнює відповідь @TvsGIS . У ArcMap 10.3 використовуйте панель інструментів COGO, виберіть Звіт про COGO (7-а кнопка зліва), потім виберіть "Опис COGO існуючої функції" (2-а справа: стрілка вказує на середину рядка). Потім натисніть на функцію лінії. Це дає кут і довжину в сітках (Карта) та Землі (вимірювання обстеження). Перетворення від Grid на землю - це зміщення напряму ADD і ділення на коефіцієнт відстані. Параметри редагування> Units>.
Якщо ви використовуєте "Напрям і відстань лінії" (перша кнопка ліворуч), тоді інтерактивно виберіть початкову та кінцеву точки лінії. Кут від початкової точки до кінцевої точки. Однак відрізок лінії може бути намальований у зворотному напрямку.
Якщо додати атрибути геометрії в панелі інструментів «Управління даними \ Функції» - ви можете створити підшипник рядка –Додає атрибут для зберігання початкового та кінцевого підшипників кожної функції рядка. Значення варіюються від 0 до 360, з 0 означає північ, 90 схід, 180 південь, 270 захід тощо.