Skip to main content

Point

Краткая информация

Представление пары 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.

Имя Объяснение Тип данных

point_object

A Point object.

Point

contains(second_geometry, {relation})

Указывает, содержит ли базовая геометрия геометрию сравнения.

Метод contains противоположен методу within.

На этом рисунке показаны только отношения True.

Возможно содержит отношения

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

relation

(Дополнительный)

Specifies the spatial relationship type that will be used.

  • BOUNDARY—The relationship has no restrictions for interiors or boundaries.

  • CLEMENTINI— Interiors of geometries must intersect. This option is equivalent to specifying None. This is the default.

  • PROPER— Boundaries of geometries must not intersect.

(Значение по умолчанию — None)

String

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, содержит ли данная геометрия вторую геометрию.

crosses(second_geometry)

Указывает, пересекаются ли две геометрии в геометрии меньшего типа формы.

Две полилинии пересекаются, если у них есть только общие точки, по крайней мере одна из которых не является конечной точкой. Полилиния и полигон пересекаются, если они имеют общую полилинию или точку (для вертикальной линии) внутри полигона, которая не эквивалентна всей полилинии.

На этом рисунке показаны только отношения True.

Возможные перекрестные отношения

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, пересекаются ли две геометрии в геометрии меньшего типа формы.

disjoint(second_geometry)

Определяет, имеют ли базовая и сравнительная геометрии общие точки.

Когда этот метод возвращает False, две геометрии пересекаются.

На этом рисунке показаны только отношения True.

Возможные непересекающиеся отношения

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, имеют ли две геометрии общие точки.

equals(second_geometry)

Указывает, имеют ли базовая и сравнительная геометрии один и тот же тип формы и определяют ли они один и тот же набор точек на плоскости. Это только 2D-сравнение; значения m и z игнорируются.

На этом рисунке показаны только отношения True.

Возможные равные отношения

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, имеют ли две геометрии один и тот же тип формы и определяют ли они один и тот же набор точек на плоскости.

overlaps(second_geometry)

Определяет, имеет ли пересечение двух геометрий тот же тип формы, что и одна из входных геометрий, и не является ли оно эквивалентным ни одной из входных геометрий.

На этом рисунке показаны только отношения True.

Возможные отношения наложений

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, имеет ли пересечение двух геометрий ту же размерность, что и одна из входных геометрий.

touches(second_geometry)

Определяет, пересекаются ли границы геометрий.

Две геометрии соприкасаются, когда пересечение геометрий не пусто, но пересечение их внутренних частей пусто. Например, точка касается полилинии только в том случае, если она совпадает с одной из конечных точек полилинии.

На этом рисунке показаны только отношения True.

Возможные отношения касаний

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, пересекаются ли границы геометрий.

within(second_geometry, {relation})

Указывает, находится ли базовая геометрия в пределах геометрии сравнения.

Метод within является обратным оператором метода contains.

На этом рисунке показаны только отношения True.

Возможные отношения "в пределах"

Базовая геометрия находится внутри сравниваемой геометрии, если она является пересечением геометрий, и пересечение их внутренних частей не является пустым. Метод within представляет собой оператор Клементини, за исключением случая пустой базовой геометрии.

Имя Объяснение Тип данных

second_geometry

A second geometry.

Object

relation

(Дополнительный)

Specifies the spatial relationship type that will be used.

  • BOUNDARY—The relationship has no restrictions for interiors or boundaries.

  • CLEMENTINI— Interiors of geometries must intersect. This option is equivalent to specifying None. This is the default.

  • PROPER— Boundaries of geometries must not intersect.

(Значение по умолчанию — None)

String

Возвращаемое значение

Тип данных Объяснение

Boolean

Возвращает, находится ли базовая геометрия в пределах геометрии сравнения.

Пример кода

Пример объекта Point

Создайте объект 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, пример 2

Проверьте объекты 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))