ISceneDataBounds

Description

interface Tinman.Engine.Scenes.Data.ISceneDataBounds

Extended by

SceneDataBounds sealed

This interface provides accessors for the spatial bounding volumes of a scene database and content items.

Public / Attributes

Geographic­Box


public attribute GeographicBox → (get)

value : LatLonRange

The bounding box or LatLonRange.Undefined iff there is no data or the existing data does not use this bounding volume type.

Returns the bounding box along the horizontal axes of the geographic coordinate system.

The bounding box of a ISceneDataNode node will contain all content items, including those of descendant nodes. The corresponding bounding box hierarchy is not required to be nested, though.

Geographic­Range


public attribute GeographicRange → (get)

value : RangeD

The bounding range or RangeD.Inv iff there is no data or the existing data does not use this bounding volume type.

Returns the bounding range along the vertical axis of the geographic coordinate system.

The bounding range of a ISceneDataNode node will contain all content items, including those of descendant nodes. The corresponding bounding range hierarchy is not required to be nested, though.

Global­Tile


public attribute GlobalTile → (get)

value : PyramidCoords

The coordinates of the bounding tile, PyramidCoords.All for the whole globe or PyramidCoords.Undefined iff there is no data or the existing data does not use this bounding volume type.

Returns the global cubemap bounding tile.

Local­Box


public attribute LocalBox → (get)

value : Cuboid

The bounding box or Cuboid.Undefined iff there is no data or the existing data does not use this bounding volume type.

Returns the bounding box in the local coordinate system.

The bounding box of a ISceneDataNode node will contain all content items, including those of descendant nodes. The corresponding bounding box hierarchy is not required to be nested, though.

Local­Sphere


public attribute LocalSphere → (get)

value : Sphere

The bounding sphere or Sphere.Undefined iff there is no data or the existing data does not use this bounding volume type.

Returns the bounding sphere in the local coordinate system.

The bounding sphere of a ISceneDataNode node will contain all content items, including those of descendant nodes. The corresponding bounding sphere hierarchy is not required to be nested, though.

Projected­Box


public attribute ProjectedBox → (get)

value : Box2D

The bounding box or Box2D.Inverse iff there is no data or the existing data does not use this bounding volume type.

Returns the bounding box in the projected coordinate system.

The bounding box of a ISceneDataNode node will contain all content items, including those of descendant nodes. The corresponding bounding box hierarchy is not required to be nested, though.

Extensions

Visibility2D


[Pure]
public static method Visibility2D → (3)

transform in : Mat23D

The transformation from map-space (defined by ISceneDataNode.GeorefProjected) to screen-space, defined as:
(0|0) : top-left corner of top-left pixel in viewport
(w|h) : bottom-right corner of bottom-right pixel in viewport
where w and h depict the size of the viewport in pixels.

sizeRange in : RangeD

The visible size range, given as a screen area in pixels. Set to RangeD.Max to disable the test.

viewport in : Vec2I

The viewport size, in pixels. Set to Vec2I.Zero to disable the test.

returns → int32

< 0 : if the bounds are not visible at all,
0 : if the bounds are partially visible,
> 0 : if the bounds are fully visible.

Computes the visibility of the scene database bounds in the given 2D view.

Visibility3D


[Pure]
public static method Visibility3D → (4)

transform in : AffineTransform

The transformation matrix from world-space (defined by Geocentric.For1 for ISceneDataNode.GeorefDatum and the ISceneDataNode.GeorefLocal values along the hierarchy) to viewport in space.

sizeRange in : RangeD

The visible size range, given as a screen area in pixels. Set to RangeD.Max to disable the test.

viewport in : Viewport

The viewport properties or null to disable the sizeRange in test.

frustum in : Frustum

The frustum in viewport in space to use for culling with the bounding sphere and cuboid. Set to null to disable the test.

returns → int32

< 0 : if the bounds are not visible at all,
= 0 : if the bounds are partially visible,
> 0 : if the bounds are fully visible.

Computes the visibility of the scene database bounds in the given 3D view.