cesium-native 0.59.0
Loading...
Searching...
No Matches
CesiumGltf::ExtensionExtPrimitiveVoxelsSpec Struct Reference

EXT_primitive_voxels extension for a primitive in a glTF model to indicate voxel-based volumetric data More...

#include <CesiumGltf/ExtensionExtPrimitiveVoxelsSpec.h>

Inheritance diagram for CesiumGltf::ExtensionExtPrimitiveVoxelsSpec:
CesiumUtility::ExtensibleObject CesiumGltf::ExtensionExtPrimitiveVoxels

Public Member Functions

int64_t getSizeBytes () const
 Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. This will NOT include the size of any extensions attached to the object. Calling this method may be slow as it requires traversing the object's entire structure.
 
- Public Member Functions inherited from CesiumUtility::ExtensibleObject
template<typename T>
bool hasExtension () const noexcept
 Checks if an extension exists given its static type.
 
template<typename T>
const T * getExtension () const noexcept
 Gets an extension given its static type.
 
template<typename T>
T * getExtension () noexcept
 Gets an extension given its static type.
 
const JsonValuegetGenericExtension (const std::string &extensionName) const noexcept
 Gets a generic extension with the given name as a CesiumUtility::JsonValue.
 
JsonValuegetGenericExtension (const std::string &extensionName) noexcept
 Gets a generic extension with the given name as a CesiumUtility::JsonValue.
 
template<typename T, typename... ConstructorArgumentTypes>
T & addExtension (ConstructorArgumentTypes &&... constructorArguments)
 Adds a statically-typed extension to this object.
 
template<typename T>
void removeExtension ()
 Removes a statically-typed extension from this object.
 
int64_t getSizeBytes () const
 Calculates the size in bytes of this ExtensibleObject, including all of its extras but NOT including its extensions. Calling this method may be slow as it requires traversing the entire object.
 

Public Attributes

int32_t shape = -1
 The index of the shape in KHR_implicit_shapes that the voxel grid adheres to.
 
std::vector< int64_t > dimensions
 Dimensions of the voxel grid. The values are interpreted with respect to the shape indicated by KHR_implicit_shapes.
 
std::optional< CesiumGltf::Paddingpadding
 The optional padding of the voxels.
 
std::unordered_map< std::string, std::vector< double > > noData
 A plain JSON object, where each key corresponds to an existing semantic in the primitive's attributes, and each value is the attribute's noData value. A noData value represents missing data — also known as a sentinel value — wherever it appears.
 
- Public Attributes inherited from CesiumUtility::ExtensibleObject
std::unordered_map< std::string, std::any > extensions
 The extensions attached to this object.
 
JsonValue::Object extras
 Application-specific data.
 
JsonValue::Object unknownProperties
 Unknown properties that exist on this object but do not have any representation in the statically-typed classes.
 

Static Public Attributes

static constexpr const char * TypeName = "ExtensionExtPrimitiveVoxels"
 The original name of this type.
 
static constexpr const char * ExtensionName = "EXT_primitive_voxels"
 The official name of the extension. This should be the same as its key in the extensions object.
 

Protected Member Functions

 ExtensionExtPrimitiveVoxelsSpec ()=default
 This class is not meant to be instantiated directly. Use ExtensionExtPrimitiveVoxels instead.
 

Friends

struct ExtensionExtPrimitiveVoxels
 

Detailed Description

EXT_primitive_voxels extension for a primitive in a glTF model to indicate voxel-based volumetric data

Definition at line 20 of file ExtensionExtPrimitiveVoxelsSpec.h.

Member Function Documentation

◆ getSizeBytes()

int64_t CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::getSizeBytes ( ) const
inline

Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. This will NOT include the size of any extensions attached to the object. Calling this method may be slow as it requires traversing the object's entire structure.

Definition at line 61 of file ExtensionExtPrimitiveVoxelsSpec.h.

Friends And Related Symbol Documentation

◆ ExtensionExtPrimitiveVoxels

friend struct ExtensionExtPrimitiveVoxels
friend

Definition at line 86 of file ExtensionExtPrimitiveVoxelsSpec.h.

Member Data Documentation

◆ dimensions

std::vector<int64_t> CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::dimensions

Dimensions of the voxel grid. The values are interpreted with respect to the shape indicated by KHR_implicit_shapes.

Definition at line 40 of file ExtensionExtPrimitiveVoxelsSpec.h.

◆ ExtensionName

const char* CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::ExtensionName = "EXT_primitive_voxels"
staticconstexpr

The official name of the extension. This should be the same as its key in the extensions object.

Definition at line 28 of file ExtensionExtPrimitiveVoxelsSpec.h.

◆ noData

std::unordered_map<std::string, std::vector<double> > CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::noData

A plain JSON object, where each key corresponds to an existing semantic in the primitive's attributes, and each value is the attribute's noData value. A noData value represents missing data — also known as a sentinel value — wherever it appears.

Definition at line 53 of file ExtensionExtPrimitiveVoxelsSpec.h.

◆ padding

std::optional<CesiumGltf::Padding> CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::padding

The optional padding of the voxels.

Definition at line 45 of file ExtensionExtPrimitiveVoxelsSpec.h.

◆ shape

int32_t CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::shape = -1

The index of the shape in KHR_implicit_shapes that the voxel grid adheres to.

Definition at line 34 of file ExtensionExtPrimitiveVoxelsSpec.h.

◆ TypeName

const char* CesiumGltf::ExtensionExtPrimitiveVoxelsSpec::TypeName = "ExtensionExtPrimitiveVoxels"
staticconstexpr

The original name of this type.

Definition at line 25 of file ExtensionExtPrimitiveVoxelsSpec.h.


The documentation for this struct was generated from the following file: