ArcGIS Runtime SDK for iOS: AGSViewpoint.h Source File
ArcGIS Runtime SDK for iOS  100.15
AGSViewpoint.h
Go to the documentation of this file.
1 /*
2  COPYRIGHT 2022 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 
25  /*@file AGSViewpoint.h */ //Required for Globals API doc
26 
27 #import <Foundation/Foundation.h>
28 #import <ArcGIS/AGSObject.h>
29 #import <ArcGIS/AGSJSONSerializable.h>
30 
31 
32 
36 typedef NS_ENUM(NSInteger, AGSViewpointType) {
40 };
41 
42 @class AGSGeometry;
43 @class AGSEnvelope;
44 @class AGSPoint;
45 @class AGSCamera;
46 
52 
53 #pragma mark -
54 #pragma mark initializers
55 
56 
57 
64 - (instancetype)initWithCenter:(AGSPoint *)center scale:(double)scale;
65 
73 - (instancetype)initWithCenter:(AGSPoint *)center scale:(double)scale rotation:(double)rotation;
74 
80 - (instancetype)initWithTargetExtent:(AGSEnvelope *)targetExtent;
81 
88 - (instancetype)initWithTargetExtent:(AGSEnvelope *)targetExtent rotation:(double)rotation;
89 
99 - (instancetype)initWithLatitude:(double)latitude longitude:(double)longitude scale:(double)scale;
100 
110 - (instancetype)initWithCenter:(AGSPoint *)center scale:(double)scale camera:(AGSCamera*)camera;
111 
122 - (instancetype)initWithCenter:(AGSPoint *)center scale:(double)scale rotation:(double)rotation camera:(AGSCamera*)camera;
123 
132 - (instancetype)initWithTargetExtent:(AGSEnvelope *)targetExtent camera:(AGSCamera*)camera;
133 
143 - (instancetype)initWithTargetExtent:(AGSEnvelope *)targetExtent rotation:(double)rotation camera:(AGSCamera*)camera;
144 
155 - (instancetype)initWithLatitude:(double)latitude longitude:(double)longitude scale:(double)scale camera:(AGSCamera*)camera;
156 
157 
165 +(instancetype)viewpointWithCenter:(AGSPoint *)center scale:(double)scale;
166 
175 +(instancetype)viewpointWithCenter:(AGSPoint *)center scale:(double)scale rotation:(double)rotation;
176 
185 +(instancetype)viewpointWithTargetExtent:(AGSEnvelope *)targetExtent;
186 
194 +(instancetype)viewpointWithTargetExtent:(AGSEnvelope *)targetExtent rotation:(double)rotation;
195 
206 +(instancetype)viewpointWithLatitude:(double)latitude longitude:(double)longitude scale:(double)scale;
207 
218 +(instancetype)viewpointWithCenter:(AGSPoint *)center scale:(double)scale camera:(AGSCamera*)camera;
219 
231 +(instancetype)viewpointWithCenter:(AGSPoint *)center scale:(double)scale rotation:(double)rotation camera:(AGSCamera*)camera;
232 
242 +(instancetype)viewpointWithTargetExtent:(AGSEnvelope *)targetExtent camera:(AGSCamera*)camera;
243 
254 +(instancetype)viewpointWithTargetExtent:(AGSEnvelope *)targetExtent rotation:(double)rotation camera:(AGSCamera*)camera;
255 
267 +(instancetype)viewpointWithLatitude:(double)latitude longitude:(double)longitude scale:(double)scale camera:(AGSCamera*)camera;
268 
269 #pragma mark -
270 #pragma mark properties
271 
276 @property (nullable, nonatomic, strong, readonly) AGSCamera* camera;
277 
281 @property (nonatomic, assign, readonly) AGSViewpointType viewpointType;
282 
287 @property (nonatomic, assign, readonly) double rotation;
288 
295 @property (nonatomic, strong, readonly) AGSGeometry *targetGeometry;
296 
301 @property (nonatomic, assign, readonly) double targetScale;
302 
303 #pragma mark -
304 #pragma mark methods
305 
311 -(BOOL)isEqualToViewpoint:(AGSViewpoint*)other;
312 
313 @end
314 
315 
AGSViewpointType
Definition: AGSViewpoint.h:36
@ AGSViewpointTypeCenterAndScale
Definition: AGSViewpoint.h:37
@ AGSViewpointTypeUnknown
Definition: AGSViewpoint.h:39
@ AGSViewpointTypeBoundingGeometry
Definition: AGSViewpoint.h:38
A camera to represent 3D viewpoints of a scene.
Definition: AGSCamera.h:50
A geometry that represents a rectangular shape.
Definition: AGSEnvelope.h:55
Base class for all classes that represent geometric shapes.
Definition: AGSGeometry.h:121
Definition: AGSObject.h:28
A location defined by x and y (and optionally z) coordinates.
Definition: AGSPoint.h:73
Represents the view location of an AGSMapView or AGSSceneView object.
Definition: AGSViewpoint.h:51
AGSViewpointType viewpointType
Definition: AGSViewpoint.h:281
double rotation
Definition: AGSViewpoint.h:287
AGSCamera * camera
Definition: AGSViewpoint.h:276
double targetScale
Definition: AGSViewpoint.h:301
AGSGeometry * targetGeometry
Definition: AGSViewpoint.h:295
A protocol to convert objects to and from JSON.
Definition: AGSJSONSerializable.h:38