3#ifndef vtkWebGPUActor_h 
    4#define vtkWebGPUActor_h 
    8#include "vtkRenderingWebGPUModule.h"  
    9#include "vtkTypeUInt32Array.h"        
   12VTK_ABI_NAMESPACE_BEGIN
 
   81    PointNormals = 1 << 1,
 
   82    PointTangents = 1 << 2,
 
   90    this->MapperRenderPipelineOutdated = value;
 
   97    this->DynamicOffsets = offsets;
 
  104  bool CachedMapperHasOpaqueGeometry = 
false;
 
  105  bool CachedMapperHasTranslucentPolygonalGeometry = 
false;
 
  113      vtkTypeFloat32 World[4][4] = {};
 
  114      vtkTypeFloat32 Normal[3][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;
 
represents an object (geometry & properties) in a rendered scene
 
a simple class to control print indentation
 
abstract class specifies interface to map data to graphics primitives
 
represent and manipulate 3x3 transformation matrices
 
Allocate and hold a VTK object.
 
abstract specification for renderers
 
Hold a reference to a vtkObjectBase instance.
 
record modification and/or execution time
 
vtkNew< vtkTransform > NormalTransform
 
void SetMapperRenderPipelineOutdated(bool value)
 
wgpu::RenderBundleEncoder GetRenderBundleEncoder()
 
vtkTimeStamp ShadingOptionsBuildTimestamp
 
vtkTimeStamp ModelTransformsBuildTimestamp
 
void SetShadingType(ShadingTypeEnum shadeType)
 
void CacheActorRenderOptions()
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
int Update(vtkRenderer *renderer, vtkMapper *mapper)
Request mapper to run the vtkAlgorithm pipeline (if needed) and consequently update device buffers co...
 
virtual bool UpdateKeyMatrices()
 
vtkTypeBool HasTranslucentPolygonalGeometry() override
Re-use cached values in between consecutive buffer update stages.
 
MapperRenderType GetMapperRenderType()
 
const void * GetCachedActorInformation()
 
wgpu::RenderBundle RenderToBundle(vtkRenderer *ren, vtkMapper *mapper)
 
~vtkWebGPUActor() override
 
vtkSmartPointer< vtkTypeUInt32Array > DynamicOffsets
 
void CacheActorTransforms()
 
vtkNew< vtkMatrix3x3 > NormalMatrix
 
void SetDirectionalMaskType(vtkTypeUInt32 directionalMask)
 
wgpu::RenderBundleEncoder CurrentBundler
 
void SetDynamicOffsets(vtkSmartPointer< vtkTypeUInt32Array > offsets)
 
vtkTimeStamp RenderOptionsBuildTimestamp
 
void CacheActorShadeOptions()
 
static vtkWebGPUActor * New()
 
ActorBlock CachedActorInfo
 
static std::size_t GetCacheSizeBytes()
 
vtkNew< vtkMatrix4x4 > MCWCMatrix
 
vtkTypeBool HasOpaqueGeometry() override
Re-use cached values in between consecutive buffer update stages.
 
void Render(vtkRenderer *ren, vtkMapper *mapper) override
Actual actor render method.