52#ifndef vtkGLTFReader_h 
   53#define vtkGLTFReader_h 
   55#include "vtkIOGeometryModule.h"  
   64VTK_ABI_NAMESPACE_BEGIN
 
  132  vtkGetMacro(ApplyDeformationsToGeometry, 
bool);
 
  133  vtkBooleanMacro(ApplyDeformationsToGeometry, 
bool);
 
  187  vtkGetMacro(FrameRate, 
unsigned int);
 
  188  vtkSetMacro(FrameRate, 
unsigned int);
 
  218  char* FileName = 
nullptr;
 
  224  unsigned int FrameRate = 60;
 
  228  bool IsModelLoaded = 
false;
 
  229  bool IsMetaDataLoaded = 
false;
 
  231  bool ApplyDeformationsToGeometry = 
true;
 
Store on/off settings for data arrays, etc.
 
represent and manipulate fields of data
 
Deserialize a GLTF model file.
 
vtkSmartPointer< vtkGLTFDocumentLoader > Loader
 
void DisableAnimation(vtkIdType animationIndex)
Enable/Disable an animation.
 
~vtkGLTFReader() override
 
vtkSetFilePathMacro(FileName)
Set/Get the name of the file from which to read points.
 
std::string GetAnimationName(vtkIdType animationIndex)
glTF models can contain multiple animations, with various names and duration.
 
vtkGetSmartPointerMacro(URILoader, vtkURILoader)
Set/Get the URI loader to use when reading from a Stream.
 
std::vector< GLTFTexture > Textures
 
vtkSmartPointer< vtkResourceStream > Stream
 
void StoreTextureData()
Create and store GLTFTexture struct for each image present in the model.
 
void SetScene(const std::string &scene)
Get/Set the scene to be used by the reader.
 
void CreateSceneNamesArray()
Create the SceneNames array, generate unique identifiers for each scene based on their glTF name,...
 
GLTFTexture GetGLTFTexture(vtkIdType textureIndex)
 
vtkSmartPointer< vtkDataArraySelection > AnimationSelection
 
float GetAnimationDuration(vtkIdType animationIndex)
glTF models can contain multiple animations, with various names and duration.
 
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
void SetApplyDeformationsToGeometry(bool flag)
The model's skinning transforms are computed and added to the different vtkPolyData objects' field da...
 
vtkDataArraySelection * GetAnimationSelection()
Get the vtkDataArraySelection object to enable/disable animations.
 
vtkSmartPointer< vtkStringArray > SceneNames
 
std::string GetSceneName(vtkIdType sceneIndex)
glTF models can contain multiple scene descriptions.
 
void CreateAnimationSelection()
Fill the AnimationSelection vtkDataArraySelection with animation names.
 
vtkStringArray * GetAllSceneNames()
Get a list all scenes names as a vtkStringArray, with duplicate names numbered and empty names replac...
 
vtkSetSmartPointerMacro(Stream, vtkResourceStream)
Set/Get the stream from which to read the glTF.
 
vtkSmartPointer< vtkMultiBlockDataSet > OutputDataSet
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
vtkSmartPointer< vtkURILoader > URILoader
 
void EnableAnimation(vtkIdType animationIndex)
Enable/Disable an animation.
 
vtkSetSmartPointerMacro(URILoader, vtkURILoader)
Set/Get the URI loader to use when reading from a Stream.
 
vtkIdType GetNumberOfTextures()
 
bool IsAnimationEnabled(vtkIdType animationIndex)
Enable/Disable an animation.
 
vtkGetFilePathMacro(FileName)
Set/Get the name of the file from which to read points.
 
static vtkGLTFReader * New()
 
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
vtkGetSmartPointerMacro(Stream, vtkResourceStream)
Set/Get the stream from which to read the glTF.
 
vtkSmartPointer< vtkDataArraySelection > PreviousAnimationSelection
 
topologically and geometrically regular array of data
 
a simple class to control print indentation
 
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
 
Abstract class used for custom streams.
 
Hold a reference to a vtkObjectBase instance.
 
a vtkAbstractArray subclass for strings
 
Helper class for readers and importer that need to load more than one resource.
 
Materials are not directly applied to this reader's output.
 
unsigned short WrapSValue
 
unsigned short MinFilterValue
 
unsigned short MaxFilterValue
 
vtkSmartPointer< vtkImageData > Image
 
unsigned short WrapTValue
 
vtkTypeUInt32 vtkMTimeType