3 #ifndef vtkWebGPUActor_h
4 #define vtkWebGPUActor_h
8 #include "vtkRenderingWebGPUModule.h"
9 #include "vtkTypeUInt32Array.h"
12 VTK_ABI_NAMESPACE_BEGIN
22 void CacheActorTransforms();
23 void CacheActorRenderOptions();
24 void CacheActorShadeOptions();
51 virtual bool UpdateKeyMatrices();
81 PointNormals = 1 << 1,
82 PointTangents = 1 << 2,
86 void SetShadingType(ShadingTypeEnum shadeType);
87 void SetDirectionalMaskType(vtkTypeUInt32 directionalMask);
90 this->MapperRenderPipelineOutdated =
value;
97 this->DynamicOffsets = offsets;
104 bool CachedMapperHasOpaqueGeometry =
false;
105 bool CachedMapperHasTranslucentPolygonalGeometry =
false;
113 vtkTypeFloat32 World[4][4] = {};
120 vtkTypeUInt32 Representation = 0;
122 vtkTypeFloat32 PointSize = 0;
124 vtkTypeFloat32 LineWidth = 0;
126 vtkTypeUInt32 EdgeVisibility = 0;
132 vtkTypeFloat32 AmbientIntensity = 0;
134 vtkTypeFloat32 DiffuseIntensity = 0;
136 vtkTypeFloat32 SpecularIntensity = 0;
138 vtkTypeFloat32 SpecularPower = 0;
140 vtkTypeFloat32 Opacity = 0;
145 vtkTypeUInt32 ShadingType = 0;
148 vtkTypeUInt32 DirectionalMaskType = 0;
150 vtkTypeUInt8 Pad1[4] = {};
152 vtkTypeFloat32 AmbientColor[4] = {};
154 vtkTypeFloat32 DiffuseColor[4] = {};
156 vtkTypeFloat32 SpecularColor[4] = {};
158 vtkTypeFloat32 EdgeColor[4] = {};
173 bool MapperRenderPipelineOutdated =
false;
182 VTK_ABI_NAMESPACE_END
vtkNew< vtkMatrix3x3 > NormalMatrix
vtkTimeStamp ModelTransformsBuildTimestamp
virtual void Render(vtkRenderer *, vtkMapper *)
This causes the actor to be rendered.
represents an object (geometry & properties) in a rendered scene
void SetDynamicOffsets(vtkSmartPointer< vtkTypeUInt32Array > offsets)
vtkTimeStamp ShadingOptionsBuildTimestamp
MapperRenderType GetMapperRenderType()
record modification and/or execution time
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
abstract specification for renderers
static vtkActor * New()
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).
vtkNew< vtkMatrix4x4 > MCWCMatrix
a simple class to control print indentation
void SetMapperRenderPipelineOutdated(bool value)
wgpu::RenderBundleEncoder GetRenderBundleEncoder()
vtkNew< vtkTransform > NormalTransform
abstract class specifies interface to map data to graphics primitives
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some opaque/translucent polygonal geometry?
vtkSmartPointer< vtkTypeUInt32Array > DynamicOffsets
ActorBlock CachedActorInfo
vtkTypeBool HasOpaqueGeometry() override
Does this prop have some opaque/translucent polygonal geometry?
vtkTimeStamp RenderOptionsBuildTimestamp
represent and manipulate 3x3 transformation matrices
wgpu::RenderBundleEncoder CurrentBundler
const void * GetCachedActorInformation()
static std::size_t GetCacheSizeBytes()