Справка по API
Функции
#
GeoInterface.area — Method
area(geom) -> Number
Возвращает площадь объекта geom в его двухмерной системе координат. Обратите внимание, что это допустимо только для AbstractSurfaceTrait.
#
GeoInterface.asbinary — Method
asbinary(geom) -> WKB
Преобразовывает geom в известное двоичное представление (WKB), например 000000000140000000000000004010000000000000.
#
GeoInterface.astext — Method
astext(geom) -> WKT
Преобразовывает geom в известное текстовое представление (WKT), например POINT (30 10).
#
GeoInterface.boundary — Method
boundary(geom) -> Curve
Возвращает границу geom. Обратите внимание, что это допустимо только для AbstractSurfaceTrait.
#
GeoInterface.boundingpolygons — Method
boundingpolygons(geom, i) -> AbstractMultiPolygon
Возвращает коллекцию многоугольников на этой поверхности, которая ограничивает i-й участок в заданном объекте geom.
#
GeoInterface.buffer — Method
buffer(geom, distance) -> AbstractGeometry
Возвращает геометрический объект, который представляет буфер данного объекта geom с distance.
#
GeoInterface.centroid — Method
centroid(geom) -> Point
Математический центр масс данной поверхности в виде точки. Результат необязательно должен находиться на данной поверхности. Обратите внимание, что это допустимо только для AbstractSurfaceTrait.
#
GeoInterface.convert — Method
convert(type::CustomGeom, geom)
convert(module::Module, geom)
Создает CustomGeom на основе любого объекта geom, реализующего GeoInterface.
Может также преобразовываться в Module, который находит соответствующий тип geom для признака с использованием метода модулей geointerface_traittype.
#
GeoInterface.convexhull — Method
convexhull(geom) -> AbstractCurve
Возвращает геометрический объект, который представляет выпуклую оболочку данного объекта geom.
#
GeoInterface.coordinates — Method
coordinates(geom) -> Vector
Возвращает координаты точек (их итератор). Обеспечивает обратную совместимость с GeoInterface версии 0.
#
GeoInterface.coordnames — Method
coordnames(geom) -> Tuple{Symbol}
Возвращает измерения координат (например, (:X,:Y,:Z)) для системы координат.
#
GeoInterface.crosses — Method
crosses(a, b) -> Bool
Возвращает значение, указывающее, пересекаются ли a и b.
#
GeoInterface.crs — Method
crs(geom) -> T <: GeoFormatTypes.CoordinateReferenceSystemFormat
Возвращает эталонную систему координат для данного объекта geom. В SF она определена как SRID.
#
GeoInterface.difference — Method
difference(a, b) -> AbstractGeometry
Возвращает геометрический объект, который представляет разность множеств точек a и b.
#
GeoInterface.disjoint — Method
disjoint(a, b) -> Bool
Возвращает значение, указывающее, являются ли a и b несмежными. Функция, обратная функции intersects.
#
GeoInterface.distance — Method
distance(a, b) -> Number
Возвращает кратчайшее расстояние между a и b.
#
GeoInterface.endpoint — Method
endpoint(geom) -> Point
Возвращает последнюю точку в geom. Обратите внимание, что это допустимо только для AbstractCurveTrait.
#
GeoInterface.extent — Method
extent(obj; fallback=true) -> T <: Extents.Extent
Возвращает область (ограничивающую рамку) для данного объекта geom или признака. В SF она определена как envelope.
Extents.extent(obj) вызывается, если результат extent(trait(obj), obj) не определен, поэтому может быть предпочтительнее определить Extents.extent напрямую.
Если fallback имеет значение true и у obj нет области, область вычисляется по координатам всех геометрических объектов в obj.
#
GeoInterface.geometry — Method
GeoInterface.geometry(feat) => geom
Возвращает геометрический объект для feat. Ожидается, что isgeometry(geom) === true. Обеспечивает обратную совместимость с GeoInterface версии 0.
#
GeoInterface.geometrycolumns — Method
GeoInterface.geometrycolumns(featurecollection) => (:geometry,)
Возвращает объекты geometrycolumn из featurecollection, то есть поля (или столбцы таблицы), которые содержат геометрические объекты, поддерживающие GeoInterface.
#
GeoInterface.geomtrait — Method
GeoInterface.geomtrait(geom) => T <: AbstractGeometry
Возвращает тип геометрического объекта, например PolygonTrait или PointTrait.
#
GeoInterface.getcoord — Method
getcoord(geom, i) -> Number
Возвращает i-ю координату для данного объекта geom. Координата имеет тип Real. Обратите внимание, что это допустимо только для отдельных объектов AbstractPointTrait.
#
GeoInterface.getcoord — Method
getcoord(geom) -> iterator
#
GeoInterface.getexterior — Method
getexterior(geom) -> Curve
Возвращает внешнее кольцо многоугольника в виде AbstractCurve. Обратите внимание, что это допустимо только для AbstractPolygonTrait.
#
GeoInterface.getfeature — Method
GeoInterface.getfeature(collection) => [feature, ...]
Возвращает признаки из collection в виде некоторого итерируемого объекта признаков. Ожидается, что isfeature(feature) === true.
#
GeoInterface.getgeom — Method
getgeom(geom, i::Integer) -> AbstractGeometry
Возвращает i-й геометрический объект для данного объекта geom.
#
GeoInterface.getgeom — Method
getgeom(geom) -> iterator
Возвращает итератор по всем геометрическим компонентам в geom.
#
GeoInterface.gethole — Method
gethole(geom, i::Integer) -> Curve
Возвращает i-е внешнее кольцо для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPolygonTrait.
#
GeoInterface.gethole — Method
gethole(geom) -> iterator
Возвращает итератор по всем пустотам в geom. Обратите внимание, что это допустимо только для AbstractPolygonTrait.
#
GeoInterface.getlinestring — Method
getlinestring(geom, i::Integer) -> AbstractCurve
Возвращает i-ю ломаную линию для данного объекта geom. Обратите внимание, что это допустимо только для AbstractMultiLineStringTrait.
#
GeoInterface.getlinestring — Method
getlinestring(geom) -> iterator
Возвращает итератор по всем ломаным линиям в геометрическом объекте. Обратите внимание, что это допустимо только для AbstractMultiLineStringTrait.
#
GeoInterface.getpatch — Method
getpatch(geom, i::Integer) -> AbstractPolygon
Возвращает i-й участок для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPolyhedralSurfaceTrait.
#
GeoInterface.getpatch — Method
getpatch(geom) -> iterator
Возвращает итератор по всем участкам в geom. Обратите внимание, что это допустимо только для AbstractPolyhedralSurfaceTrait.
#
GeoInterface.getpoint — Method
getpoint(geom, i::Integer) -> Point
Возвращает i-ю точку в данном объекте geom. Обратите внимание, что это допустимо только для AbstractCurveTrait и AbstractMultiPointTrait.
#
GeoInterface.getpoint — Method
getpoint(geom) -> iterator
Возвращает итератор по всем точкам в geom.
#
GeoInterface.getpolygon — Method
getpolygon(geom, i::Integer) -> AbstractCurve
Возвращает i-й многоугольник для данного объекта geom. Обратите внимание, что это допустимо только для AbstractMultiPolygonTrait.
#
GeoInterface.getpolygon — Method
getpolygon(geom) -> iterator
Возвращает итератор по всем многоугольникам в геометрическом объекте. Обратите внимание, что это допустимо только для AbstractMultiPolygonTrait.
#
GeoInterface.getring — Method
getring(geom, i::Integer) -> AbstractCurve
Определенное кольцо i в многоугольнике или мультимногоугольнике (внешняя часть и отверстия). Обратите внимание, что это допустимо только для AbstractPolygonTrait и AbstractMultiPolygonTrait.
#
GeoInterface.getring — Method
getring(geom) -> iterator
Возвращает итератор по всем кольцам в geom. Обратите внимание, что это допустимо только для AbstractPolygonTrait и AbstractMultiPolygonTrait в форме с одним аргументом.
#
GeoInterface.intersection — Method
intersection(a, b) -> AbstractGeometry
Возвращает геометрический объект, который представляет пересечение множеств точек a и b.
#
GeoInterface.is3d — Method
is3d(geom) -> Bool
Возвращает значение, указывающее, есть ли у данного объекта geom координата :Z.
#
GeoInterface.isclosed — Method
isclosed(geom) -> Bool
Возвращает значение, указывающее, является ли объект geom замкнутым, то есть совпадает ли startpoint с endpoint. Обратите внимание, что это допустимо только для AbstractCurveTrait.
#
GeoInterface.isempty — Method
isempty(geom) -> Bool
Возвращает значение true, если геометрический объект пуст.
#
GeoInterface.isfeature — Method
GeoInterface.isfeature(x) => Bool
Проверяет, является ли объект x признаком и потому неявным образом поддерживает некоторые методы GeoInterface. Признак — это сочетание геометрического объекта и свойств, напоминающее строку в таблице. Рекомендуется, чтобы пользователи, реализующие MyType, определяли только isfeature(::Type{MyType}). В этом случае isfeature(::MyType) будет автоматически делегироваться в этот метод.
Обеспечивает обратную совместимость с GeoInterface версии 0.
#
GeoInterface.isfeaturecollection — Method
GeoInterface.isfeaturecollection(x) => Bool
Проверяет, является ли объект x коллекцией признаков и потому неявным образом поддерживает некоторые методы GeoInterface. Коллекция признаков может также содержать метаданные для всей коллекции, например Extent.
Рекомендуется, чтобы пользователи, реализующие MyType, определяли только isfeaturecollection(::Type{MyType}). В этом случае isfeaturecollection(::MyType) будет автоматически делегироваться в этот метод.
#
GeoInterface.isgeometry — Method
GeoInterface.isgeometry(x) => Bool
Проверяет, является ли объект x геометрическим объектом и потому неявным образом поддерживает методы GeoInterface. Рекомендуется, чтобы пользователи, реализующие MyType, определяли только isgeometry(::Type{MyType}). В этом случае isgeometry(::MyType) будет автоматически делегироваться в этот метод.
#
GeoInterface.ismeasured — Method
ismeasured(geom) -> Bool
Возвращает значение, указывающее, есть ли у данного объекта geom координата :M.
#
GeoInterface.isring — Method
isring(geom) -> Bool
Возвращает значение, указывающее, является ли объект geom кольцом, то есть является ли geom isclosed и issimple. Обратите внимание, что это допустимо только для AbstractCurveTrait.
#
GeoInterface.issimple — Method
issimple(geom) -> Bool
Возвращает значение true, если геометрический объект простой, то есть не пересекает и не касается самого себя.
#
GeoInterface.length — Method
length(geom) -> Number
Возвращает длину объекта geom в его двухмерной системе координат. Обратите внимание, что это допустимо только для AbstractCurveTrait.
#
GeoInterface.m — Method
m(geom) -> Number
Возвращает координату :M (измеренную) для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPointTrait.
Для точек, представляющих собой Tuple или Vector длиной 4, возвращается четвертое значение.
Точки в виде Tuple или Vector длиной 3 не могут представлять измеренные точки, поэтому для них выдается ошибка ArgumentError.
#
GeoInterface.ncoord — Method
ncoord(geom) -> Integer
Возвращает количество измерений координат (например, 3 для X, Y, Z) для геометрического объекта. Обратите внимание, что в SF различаются измерения, пространственные измерения и топологические измерения, что неверно в нашем случае.
#
GeoInterface.nfeature — Method
GeoInterface.nfeature(collection)
Возвращает количество признаков в коллекции признаков.
#
GeoInterface.ngeom — Method
ngeom(geom) -> Integer
Возвращает количество геометрических объектов для данного объекта geom.
#
GeoInterface.nhole — Method
nhole(geom) -> Integer
Возвращает количество отверстий для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPolygonTrait.
#
GeoInterface.nlinestring — Method
nlinestring(geom) -> Integer
Возвращает количество кривых для данного объекта geom. Обратите внимание, что это допустимо только для AbstractMultiLineStringTrait.
#
GeoInterface.npatch — Method
npatch(geom)
Возвращает количество участков для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPolyhedralSurfaceTrait.
#
GeoInterface.npoint — Method
npoint(geom) -> Int
Возвращает количество точек в данном объекте geom. Обратите внимание, что это допустимо только для AbstractCurveTrait и AbstractMultiPointTrait.
#
GeoInterface.npolygon — Method
npolygon(geom) -> Integer
Возвращает количество многоугольников для данного объекта geom. Обратите внимание, что это допустимо только для AbstractMultiPolygonTrait.
#
GeoInterface.nring — Method
nring(geom) -> Integer
Возвращает количество колец в данном объекте geom. Обратите внимание, что это допустимо только для AbstractPolygonTrait и AbstractMultiPolygonTrait.
#
GeoInterface.overlaps — Method
overlaps(a, b) -> Bool
Возвращает значение, указывающее, перекрываются ли a и b. В DE-9IM также называется covers.
#
GeoInterface.pointonsurface — Method
pointonsurface(geom) -> Point
Точка, гарантированно принадлежащая данному геометрическому объекту (в отличие от centroid). Обратите внимание, что это допустимо только для AbstractSurfaceTrait.
#
GeoInterface.properties — Method
GeoInterface.properties(feat) => properties
Возвращает свойства feat. Это может быть любой итерируемый объект, который ведет себя как AbstractRow. Обеспечивает обратную совместимость с GeoInterface версии 0.
#
GeoInterface.relate — Method
relate(a, b, relationmatrix::String) -> Bool
Возвращает значение, указывающее, связаны ли a и b, на основе предоставленной матрицы связей.
#
GeoInterface.startpoint — Method
startpoint(geom) -> Point
Возвращает первую точку в geom. Обратите внимание, что это допустимо только для AbstractCurveTrait.
#
GeoInterface.subtrait — Method
subtrait(t::AbstractGeometryTrait)
Возвращает ожидаемые (возможно, абстрактные) (вложенные) признаки для вложенных геометрических объектов (возвращаемых функцией getgeom) t. Соответствует иерархии типов в спецификации Simple Features.
Примеры
julia> GeoInterface.subtrait(LineStringTrait())
AbstractPointTrait
julia> GeoInterface.subtrait(PolygonTrait()) # LineStringTrait, LineTrait или LinearRingTrait
AbstractLineStringTrait
# Если вложенного признака нет или он неизвестен заранее, возвращается `nothing`
julia> isnothing(GeoInterface.subtrait(PointTrait()))
true
julia> isnothing(GeoInterface.subtrait(GeometryCollectionTrait()))
true
#
GeoInterface.symdifference — Method
symdifference(a, b) -> AbstractGeometry
Возвращает геометрический объект, который представляет симметрическую разность множеств точек a и b.
#
GeoInterface.testfeature — Method
testfeature(feature)
Проверяет, правильно ли реализован требуемый интерфейс для feature.
#
GeoInterface.testfeaturecollection — Method
testfeaturecollection(featurecollection)
Проверяет, правильно ли реализован требуемый интерфейс для featurecollection.
#
GeoInterface.testgeometry — Method
testgeometry(geom)
Проверяет, правильно ли реализован требуемый интерфейс для geom.
#
GeoInterface.touches — Method
touches(a, b) -> Bool
Возвращает значение, указывающее, касаются ли a и b.
#
GeoInterface.trait — Method
GeoInterface.trait(geom) => T <: AbstractGeometry
Возвращает тип объекта, например FeatureTrait. Для всех объектов isgeometry trait совпадает с geomtrait(obj), например PointTrait.
#
GeoInterface.union — Method
union(a, b) -> AbstractGeometry
Возвращает геометрический объект, который представляет объединение множеств точек a и b.
#
GeoInterface.x — Method
x(geom) -> Number
Возвращает координату :X для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPointTrait.
Для точек типа Tuple или Vector возвращается первое значение.
#
GeoInterface.y — Method
y(geom) -> Number
Возвращает координату :Y для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPointTrait.
Для точек типа Tuple или Vector возвращается второе значение.
#
GeoInterface.z — Method
z(geom) -> Number
Возвращает координату :Z для данного объекта geom. Обратите внимание, что это допустимо только для AbstractPointTrait.
Для точек, представляющих собой Tuple или Vector длиной 3, возвращается третье значение.
Типы
#
GeoInterface.AbstractCurvePolygonTrait — Type
Тип AbstractCurvePolygonTrait для всех криволинейных многоугольников.
#
GeoInterface.AbstractCurveTrait — Type
Тип AbstractCurveTrait для всех кривых.
#
GeoInterface.AbstractFeatureCollectionTrait — Type
Тип AbstractFeatureCollectionTrait для всех коллекций признаков.
#
GeoInterface.AbstractFeatureTrait — Type
Тип AbstractFeatureTrait для всех признаков.
#
GeoInterface.AbstractGeometryCollectionTrait — Type
Тип AbstractGeometryCollectionTrait для всех коллекций геометрических объектов.
#
GeoInterface.AbstractGeometryTrait — Type
Тип AbstractGeometryTrait для всех геометрических объектов.
#
GeoInterface.AbstractLineStringTrait — Type
Тип AbstractLineString для всех ломаных линий.
#
GeoInterface.AbstractMultiCurveTrait — Type
Тип AbstractMultiCurveTrait для всех мультикривых.
#
GeoInterface.AbstractMultiLineStringTrait — Type
Тип AbstractMultiLineStringTrait для всех множественных ломаных линий.
#
GeoInterface.AbstractMultiPointTrait — Type
Тип AbstractMultiPointTrait для всех мультиточек.
#
GeoInterface.AbstractMultiPolygonTrait — Type
Тип AbstractMultiPolygonTrait для всех мультимногоугольников.
#
GeoInterface.AbstractMultiSurfaceTrait — Type
Тип AbstractMultiSurfaceTrait для всех мультиповерхностей.
#
GeoInterface.AbstractPointTrait — Type
Тип AbstractPointTrait для всех точек.
#
GeoInterface.AbstractPolygonTrait — Type
Тип AbstractPolygonTrait для всех многоугольников.
#
GeoInterface.AbstractPolyhedralSurfaceTrait — Type
Тип AbstractPolyhedralSurfaceTrait для всех многогранных поверхностей.
#
GeoInterface.AbstractSurfaceTrait — Type
Тип AbstractSurfaceTrait для всех поверхностей.
#
GeoInterface.AbstractTrait — Type
Тип AbstractTrait для всех геометрических объектов, признаков и коллекций признаков.
#
GeoInterface.CircularStringTrait — Type
CircularStringTrait — это кривая с нечетным количеством точек. Отдельный отрезок состоит из трех точек, первая и последняя из которых — это начало и конец, а вторая — середина кривой.
#
GeoInterface.CompoundCurveTrait — Type
CompoundCurveTrait — это кривая, которая представляет собой сочетание прямых объектов LineStringTrait и кривых объектов CircularStringTrait.
#
GeoInterface.CurvePolygonTrait — Type
Объект AbstractCurvePolygonTrait, который может содержать окружности или прямые кривые в качестве колец.
#
GeoInterface.FeatureCollectionTrait — Type
FeatureCollectionTrait содержит объекты FeatureTrait и extent.
#
GeoInterface.FeatureTrait — Type
FeatureTrait содержит geometries, properties и extent.
#
GeoInterface.GeometryCollectionTrait — Type
GeometryCollection — это коллекция объектов Geometry.
#
GeoInterface.HexagonTrait — Type
PolygonTrait с шестью вершинами.
#
GeoInterface.LineStringTrait — Type
LineStringTrait — это коллекция прямых линий между объектами PointTrait.
#
GeoInterface.LineTrait — Type
LineTrait — это объект LineStringTrait всего с двумя точками.
#
GeoInterface.LinearRingTrait — Type
LinearRingTrait — это объект LineStringTrait с совпадающими начальной и конечной точками.
#
GeoInterface.MultiCurveTrait — Type
MultiCurveTrait — это коллекция объектов CircularStringTrait.
#
GeoInterface.MultiLineStringTrait — Type
MultiLineStringTrait — это коллекция объектов LineStringTrait.
#
GeoInterface.MultiPointTrait — Type
MultiPointTrait — это коллекция объектов PointTrait.
#
GeoInterface.MultiPolygonTrait — Type
MultiPolygonTrait — это коллекция объектов PolygonTrait.
#
GeoInterface.MultiSurfaceTrait — Type
MultiSurfaceTrait — это коллекция объектов AbstractSurfaceTrait.
#
GeoInterface.PentagonTrait — Type
PolygonTrait с пятью вершинами.
#
GeoInterface.PointTrait — Type
Отдельная точка.
#
GeoInterface.PolygonTrait — Type
AbstractSurfaceTrait с прямыми кольцами снаружи или внутри.
#
GeoInterface.PolyhedralSurfaceTrait — Type
PolyhedralSurfaceTrait — это связная поверхность, состоящая из объектов PolygonTrait.
#
GeoInterface.QuadTrait — Type
PolygonTrait с четырьмя вершинами.
#
GeoInterface.RectangleTrait — Type
Объект PolygonTrait, который имеет прямоугольную форму и может описываться минимальной и максимальной вершинами.
#
GeoInterface.TINTrait — Type
TINTrait — это объект PolyhedralSurfaceTrait, состоящий из объектов TriangleTrait.
#
GeoInterface.TriangleTrait — Type
PolygonTrait треугольной формы.