ArcGIS Runtime SDK for iOS: AGSGeometry.h Source File
ArcGIS Runtime SDK for iOS  100.11
AGSGeometry.h
Go to the documentation of this file.
1 /*
2  COPYRIGHT 2021 ESRI
3 
4  All rights reserved under the copyright laws of the United States
5  and applicable international laws, treaties, and conventions.
6 
7  This material is licensed for use under the Esri Master License
8  Agreement (MLA), and is bound by the terms of that agreement.
9  You may redistribute and use this code without modification,
10  provided you adhere to the terms of the MLA and include this
11  copyright notice.
12 
13  See use restrictions at http://www.esri.com/legal/pdfs/mla_e204_e300/english
14 
15  For additional information, contact:
16  Environmental Systems Research Institute, Inc.
17  Attn: Contracts and Legal Services Department
18  380 New York Street
19  Redlands, California, 92373
20  USA
21 
22  email: contracts@esri.com
23  */
24  //Required for Globals API doc
26 
27 #import <Foundation/Foundation.h>
28 #import <ArcGIS/AGSObject.h>
29 #import <ArcGIS/AGSJSONSerializable.h>
30 
31 
32 
37 typedef NS_ENUM(NSInteger, AGSGeometryDimension) {
43 };
44 
49 typedef NS_ENUM(NSInteger, AGSGeometryType) {
56 };
57 
58 @class AGSSpatialReference;
59 @class AGSGeometryBuilder;
60 @class AGSEnvelope;
61 
121 @interface AGSGeometry : AGSObject <NSCopying, AGSJSONSerializable>
122 
123 #pragma mark -
124 #pragma mark initializers
125 
126 #pragma mark -
127 #pragma mark properties
128 
132 @property (nonatomic, assign, readonly) BOOL hasCurves;
133 
138 @property (nonatomic, assign, readonly) BOOL hasZ;
139 
143 @property (nonatomic, assign, readonly) BOOL hasM;
144 
148 @property (nonatomic, assign, readonly, getter=isEmpty) BOOL empty;
149 
154 @property (nullable, nonatomic, strong, readonly) AGSSpatialReference *spatialReference;
155 
159 @property (nonatomic, strong, readonly) AGSEnvelope *extent;
160 
164 @property (nonatomic, assign, readonly) AGSGeometryType geometryType;
165 
170 @property (nonatomic, assign, readonly) AGSGeometryDimension dimension;
171 
172 #pragma mark -
173 #pragma mark methods
174 
181 
187 -(BOOL)isEqualToGeometry:(AGSGeometry*)other;
188 
195 -(BOOL)isEqualToGeometry:(AGSGeometry*)other tolerance:(double)tolerance;
196 
197 @end
198 
199 
AGSGeometryType
Definition: AGSGeometry.h:49
@ AGSGeometryTypeMultipoint
Definition: AGSGeometry.h:55
@ AGSGeometryTypePolygon
Definition: AGSGeometry.h:54
@ AGSGeometryTypePoint
Definition: AGSGeometry.h:51
@ AGSGeometryTypeUnknown
Definition: AGSGeometry.h:50
@ AGSGeometryTypeEnvelope
Definition: AGSGeometry.h:52
@ AGSGeometryTypePolyline
Definition: AGSGeometry.h:53
AGSGeometryDimension
Definition: AGSGeometry.h:37
@ AGSGeometryDimensionPoint
Definition: AGSGeometry.h:38
@ AGSGeometryDimensionUnknown
Definition: AGSGeometry.h:42
@ AGSGeometryDimensionVolume
Definition: AGSGeometry.h:41
@ AGSGeometryDimensionCurve
Definition: AGSGeometry.h:39
@ AGSGeometryDimensionArea
Definition: AGSGeometry.h:40
A geometry that represents a rectangular shape.
Definition: AGSEnvelope.h:55
A builder to build geometries.
Definition: AGSGeometryBuilder.h:43
Base class for all classes that represent geometric shapes.
Definition: AGSGeometry.h:121
AGSGeometryBuilder * toBuilder()
AGSGeometryType geometryType
Definition: AGSGeometry.h:164
AGSEnvelope * extent
Definition: AGSGeometry.h:159
BOOL empty
Definition: AGSGeometry.h:148
BOOL hasM
Definition: AGSGeometry.h:143
BOOL hasZ
Definition: AGSGeometry.h:138
BOOL hasCurves
Definition: AGSGeometry.h:132
AGSGeometryDimension dimension
Definition: AGSGeometry.h:170
AGSSpatialReference * spatialReference
Definition: AGSGeometry.h:154
Definition: AGSObject.h:28
Represents the spatial reference of a geometry.
Definition: AGSSpatialReference.h:46
A protocol to convert objects to and from JSON.
Definition: AGSJSONSerializable.h:38