scene Class Reference

Main class to assemble glTF components into a scene. More...

Public Member Functions

 scene ()
 Default construct. More...
 
template<class Type >
label addField (const Type &fld, const word &name, const label target=-1)
 Returns accessor index. More...
 
template<class Type >
label addMesh (const Type &fld, const word &name)
 Returns index of last mesh. More...
 
template<class Type >
label addFieldToMesh (const Type &fld, const word &name, const label meshId)
 Returns accessor index. More...
 
label addColourToMesh (const vectorField &fld, const word &name, const label meshId, const scalarField &alpha=scalarField::null())
 Add a colour field to the mesh, optionally with an alpha channel. More...
 
label createAnimation (const word &name)
 Returns index of last animation. More...
 
void addToAnimation (const label animationi, const label inputId, const label outputId, const label meshId, const string &interpolation="LINEAR")
 Add to existing animation. More...
 
void write (const fileName &outputFile)
 Write to file pair (.gltf, .bin) More...
 
void write (Ostream &os)
 Write JSON (.gltf) to stream with auxiliary binary data (.bin) More...
 
template<class Type >
Foam::label addField (const Type &fld, const word &name, const label target)
 
template<class Type >
Foam::label addMesh (const Type &fld, const word &name)
 
template<class Type >
Foam::label addFieldToMesh (const Type &fld, const word &name, const label meshi)
 

Detailed Description

Main class to assemble glTF components into a scene.

Note
Implements the glTF v2 specification
Source files

Definition at line 68 of file foamGltfScene.H.

Constructor & Destructor Documentation

◆ scene()

scene ( )

Default construct.

Definition at line 34 of file foamGltfScene.C.

Member Function Documentation

◆ addField() [1/2]

label addField ( const Type &  fld,
const word name,
const label  target = -1 
)

Returns accessor index.

◆ addMesh() [1/2]

label addMesh ( const Type &  fld,
const word name 
)

Returns index of last mesh.

◆ addFieldToMesh() [1/2]

label addFieldToMesh ( const Type &  fld,
const word name,
const label  meshId 
)

Returns accessor index.

◆ addColourToMesh()

Foam::label addColourToMesh ( const vectorField fld,
const word name,
const label  meshId,
const scalarField alpha = scalarField::null() 
)

Add a colour field to the mesh, optionally with an alpha channel.

A constant alpha value can be specified as a field of size 1.

Returns
accessor index
Parameters
fldRGB colour field
alphaAlpha channel

Definition at line 67 of file foamGltfScene.C.

References alpha, Foam::glTF::ARRAY_BUFFER, fld(), Foam::glTF::key(), Foam::name(), and Time::New().

Here is the call graph for this function:

◆ createAnimation()

Foam::label createAnimation ( const word name)

Returns index of last animation.

Definition at line 117 of file foamGltfScene.C.

References Foam::name().

Here is the call graph for this function:

◆ addToAnimation()

void addToAnimation ( const label  animationi,
const label  inputId,
const label  outputId,
const label  meshId,
const string interpolation = "LINEAR" 
)

Add to existing animation.

Definition at line 124 of file foamGltfScene.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Here is the call graph for this function:

◆ write() [1/2]

void write ( const fileName outputFile)

Write to file pair (.gltf, .bin)

Definition at line 162 of file foamGltfScene.C.

References fileName::ext(), Foam::isDir(), fileName::lessExt(), Foam::mkDir(), os(), fileName::path(), and write().

Here is the call graph for this function:

◆ write() [2/2]

void write ( Ostream os)

Write JSON (.gltf) to stream with auxiliary binary data (.bin)

Definition at line 179 of file foamGltfScene.C.

References STLCore::BINARY, Foam::decrIndent(), Foam::endl(), fileName::ext(), forAll, Foam::incrIndent(), Foam::indent(), fileName::name(), Foam::nl, os(), OFstream::stdStream(), and Ostream::write().

Here is the call graph for this function:

◆ addField() [2/2]

Foam::label addField ( const Type &  fld,
const word name,
const label  target 
)

Definition at line 29 of file foamGltfSceneTemplates.C.

References fld(), and Foam::name().

Here is the call graph for this function:

◆ addMesh() [2/2]

Foam::label addMesh ( const Type &  fld,
const word name 
)

Definition at line 59 of file foamGltfSceneTemplates.C.

References Foam::glTF::ARRAY_BUFFER, fld(), Foam::glTF::key(), and Foam::name().

Here is the call graph for this function:

◆ addFieldToMesh() [2/2]

Foam::label addFieldToMesh ( const Type &  fld,
const word name,
const label  meshi 
)

Definition at line 72 of file foamGltfSceneTemplates.C.

References fld(), and Foam::name().

Here is the call graph for this function:

The documentation for this class was generated from the following files: