Краткая информация
Представление пары 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 | The x-coordinate of the point. (Значение по умолчанию — 0.0) | Double |
Y | The y-coordinate of the point. (Значение по умолчанию — 0.0) | Double |
Z | The z-coordinate of the point. (Значение по умолчанию — None) | Double |
M | The m-value of the point. (Значение по умолчанию — None) | Double |
ID | The shape ID of the point. (Значение по умолчанию — 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) | Определяет, имеют ли базовая и сравнительная геометрии общие точки. Когда этот метод возвращает 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 | A second geometry. | Object |
relation | Specifies the spatial relationship type that will be used.
(Значение по умолчанию — None) | String |
| Тип данных | Описание |
| Boolean |
Возвращает, содержит ли данная геометрия вторую геометрию. |
crosses (second_geometry)
| Параметр | Описание | Тип данных |
second_geometry | A second geometry. | Object |
| Тип данных | Описание |
| Boolean | Возвращает, пересекаются ли две геометрии в геометрии меньшего типа формы. |
disjoint (second_geometry)
| Параметр | Описание | Тип данных |
second_geometry | A second geometry. | Object |
| Тип данных | Описание |
| Boolean | Возвращает, имеют ли две геометрии общие точки. |
equals (second_geometry)
| Параметр | Описание | Тип данных |
second_geometry | A second geometry. | Object |
| Тип данных | Описание |
| Boolean |
Возвращает, имеют ли две геометрии один и тот же тип формы и определяют ли они один и тот же набор точек на плоскости. |
overlaps (second_geometry)
| Параметр | Описание | Тип данных |
second_geometry | A second geometry. | Object |
| Тип данных | Описание |
| Boolean | Возвращает, имеет ли пересечение двух геометрий ту же размерность, что и одна из входных геометрий. |
touches (second_geometry)
| Параметр | Описание | Тип данных |
second_geometry | A second geometry. | Object |
| Тип данных | Описание |
| Boolean | Возвращает, пересекаются ли границы геометрий. |
within (second_geometry, {relation})| Параметр | Описание | Тип данных |
second_geometry | A second geometry. | Object |
relation | Specifies the spatial relationship type that will be used.
(Значение по умолчанию — None) | String |
| Тип данных | Описание |
| Boolean | Возвращает, находится ли базовая геометрия в пределах геометрии сравнения. |
Пример кода
Создайте объект 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))





