API Reference > imodeljs-frontend > Views > SpatialViewState SpatialViewState Class Defines a view of one or more SpatialModels. The list of viewed models is stored in the ModelSelector. Extends ViewState3d Extended by OrthographicViewState Methods Name Description constructor(props: SpatialViewDefinitionProps, iModel: IModelConnection, arg3: CategorySelectorState, displayStyle: DisplayStyle3dState, modelSelector: ModelSelectorState): SpatialViewState addViewedModel(id: string): void clearViewedModels(): void computeFitRange(): Range3d Compute world-space range appropriate for fitting the view. createAuxCoordSystem(acsName: string): AuxCoordSystemState equals(other: SpatialViewState): boolean Determine whether this ViewState exactly matches another. forEachModel(func: (model: GeometricModelState) => void): void Execute a function on each viewed model getDisplayedExtents(): Range3d Protected Get world-space viewed extents based on the iModel's project extents. getViewedExtents(): Range3d Get the extents of this view in CoordSystem.World coordinates. load(): Promise<void> Asynchronously load any required data for this ViewState from the backend. removeViewedModel(id: string): void toJSON(): SpatialViewDefinitionProps Convert to JSON representation. toProps(): ViewStateProps Serialize this ViewState as a set of properties that can be used to recreate it via ViewState.createFromProps. viewsModel(modelId: string): boolean Returns true if this view displays the contents of a SpatialViewState.Model specified by Id. createBlank(iModel: IModelConnection, origin: Readonly<WritableXYAndZ>, extents: Readonly<WritableXYAndZ>, rotation?: Matrix3d): SpatialViewState Static Create a new blank SpatialViewState. createFromProps(props: ViewStateProps, iModel: IModelConnection): SpatialViewState Static Create a new ViewState object from a set of properties. Inherited methods Name Inherited from Description _updateMaxGlobalScopeFactor(): void Protected ViewState3d adjustAspectRatio(aspect: number): void ViewState3d Adjust the aspect ratio of this ViewState so it matches the supplied value. allow3dManipulations(): boolean ViewState3d Returns true if ViewTools are allowed to operate in three dimensions on this view. calcLensAngle(): Angle ViewState3d Calculate the lens angle formed by the current delta and focus distance calculateFocusCorners(): Point3d[] ViewState3d calculateFrustum(result?: Frustum): undefined | Frustum ViewState3d Calculate the world coordinate Frustum from the parameters of this ViewState. cartographicToRoot(cartographic: Cartographic, result?: Point3d): undefined | Point3d ViewState3d Convert a cartographic coordinate to a point in spatial space. cartographicToRootFromGcs(cartographic: Cartographic, result?: Point3d): Promise<undefined | Point3d> ViewState3d Convert a cartographic coordinate to a point in spatial space using the GCS reprojection. centerEyePoint(backDistance?: number): void ViewState3d Place the eyepoint of the camera so it is aligned with the center of the view. centerFocusDistance(): void ViewState3d Center the focus distance of the camera halfway between the front plane and the back plane, keeping the eyepoint, clone(iModel?: IModelConnection): SpatialViewState ViewState3d Make an independent copy of this EntityState decorate(context: DecorateContext): void ViewState3d Add view-specific decorations. getAspectRatio(): number ViewState3d Get the aspect ratio (width/height) of this view getAspectRatioSkew(): number ViewState3d Get the aspect ratio skew (x/y, usually 1.0) that is used to exaggerate the y axis of the view. getAuxiliaryCoordinateSystemId(): string ViewState3d Get the Id of the auxiliary coordinate system for this ViewState getBackDistance(): number ViewState3d Get the distance from the eyePoint to the back plane for this view. getCartographicHeight(point: Readonly<WritableXYAndZ>): undefined | number ViewState3d getCenter(result?: Point3d): Point3d ViewState3d Get the point at the geometric center of the view. getDisplayStyle3d(): DisplayStyle3dState ViewState3d The style that controls how the contents of the view are displayed. getExtents(): Vector3d ViewState3d Get the extents of this view in CoordSystem.World coordinates. getEyeCartographicHeight(): undefined | number ViewState3d getEyePoint(): Point3d ViewState3d Get the current location of the eyePoint for camera in this view. getFocusDistance(): number ViewState3d Get the distance from the eyePoint to the focus plane for this view. getFrontDistance(): number ViewState3d Get the distance from the eyePoint to the front plane for this view. getGridOrientation(): GridOrientationType ViewState3d Get the grid settings for this view getGridSettings(vp: Viewport, origin: Point3d, rMatrix: Matrix3d, orientation: GridOrientationType): void ViewState3d Populate the given origin and rotation with information from the grid settings from the grid orientation. getGridSpacing(): Readonly<WritableXAndY> ViewState3d getGridsPerRef(): number ViewState3d getGroundElevation(): number ViewState3d Returns the ground elevation taken from the environment added with the global z position of this imodel. getGroundExtents(vp?: Viewport): Range3d ViewState3d Return the ground extents, which will originate either from the viewport frustum or the extents of the imodel. getLensAngle(): Angle ViewState3d Get the lens angle for this view. getModelAppearanceOverride(id: string): undefined | FeatureAppearance ViewState3d Query the symbology overrides applied to a model when rendered using this ViewState. getModelDisplayTransform(modelId: string, baseTransform: Transform): Transform ViewState3d Obtain the transform with which the specified model will be displayed, accounting for this view's ModelDisplayTransformProvider. getOrigin(): Point3d ViewState3d Get the origin of this view in CoordSystem.World coordinates. getRotation(): Matrix3d ViewState3d Get the 3x3 ortho-normal Matrix3d for this view. getSubCategoryOverride(id: string): undefined | SubCategoryOverride ViewState3d Query the symbology overrides applied to geometry belonging to a specific subcategory when rendered using this ViewState. getTargetPoint(result?: Point3d): Point3d ViewState3d Get the target point of the view. getUpVector(point: Point3d): Vector3d ViewState3d getViewClip(): undefined | ClipVector ViewState3d Get the clipping volume for this view, if defined getXVector(result?: Vector3d): Vector3d ViewState3d Get the unit vector that points in the view X (left-to-right) direction. getYVector(result?: Vector3d): Vector3d ViewState3d Get the unit vector that points in the view Y (bottom-to-top) direction. getZVector(result?: Vector3d): Vector3d ViewState3d Get the unit vector that points in the view Z (front-to-back) direction. globalViewTransition(): number ViewState3d hasSameCoordinates(other: ViewState): boolean ViewState3d Determine whether this ViewState has the same coordinate system as another one. is2d(): this is ViewState2d ViewState3d Returns true if this ViewState is-a ViewState2d isCameraEnabled(): this is ViewState3d ViewState3d Returns true if this ViewState is-a ViewState3d with the camera currently on. isEyePointAbove(elevation: number): boolean ViewState3d isEyePointGlobalView(eyePoint: Readonly<WritableXYAndZ>): boolean ViewState3d isSheetView(): this is SheetViewState ViewState3d Returns true if this ViewState is-a SheetViewState lookAt(eyePoint: Readonly<WritableXYAndZ>, targetPoint: Readonly<WritableXYAndZ>, upVector: Vector3d, newExtents?: Readonly<WritableXAndY>, frontDistance?: number, backDistance?: number, opts?: ViewChangeOptions): ViewStatus ViewState3d Position the camera for this view and point it at a new target point. lookAtGlobalLocation(eyeHeight: number, pitchAngleRadians: number = 0, location?: GlobalLocation, eyePoint?: Point3d): number ViewState3d Look at a global location, placing the camera's eye at the specified eye height above a viewed location. lookAtGlobalLocationFromGcs(eyeHeight: number, pitchAngleRadians: number = 0, location?: GlobalLocation, eyePoint?: Point3d): Promise<number> ViewState3d Look at a global location, placing the camera's eye at the specified eye height above a viewed location using the GCS. lookAtUsingLensAngle(eyePoint: Point3d, targetPoint: Point3d, upVector: Vector3d, fov: Angle, frontDistance?: number, backDistance?: number, opts?: ViewChangeOptions): ViewStatus ViewState3d Position the camera for this view and point it at a new target point, using a specified lens angle. lookAtViewAlignedVolume(volume: Range3d, aspect?: number, options?: ViewChangeOptions): void ViewState3d Look at a volume of space defined by a range in view local coordinates, keeping its current rotation. lookAtVolume(volume: Readonly<WritableLowAndHighXYZ> | Readonly<WritableLowAndHighXY>, aspect?: number, options?: ViewChangeOptions): void ViewState3d Change the volume that this view displays, keeping its current rotation. minimumFrontDistance(): number ViewState3d moveCameraLocal(distance: Vector3d): ViewStatus ViewState3d Move the camera relative to its current location by a distance in camera coordinates. moveCameraWorld(distance: Vector3d): ViewStatus ViewState3d Move the camera relative to its current location by a distance in world coordinates. onRenderFrame(_viewport: Viewport): void ViewState3d This function is never called. resetExtentLimits(): void ViewState3d Resets the largest and smallest values allowed for the extents of this ViewState to their default values. rootToCartographic(root: Readonly<WritableXYAndZ>, result?: Cartographic): undefined | Cartographic ViewState3d Convert a point in spatial space to a cartographic coordinate. rootToCartographicFromGcs(root: Readonly<WritableXYAndZ>, result?: Cartographic): Promise<undefined | Cartographic> ViewState3d Convert a point in spatial space to a cartographic coordinate using the GCS reprojection. rotateCameraLocal(angle: Angle, axis: Vector3d, aboutPt?: Point3d): ViewStatus ViewState3d Rotate the camera from its current location about an axis relative to its current orientation. rotateCameraWorld(angle: Angle, axis: Vector3d, aboutPt?: Point3d): ViewStatus ViewState3d Rotate the camera from its current location about an axis in world coordinates. setAllow3dManipulations(allow: boolean): void ViewState3d Set whether ViewTools are allowed to operate in 3 dimensions on this view. setAspectRatioSkew(val: number): void ViewState3d Set the aspect ratio skew (x/y) for this view. setAuxiliaryCoordinateSystem(acs?: AuxCoordSystemState): void ViewState3d Set or clear the AuxiliaryCoordinateSystem for this view. setCategorySelector(categories: CategorySelectorState): void ViewState3d Set the CategorySelector for this view. setCenter(center: Point3d): void ViewState3d set the center of this view to a new position. setDisplayStyle(style: DisplayStyleState): void ViewState3d setExtents(extents: Readonly<WritableXYAndZ>): void ViewState3d Set the extents of this view in CoordSystem.World coordinates. setEyePoint(pt: Readonly<WritableXYAndZ>): void ViewState3d Change the location of the eyePoint for the camera in this view. setFocusDistance(dist: number): void ViewState3d Set the focus distance for this view. setGridSettings(orientation: GridOrientationType, spacing: Point2d, gridsPerRef: number): void ViewState3d Set the grid settings for this view setLensAngle(angle: Angle): void ViewState3d Set the lens angle for this view. setOrigin(origin: Readonly<WritableXYAndZ>): void ViewState3d Set the origin of this view in CoordSystem.World coordinates. setRotation(rot: Matrix3d): void ViewState3d Change the rotation of the view. setRotationAboutPoint(rotation: Matrix3d, point?: Point3d): void ViewState3d Set the rotation of this ViewState to the supplied rotation, by rotating it about a point. setStandardRotation(id: StandardViewId): void ViewState3d Orient this view to one of the StandardView rotations. setViewClip(clip?: ClipVector): void ViewState3d Set or clear the clipping volume for this view. setupFromFrustum(frustum: Frustum, opts?: ViewChangeOptions): ViewStatus ViewState3d Initialize the origin, extents, and rotation from an existing Frustum supportsCamera(): boolean ViewState3d turnCameraOff(): void ViewState3d Turn the camera off for this view. verifyFocusPlane(): void ViewState3d Ensure the focus plane lies between the front and back planes. viewsCategory(id: string): boolean ViewState3d Determine whether the specified Category is displayed in this view calculateMaxDepth(delta: Vector3d, zVec: Vector3d): number ProtectedStatic ViewState3d Properties Name Type Description defaultExtentLimits Accessor ReadOnly { max: number, min: number } modelSelector Accessor ModelSelectorState onViewedModelsChanged Readonly BeEvent<() => void> An event raised when the set of models viewed by this view changes, only if the view is attached to a Viewport. Inherited properties Name Type Inherited from Description _cameraOn Protected boolean ViewState3d True if the camera is valid. analysisStyle Accessor ReadOnly undefined | AnalysisStyle ViewState3d areAllTileTreesLoaded Accessor ReadOnly boolean ViewState3d Returns true if all TileTrees required by this view have been loaded.Note that the map tile trees associated to the viewport rather than the view, to check themap tiles as well call Viewport.areAreAllTileTreesLoaded. auxiliaryCoordinateSystem Accessor ReadOnly AuxCoordSystemState ViewState3d get the auxiliary coordinate system state object for this ViewState. backgroundColor Accessor ReadOnly ColorDef ViewState3d Get this view's background color. camera Readonly Camera ViewState3d The camera used for this view. categorySelector Accessor CategorySelectorState ViewState3d Selects the categories that are display by this ViewState. classFullName Accessor StaticReadOnly string ViewState3d Get full BIS class name of this Entity in the form "SchemaName:ClassName". classFullName Readonly string ViewState3d The full class name in the form "schema:class". className Accessor ReadOnly string ViewState3d The name of the BIS class associated with this class. code Readonly Code ViewState3d The Code for this element description undefined | string ViewState3d details Accessor ReadOnly ViewDetails3d ViewState3d Provides access to optional detail settings for this view. displayStyle Accessor DisplayStyle3dState ViewState3d The style that controls how the contents of the view are displayed. extentLimits Accessor ExtentLimits ViewState3d Get or set the largest and smallest values allowed for the extents for this ViewStateThe default limits vary based on the type of view: - Spatial view extents cannot exceed the diameter of the earth. - Drawing view extents cannot exceed twice the longest axis of the drawing model's range. - Sheet view extents cannot exceed ten times the paper size of the sheet.Explicitly setting the extent limits overrides the default limits. extents Readonly Vector3d ViewState3d The extent of the view frustum. federationGuid Readonly undefined | string ViewState3d A FederationGuid assigned to this element by some other federated database forceMinFrontDist number ViewState3d Minimum distance for front plane globalScopeFactor Accessor ReadOnly number ViewState3d A value that represents the global scope of the view -- a value greater than one indicates that the scope of this view is global. id Readonly string ViewState3d The Id of this Entity. iModel Readonly IModelConnection ViewState3d The iModel from which this Entity was loaded isAttachedToViewport Accessor ReadOnly boolean ViewState3d Returns whether this view is currently being displayed by a Viewport. isCameraOn Accessor ReadOnly boolean ViewState3d isCameraValid Accessor ReadOnly boolean ViewState3d Determine whether the camera is valid for this view isGlobalView Accessor ReadOnly boolean ViewState3d isPrivate undefined | boolean ViewState3d jsonProperties Readonly { T } ViewState3d Optional json properties of this Entity. model Readonly string ViewState3d The ModelId of the Model containing this element modelDisplayTransformProvider Accessor undefined | ModelDisplayTransformProvider ViewState3d Specify a provider of per-model display transforms. Intended chiefly for use by model alignment tools. name Accessor ReadOnly string ViewState3d Get the name of the ViewDefinition from which this ViewState originated. onDisplayStyleChanged Readonly BeEvent<(newStyle: DisplayStyleState) => void> ViewState3d An event raised just before assignment to the ViewState3d.displayStyle property, only if the view is attached to a Viewport. onModelDisplayTransformProviderChanged Readonly BeEvent<(newProvider: undefined | ModelDisplayTransformProvider) => void> ViewState3d Event raised just before assignment to the ViewState3d.modelDisplayTransformProvider property, only if the view is attached to a Viewport. onViewedCategoriesChanged Readonly BeEvent<() => void> ViewState3d An event raised when the set of categories viewed by this view changes, only if the view is attached to a Viewport. origin Readonly Point3d ViewState3d The lower left back corner of the view frustum. parent Readonly undefined | RelatedElement ViewState3d The parent Element of this, or undefined if no parent. rotation Readonly Matrix3d ViewState3d Rotation of the view frustum. scheduleScript Accessor ReadOnly undefined | Script ViewState3d The RenderSchedule.Script that animates the contents of the view, if any. schemaName Accessor StaticReadOnly string ViewState3d The name of the BIS schema for this class. userLabel Readonly undefined | string ViewState3d A user-assigned label for this element. viewFlags Accessor ViewFlags ViewState3d Flags controlling various aspects of this view's DisplayStyleState. Defined in core/frontend/src/SpatialViewState.ts Line 26 Last Updated: 12 June, 2024