VTK  9.4.20241230
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkOpenGLMovieSphere Class Reference

OpenGL MovieSphere, an optimized VR sphere for movies. More...

#include <vtkOpenGLMovieSphere.h>

Inheritance diagram for vtkOpenGLMovieSphere:
[legend]
Collaboration diagram for vtkOpenGLMovieSphere:
[legend]

Public Types

typedef vtkOpenGLSkybox Superclass
 
- Public Types inherited from vtkOpenGLSkybox
typedef vtkSkybox Superclass
 
- Public Types inherited from vtkSkybox
typedef vtkActor Superclass
 
enum  Projection { Cube , Sphere , Floor , StereoSphere }
 Set/Get the projection to be used. More...
 
- Public Types inherited from vtkActor
typedef vtkProp3D Superclass
 
- Public Types inherited from vtkProp3D
typedef vtkProp Superclass
 
enum  CoordinateSystems { WORLD = 0 , PHYSICAL = 1 , DEVICE = 2 }
 Specify the coordinate system that this prop is relative to. More...
 
- Public Types inherited from vtkProp
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkOpenGLMovieSphereNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void Render (vtkRenderer *ren, vtkMapper *mapper) override
 Actual MovieSphere render method.
 
void SetVideoSource (vtkFFMPEGVideoSource *val)
 
vtkFFMPEGVideoSourceGetVideoSource ()
 
- Public Member Functions inherited from vtkOpenGLSkybox
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkOpenGLSkyboxNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void Render (vtkRenderer *ren, vtkMapper *mapper) override
 Actual Skybox render method.
 
void SetMapper (vtkMapper *mapper) override
 Installs an observer on the mapper UpdateShaderEvent that updates uniform values.
 
- Public Member Functions inherited from vtkSkybox
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkSkyboxNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
double * GetBounds () override
 Return a reference to the Prop3D's composite transform.
 
double * GetBounds () override
 Get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
 
void GetBounds (double bounds[6])
 Get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
 
double * GetBounds () override=0
 Get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
 
virtual void SetFloorPlane (float, float, float, float)
 Set/Get the plane equation for the floor.
 
virtual void SetFloorPlane (float[4])
 Set/Get the plane equation for the floor.
 
virtual float * GetFloorPlane ()
 Set/Get the plane equation for the floor.
 
virtual void GetFloorPlane (float &, float &, float &, float &)
 Set/Get the plane equation for the floor.
 
virtual void GetFloorPlane (float[4])
 Set/Get the plane equation for the floor.
 
virtual void SetFloorRight (float, float, float)
 Set/Get the plane equation for the floor.
 
virtual void SetFloorRight (float[3])
 Set/Get the plane equation for the floor.
 
virtual float * GetFloorRight ()
 Set/Get the plane equation for the floor.
 
virtual void GetFloorRight (float &, float &, float &)
 Set/Get the plane equation for the floor.
 
virtual void GetFloorRight (float[3])
 Set/Get the plane equation for the floor.
 
virtual float * GetFloorTexCoordScale ()
 Set/Get the [u,v] texture coordinate scaling for the floor projection.
 
virtual void GetFloorTexCoordScale (float &, float &)
 Set/Get the [u,v] texture coordinate scaling for the floor projection.
 
virtual void GetFloorTexCoordScale (float[2])
 Set/Get the [u,v] texture coordinate scaling for the floor projection.
 
virtual void SetFloorTexCoordScale (float, float)
 Set/Get the [u,v] texture coordinate scaling for the floor projection.
 
void SetFloorTexCoordScale (float[2])
 Set/Get the [u,v] texture coordinate scaling for the floor projection.
 
virtual bool GetGammaCorrect ()
 Define if the colors should be gamma corrected.
 
virtual void SetGammaCorrect (bool)
 Define if the colors should be gamma corrected.
 
virtual void GammaCorrectOn ()
 Define if the colors should be gamma corrected.
 
virtual void GammaCorrectOff ()
 Define if the colors should be gamma corrected.
 
virtual int GetProjection ()
 Set/Get the projection to be used.
 
virtual void SetProjection (int)
 Set/Get the projection to be used.
 
void SetProjectionToCube ()
 Set/Get the projection to be used.
 
void SetProjectionToSphere ()
 Set/Get the projection to be used.
 
void SetProjectionToStereoSphere ()
 Set/Get the projection to be used.
 
void SetProjectionToFloor ()
 Set/Get the projection to be used.
 
- Public Member Functions inherited from vtkActor
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkActorNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void GetActors (vtkPropCollection *) override
 For some exporters and other other operations we must be able to collect all the actors or volumes.
 
virtual void Render (vtkRenderer *, vtkMapper *)
 This causes the actor to be rendered.
 
void ShallowCopy (vtkProp *prop) override
 Shallow copy of an actor.
 
void ReleaseGraphicsResources (vtkWindow *) override
 Release any graphics resources that are being consumed by this actor.
 
virtual vtkPropertyMakeProperty ()
 Create a new property suitable for use with this type of Actor.
 
virtual void SetMapper (vtkMapper *)
 This is the method that is used to connect an actor to the end of a visualization pipeline, i.e.
 
double * GetBounds () override
 Return a reference to the Prop3D's composite transform.
 
virtual void ApplyProperties ()
 Apply the current properties to all parts that compose this actor.
 
vtkMTimeType GetMTime () override
 Get the actors mtime plus consider its properties and texture if set.
 
vtkMTimeType GetRedrawMTime () override
 Return the mtime of anything that would cause the rendered image to appear differently.
 
bool GetSupportsSelection () override
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS Used by vtkHardwareSelector to determine if the prop supports hardware selection.
 
void ProcessSelectorPixelBuffers (vtkHardwareSelector *sel, std::vector< unsigned int > &pixeloffsets) override
 allows a prop to update a selections color buffers Default just forwards to the Mapper
 
void GetBounds (double bounds[6])
 Get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
 
double * GetBounds () override=0
 Get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
 
int RenderOpaqueGeometry (vtkViewport *viewport) override
 Support the standard render methods.
 
int RenderTranslucentPolygonalGeometry (vtkViewport *viewport) override
 Support the standard render methods.
 
vtkTypeBool HasTranslucentPolygonalGeometry () override
 Does this prop have some opaque/translucent polygonal geometry?
 
vtkTypeBool HasOpaqueGeometry () override
 Does this prop have some opaque/translucent polygonal geometry?
 
void SetProperty (vtkProperty *lut)
 Set/Get the property object that controls this actors surface properties.
 
vtkPropertyGetProperty ()
 Set/Get the property object that controls this actors surface properties.
 
void SetBackfaceProperty (vtkProperty *lut)
 Set/Get the property object that controls this actors backface surface properties.
 
virtual vtkPropertyGetBackfaceProperty ()
 Set/Get the property object that controls this actors backface surface properties.
 
virtual void SetTexture (vtkTexture *)
 Set/Get the texture object to control rendering texture maps.
 
virtual vtkTextureGetTexture ()
 Set/Get the texture object to control rendering texture maps.
 
virtual vtkMapperGetMapper ()
 Returns the Mapper that this actor is getting its data from.
 
virtual bool GetForceOpaque ()
 Force the actor to be treated as opaque or translucent.
 
virtual void SetForceOpaque (bool)
 Force the actor to be treated as opaque or translucent.
 
virtual void ForceOpaqueOn ()
 Force the actor to be treated as opaque or translucent.
 
virtual void ForceOpaqueOff ()
 Force the actor to be treated as opaque or translucent.
 
virtual bool GetForceTranslucent ()
 Force the actor to be treated as opaque or translucent.
 
virtual void SetForceTranslucent (bool)
 Force the actor to be treated as opaque or translucent.
 
virtual void ForceTranslucentOn ()
 Force the actor to be treated as opaque or translucent.
 
virtual void ForceTranslucentOff ()
 Force the actor to be treated as opaque or translucent.
 
bool IsRenderingTranslucentPolygonalGeometry () override
 
void SetIsRenderingTranslucentPolygonalGeometry (bool val)
 
- Public Member Functions inherited from vtkProp3D
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkProp3DNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void ShallowCopy (vtkProp *prop) override
 Shallow copy of this vtkProp3D.
 
virtual void SetPosition (double pos[3])
 
virtual double * GetPosition ()
 
virtual void GetPosition (double data[3])
 
void AddPosition (double deltaPosition[3])
 
void AddPosition (double deltaX, double deltaY, double deltaZ)
 
void SetScale (double s)
 Method to set the scale isotropically.
 
virtual void SetPropertiesFromModelToWorldMatrix (vtkMatrix4x4 *modelToWorld)
 Set the position, scale, orientation from a provided model to world matrix.
 
double * GetCenter ()
 Get the center of the bounding box in world coordinates.
 
double * GetXRange ()
 Get the Prop3D's x range in world coordinates.
 
double * GetYRange ()
 Get the Prop3D's y range in world coordinates.
 
double * GetZRange ()
 Get the Prop3D's z range in world coordinates.
 
double GetLength ()
 Get the length of the diagonal of the bounding box.
 
void RotateX (double)
 Rotate the Prop3D in degrees about the X axis using the right hand rule.
 
void RotateY (double)
 Rotate the Prop3D in degrees about the Y axis using the right hand rule.
 
void RotateZ (double)
 Rotate the Prop3D in degrees about the Z axis using the right hand rule.
 
void RotateWXYZ (double w, double x, double y, double z)
 Rotate the Prop3D in degrees about an arbitrary axis specified by the last three arguments.
 
void SetOrientation (double x, double y, double z)
 Sets the orientation of the Prop3D.
 
void SetOrientation (double orientation[3])
 Sets the orientation of the Prop3D.
 
double * GetOrientationWXYZ ()
 Returns the WXYZ orientation of the Prop3D.
 
void AddOrientation (double x, double y, double z)
 Add to the current orientation.
 
void AddOrientation (double orentation[3])
 Add to the current orientation.
 
void PokeMatrix (vtkMatrix4x4 *matrix) override
 This method modifies the vtkProp3D so that its transformation state is set to the matrix specified.
 
void InitPathTraversal () override
 Overload vtkProp's method for setting up assembly paths.
 
vtkMTimeType GetMTime () override
 Get the vtkProp3D's mtime.
 
vtkMTimeType GetUserTransformMatrixMTime ()
 Get the modified time of the user matrix or user transform.
 
virtual void SetPosition (double x, double y, double z)
 Set/Get/Add the position of the Prop3D in world coordinates.
 
virtual void SetOrigin (double x, double y, double z)
 Set/Get the origin of the Prop3D.
 
virtual void SetOrigin (const double pos[3])
 Set/Get the origin of the Prop3D.
 
virtual double * GetOrigin ()
 Set/Get the origin of the Prop3D.
 
virtual void GetOrigin (double data[3])
 Set/Get the origin of the Prop3D.
 
virtual void SetScale (double x, double y, double z)
 Set/Get the scale of the actor.
 
virtual void SetScale (double scale[3])
 Set/Get the scale of the actor.
 
virtual double * GetScale ()
 Set/Get the scale of the actor.
 
virtual void GetScale (double data[3])
 Set/Get the scale of the actor.
 
void SetUserTransform (vtkLinearTransform *transform)
 In addition to the instance variables such as position and orientation, you can add an additional transformation for your own use.
 
virtual vtkLinearTransformGetUserTransform ()
 In addition to the instance variables such as position and orientation, you can add an additional transformation for your own use.
 
void SetUserMatrix (vtkMatrix4x4 *matrix)
 The UserMatrix can be used in place of UserTransform.
 
vtkMatrix4x4GetUserMatrix ()
 The UserMatrix can be used in place of UserTransform.
 
virtual void GetMatrix (vtkMatrix4x4 *result)
 Return a reference to the Prop3D's 4x4 composite matrix.
 
virtual void GetMatrix (double result[16])
 Return a reference to the Prop3D's 4x4 composite matrix.
 
virtual void GetModelToWorldMatrix (vtkMatrix4x4 *result)
 Return a reference to the Prop3D's Model to World matrix.
 
void GetBounds (double bounds[6])
 Return a reference to the Prop3D's composite transform.
 
double * GetOrientation ()
 Returns the orientation of the Prop3D as s vector of X,Y and Z rotation.
 
void GetOrientation (double orentation[3])
 Returns the orientation of the Prop3D as s vector of X,Y and Z rotation.
 
virtual void ComputeMatrix ()
 Generate the matrix based on ivars.
 
vtkMatrix4x4GetMatrix () override
 Get a pointer to an internal vtkMatrix4x4.
 
virtual vtkTypeBool GetIsIdentity ()
 Is the matrix for this actor identity.
 
void SetCoordinateSystemRenderer (vtkRenderer *ren)
 Specify the Renderer that the prop3d is relative to when the coordinate system is set to PHYSICAL or DEVICE.
 
vtkRendererGetCoordinateSystemRenderer ()
 Specify the Renderer that the prop3d is relative to when the coordinate system is set to PHYSICAL or DEVICE.
 
virtual void SetCoordinateSystemDevice (int)
 Specify the device to be used when the coordinate system is set to DEVICE.
 
virtual int GetCoordinateSystemDevice ()
 Specify the device to be used when the coordinate system is set to DEVICE.
 
void SetCoordinateSystemToWorld ()
 Specify the coordinate system that this prop is relative to.
 
void SetCoordinateSystemToPhysical ()
 Specify the coordinate system that this prop is relative to.
 
void SetCoordinateSystemToDevice ()
 Specify the coordinate system that this prop is relative to.
 
void SetCoordinateSystem (CoordinateSystems val)
 Specify the coordinate system that this prop is relative to.
 
virtual CoordinateSystems GetCoordinateSystem ()
 Specify the coordinate system that this prop is relative to.
 
const char * GetCoordinateSystemAsString ()
 Specify the coordinate system that this prop is relative to.
 
- Public Member Functions inherited from vtkProp
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkPropNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
virtual void GetActors (vtkPropCollection *)
 For some exporters and other other operations we must be able to collect all the actors or volumes.
 
virtual void GetActors2D (vtkPropCollection *)
 
virtual void GetVolumes (vtkPropCollection *)
 
virtual void Pick ()
 Method fires PickEvent if the prop is picked.
 
virtual vtkMTimeType GetRedrawMTime ()
 Return the mtime of anything that would cause the rendered image to appear differently.
 
virtual double * GetBounds ()
 Get the bounds for this Prop as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
 
virtual void ShallowCopy (vtkProp *prop)
 Shallow copy of this vtkProp.
 
virtual void PokeMatrix (vtkMatrix4x4 *vtkNotUsed(matrix))
 These methods are used by subclasses to place a matrix (if any) in the prop prior to rendering.
 
virtual vtkMatrix4x4GetMatrix ()
 
virtual bool HasKeys (vtkInformation *requiredKeys)
 Tells if the prop has all the required keys.
 
virtual int RenderOpaqueGeometry (vtkViewport *)
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDERING PROCESS All concrete subclasses must be able to render themselves.
 
virtual int RenderTranslucentPolygonalGeometry (vtkViewport *)
 
virtual int RenderVolumetricGeometry (vtkViewport *)
 
virtual int RenderOverlay (vtkViewport *)
 
virtual bool RenderFilteredOpaqueGeometry (vtkViewport *v, vtkInformation *requiredKeys)
 Render the opaque geometry only if the prop has all the requiredKeys.
 
virtual bool RenderFilteredTranslucentPolygonalGeometry (vtkViewport *v, vtkInformation *requiredKeys)
 Render the translucent polygonal geometry only if the prop has all the requiredKeys.
 
virtual bool RenderFilteredVolumetricGeometry (vtkViewport *v, vtkInformation *requiredKeys)
 Render the volumetric geometry only if the prop has all the requiredKeys.
 
virtual bool RenderFilteredOverlay (vtkViewport *v, vtkInformation *requiredKeys)
 Render in the overlay of the viewport only if the prop has all the requiredKeys.
 
virtual vtkTypeBool HasTranslucentPolygonalGeometry ()
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDERING PROCESS Does this prop have some translucent polygonal geometry? This method is called during the rendering process to know if there is some translucent polygonal geometry.
 
virtual vtkTypeBool HasOpaqueGeometry ()
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDERING PROCESS Does this prop have some opaque geometry? This method is called during the rendering process to know if there is some opaque geometry.
 
virtual void ReleaseGraphicsResources (vtkWindow *)
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being consumed by this actor.
 
virtual double GetEstimatedRenderTime (vtkViewport *)
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDERING PROCESS The EstimatedRenderTime may be used to select between different props, for example in LODProp it is used to select the level-of-detail.
 
virtual double GetEstimatedRenderTime ()
 
virtual void SetEstimatedRenderTime (double t)
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDERING PROCESS This method is used by, for example, the vtkLODProp3D in order to initialize the estimated render time at start-up to some user defined value.
 
virtual void RestoreEstimatedRenderTime ()
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDERING PROCESS When the EstimatedRenderTime is first set to 0.0 (in the SetAllocatedRenderTime method) the old value is saved.
 
virtual void AddEstimatedRenderTime (double t, vtkViewport *vtkNotUsed(vp))
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS This method is intended to allow the renderer to add to the EstimatedRenderTime in props that require information that the renderer has in order to do this.
 
void SetRenderTimeMultiplier (double t)
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS Get/Set the multiplier for the render time.
 
virtual double GetRenderTimeMultiplier ()
 
virtual void BuildPaths (vtkAssemblyPaths *paths, vtkAssemblyPath *path)
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS Used to construct assembly paths and perform part traversal.
 
virtual bool GetSupportsSelection ()
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS Used by vtkHardwareSelector to determine if the prop supports hardware selection.
 
virtual void ProcessSelectorPixelBuffers (vtkHardwareSelector *, std::vector< unsigned int > &)
 allows a prop to update a selections color buffers
 
virtual void SetVisibility (vtkTypeBool)
 Set/Get visibility of this vtkProp.
 
virtual vtkTypeBool GetVisibility ()
 Set/Get visibility of this vtkProp.
 
virtual void VisibilityOn ()
 Set/Get visibility of this vtkProp.
 
virtual void VisibilityOff ()
 Set/Get visibility of this vtkProp.
 
virtual void SetPickable (vtkTypeBool)
 Set/Get the pickable instance variable.
 
virtual vtkTypeBool GetPickable ()
 Set/Get the pickable instance variable.
 
virtual void PickableOn ()
 Set/Get the pickable instance variable.
 
virtual void PickableOff ()
 Set/Get the pickable instance variable.
 
virtual void SetDragable (vtkTypeBool)
 Set/Get the value of the dragable instance variable.
 
virtual vtkTypeBool GetDragable ()
 Set/Get the value of the dragable instance variable.
 
virtual void DragableOn ()
 Set/Get the value of the dragable instance variable.
 
virtual void DragableOff ()
 Set/Get the value of the dragable instance variable.
 
virtual void SetUseBounds (bool)
 In case the Visibility flag is true, tell if the bounds of this prop should be taken into account or ignored during the computation of other bounding boxes, like in vtkRenderer::ResetCamera().
 
virtual bool GetUseBounds ()
 In case the Visibility flag is true, tell if the bounds of this prop should be taken into account or ignored during the computation of other bounding boxes, like in vtkRenderer::ResetCamera().
 
virtual void UseBoundsOn ()
 In case the Visibility flag is true, tell if the bounds of this prop should be taken into account or ignored during the computation of other bounding boxes, like in vtkRenderer::ResetCamera().
 
virtual void UseBoundsOff ()
 In case the Visibility flag is true, tell if the bounds of this prop should be taken into account or ignored during the computation of other bounding boxes, like in vtkRenderer::ResetCamera().
 
virtual vtkAssemblyPathGetNextPath ()
 vtkProp and its subclasses can be picked by subclasses of vtkAbstractPicker (e.g., vtkPropPicker).
 
virtual int GetNumberOfPaths ()
 vtkProp and its subclasses can be picked by subclasses of vtkAbstractPicker (e.g., vtkPropPicker).
 
virtual vtkInformationGetPropertyKeys ()
 Set/Get property keys.
 
virtual void SetPropertyKeys (vtkInformation *keys)
 Set/Get property keys.
 
virtual void SetAllocatedRenderTime (double t, vtkViewport *vtkNotUsed(v))
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS The renderer may use the allocated rendering time to determine how to render this actor.
 
virtual double GetAllocatedRenderTime ()
 WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS.
 
virtual int GetNumberOfConsumers ()
 Get the number of consumers.
 
void AddConsumer (vtkObject *c)
 Add or remove or get or check a consumer,.
 
void RemoveConsumer (vtkObject *c)
 Add or remove or get or check a consumer,.
 
vtkObjectGetConsumer (int i)
 Add or remove or get or check a consumer,.
 
int IsConsumer (vtkObject *c)
 Add or remove or get or check a consumer,.
 
virtual void SetShaderProperty (vtkShaderProperty *property)
 Set/Get the shader property.
 
virtual vtkShaderPropertyGetShaderProperty ()
 Set/Get the shader property.
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on.
 
virtual void DebugOff ()
 Turn debugging output off.
 
bool GetDebug ()
 Get the value of the debug flag.
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag.
 
virtual void Modified ()
 Update the modification time for this object.
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time.
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
vtkTypeBool InvokeEvent (unsigned long event)
 
vtkTypeBool InvokeEvent (const char *event)
 
std::string GetObjectDescription () const override
 The object description printed in messages and PrintSelf output.
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
vtkCommandGetCommand (unsigned long tag)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
void RemoveObserver (vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
void RemoveObservers (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
void RemoveObservers (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events.
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events.
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method.
 
vtkTypeBool InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not.
 
vtkTypeBool InvokeEvent (const char *event, void *callData)
 This method invokes an event and return whether the event was aborted or not.
 
virtual void SetObjectName (const std::string &objectName)
 Set/get the name of this object for reporting purposes.
 
virtual std::string GetObjectName () const
 Set/get the name of this object for reporting purposes.
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string.
 
virtual std::string GetObjectDescription () const
 The object description printed in messages and PrintSelf output.
 
virtual vtkTypeBool IsA (const char *name)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
virtual vtkIdType GetNumberOfGenerationsFromBase (const char *name)
 Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class).
 
virtual void Delete ()
 Delete a VTK object.
 
virtual void FastDelete ()
 Delete a reference to this object.
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream.
 
void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object).
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object).
 
int GetReferenceCount ()
 Return the current reference count of this object.
 
void SetReferenceCount (int)
 Sets the reference count.
 
bool GetIsInMemkind () const
 A local state flag that remembers whether this object lives in the normal or extended memory space.
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual bool UsesGarbageCollector () const
 Indicate whether the class uses vtkGarbageCollector or not.
 

Static Public Member Functions

static vtkOpenGLMovieSphereNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkOpenGLMovieSphereSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkOpenGLSkybox
static vtkOpenGLSkyboxNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkOpenGLSkyboxSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkSkybox
static vtkSkyboxNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkSkyboxSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkActor
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkActorSafeDownCast (vtkObjectBase *o)
 
static vtkActorNew ()
 Creates an actor with the following defaults: origin(0,0,0) position=(0,0,0) scale=(1,1,1) visibility=1 pickable=1 dragable=1 orientation=(0,0,0).
 
- Static Public Member Functions inherited from vtkProp3D
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkProp3DSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkProp
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkPropSafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKeyGeneralTextureUnit ()
 Optional Key Indicating the texture unit for general texture mapping Old OpenGL was a state machine where you would push or pop items.
 
static vtkInformationDoubleVectorKeyGeneralTextureTransform ()
 Optional Key Indicating the texture transform for general texture mapping Old OpenGL was a state machine where you would push or pop items.
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes.
 
static void SetGlobalWarningDisplay (vtkTypeBool val)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
static void GlobalWarningDisplayOn ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
static void GlobalWarningDisplayOff ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
static vtkTypeBool GetGlobalWarningDisplay ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class.
 
static vtkIdType GetNumberOfGenerationsFromBaseType (const char *name)
 Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class).
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
 
static void SetMemkindDirectory (const char *directoryname)
 The name of a directory, ideally mounted -o dax, to memory map an extended memory space within.
 
static bool GetUsingMemkind ()
 A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space.
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkOpenGLMovieSphere ()
 
 ~vtkOpenGLMovieSphere () override
 
void UpdateUniforms (vtkObject *, unsigned long, void *)
 
void VideoCallback (vtkFFMPEGVideoSourceVideoCallbackData const &cbd)
 
- Protected Member Functions inherited from vtkOpenGLSkybox
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkOpenGLSkybox ()
 
 ~vtkOpenGLSkybox () override
 
void UpdateUniforms (vtkObject *, unsigned long, void *)
 
- Protected Member Functions inherited from vtkSkybox
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkSkybox ()
 
 ~vtkSkybox () override
 
- Protected Member Functions inherited from vtkActor
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkActor ()
 
 ~vtkActor () override
 
int GetIsOpaque ()
 
- Protected Member Functions inherited from vtkProp3D
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkProp3D ()
 
 ~vtkProp3D () override
 
- Protected Member Functions inherited from vtkProp
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkProp ()
 
 ~vtkProp () override
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events.
 
void InternalReleaseFocus ()
 These methods allow a command to exclusively grab all events.
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void RegisterInternal (vtkObjectBase *, vtkTypeBool check)
 
virtual void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
virtual void ObjectFinalize ()
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

vtkNew< vtkTextureObjectTextures [6]
 
int BuildIndex
 
int DrawIndex
 
int YTexture
 
int UTexture
 
int VTexture
 
std::mutex TextureUpdateMutex
 
unsigned char * TextureData [6]
 
int ReadIndex
 
int WriteIndex
 
std::atomic< int > NewData
 
std::atomic< int > HaveData
 
int Height
 
int Width
 
int UVHeight
 
int UVWidth
 
vtkSmartPointer< vtkFFMPEGVideoSourceVideoSource
 
- Protected Attributes inherited from vtkOpenGLSkybox
int LastProjection
 
bool LastGammaCorrect
 
float LastCameraPosition [3]
 
vtkNew< vtkOpenGLPolyDataMapperCubeMapper
 
vtkNew< vtkOpenGLActorOpenGLActor
 
vtkRendererCurrentRenderer
 
- Protected Attributes inherited from vtkSkybox
int Projection
 
float FloorPlane [4]
 
float FloorRight [3]
 
float FloorTexCoordScale [2]
 
bool GammaCorrect = false
 
- Protected Attributes inherited from vtkActor
bool ForceOpaque
 
bool ForceTranslucent
 
bool InTranslucentPass
 
vtkPropertyProperty
 
vtkPropertyBackfaceProperty
 
vtkTextureTexture
 
vtkMapperMapper
 
double MapperBounds [6]
 
vtkTimeStamp BoundsMTime
 
- Protected Attributes inherited from vtkProp3D
vtkLinearTransformUserTransform
 
vtkMatrix4x4UserMatrix
 
vtkMatrix4x4Matrix
 
vtkTimeStamp MatrixMTime
 
double Origin [3]
 
double Position [3]
 
double Orientation [3]
 
double Scale [3]
 
double Center [3]
 
vtkTransformTransform
 
double Bounds [6]
 
vtkProp3DCachedProp3D
 
vtkTypeBool IsIdentity
 
int CoordinateSystemDevice
 
CoordinateSystems CoordinateSystem = WORLD
 
vtkWeakPointer< vtkRendererCoordinateSystemRenderer
 
vtkNew< vtkMatrix4x4TempMatrix4x4
 
- Protected Attributes inherited from vtkProp
vtkTypeBool Visibility
 
vtkTypeBool Pickable
 
vtkTypeBool Dragable
 
bool UseBounds
 
double AllocatedRenderTime
 
double EstimatedRenderTime
 
double SavedEstimatedRenderTime
 
double RenderTimeMultiplier
 
int NumberOfConsumers
 
vtkObject ** Consumers
 
vtkAssemblyPathsPaths
 
vtkInformationPropertyKeys
 
vtkShaderPropertyShaderProperty
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
std::string ObjectName
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Additional Inherited Members

- Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction GetCurrentMallocFunction ()
 
static vtkReallocingFunction GetCurrentReallocFunction ()
 
static vtkFreeingFunction GetCurrentFreeFunction ()
 
static vtkFreeingFunction GetAlternateFreeFunction ()
 

Detailed Description

OpenGL MovieSphere, an optimized VR sphere for movies.

This class is designed to more efficiently convert ffmpeg output to a movie sphere. The vtkSkybox will work, but it does an expensive conversion of the data from YUV to RGB, does an extra copy of the RGB data and the RGB data is twice as large when pushing to the GPU. This class also uses double buffering of textures to help prevent pipeline stalls. In a quick test between the two classes playing a 4K30p video sphere along with VR rendering, decoding etc just switching out the vtkSkybox for this class resulting in CPU usage going from 124 seconds down to 81 seconds. Likewise the frame timings in VR became noticeably better which could partially be due to pushing half as much data to the GPU. (YUV420 is half the size of RGB)

Tests:
vtkOpenGLMovieSphere (Tests)

Definition at line 41 of file vtkOpenGLMovieSphere.h.

Member Typedef Documentation

◆ Superclass

Definition at line 45 of file vtkOpenGLMovieSphere.h.

Constructor & Destructor Documentation

◆ vtkOpenGLMovieSphere()

vtkOpenGLMovieSphere::vtkOpenGLMovieSphere ( )
protected

◆ ~vtkOpenGLMovieSphere()

vtkOpenGLMovieSphere::~vtkOpenGLMovieSphere ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkOpenGLMovieSphere * vtkOpenGLMovieSphere::New ( )
static

◆ IsTypeOf()

static vtkTypeBool vtkOpenGLMovieSphere::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual vtkTypeBool vtkOpenGLMovieSphere::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class.

Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkOpenGLSkybox.

◆ SafeDownCast()

static vtkOpenGLMovieSphere * vtkOpenGLMovieSphere::SafeDownCast ( vtkObjectBase o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase * vtkOpenGLMovieSphere::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkOpenGLSkybox.

◆ NewInstance()

vtkOpenGLMovieSphere * vtkOpenGLMovieSphere::NewInstance ( ) const

◆ PrintSelf()

void vtkOpenGLMovieSphere::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Methods invoked by print to print information about the object including superclasses.

Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkActor.

◆ Render()

void vtkOpenGLMovieSphere::Render ( vtkRenderer ren,
vtkMapper mapper 
)
overridevirtual

Actual MovieSphere render method.

Reimplemented from vtkActor.

◆ SetVideoSource()

void vtkOpenGLMovieSphere::SetVideoSource ( vtkFFMPEGVideoSource val)

◆ GetVideoSource()

vtkFFMPEGVideoSource * vtkOpenGLMovieSphere::GetVideoSource ( )

◆ UpdateUniforms()

void vtkOpenGLMovieSphere::UpdateUniforms ( vtkObject ,
unsigned long  ,
void *   
)
protected

◆ VideoCallback()

void vtkOpenGLMovieSphere::VideoCallback ( vtkFFMPEGVideoSourceVideoCallbackData const &  cbd)
protected

Member Data Documentation

◆ Textures

vtkNew<vtkTextureObject> vtkOpenGLMovieSphere::Textures[6]
protected

Definition at line 62 of file vtkOpenGLMovieSphere.h.

◆ BuildIndex

int vtkOpenGLMovieSphere::BuildIndex
protected

Definition at line 63 of file vtkOpenGLMovieSphere.h.

◆ DrawIndex

int vtkOpenGLMovieSphere::DrawIndex
protected

Definition at line 64 of file vtkOpenGLMovieSphere.h.

◆ YTexture

int vtkOpenGLMovieSphere::YTexture
protected

Definition at line 65 of file vtkOpenGLMovieSphere.h.

◆ UTexture

int vtkOpenGLMovieSphere::UTexture
protected

Definition at line 66 of file vtkOpenGLMovieSphere.h.

◆ VTexture

int vtkOpenGLMovieSphere::VTexture
protected

Definition at line 67 of file vtkOpenGLMovieSphere.h.

◆ TextureUpdateMutex

std::mutex vtkOpenGLMovieSphere::TextureUpdateMutex
protected

Definition at line 71 of file vtkOpenGLMovieSphere.h.

◆ TextureData

unsigned char* vtkOpenGLMovieSphere::TextureData[6]
protected

Definition at line 72 of file vtkOpenGLMovieSphere.h.

◆ ReadIndex

int vtkOpenGLMovieSphere::ReadIndex
protected

Definition at line 73 of file vtkOpenGLMovieSphere.h.

◆ WriteIndex

int vtkOpenGLMovieSphere::WriteIndex
protected

Definition at line 74 of file vtkOpenGLMovieSphere.h.

◆ NewData

std::atomic<int> vtkOpenGLMovieSphere::NewData
protected

Definition at line 76 of file vtkOpenGLMovieSphere.h.

◆ HaveData

std::atomic<int> vtkOpenGLMovieSphere::HaveData
protected

Definition at line 77 of file vtkOpenGLMovieSphere.h.

◆ Height

int vtkOpenGLMovieSphere::Height
protected

Definition at line 79 of file vtkOpenGLMovieSphere.h.

◆ Width

int vtkOpenGLMovieSphere::Width
protected

Definition at line 80 of file vtkOpenGLMovieSphere.h.

◆ UVHeight

int vtkOpenGLMovieSphere::UVHeight
protected

Definition at line 81 of file vtkOpenGLMovieSphere.h.

◆ UVWidth

int vtkOpenGLMovieSphere::UVWidth
protected

Definition at line 82 of file vtkOpenGLMovieSphere.h.

◆ VideoSource

vtkSmartPointer<vtkFFMPEGVideoSource> vtkOpenGLMovieSphere::VideoSource
protected

Definition at line 83 of file vtkOpenGLMovieSphere.h.


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