ArcGIS Runtime SDK for iOS: AGSSceneViewCommon.h Source File
ArcGIS Runtime SDK for iOS  100.15
AGSSceneViewCommon.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 AGSSceneViewCommon.h */ //Required for Globals API doc
26 
27 #import <Foundation/Foundation.h>
28 #import <ArcGIS/AGSGeoView.h>
29 #import <ArcGIS/AGSColor.h>
30 #import <ArcGIS/AGSCancelable.h>
31 
32 
33 
38 typedef NS_ENUM(NSInteger, AGSAtmosphereEffect) {
42 };
43 
48 typedef NS_ENUM(NSInteger, AGSLightingMode) {
52 };
53 
59 typedef NS_ENUM(NSInteger, AGSSpaceEffect) {
62 };
63 
64 @class AGSScene;
65 @class AGSCamera;
67 @class AGSCameraController;
68 @class AGSAnalysisOverlay;
70 @class AGSImageOverlay;
71 
79 
80 #pragma mark -
81 #pragma mark initializers
82 
83 #pragma mark -
84 #pragma mark properties
85 
89 @property (nullable, nonatomic, strong, readwrite) AGSScene *scene;
90 
95 @property (nonatomic, assign, readwrite) AGSSpaceEffect spaceEffect;
96 
100 @property (nonatomic, strong, readwrite) AGSColor *ambientLightColor;
101 
105 @property (nonatomic, assign, readwrite) AGSAtmosphereEffect atmosphereEffect;
106 
110 @property (nonatomic, strong, readwrite) NSDate *sunTime;
111 
115 @property (nonatomic, assign, readwrite) AGSLightingMode sunLighting;
116 
122 @property (nullable, nonatomic, strong, readwrite) AGSCameraController *cameraController;
123 
129 @property (nonatomic, strong, readonly) NSMutableArray<AGSAnalysisOverlay *> *analysisOverlays;
130 
134 @property (nonatomic, strong, readwrite) AGSSceneViewInteractionOptions *interactionOptions;
135 
143 @property (nonatomic, assign, readwrite, getter=isManualRendering) BOOL manualRendering;
144 
148 @property (nonatomic, assign, readonly) double fieldOfView;
149 
155 @property (nonatomic, assign, readonly) double fieldOfViewDistortionRatio;
156 
166 @property (nonatomic, strong, readonly) NSMutableArray<AGSImageOverlay *> *imageOverlays;
167 
168 #pragma mark -
169 #pragma mark methods
170 
176 - (AGSLocationToScreenResult *)locationToScreen:(AGSPoint *)mapPoint;
177 
184 - (AGSPoint *)screenToBaseSurface:(CGPoint)screenPoint;
185 
191 
196 - (void)setViewpointCamera:(AGSCamera *)camera;
197 
204 - (id<AGSCancelable>)setViewpointCamera:(AGSCamera *)camera
205  completion:(nullable void(^)(BOOL finished))completion;
206 
214 - (id<AGSCancelable>)setViewpointCamera:(AGSCamera *)camera
215  duration:(double)duration
216  completion:(nullable void(^)(BOOL finished))completion;
217 
232 - (id<AGSCancelable>)screenToLocation:(CGPoint)screenPoint
233  completion:(void(^)(AGSPoint *location))completion;
234 
239 - (void)renderFrame;
240 
249 - (void)setFieldOfViewAndDistortionRatioWithAngle:(double)angle
250  distortionRatio:(double)distortionRatio;
251 
263 - (void)setFieldOfViewFromLensIntrinsicsWithXFocalLength:(float)xFocalLength
264  yFocalLength:(float)yFocalLength
265  xPrincipal:(float)xPrincipal
266  yPrincipal:(float)yPrincipal
267  xImageSize:(float)xImageSize
268  yImageSize:(float)yImageSize
269  deviceOrientation:(UIDeviceOrientation)deviceOrientation;
270 
275 - (void)setFieldOfViewWithAngle:(double)angle;
276 
277 @end
278 
279 
#define AGSColor
Definition: AGSColor.h:34
AGSSpaceEffect
Definition: AGSSceneViewCommon.h:59
@ AGSSpaceEffectStars
Definition: AGSSceneViewCommon.h:60
@ AGSSpaceEffectTransparent
Definition: AGSSceneViewCommon.h:61
AGSAtmosphereEffect
Definition: AGSSceneViewCommon.h:38
@ AGSAtmosphereEffectHorizonOnly
Definition: AGSSceneViewCommon.h:40
@ AGSAtmosphereEffectNone
Definition: AGSSceneViewCommon.h:39
@ AGSAtmosphereEffectRealistic
Definition: AGSSceneViewCommon.h:41
AGSLightingMode
Definition: AGSSceneViewCommon.h:48
@ AGSLightingModeNoLight
Definition: AGSSceneViewCommon.h:49
@ AGSLightingModeLightAndShadows
Definition: AGSSceneViewCommon.h:51
@ AGSLightingModeLight
Definition: AGSSceneViewCommon.h:50
NSMutableArray< AGSAnalysisOverlay * > * analysisOverlays
Definition: AGSSceneViewCommon.h:129
Manages the display of one or more Analyses on a scene view.
Definition: AGSAnalysisOverlay.h:40
A base class for controllers which manage the camera of AGSSceneView.
Definition: AGSCameraController.h:37
A camera to represent 3D viewpoints of a scene.
Definition: AGSCamera.h:50
A base class for all views that can display geographic content on screen.
Definition: AGSGeoView.h:67
An overlay that contains a frame with an image to display in the view.
Definition: AGSImageOverlay.h:56
Result of a location-to-screen operation on AGSSceneView.
Definition: AGSLocationToScreenResult.h:52
A location defined by x and y (and optionally z) coordinates.
Definition: AGSPoint.h:73
A scene containing 3D geographic content.
Definition: AGSScene.h:63
A base class for AGSSceneView.
Definition: AGSSceneViewCommon.h:79
BOOL manualRendering
Definition: AGSSceneViewCommon.h:143
AGSScene * scene
Definition: AGSSceneViewCommon.h:89
AGSCamera * currentViewpointCamera()
AGSSceneViewInteractionOptions * interactionOptions
Definition: AGSSceneViewCommon.h:134
double fieldOfView
Definition: AGSSceneViewCommon.h:148
AGSSpaceEffect spaceEffect
Definition: AGSSceneViewCommon.h:95
AGSAtmosphereEffect atmosphereEffect
Definition: AGSSceneViewCommon.h:105
double fieldOfViewDistortionRatio
Definition: AGSSceneViewCommon.h:155
AGSLightingMode sunLighting
Definition: AGSSceneViewCommon.h:115
AGSColor * ambientLightColor
Definition: AGSSceneViewCommon.h:100
AGSCameraController * cameraController
Definition: AGSSceneViewCommon.h:122
NSDate * sunTime
Definition: AGSSceneViewCommon.h:110
NSMutableArray< AGSImageOverlay * > * imageOverlays
Definition: AGSSceneViewCommon.h:166
Options to configure Scene View user interactions.
Definition: AGSSceneViewInteractionOptions.h:38
A protocol exposed by operations that allow cancellation.
Definition: AGSCancelable.h:38