cesium-native 0.43.0
|
Classes for working with glTF models. More...
Classes | |
struct | Accessor |
This class is not meant to be instantiated directly. Use Accessor instead. More... | |
struct | AccessorSparse |
Sparse storage of accessor values that deviate from their initialization value. More... | |
struct | AccessorSparseIndices |
An object pointing to a buffer view containing the indices of deviating accessor values. The number of indices is equal to accessor.sparse.count . Indices MUST strictly increase. More... | |
struct | AccessorSparseValues |
An object pointing to a buffer view containing the deviating accessor values. The number of elements is equal to accessor.sparse.count times number of components. The elements have the same component type as the base accessor. The elements are tightly packed. Data MUST be aligned following the same rules as the base accessor. More... | |
struct | AccessorSpec |
A typed view into a buffer view that contains raw binary data. More... | |
struct | AccessorTypes |
Contains types that may optionally be used with AccessorView for various Accessor::componentType values. More... | |
class | AccessorView |
A view on the data of one accessor of a glTF asset. More... | |
class | AccessorWriter |
Provides write access to an AccessorView . More... | |
struct | Animation |
A keyframe animation. More... | |
struct | AnimationChannel |
An animation channel combines an animation sampler with a target property being animated. More... | |
struct | AnimationChannelTarget |
The descriptor of the animated property. More... | |
struct | AnimationSampler |
An animation sampler combines timestamps with a sequence of output values and defines an interpolation algorithm. More... | |
struct | Asset |
Metadata about the glTF asset. More... | |
struct | Buffer |
This class is not meant to be instantiated directly. Use Buffer instead. More... | |
struct | BufferCesium |
Holds Buffer properties that are specific to the glTF loader rather than part of the glTF spec. More... | |
struct | BufferSpec |
A buffer points to binary geometry, animation, or skins. More... | |
struct | BufferView |
A view into a buffer generally representing a subset of the buffer. More... | |
struct | Camera |
A camera's projection. A node MAY reference a camera to apply a transform to place the camera in the scene. More... | |
struct | CameraOrthographic |
An orthographic camera containing properties to create an orthographic projection matrix. More... | |
struct | CameraPerspective |
A perspective camera containing properties to create a perspective projection matrix. More... | |
struct | CanBeNormalized |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< glm::mat< n, n, T, P > > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< glm::vec< n, T, P > > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< int16_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< int32_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< int64_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< int8_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< PropertyArrayView< T > > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< T > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< uint16_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< uint32_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< uint64_t > |
Check if a C++ type can be normalized. More... | |
struct | CanBeNormalized< uint8_t > |
Check if a C++ type can be normalized. More... | |
struct | Class |
A class containing a set of properties. More... | |
struct | ClassProperty |
A class property. More... | |
struct | CountFromAccessor |
Visitor that retrieves the count of elements in the given accessor type as an int64_t. More... | |
struct | Enum |
An object defining the values of an enum. More... | |
struct | EnumValue |
An enum value. More... | |
struct | ExtensionBufferExtMeshoptCompression |
Compressed data for bufferView. More... | |
struct | ExtensionBufferViewExtMeshoptCompression |
Compressed data for bufferView. More... | |
struct | ExtensionCesiumPrimitiveOutline |
glTF extension for indicating that some edges of a primitive's triangles should be outlined. More... | |
struct | ExtensionCesiumRTC |
glTF CESIUM_RTC extension. More... | |
struct | ExtensionCesiumTileEdges |
CESIUM_tile_edges extension for a primitive in a glTF model. More... | |
struct | ExtensionExtInstanceFeatures |
An object describing per-instance feature IDs. More... | |
struct | ExtensionExtInstanceFeaturesFeatureId |
Feature IDs stored in a GPU mesh instancing attribute. More... | |
struct | ExtensionExtMeshFeatures |
An object describing feature IDs for a mesh primitive. More... | |
struct | ExtensionExtMeshGpuInstancing |
glTF extension defines instance attributes for a node with a mesh. More... | |
struct | ExtensionExtStructuralMetadata |
Structural metadata about a glTF element. More... | |
struct | ExtensionKhrDracoMeshCompression |
KHR_draco_mesh_compression glTF Mesh Primitive Extension. More... | |
struct | ExtensionKhrMaterialsUnlit |
glTF extension that defines the unlit material model. More... | |
struct | ExtensionKhrTextureBasisu |
glTF extension to specify textures using the KTX v2 images with Basis Universal supercompression. More... | |
struct | ExtensionKhrTextureTransform |
glTF extension that enables shifting and scaling UV coordinates on a per-texture basis More... | |
struct | ExtensionMeshPrimitiveExtStructuralMetadata |
Structural metadata about a glTF primitive. More... | |
struct | ExtensionMeshPrimitiveKhrMaterialsVariants |
KHR_materials_variants glTF Mesh Primitive Extension. More... | |
struct | ExtensionMeshPrimitiveKhrMaterialsVariantsMappingsValue |
ExtensionMeshPrimitiveKhrMaterialsVariants Mappings Value. More... | |
struct | ExtensionModelExtStructuralMetadata |
glTF extension that provides structural metadata about vertices, texels, and features in a glTF asset. More... | |
struct | ExtensionModelKhrMaterialsVariants |
glTF extension that defines a material variations for mesh primitives More... | |
struct | ExtensionModelKhrMaterialsVariantsValue |
An object defining a valid material variant. More... | |
struct | ExtensionModelMaxarMeshVariants |
glTF extension that defines mesh variants for nodes More... | |
struct | ExtensionModelMaxarMeshVariantsValue |
An object defining a valid mesh variant. More... | |
struct | ExtensionNodeMaxarMeshVariants |
MAXAR_mesh_variants node extension. More... | |
struct | ExtensionNodeMaxarMeshVariantsMappingsValue |
ExtensionNodeMaxarMeshVariants Mappings Value. More... | |
struct | ExtensionTextureWebp |
glTF extension to specify textures using the WebP image format. More... | |
struct | FeatureId |
Feature IDs stored in an attribute or texture. More... | |
struct | FeatureIdFromAccessor |
struct | FeatureIdTexture |
A texture containing feature IDs. More... | |
class | FeatureIdTextureView |
A view on the image data of FeatureIdTexture . More... | |
struct | Image |
This class is not meant to be instantiated directly. Use Image instead. More... | |
struct | ImageAsset |
A 2D image asset, including its pixel data. The image may have mipmaps, and it may be encoded in a GPU compression format. More... | |
struct | ImageAssetMipPosition |
The byte range within a buffer where this mip exists. More... | |
struct | ImageSpec |
Image data used to create a texture. Image MAY be referenced by an URI (or IRI) or a buffer view index. More... | |
struct | IndexFromAccessor |
struct | IndicesForFaceFromAccessor |
struct | InstanceAttributeSemantics |
The standard glTF instance attribute semantics from EXT_mesh_gpu_instancing plus additional instance attribute semantics from extensions. More... | |
struct | IsMetadataArray |
Check if a C++ type can be represented as an array. More... | |
struct | IsMetadataArray< PropertyArrayCopy< T > > |
Check if a C++ type can be represented as an array. More... | |
struct | IsMetadataArray< PropertyArrayView< T > > |
Check if a C++ type can be represented as an array. More... | |
struct | IsMetadataArray< T > |
Check if a C++ type can be represented as an array. More... | |
struct | IsMetadataBoolean |
Check if a C++ type can be represented as a boolean property type. More... | |
struct | IsMetadataBoolean< bool > |
Check if a C++ type can be represented as a boolean property type. More... | |
struct | IsMetadataBoolean< T > |
Check if a C++ type can be represented as a boolean property type. More... | |
struct | IsMetadataBooleanArray |
Check if a C++ type can be represented as an array of booleans property type. More... | |
struct | IsMetadataBooleanArray< PropertyArrayView< bool > > |
Check if a C++ type can be represented as an array of booleans property type. More... | |
struct | IsMetadataBooleanArray< T > |
Check if a C++ type can be represented as an array of booleans property type. More... | |
struct | IsMetadataFloating |
Check if a C++ type can be represented as a floating-point property type. More... | |
struct | IsMetadataFloating< double > |
Check if a C++ type can be represented as a floating-point property type. More... | |
struct | IsMetadataFloating< float > |
Check if a C++ type can be represented as a floating-point property type. More... | |
struct | IsMetadataFloating< T > |
Check if a C++ type can be represented as a floating-point property type. More... | |
struct | IsMetadataInteger |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< int16_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< int32_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< int64_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< int8_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< T > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< uint16_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< uint32_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< uint64_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataInteger< uint8_t > |
Check if a C++ type can be represented as an integer property type. More... | |
struct | IsMetadataMatN |
Check if a C++ type can be represented as a matN type. More... | |
struct | IsMetadataMatN< glm::mat< n, n, T, P > > |
Check if a C++ type can be represented as a matN type. More... | |
struct | IsMetadataMatN< T > |
Check if a C++ type can be represented as a matN type. More... | |
struct | IsMetadataNumeric |
Check if a C++ type can be represented as a numeric property, i.e. a scalar / vecN / matN type. More... | |
struct | IsMetadataNumeric< T > |
Check if a C++ type can be represented as a numeric property, i.e. a scalar / vecN / matN type. More... | |
struct | IsMetadataNumericArray |
Check if a C++ type can be represented as an array of numeric elements property type. More... | |
struct | IsMetadataNumericArray< PropertyArrayCopy< T > > |
Check if a C++ type can be represented as an array of numeric elements property type. More... | |
struct | IsMetadataNumericArray< PropertyArrayView< T > > |
Check if a C++ type can be represented as an array of numeric elements property type. More... | |
struct | IsMetadataNumericArray< T > |
Check if a C++ type can be represented as an array of numeric elements property type. More... | |
struct | IsMetadataScalar |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< double > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< float > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< int16_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< int32_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< int64_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< int8_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< T > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< uint16_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< uint32_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< uint64_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataScalar< uint8_t > |
Check if a C++ type can be represented as a scalar property type. More... | |
struct | IsMetadataString |
Check if a C++ type can be represented as a string property type. More... | |
struct | IsMetadataString< std::string_view > |
Check if a C++ type can be represented as a string property type. More... | |
struct | IsMetadataString< T > |
Check if a C++ type can be represented as a string property type. More... | |
struct | IsMetadataStringArray |
Check if a C++ type can be represented as an array of strings property type. More... | |
struct | IsMetadataStringArray< PropertyArrayView< std::string_view > > |
Check if a C++ type can be represented as an array of strings property type. More... | |
struct | IsMetadataStringArray< T > |
Check if a C++ type can be represented as an array of strings property type. More... | |
struct | IsMetadataVecN |
Check if a C++ type can be represented as a vecN type. More... | |
struct | IsMetadataVecN< glm::vec< n, T, P > > |
Check if a C++ type can be represented as a vecN type. More... | |
struct | IsMetadataVecN< T > |
Check if a C++ type can be represented as a vecN type. More... | |
class | KhrTextureTransform |
A utility class that parses KHR_texture_transform parameters and transforms input texture coordinates. More... | |
struct | Ktx2TranscodeTargets |
For each possible input transmission format, this struct names the ideal target gpu-compressed pixel format to transcode to. More... | |
struct | Material |
The material appearance of a primitive. More... | |
struct | MaterialNormalTextureInfo |
Material Normal Texture Info. More... | |
struct | MaterialOcclusionTextureInfo |
Material Occlusion Texture Info. More... | |
struct | MaterialPBRMetallicRoughness |
A set of parameter values that are used to define the metallic-roughness material model from Physically-Based Rendering (PBR) methodology. More... | |
struct | Mesh |
A set of primitives to be rendered. Its global transform is defined by a node that references it. More... | |
struct | MeshPrimitive |
Geometry to be rendered with the given material. More... | |
struct | MetadataArrayType |
Retrieve the component type of a metadata array. More... | |
struct | MetadataArrayType< CesiumGltf::PropertyArrayCopy< T > > |
Retrieve the component type of a metadata array. More... | |
struct | MetadataArrayType< CesiumGltf::PropertyArrayView< T > > |
Retrieve the component type of a metadata array. More... | |
struct | MetadataConversions |
Default conversion between two types. No actual conversion is defined. This returns std::nullopt to indicate the conversion was not successful. More... | |
struct | MetadataConversions< bool, std::string > |
Converts from std::string to a bool. More... | |
struct | MetadataConversions< bool, std::string_view > |
Converts from std::string_view to a bool. More... | |
struct | MetadataConversions< bool, TFrom, std::enable_if_t< CesiumGltf::IsMetadataScalar< TFrom >::value > > |
Converts from a scalar to a bool. More... | |
struct | MetadataConversions< double, bool > |
Converts from a boolean to a double. More... | |
struct | MetadataConversions< double, float > |
Converts from a float to a double. More... | |
struct | MetadataConversions< double, std::string > |
Converts from std::string to a double. More... | |
struct | MetadataConversions< double, std::string_view > |
Converts from std::string_view to a double. More... | |
struct | MetadataConversions< double, TFrom, std::enable_if_t< CesiumGltf::IsMetadataInteger< TFrom >::value > > |
Converts from any integer type to a double. More... | |
struct | MetadataConversions< float, bool > |
Converts from a boolean to a float. More... | |
struct | MetadataConversions< float, double > |
Converts from a double to a float. More... | |
struct | MetadataConversions< float, std::string > |
Converts from a std::string to a float. More... | |
struct | MetadataConversions< float, std::string_view > |
Converts from a std::string_view to a float. More... | |
struct | MetadataConversions< float, TFrom, std::enable_if_t< CesiumGltf::IsMetadataInteger< TFrom >::value > > |
Converts from an integer type to a float. More... | |
struct | MetadataConversions< std::string, bool > |
Converts from a boolean to a string. More... | |
struct | MetadataConversions< std::string, std::string_view > |
Converts from a std::string_view to a std::string. More... | |
struct | MetadataConversions< std::string, TFrom, std::enable_if_t< IsMetadataScalar< TFrom >::value > > |
Converts from a scalar to a string. More... | |
struct | MetadataConversions< std::string, TFrom, std::enable_if_t< IsMetadataVecN< TFrom >::value||IsMetadataMatN< TFrom >::value > > |
Converts from a glm::vecN or glm::matN to a string. More... | |
struct | MetadataConversions< T, T > |
Trivially converts any type to itself. More... | |
struct | MetadataConversions< TTo, bool, std::enable_if_t< CesiumGltf::IsMetadataInteger< TTo >::value > > |
Converts from a boolean to an integer type. More... | |
struct | MetadataConversions< TTo, bool, std::enable_if_t< IsMetadataMatN< TTo >::value > > |
Converts from a boolean to a matN. More... | |
struct | MetadataConversions< TTo, bool, std::enable_if_t< IsMetadataVecN< TTo >::value > > |
Converts from a boolean to a vecN. More... | |
struct | MetadataConversions< TTo, std::string, std::enable_if_t< CesiumGltf::IsMetadataInteger< TTo >::value &&!std::is_signed_v< TTo > > > |
Converts from std::string to an unsigned integer. More... | |
struct | MetadataConversions< TTo, std::string, std::enable_if_t< CesiumGltf::IsMetadataInteger< TTo >::value &&std::is_signed_v< TTo > > > |
Converts from std::string to a signed integer. More... | |
struct | MetadataConversions< TTo, std::string_view, std::enable_if_t< CesiumGltf::IsMetadataInteger< TTo >::value > > |
Converts from std::string_view to an integer. More... | |
struct | MetadataConversions< TTo, TFrom, std::enable_if_t< CesiumGltf::IsMetadataInteger< TTo >::value &&CesiumGltf::IsMetadataFloating< TFrom >::value > > |
Converts from a floating-point type to an integer. More... | |
struct | MetadataConversions< TTo, TFrom, std::enable_if_t< CesiumGltf::IsMetadataInteger< TTo >::value &&CesiumGltf::IsMetadataInteger< TFrom >::value &&!std::is_same_v< TTo, TFrom > > > |
Converts from one integer type to another. More... | |
struct | MetadataConversions< TTo, TFrom, std::enable_if_t< CesiumGltf::IsMetadataMatN< TTo >::value &&CesiumGltf::IsMetadataMatN< TFrom >::value &&!std::is_same_v< TTo, TFrom > > > |
Converts from a matN type to another matN type. More... | |
struct | MetadataConversions< TTo, TFrom, std::enable_if_t< CesiumGltf::IsMetadataMatN< TTo >::value &&CesiumGltf::IsMetadataScalar< TFrom >::value > > |
struct | MetadataConversions< TTo, TFrom, std::enable_if_t< CesiumGltf::IsMetadataVecN< TTo >::value &&CesiumGltf::IsMetadataScalar< TFrom >::value > > |
Converts from a scalar type to a vecN. More... | |
struct | MetadataConversions< TTo, TFrom, std::enable_if_t< CesiumGltf::IsMetadataVecN< TTo >::value &&CesiumGltf::IsMetadataVecN< TFrom >::value &&!std::is_same_v< TTo, TFrom > > > |
Converts from a vecN type to another vecN type. More... | |
struct | Model |
This class is not meant to be instantiated directly. Use Model instead. More... | |
struct | ModelSpec |
The root object for a glTF asset. More... | |
struct | NamedObject |
The base class for objects in a glTF that have a name. More... | |
struct | Node |
A node in the node hierarchy. When the node contains skin , all mesh.primitives MUST contain JOINTS_0 and WEIGHTS_0 attributes. A node MAY have either a matrix or any combination of translation /rotation /scale (TRS) properties. TRS properties are converted to matrices and postmultiplied in the T * R * S order to compose the transformation matrix; first the scale is applied to the vertices, then the rotation, and then the translation. If none are provided, the transform is the identity. When a node is targeted for animation (referenced by an animation.channel.target), matrix MUST NOT be present. More... | |
class | PropertyArrayCopy |
A copy of an array element of a PropertyTableProperty or PropertyTextureProperty . More... | |
class | PropertyArrayView |
A view on an array element of a PropertyTableProperty or PropertyTextureProperty . More... | |
class | PropertyArrayView< bool > |
A view on a bool array element of a PropertyTableProperty or PropertyTextureProperty . More... | |
class | PropertyArrayView< std::string_view > |
A view on a string array element of a PropertyTableProperty or PropertyTextureProperty . More... | |
struct | PropertyAttribute |
Properties conforming to a class, organized as property values stored in attributes. More... | |
struct | PropertyAttributeProperty |
An attribute containing property values. More... | |
class | PropertyAttributePropertyView |
A view of the data specified by a PropertyAttributeProperty . More... | |
class | PropertyAttributePropertyView< ElementType, false > |
A view of the non-normalized data specified by a PropertyAttributeProperty . More... | |
class | PropertyAttributePropertyView< ElementType, true > |
A view of the normalized data specified by a PropertyAttributeProperty . More... | |
class | PropertyAttributePropertyViewStatus |
Indicates the status of a property attribute property view. More... | |
class | PropertyAttributeView |
A view on a PropertyAttribute . More... | |
struct | PropertyTable |
Properties conforming to a class, organized as property values stored in binary columnar arrays. More... | |
struct | PropertyTableProperty |
An array of binary property values. More... | |
class | PropertyTablePropertyView |
A view on the data of the PropertyTableProperty that is created by a PropertyTableView . More... | |
class | PropertyTablePropertyView< ElementType, false > |
A view on the data of the PropertyTableProperty that is created by a PropertyTableView . More... | |
class | PropertyTablePropertyView< ElementType, true > |
A view on the normalized data of the PropertyTableProperty that is created by a PropertyTableView . More... | |
class | PropertyTablePropertyViewStatus |
Indicates the status of a property table property view. More... | |
class | PropertyTableView |
Utility to retrieve the data of PropertyTable . More... | |
struct | PropertyTexture |
Properties conforming to a class, organized as property values stored in textures. More... | |
struct | PropertyTextureProperty |
A texture containing property values. More... | |
class | PropertyTexturePropertyView |
A view of the data specified by a PropertyTextureProperty . More... | |
class | PropertyTexturePropertyView< ElementType, false > |
A view of the non-normalized data specified by a PropertyTextureProperty . More... | |
class | PropertyTexturePropertyView< ElementType, true > |
A view of the normalized data specified by a PropertyTextureProperty . More... | |
class | PropertyTexturePropertyViewStatus |
Indicates the status of a property texture property view. More... | |
class | PropertyTextureView |
A view on a PropertyTexture . More... | |
class | PropertyView |
Represents a metadata property in EXT_structural_metadata. More... | |
class | PropertyView< bool > |
Represents a boolean metadata property in EXT_structural_metadata. More... | |
class | PropertyView< ElementType, false > |
Represents a non-normalized metadata property in EXT_structural_metadata. More... | |
class | PropertyView< ElementType, true > |
Represents a normalized metadata property in EXT_structural_metadata. More... | |
class | PropertyView< PropertyArrayView< bool > > |
Represents a boolean array metadata property in EXT_structural_metadata. More... | |
class | PropertyView< PropertyArrayView< ElementType >, false > |
Represents a non-normalized array metadata property in EXT_structural_metadata. More... | |
class | PropertyView< PropertyArrayView< ElementType >, true > |
Represents a normalized array metadata property in EXT_structural_metadata. More... | |
class | PropertyView< PropertyArrayView< std::string_view > > |
Represents a string array metadata property in EXT_structural_metadata. More... | |
class | PropertyView< std::string_view > |
Represents a string metadata property in EXT_structural_metadata. More... | |
class | PropertyViewStatus |
Indicates the status of a property view. More... | |
struct | Sampler |
Texture sampler properties for filtering and wrapping modes. More... | |
struct | Scene |
The root nodes of a scene. More... | |
struct | Schema |
An object defining classes and enums. More... | |
struct | Skin |
Joints and matrices defining a skin. More... | |
struct | StatusFromAccessor |
Visitor that retrieves the status from the given accessor. Returns an invalid status for a std::monostate (interpreted as a nonexistent accessor). More... | |
struct | SupportedGpuCompressedPixelFormats |
Represents the status of support for all GpuCompressedPixelFormat s on a client platform. More... | |
struct | TexCoordFromAccessor |
struct | Texture |
A texture and its sampler. More... | |
struct | TextureInfo |
Reference to a texture. More... | |
class | TextureView |
A view into the texture data of a single texture from a Model. More... | |
struct | TextureViewOptions |
Describes options for constructing a view on a glTF texture. More... | |
struct | TypeToNormalizedType |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< glm::mat< N, N, T, Q > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< glm::vec< N, T, Q > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< int16_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< int32_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< int64_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< int8_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< glm::mat< N, N, T, Q > > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< glm::vec< N, T, Q > > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< int16_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< int32_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< int64_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< int8_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< uint16_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< uint32_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< uint64_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< PropertyArrayView< uint8_t > > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< uint16_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< uint32_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< uint64_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToNormalizedType< uint8_t > |
Convert an integer numeric type to the corresponding representation as a double type. Doubles are preferred over floats to maintain more precision. More... | |
struct | TypeToPropertyType |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< bool > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< double > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< float > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< glm::mat< 2, 2, T, P > > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< glm::mat< 3, 3, T, P > > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< glm::mat< 4, 4, T, P > > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< glm::vec< 2, T, P > > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< glm::vec< 3, T, P > > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< glm::vec< 4, T, P > > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< int16_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< int32_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< int64_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< int8_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< std::string_view > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< uint16_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< uint32_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< uint64_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | TypeToPropertyType< uint8_t > |
Convert a C++ type to PropertyType and PropertyComponentType. More... | |
struct | VertexAttributeSemantics |
The standard glTF vertex attribute semantics from the specification plus additional vertex attribute semantics from extensions. More... | |
Typedefs | |
typedef AccessorView< AccessorTypes::VEC3< float > > | PositionAccessorType |
typedef AccessorView< AccessorTypes::VEC3< float > > | NormalAccessorType |
typedef std::variant< AccessorView< int8_t >, AccessorView< uint8_t >, AccessorView< int16_t >, AccessorView< uint16_t >, AccessorView< uint32_t >, AccessorView< float > > | FeatureIdAccessorType |
typedef std::variant< std::monostate, AccessorView< uint8_t >, AccessorView< uint16_t >, AccessorView< uint32_t > > | IndexAccessorType |
typedef std::variant< AccessorView< AccessorTypes::VEC2< uint8_t > >, AccessorView< AccessorTypes::VEC2< uint16_t > >, AccessorView< AccessorTypes::VEC2< float > > > | TexCoordAccessorType |
typedef std::variant< AccessorView< AccessorTypes::VEC4< uint8_t > >, AccessorView< AccessorTypes::VEC4< int8_t > >, AccessorView< AccessorTypes::VEC4< uint16_t > >, AccessorView< AccessorTypes::VEC4< int16_t > >, AccessorView< AccessorTypes::VEC4< float > > > | QuaternionAccessorType |
Type definition for quaternion accessors, as used in ExtMeshGpuInstancing rotations and animation samplers. | |
template<typename T > | |
using | PropertyValueViewToCopy |
Transforms a property value type from a view to an equivalent type that owns the data it is viewing. For most property types this is an identity transformation, because most property types are held by value. However, it transforms numeric PropertyArrayView<T> to PropertyArrayCopy<T> because a PropertyArrayView<T> only has a pointer to the value it is viewing. | |
template<typename T > | |
using | PropertyValueCopyToView |
Transforms a property value type from a copy that owns the data it is viewing to a view into that data. For most property types this is an identity transformation, because most property types are held by value. However, it transforms numeric PropertyArrayCopy<T> to PropertyArrayView<T> . | |
typedef int32_t | PropertyViewStatusType |
The type used for fields of PropertyViewStatus. | |
Functions | |
PositionAccessorType | getPositionAccessorView (const Model &model, const MeshPrimitive &primitive) |
NormalAccessorType | getNormalAccessorView (const Model &model, const MeshPrimitive &primitive) |
FeatureIdAccessorType | getFeatureIdAccessorView (const Model &model, const MeshPrimitive &primitive, int32_t featureIdAttributeIndex) |
FeatureIdAccessorType | getFeatureIdAccessorView (const Model &model, const Node &node, int32_t featureIdAttributeIndex) |
IndexAccessorType | getIndexAccessorView (const Model &model, const MeshPrimitive &primitive) |
TexCoordAccessorType | getTexCoordAccessorView (const Model &model, const MeshPrimitive &primitive, int32_t textureCoordinateSetIndex) |
QuaternionAccessorType | getQuaternionAccessorView (const Model &model, const Accessor *accessor) |
Obtains a QuaternionAccessorType from the given Accessor on the given Model. | |
QuaternionAccessorType | getQuaternionAccessorView (const Model &model, int32_t accessorIndex) |
Obtains a QuaternionAccessorType from the given Accessor on the given Model. | |
template<typename TCallback > | |
std::invoke_result_t< TCallback, AccessorView< AccessorTypes::SCALAR< float > > > | createAccessorView (const Model &model, const Accessor &accessor, TCallback &&callback) |
Creates an appropriate AccessorView for a given accessor. | |
template<typename TCallback > | |
std::invoke_result_t< TCallback, AccessorView< AccessorTypes::SCALAR< float > > > | createAccessorView (const Model &model, int32_t accessorIndex, TCallback &&callback) |
Creates an appropriate AccessorView for a given accessor. | |
template<typename T > | |
bool | operator== (const PropertyArrayView< T > &lhs, const PropertyArrayView< T > &rhs) |
Compares two PropertyArrayView instances by comparing their values. If the two arrays aren't the same size, this comparison will return false. | |
template<typename T > | |
bool | operator== (const PropertyArrayView< T > &lhs, const PropertyArrayCopy< T > &rhs) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and comparing the two. | |
template<typename T > | |
bool | operator== (const PropertyArrayCopy< T > &lhs, const PropertyArrayView< T > &rhs) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and comparing the two. | |
template<typename T > | |
bool | operator== (const PropertyArrayCopy< T > &lhs, const PropertyArrayCopy< T > &rhs) |
Compares two PropertyArrayCopy instances by creating views from each instance and comparing the two. | |
template<typename T > | |
bool | operator!= (const PropertyArrayView< T > &lhs, const PropertyArrayView< T > &rhs) |
Compares two PropertyArrayView instances and returns the inverse. | |
template<typename T > | |
bool | operator!= (const PropertyArrayView< T > &lhs, const PropertyArrayCopy< T > &rhs) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and returning the inverse of comparing the two. | |
template<typename T > | |
bool | operator!= (const PropertyArrayCopy< T > &lhs, const PropertyArrayView< T > &rhs) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and returning the inverse of comparing the two. | |
template<typename T > | |
bool | operator!= (const PropertyArrayCopy< T > &lhs, const PropertyArrayCopy< T > &rhs) |
Compares two PropertyArrayCopy instances by creating views from both instances and returning the inverse of comparing the two. | |
PropertyType | getAccessorTypeAsPropertyType (const Accessor &accessor) |
Attempts to obtain a PropertyType from the type field of the accessor. | |
PropertyComponentType | getAccessorComponentTypeAsPropertyComponentType (const Accessor &accessor) |
Attempts to obtain a PropertyComponentType from the componentType field of the accessor. | |
int64_t | getOffsetTypeSize (PropertyComponentType offsetType) noexcept |
Returns the size in bytes of a PropertyComponentType used as the arrayOffsetType in the constructor of PropertyTablePropertyView. | |
template<typename ElementType > | |
ElementType | assembleScalarValue (const std::span< uint8_t > bytes) noexcept |
Attempts to obtain a scalar value from the given span of bytes. | |
template<typename ElementType > | |
ElementType | assembleVecNValue (const std::span< uint8_t > bytes) noexcept |
Attempts to obtain a vector value from the given span of bytes. | |
template<typename T > | |
PropertyArrayCopy< T > | assembleArrayValue (const std::span< uint8_t > bytes) noexcept |
Attempts to obtain an array value from the given span of bytes. | |
template<typename ElementType > | |
PropertyValueViewToCopy< ElementType > | assembleValueFromChannels (const std::span< uint8_t > bytes) noexcept |
Assembles the given type from the provided channel values of sampling a texture. | |
template<typename T > | |
double | normalize (T value) |
Normalizes the given value between [0, 1] if unsigned or [-1, 1] if signed, based on the type's maximum value. | |
template<glm::length_t N, typename T > | |
glm::vec< N, double > | normalize (glm::vec< N, T > value) |
Normalizes the given vector's components between [0, 1] if unsigned or [-1, 1] if signed, based on the type's maximum value. | |
template<glm::length_t N, typename T > | |
glm::mat< N, N, double > | normalize (glm::mat< N, N, T > value) |
Normalizes the given matrix's components between [0, 1] if unsigned or [-1, 1] if signed, based on the type's maximum value. | |
template<typename T > | |
T | applyScale (const T &value, const T &scale) |
Multiplies each component of the value by the given scale factor. | |
template<typename T > | |
T | transformValue (const T &value, const std::optional< T > &offset, const std::optional< T > &scale) |
Transforms the value by optional offset and scale factors. | |
template<typename T > | |
PropertyArrayCopy< T > | transformArray (const PropertyArrayView< T > &value, const std::optional< PropertyArrayView< T > > &offset, const std::optional< PropertyArrayView< T > > &scale) |
Transforms each element of an array of values by optional offset and scale factors. See transformValue. | |
template<typename T , typename NormalizedType = typename TypeToNormalizedType<T>::type> | |
PropertyArrayCopy< NormalizedType > | transformNormalizedArray (const PropertyArrayView< T > &value, const std::optional< PropertyArrayView< NormalizedType > > &offset, const std::optional< PropertyArrayView< NormalizedType > > &scale) |
Normalizes each element of an array of values and transforms them by optional offset and scale factors. See transformValue and transformArray. | |
template<glm::length_t N, typename T > | |
PropertyArrayCopy< glm::vec< N, double > > | transformNormalizedVecNArray (const PropertyArrayView< glm::vec< N, T > > &value, const std::optional< PropertyArrayView< glm::vec< N, double > > > &offset, const std::optional< PropertyArrayView< glm::vec< N, double > > > &scale) |
Normalizes each element of an array of vectors and transforms them by optional offset and scale factors. See transformNormalizedArray. | |
template<glm::length_t N, typename T > | |
PropertyArrayCopy< glm::mat< N, N, double > > | transformNormalizedMatNArray (const PropertyArrayView< glm::mat< N, N, T > > &value, const std::optional< PropertyArrayView< glm::mat< N, N, double > > > &offset, const std::optional< PropertyArrayView< glm::mat< N, N, double > > > &scale) |
Normalizes each element of an array of matrices and transforms them by optional offset and scale factors. See transformNormalizedArray. | |
std::string | convertPropertyTypeToString (PropertyType type) |
Converts a PropertyType value to a string. | |
PropertyType | convertStringToPropertyType (const std::string &str) |
Converts a string into a PropertyType. | |
std::string | convertPropertyComponentTypeToString (PropertyComponentType componentType) |
Converts a PropertyComponentType value to a string. | |
PropertyComponentType | convertStringToPropertyComponentType (const std::string &str) |
Converts a string into a PropertyComponentType. | |
PropertyComponentType | convertArrayOffsetTypeStringToPropertyComponentType (const std::string &str) |
Converts a string listed in PropertyTableProperty::ArrayOffsetType to its corresponding PropertyComponentType. | |
PropertyComponentType | convertStringOffsetTypeStringToPropertyComponentType (const std::string &str) |
Converts a string listed in PropertyTableProperty::StringOffsetType to its corresponding PropertyComponentType. | |
PropertyComponentType | convertAccessorComponentTypeToPropertyComponentType (int componentType) |
Converts a integer type ID listed in AccessorSpec::ComponentType to its corresponding PropertyComponentType. | |
bool | isPropertyTypeVecN (PropertyType type) |
Checks if the given PropertyType represents a vector with any number of components. | |
bool | isPropertyTypeMatN (PropertyType type) |
Checks if the given PropertyType represents a matrix with any number of components. | |
bool | isPropertyComponentTypeInteger (PropertyComponentType componentType) |
Checks if the given PropertyComponentType represents an integer value. | |
glm::length_t | getDimensionsFromPropertyType (PropertyType type) |
Obtains the number of dimensions in the given PropertyType. | |
glm::length_t | getComponentCountFromPropertyType (PropertyType type) |
Obtains the number of components in the given PropertyType. | |
size_t | getSizeOfComponentType (PropertyComponentType componentType) |
Obtains the size in bytes of a value of this PropertyComponentType. | |
template<typename T > | |
PropertyViewStatusType | validatePropertyType (const ClassProperty &classProperty) |
Validates a ClassProperty, checking for any type mismatches. | |
template<typename T > | |
PropertyViewStatusType | validateArrayPropertyType (const ClassProperty &classProperty) |
Validates a ClassProperty representing an array, checking for any type mismatches. | |
template<typename ElementType > | |
int64_t | getCount (std::optional< std::vector< std::byte > > &buffer) |
Obtains the number of values of type ElementType that could fit in the buffer. | |
double | applySamplerWrapS (const double u, const int32_t wrapS) |
Applies a sampler's WrapS value to the given U component of a texture coordinate. | |
double | applySamplerWrapT (const double v, const int32_t wrapT) |
Applies a sampler's WrapT value to the given V component of a texture coordinate. | |
Classes for working with glTF models.
typedef std::variant< AccessorView<int8_t>, AccessorView<uint8_t>, AccessorView<int16_t>, AccessorView<uint16_t>, AccessorView<uint32_t>, AccessorView<float> > CesiumGltf::FeatureIdAccessorType |
Type definition for all kinds of feature ID attribute accessors.
Definition at line 84 of file AccessorUtility.h.
typedef std::variant< std::monostate, AccessorView<uint8_t>, AccessorView<uint16_t>, AccessorView<uint32_t> > CesiumGltf::IndexAccessorType |
Type definition for all kinds of index accessors. std::monostate indicates a nonexistent accessor, which can happen (and is valid) if the primitive vertices are defined without an index buffer.
Definition at line 148 of file AccessorUtility.h.
typedef AccessorView<AccessorTypes::VEC3<float> > CesiumGltf::NormalAccessorType |
Type definition for normal accessor.
Definition at line 64 of file AccessorUtility.h.
typedef AccessorView<AccessorTypes::VEC3<float> > CesiumGltf::PositionAccessorType |
Type definition for position accessor.
Definition at line 51 of file AccessorUtility.h.
using CesiumGltf::PropertyValueCopyToView |
Transforms a property value type from a copy that owns the data it is viewing to a view into that data. For most property types this is an identity transformation, because most property types are held by value. However, it transforms numeric PropertyArrayCopy<T>
to PropertyArrayView<T>
.
See propertyValueCopyToView
.
T | The type of the property value copy. |
Definition at line 585 of file PropertyTypeTraits.h.
using CesiumGltf::PropertyValueViewToCopy |
Transforms a property value type from a view to an equivalent type that owns the data it is viewing. For most property types this is an identity transformation, because most property types are held by value. However, it transforms numeric PropertyArrayView<T>
to PropertyArrayCopy<T>
because a PropertyArrayView<T>
only has a pointer to the value it is viewing.
See propertyValueViewToCopy
.
T | The type of the property value view. |
Definition at line 568 of file PropertyTypeTraits.h.
typedef int32_t CesiumGltf::PropertyViewStatusType |
The type used for fields of PropertyViewStatus.
Definition at line 17 of file PropertyView.h.
typedef std::variant< AccessorView<AccessorTypes::VEC4<uint8_t> >, AccessorView<AccessorTypes::VEC4<int8_t> >, AccessorView<AccessorTypes::VEC4<uint16_t> >, AccessorView<AccessorTypes::VEC4<int16_t> >, AccessorView<AccessorTypes::VEC4<float> > > CesiumGltf::QuaternionAccessorType |
Type definition for quaternion accessors, as used in ExtMeshGpuInstancing rotations and animation samplers.
Definition at line 371 of file AccessorUtility.h.
typedef std::variant< AccessorView<AccessorTypes::VEC2<uint8_t> >, AccessorView<AccessorTypes::VEC2<uint16_t> >, AccessorView<AccessorTypes::VEC2<float> > > CesiumGltf::TexCoordAccessorType |
Type definition for all kinds of texture coordinate (TEXCOORD_n) accessors.
Definition at line 300 of file AccessorUtility.h.
|
strong |
Indicates the status of an accessor view.
The AccessorView
constructor always completes successfully. However, it may not always reflect the actual content of the Accessor
, but instead indicate that its AccessorView::size
is 0. This enumeration provides the reason.
Enumerator | |
---|---|
Valid | This accessor is valid and ready to use. |
InvalidAccessorIndex | The accessor index does not refer to a valid accessor. |
InvalidBufferViewIndex | The accessor's bufferView index does not refer to a valid bufferView. |
InvalidBufferIndex | The accessor's bufferView's buffer index does not refer to a valid buffer. |
BufferViewTooSmall | The accessor is too large to fit in its bufferView. |
BufferTooSmall | The accessor's bufferView is too large to fit in its buffer. |
WrongSizeT | The |
InvalidType | The |
InvalidComponentType | The |
InvalidByteStride | The |
Definition at line 19 of file AccessorView.h.
|
strong |
The status of a feature ID texture view.
The FeatureIdTextureView
constructor always completes successfully, but it may not always reflect the actual content of the FeatureIdTexture
. This enumeration provides the reason.
Definition at line 19 of file FeatureIdTextureView.h.
|
strong |
Supported GPU compressed pixel formats.
Enumerator | |
---|---|
NONE | The data is uncompressed. |
ETC1_RGB | The data is an ETC1-compressed RGB888 texture. |
ETC2_RGBA | The data is an ETC2-compressed RGBA8888 texture. |
BC1_RGB | The data is a BC1-compressed RGB565 texture. |
BC3_RGBA | The data is a BC3-compressed RGBA5658 texture. |
BC4_R | The data is a BC4-compressed R8 texture. |
BC5_RG | The data is a BC5-compressed RG88 texture. |
BC7_RGBA | The data is a BC7-compressed RGBA8888 texture. |
PVRTC1_4_RGB | The data is a PVRTC1-compressed RGB444 texture. |
PVRTC1_4_RGBA | The data is a PVRTC1-compressed RGBA4444 texture. |
ASTC_4x4_RGBA | The data is a ASTC-compressed RGBA texture with a 4x4 block footprint. |
PVRTC2_4_RGB | The data is a PVRTC2-compressed RGB444 texture. |
PVRTC2_4_RGBA | The data is a PVRTC2-compressed RGBA4444 texture. |
ETC2_EAC_R11 | The data is a ETC2 R11 EAC-compressed texture with a single channel. |
ETC2_EAC_RG11 | The data is a ETC2 RG11 EAC-compressed texture with two channels. |
Definition at line 10 of file Ktx2TranscodeTargets.h.
|
strong |
The status of a parsed KHR_texture_transform.
The KhrTextureTransform
constructor always completes successfully, but it may not always reflect the actual transform if errors occur. This enumeration provides the reason.
Definition at line 15 of file KhrTextureTransform.h.
|
strong |
Indicates the status of a property attribute view.
The PropertyAttributeView
constructor always completes successfully. However it may not always reflect the actual content of the PropertyAttribute
. This enumeration provides the reason.
Definition at line 18 of file PropertyAttributeView.h.
|
strong |
The possible types of a property component.
Definition at line 63 of file PropertyType.h.
|
strong |
Indicates the status of a property table view.
The PropertyTableView
constructor always completes successfully. However, it may not always reflect the actual content of the PropertyTable
, but instead indicate that its PropertyTableView::size
is 0. This enumeration provides the reason.
Definition at line 22 of file PropertyTableView.h.
|
strong |
Indicates the status of a property texture view.
The PropertyTextureView
constructor always completes successfully. However it may not always reflect the actual content of the PropertyTexture
. This enumeration provides the reason.
Definition at line 19 of file PropertyTextureView.h.
|
strong |
The possible types of a property in a PropertyTableView.
Definition at line 13 of file PropertyType.h.
|
strong |
Indicates the status of a texture view.
The TextureView
constructor always completes successfully. However it may not always reflect the actual content of the corresponding texture. This enumeration provides the reason.
Definition at line 57 of file TextureView.h.
double CesiumGltf::applySamplerWrapS | ( | const double | u, |
const int32_t | wrapS ) |
Applies a sampler's WrapS value to the given U component of a texture coordinate.
u | The U coordinate to apply the sampler wrap value to. |
wrapS | The sampler's WrapS value, matching a member of Sampler::WrapS, to apply. |
double CesiumGltf::applySamplerWrapT | ( | const double | v, |
const int32_t | wrapT ) |
Applies a sampler's WrapT value to the given V component of a texture coordinate.
v | The V coordinate to apply the sampler wrap value to. |
wrapT | The sampler's WrapT value, matching a member of Sampler::WrapT, to apply. |
T CesiumGltf::applyScale | ( | const T & | value, |
const T & | scale ) |
Multiplies each component of the value by the given scale factor.
value | The value to scale. |
scale | The scale factor to apply to the value. |
Definition at line 73 of file PropertyTransformations.h.
|
noexcept |
Attempts to obtain an array value from the given span of bytes.
T | The element type to read from bytes . |
bytes | A span of bytes to convert into an array value. |
Definition at line 183 of file PropertyTexturePropertyView.h.
|
noexcept |
Attempts to obtain a scalar value from the given span of bytes.
ElementType | The scalar value type to read from bytes . |
bytes | A span of bytes to convert into a scalar value. |
ElementType
. Definition at line 94 of file PropertyTexturePropertyView.h.
|
noexcept |
Assembles the given type from the provided channel values of sampling a texture.
ElementType | The type of element to assemble. |
bytes | The byte values of the sampled channels of the texture. |
ElementType
. Definition at line 213 of file PropertyTexturePropertyView.h.
|
noexcept |
Attempts to obtain a vector value from the given span of bytes.
ElementType | The vector value type to read from bytes . |
bytes | A span of bytes to convert into a vector value. |
ElementType
. Definition at line 128 of file PropertyTexturePropertyView.h.
PropertyComponentType CesiumGltf::convertAccessorComponentTypeToPropertyComponentType | ( | int | componentType | ) |
Converts a integer type ID listed in AccessorSpec::ComponentType to its corresponding PropertyComponentType.
componentType | The integer ID to convert to a PropertyComponentType. |
PropertyComponentType CesiumGltf::convertArrayOffsetTypeStringToPropertyComponentType | ( | const std::string & | str | ) |
Converts a string listed in PropertyTableProperty::ArrayOffsetType to its corresponding PropertyComponentType.
str | The string to convert to a PropertyComponentType. |
std::string CesiumGltf::convertPropertyComponentTypeToString | ( | PropertyComponentType | componentType | ) |
Converts a PropertyComponentType value to a string.
For example, PropertyComponentType::Uint8 will become "UINT8"
.
componentType | The type to convert to a string. |
"NONE"
if no conversion is possible. std::string CesiumGltf::convertPropertyTypeToString | ( | PropertyType | type | ) |
Converts a PropertyType value to a string.
For example, PropertyType::Mat3 will become "MAT3"
.
type | The type to convert to a string. |
"INVALID"
if no conversion is possible. PropertyComponentType CesiumGltf::convertStringOffsetTypeStringToPropertyComponentType | ( | const std::string & | str | ) |
Converts a string listed in PropertyTableProperty::StringOffsetType to its corresponding PropertyComponentType.
str | The string to convert to a PropertyComponentType. |
PropertyComponentType CesiumGltf::convertStringToPropertyComponentType | ( | const std::string & | str | ) |
Converts a string into a PropertyComponentType.
For example, "UINT8"
will become a PropertyComponentType::Uint8.
str | The string to convert to a PropertyComponentType. |
PropertyType CesiumGltf::convertStringToPropertyType | ( | const std::string & | str | ) |
Converts a string into a PropertyType.
For example, "MAT3"
will become a PropertyType::Mat3.
str | The string to convert to a PropertyType. |
std::invoke_result_t< TCallback, AccessorView< AccessorTypes::SCALAR< float > > > CesiumGltf::createAccessorView | ( | const Model & | model, |
const Accessor & | accessor, | ||
TCallback && | callback ) |
Creates an appropriate AccessorView
for a given accessor.
The created accessor is provided via a callback, which is a function that can be invoked with all possible AccessorView
types. If an accessor cannot be created, the callback will be invoked with AccessorView<AccessorTypes::SCALAR<float>>
and the AccessorView::status
will indicate the reason.
TCallback | The callback. |
model | The model to access. |
accessor | The accessor to view. |
callback | The callback that receives the created accessor. |
Definition at line 447 of file AccessorView.h.
std::invoke_result_t< TCallback, AccessorView< AccessorTypes::SCALAR< float > > > CesiumGltf::createAccessorView | ( | const Model & | model, |
int32_t | accessorIndex, | ||
TCallback && | callback ) |
Creates an appropriate AccessorView
for a given accessor.
The created accessor is provided via a callback, which is a function that can be invoked with all possible AccessorView
types. If an accessor cannot be created, the callback will be invoked with AccessorView<AccessorTypes::SCALAR<float>>
and the AccessorView::status
will indicate the reason.
TCallback | The callback. |
model | The model to access. |
accessorIndex | The index of the accessor to view in Model::accessors . |
callback | The callback that receives the created accessor. |
Definition at line 526 of file AccessorView.h.
PropertyComponentType CesiumGltf::getAccessorComponentTypeAsPropertyComponentType | ( | const Accessor & | accessor | ) |
Attempts to obtain a PropertyComponentType from the componentType field of the accessor.
accessor | The accessor whose componentType will be obtained. |
PropertyType CesiumGltf::getAccessorTypeAsPropertyType | ( | const Accessor & | accessor | ) |
Attempts to obtain a PropertyType from the type field of the accessor.
accessor | The accessor whose type will be obtained. |
glm::length_t CesiumGltf::getComponentCountFromPropertyType | ( | PropertyType | type | ) |
Obtains the number of components in the given PropertyType.
type | The type of the property to get the component count of. |
int64_t CesiumGltf::getCount | ( | std::optional< std::vector< std::byte > > & | buffer | ) |
Obtains the number of values of type ElementType
that could fit in the buffer.
buffer | The buffer whose size will be used for this calculation. |
ElementType
that could fit in buffer
. This value will be equivalent to floor(buffer->size() / sizeof(ElementType))
. Definition at line 285 of file PropertyView.h.
glm::length_t CesiumGltf::getDimensionsFromPropertyType | ( | PropertyType | type | ) |
Obtains the number of dimensions in the given PropertyType.
type | The type of the property to get the dimensions of. |
FeatureIdAccessorType CesiumGltf::getFeatureIdAccessorView | ( | const Model & | model, |
const MeshPrimitive & | primitive, | ||
int32_t | featureIdAttributeIndex ) |
Retrieves an accessor view for the specified feature ID attribute from the given glTF primitive and model. This verifies that the accessor is of a valid type. If not, the returned accessor view will be invalid.
FeatureIdAccessorType CesiumGltf::getFeatureIdAccessorView | ( | const Model & | model, |
const Node & | node, | ||
int32_t | featureIdAttributeIndex ) |
Retrieves an accessor view for the specified feature ID attribute from the given glTF node and model, if the node contains an EXT_mesh_gpu_instancing property. This verifies that the accessor is of a valid type. If not, the returned accessor view will be invalid.
IndexAccessorType CesiumGltf::getIndexAccessorView | ( | const Model & | model, |
const MeshPrimitive & | primitive ) |
Retrieves an accessor view for the indices of the given glTF primitive from the model. The primitive may not specify any indices; if so, std::monostate is returned.
NormalAccessorType CesiumGltf::getNormalAccessorView | ( | const Model & | model, |
const MeshPrimitive & | primitive ) |
Retrieves an accessor view for the normal attribute from the given glTF primitive and model. This verifies that the accessor is of a valid type. If not, the returned accessor view will be invalid.
PositionAccessorType CesiumGltf::getPositionAccessorView | ( | const Model & | model, |
const MeshPrimitive & | primitive ) |
Retrieves an accessor view for the position attribute from the given glTF primitive and model. This verifies that the accessor is of a valid type. If not, the returned accessor view will be invalid.
QuaternionAccessorType CesiumGltf::getQuaternionAccessorView | ( | const Model & | model, |
const Accessor * | accessor ) |
Obtains a QuaternionAccessorType from the given Accessor on the given Model.
model | The model containing the quaternion. |
accessor | An accessor from which the quaternion will be obtained. |
accessor
. If no quaternion could be obtained, the default value for QuaternionAccessorType will be returned instead. QuaternionAccessorType CesiumGltf::getQuaternionAccessorView | ( | const Model & | model, |
int32_t | accessorIndex ) |
Obtains a QuaternionAccessorType from the given Accessor on the given Model.
model | The model containing the quaternion. |
accessorIndex | An index to the accessor from which the quaternion will be obtained. |
accessorIndex
. If no quaternion could be obtained, the default value for QuaternionAccessorType will be returned instead. size_t CesiumGltf::getSizeOfComponentType | ( | PropertyComponentType | componentType | ) |
Obtains the size in bytes of a value of this PropertyComponentType.
componentType | The component type to get the size of. |
TexCoordAccessorType CesiumGltf::getTexCoordAccessorView | ( | const Model & | model, |
const MeshPrimitive & | primitive, | ||
int32_t | textureCoordinateSetIndex ) |
Retrieves an accessor view for the specified texture coordinate set from the given glTF primitive and model. This verifies that the accessor is of a valid type. If not, the returned accessor view will be invalid.,
bool CesiumGltf::isPropertyComponentTypeInteger | ( | PropertyComponentType | componentType | ) |
Checks if the given PropertyComponentType represents an integer value.
componentType | The PropertyComponentType to check. |
bool CesiumGltf::isPropertyTypeMatN | ( | PropertyType | type | ) |
Checks if the given PropertyType represents a matrix with any number of components.
type | The PropertyType to check. |
bool CesiumGltf::isPropertyTypeVecN | ( | PropertyType | type | ) |
Checks if the given PropertyType represents a vector with any number of components.
type | The PropertyType to check. |
glm::mat< N, N, double > CesiumGltf::normalize | ( | glm::mat< N, N, T > | value | ) |
Normalizes the given matrix's components between [0, 1] if unsigned or [-1, 1] if signed, based on the type's maximum value.
value | The value to normalize. |
Definition at line 51 of file PropertyTransformations.h.
glm::vec< N, double > CesiumGltf::normalize | ( | glm::vec< N, T > | value | ) |
Normalizes the given vector's components between [0, 1] if unsigned or [-1, 1] if signed, based on the type's maximum value.
value | The value to normalize. |
Definition at line 35 of file PropertyTransformations.h.
double CesiumGltf::normalize | ( | T | value | ) |
Normalizes the given value between [0, 1] if unsigned or [-1, 1] if signed, based on the type's maximum value.
value | The value to normalize. |
Definition at line 19 of file PropertyTransformations.h.
bool CesiumGltf::operator!= | ( | const PropertyArrayCopy< T > & | lhs, |
const PropertyArrayCopy< T > & | rhs ) |
Compares two PropertyArrayCopy instances by creating views from both instances and returning the inverse of comparing the two.
Definition at line 364 of file PropertyArrayView.h.
bool CesiumGltf::operator!= | ( | const PropertyArrayCopy< T > & | lhs, |
const PropertyArrayView< T > & | rhs ) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and returning the inverse of comparing the two.
Definition at line 354 of file PropertyArrayView.h.
bool CesiumGltf::operator!= | ( | const PropertyArrayView< T > & | lhs, |
const PropertyArrayCopy< T > & | rhs ) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and returning the inverse of comparing the two.
Definition at line 344 of file PropertyArrayView.h.
bool CesiumGltf::operator!= | ( | const PropertyArrayView< T > & | lhs, |
const PropertyArrayView< T > & | rhs ) |
Compares two PropertyArrayView instances and returns the inverse.
Definition at line 334 of file PropertyArrayView.h.
bool CesiumGltf::operator== | ( | const PropertyArrayCopy< T > & | lhs, |
const PropertyArrayCopy< T > & | rhs ) |
Compares two PropertyArrayCopy instances by creating views from each instance and comparing the two.
Definition at line 324 of file PropertyArrayView.h.
bool CesiumGltf::operator== | ( | const PropertyArrayCopy< T > & | lhs, |
const PropertyArrayView< T > & | rhs ) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and comparing the two.
Definition at line 315 of file PropertyArrayView.h.
bool CesiumGltf::operator== | ( | const PropertyArrayView< T > & | lhs, |
const PropertyArrayCopy< T > & | rhs ) |
Compares a PropertyArrayView with a PropertyArrayCopy by creating a view from the copy and comparing the two.
Definition at line 306 of file PropertyArrayView.h.
bool CesiumGltf::operator== | ( | const PropertyArrayView< T > & | lhs, |
const PropertyArrayView< T > & | rhs ) |
Compares two PropertyArrayView instances by comparing their values. If the two arrays aren't the same size, this comparison will return false.
Definition at line 286 of file PropertyArrayView.h.
PropertyArrayCopy< T > CesiumGltf::transformArray | ( | const PropertyArrayView< T > & | value, |
const std::optional< PropertyArrayView< T > > & | offset, | ||
const std::optional< PropertyArrayView< T > > & | scale ) |
Transforms each element of an array of values by optional offset and scale factors. See transformValue.
value | The array whose elements will be transformed. |
offset | The amount to offset each element by, or std::nullopt to apply no offset. |
scale | The amount to scale each element by, or std::nullopt to apply no scale factor. |
Definition at line 126 of file PropertyTransformations.h.
PropertyArrayCopy< NormalizedType > CesiumGltf::transformNormalizedArray | ( | const PropertyArrayView< T > & | value, |
const std::optional< PropertyArrayView< NormalizedType > > & | offset, | ||
const std::optional< PropertyArrayView< NormalizedType > > & | scale ) |
Normalizes each element of an array of values and transforms them by optional offset and scale factors. See transformValue and transformArray.
value | The array whose elements will be transformed. |
offset | The amount to offset each element by, or std::nullopt to apply no offset. The offset will be applied after normalization. |
scale | The amount to scale each element by, or std::nullopt to apply no scale factor. The scale will be applied after normalization. |
Definition at line 161 of file PropertyTransformations.h.
PropertyArrayCopy< glm::mat< N, N, double > > CesiumGltf::transformNormalizedMatNArray | ( | const PropertyArrayView< glm::mat< N, N, T > > & | value, |
const std::optional< PropertyArrayView< glm::mat< N, N, double > > > & | offset, | ||
const std::optional< PropertyArrayView< glm::mat< N, N, double > > > & | scale ) |
Normalizes each element of an array of matrices and transforms them by optional offset and scale factors. See transformNormalizedArray.
value | The array whose elements will be transformed. |
offset | The amount to offset each element by, or std::nullopt to apply no offset. The offset will be applied after normalization. |
scale | The amount to scale each element by, or std::nullopt to apply no scale factor. The scale will be applied after normalization. |
Definition at line 225 of file PropertyTransformations.h.
PropertyArrayCopy< glm::vec< N, double > > CesiumGltf::transformNormalizedVecNArray | ( | const PropertyArrayView< glm::vec< N, T > > & | value, |
const std::optional< PropertyArrayView< glm::vec< N, double > > > & | offset, | ||
const std::optional< PropertyArrayView< glm::vec< N, double > > > & | scale ) |
Normalizes each element of an array of vectors and transforms them by optional offset and scale factors. See transformNormalizedArray.
value | The array whose elements will be transformed. |
offset | The amount to offset each element by, or std::nullopt to apply no offset. The offset will be applied after normalization. |
scale | The amount to scale each element by, or std::nullopt to apply no scale factor. The scale will be applied after normalization. |
Definition at line 193 of file PropertyTransformations.h.
T CesiumGltf::transformValue | ( | const T & | value, |
const std::optional< T > & | offset, | ||
const std::optional< T > & | scale ) |
Transforms the value by optional offset and scale factors.
value | The value to transform. |
offset | The amount to offset the value by, or std::nullopt to apply no offset. |
scale | The amount to scale the value by, or std::nullopt to apply no scale. See applyScale. |
Definition at line 98 of file PropertyTransformations.h.
PropertyViewStatusType CesiumGltf::validateArrayPropertyType | ( | const ClassProperty & | classProperty | ) |
Validates a ClassProperty representing an array, checking for any type mismatches.
Definition at line 157 of file PropertyView.h.
PropertyViewStatusType CesiumGltf::validatePropertyType | ( | const ClassProperty & | classProperty | ) |
Validates a ClassProperty, checking for any type mismatches.
Definition at line 121 of file PropertyView.h.