Краткая информация
Представление пары x,y, возможно, с измерением, высотой и ID.
Обсуждение
Объект Point не содержит информацию о пространственной привязке и обычно используется для построения других объектов геометрии, в частности, объектов PointGeometry, Polyline, Polygon и Multipoint. В примере ниже объект Point используется для создания объекта PointGeometry.pt = arcpy.Point(-12683890.6, 5811151.5)
pt_geometry = arcpy.PointGeometry(pt, spatial_reference=arcpy.SpatialReference(3857))
Синтаксис
Point ({X}, {Y}, {Z}, {M}, {ID})
Параметр | Описание | Тип данных |
X | X-координата точки. (Значение по умолчанию — 0.0) | Double |
Y | Y-координата точки. (Значение по умолчанию — 0.0) | Double |
Z | Z-координата точки. (Значение по умолчанию — None) | Double |
M | M-значение точки. (Значение по умолчанию — None) | Double |
ID | ID формы точки. (Значение по умолчанию — 0) | Integer |
Свойства
Свойство | Описание | Тип данных |
ID (чтение и запись) | Целое число, используемое для уникальной идентификации точки | Integer |
M (чтение и запись) | Значение измерения в точке. | Double |
X (чтение и запись) | Горизонтальная координата точки. | Double |
Y (чтение и запись) | Вертикальная координата точки. | Double |
Z (чтение и запись) | Значение высоты точки. | Double |
Обзор метода
Метод | Описание |
clone (point_object) | Клонируйте объект Point. |
contains (second_geometry, {relation}) | Показывает, содержит ли базовая геометрия сравнение геометрии. contains является противоположностью within. На этом рисунке показаны только отношения True. |
crosses (second_geometry) | Указывает на то, что две геометрии пересекаются в геометрии меньшего типа формы. Две полилинии пересекаются, если только они имеют точки соприкосновения, по крайней мере, одна из которых не является конечной точкой. Полилиния и полигон пересекаются, если они имеют общую линию или точку (для вертикальной линии) внутри полигона, который не эквивалентен всей полилинии. На этом рисунке показаны только отношения True. |
disjoint (second_geometry) | Указывает, что базовая и сопоставляемая геометрия не имеют общих точек. Две геометрии пересекаются, если disjoint возвращает False. На этом рисунке показаны только отношения True. |
equals (second_geometry) | Указывает, имеют ли основная и сравнительная геометрии одинаковый тип формы и определяют ли они один и то же набор точек на плоскости. Сравнение производится только в 2D; значения M и Z не учитываются. На этом рисунке показаны только отношения True. |
overlaps (second_geometry) | Показывает, если пересечение двух геометрий имеет тот же тип формы, что и входная геометрия и не эквивалентно любой из входных геометрий. На этом рисунке показаны только отношения True. |
touches (second_geometry) | Указывает на то, что границы геометрии пересекаются. Две геометрии соприкасаются, если пересечение геометрий не является пустым, а пересечение их внутренних частей пусто. Например, точка касается полилинии, только, если точка совпадает с одной из конечных точек полилинии. На этом рисунке показаны только отношения True. |
within (second_geometry, {relation}) | Показывает, если базовая геометрия находится внутри сравнения геометрии. within является противоположностью оператора contains. На этом рисунке показаны только отношения True. Базовая геометрия находится внутри сравниваемой геометрии, если она является пересечением геометрий, и пересечение их внутренних частей не является пустым. within является оператором Клементини, за исключением случаев, когда базовая геометрия пуста. |
Методы
clone (point_object)
Параметр | Описание | Тип данных |
point_object | A Point object. | Point |
contains (second_geometry, {relation})
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
relation | Типы пространственных отношений.
(Значение по умолчанию — None) | String |
Тип данных | Описание |
Boolean | Возвращенное логическое значение True указывает, что данная геометрия содержит вторую геометрию. |
crosses (second_geometry)
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
Тип данных | Описание |
Boolean | Возвращенное логическое значение True указывает пересечение двух геометрий в геометрии меньшего типы формы. |
disjoint (second_geometry)
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
Тип данных | Описание |
Boolean | Возвращенное логическое значение True указывает, что у двух геометрий нет общих точек. |
equals (second_geometry)
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
Тип данных | Описание |
Boolean |
Полученное логическое значение Истина (True) указывает на то, что обе эти геометрии имеют одинаковый тип формы и определяют один и тот же набор точек на плоскости. |
overlaps (second_geometry)
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
Тип данных | Описание |
Boolean | Полученное логическое значение True указывает, что пересечение двух этих геометрий имеет такой же размер, как одна из входных геометрий. |
touches (second_geometry)
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
Тип данных | Описание |
Boolean | Возвращенное логическое значение True указывает, что границы геометрий пересекаются. |
within (second_geometry, {relation})
Параметр | Описание | Тип данных |
second_geometry | Вторая геометрия. | Object |
relation | Типы пространственных отношений.
(Значение по умолчанию — None) | String |
Тип данных | Описание |
Boolean | Возвращенное логическое значение True указывает, что данная геометрия содержится внутри второй геометрии. |
Пример кода
Создайте объект Point и выведите некоторые его свойства.
import arcpy
# Create point object
point = arcpy.Point(2000, 2500)
# Print point properties
print("Point properties:")
print(" X: {0}".format(point.X))
print(" Y: {0}".format(point.Y))
Проверьте объекты Point, возвращаемые объектом Polygon.
import arcpy
# Create cursor to retrieve Hawaii shape
feature_class = "c:/data/Hawaii.shp"
cursor = arcpy.da.SearchCursor(feature_class, ["SHAPE@"])
for row in cursor:
# Get the geometry object from the shape field
print("Number of Hawaiian islands: {0}".format(row[0].partCount))
# GetPart returns an array of point objects for each part.
for island in row[0].getPart():
print("Vertices in island: {0}".format(island.count))
for point in island:
print("X: {0}, Y: {1})".format(point.X, point.Y))