LocalBoundingVolume.kl¶
Types¶
LocalBoundingVolume (struct)¶
A LocalBoundingVolume is a union structure for expressing multiple simple bounding volume types, such as a box, a sphere, a cone, a pyramid and infinite.
Members¶
| Integer | type | The type of bounding volume (LocalBoundingVolume_infinite, LocalBoundingVolume_bBox, LocalBoundingVolume_bSphere, LocalBoundingVolume_bCone, LocalBoundingVolume_bPyramid) |
| Vec3 | pt1 | union; usage depends on bounding volume type |
| Vec3 | pt2 | union; usage depends on bounding volume type |
| Scalar | sc1 | union; usage depends on bounding volume type |
| Scalar | sc2 | union; usage depends on bounding volume type |
| Scalar | sc3 | union; usage depends on bounding volume type |
| Scalar | sc4 | union; usage depends on bounding volume type |
Methods¶
| LocalBoundingVolume ( in LocalBoundingVolume other ) | |
| LocalBoundingVolume () | |
| LocalBoundingVolume | clone ? () |
| String | getDesc ? () |
| Boolean | pyramidNearPlaneIntersectsBVol ? ( in Mat44 pyrTransform, in LocalBoundingVolume localBVol, in Mat44 transform ) |
Box methods¶
| bBoxAdd ! ( in Vec3 pt ) | |
| bBoxAddBBox ! ( in Vec3 min, in Vec3 max ) | |
| bBoxAddTransformedBBox ! ( in LocalBoundingVolume other, in Mat44 transform ) | |
| Boolean | bBoxContains ? ( in Vec3 point ) |
| Vec3 | bBoxGetMax ? () |
| Vec3 | bBoxGetMin ? () |
| Mat44 | bBoxGetOrthographicMat44 ? () |
| Scalar | bBoxGetVolume ? () |
| bBoxInit ! ( in Vec3 min, in Vec3 max ) | |
| bBoxInit ! () | |
| bBoxSetMax ! ( in Vec3 max ) | |
| bBoxSetMin ! ( in Vec3 min ) |
Cone methods¶
| Scalar | bConeGetCosHalfAngle ? () |
| Scalar | bConeGetCutoff ? () |
| Vec3 | bConeGetLocalDistanceVector ? ( in Vec3 point ) |
| Scalar | bConeGetRadAngle ? () |
| Scalar | bConeGetTanHalfAngle ? () |
| bConeInit ! ( in Scalar radAngle, in Scalar cutoff ) | |
| bConeSetCutoff ! ( in Scalar cutoff ) | |
| bConeSetRadAngle ! ( in Scalar radAngle ) |
Pyramid methods¶
| Scalar | bPyramidGetFar ? () |
| Scalar | bPyramidGetNear ? () |
| Scalar | bPyramidGetNearHeight ? () |
| Scalar | bPyramidGetNearWidth ? () |
| Mat44 | bPyramidGetPerspectiveMat44 ? () |
| bPyramidInit ! ( in Scalar nearWidth, in Scalar nearHeight, in Scalar near, in Scalar far ) | |
| bPyramidSetFar ! ( in Scalar far ) | |
| bPyramidSetNear ! ( in Scalar near ) | |
| bPyramidSetNearHeight ! ( in Scalar nearHeight ) | |
| bPyramidSetNearWidth ! ( in Scalar nearWidth ) |
Sphere methods¶
| Boolean | bSphereContains ? ( in Vec3 point ) |
| Vec3 | bSphereGetCenter ? () |
| Vec3 | bSphereGetLocalDistanceVector ? ( in Vec3 point ) |
| Scalar | bSphereGetRadius ? () |
| Scalar | bSphereGetSquaredRadius ? () |
| bSphereInit ! ( in Vec3 center, in Scalar radius ) | |
| Boolean | bSphereIntersectsBSphere ? ( in Vec3 center, in Scalar radius ) |
| bSphereSetCenter ! ( in Vec3 center ) | |
| bSphereSetRadius ! ( in Scalar radius ) |
Functions¶
transformedBBoxGetVectors¶
transformedBBoxGetVectors ( in Mat44 transform, in LocalBoundingVolume localBVol, out Vec3 origin, out Vec3 dX, out Vec3 dY, out Vec3 dZ )
Transforms the bounding box and returns a transformed origin and axis (dX, dY, dZ) (LocalBoundingVolume must be a box)
transformedBBoxGetBBox¶
transformedBBoxGetBBox ( in Mat44 transform, in LocalBoundingVolume localBVol, out Vec3 min, out Vec3 max )
Returns the global bounding box of a transformed bounding box (LocalBoundingVolume must be a box)
transformedBSphereGetBBox¶
transformedBSphereGetBBox ( in Mat44 transform, in LocalBoundingVolume localBVol, out Vec3 min, out Vec3 max )
Returns the bounding box of a transformed sphere (LocalBoundingVolume must be a sphere)
localBVolGetBSphere¶
localBVolGetBSphere ( in Mat44 transform, in LocalBoundingVolume localBVol, out Vec3 bSphereCenter, out Scalar bSphereSquaredRadius )
Returns a bounding sphere englobing the transformed LocalBoundingVolume
localBVolGetBBox¶
localBVolGetBBox ( in Mat44 transform, in LocalBoundingVolume localBVol, out Vec3 min, out Vec3 max )
Returns a bounding box englobing the transformed LocalBoundingVolume
getSquaredDistanceToTransformedBVol¶
Scalar getSquaredDistanceToTransformedBVol ( in LocalBoundingVolume localBVol, in Mat44 localBVolTransfo, in Vec3 globalPos )
Returns the distance from a point to a transformed LocalBoundingVolume