16 #ifndef vtkGeometryRepresentation_h 17 #define vtkGeometryRepresentation_h 27 #include <unordered_map> 52 void PrintSelf(ostream& os,
vtkIndent indent)
override;
67 void SetVisibility(
bool val)
override;
74 void SetBlockColorsDistinctValues(
int distinctValues);
75 int GetBlockColorsDistinctValues();
89 vtkBooleanMacro(DisableLighting,
bool);
90 vtkSetMacro(DisableLighting,
bool);
91 vtkGetMacro(DisableLighting,
bool);
101 vtkSetMacro(Ambient,
double);
102 vtkSetMacro(Diffuse,
double);
103 vtkSetMacro(Specular,
double);
104 vtkGetMacro(Ambient,
double);
105 vtkGetMacro(Diffuse,
double);
106 vtkGetMacro(Specular,
double);
114 SURFACE_WITH_EDGES = 3
122 void SetCoordinateShiftScaleMethod(
int val);
123 int GetCoordinateShiftScaleMethod();
131 vtkSetClampMacro(Representation,
int, POINTS, SURFACE_WITH_EDGES);
132 vtkGetMacro(Representation,
int);
139 virtual void SetRepresentation(
const char*);
152 vtkSetMacro(RequestGhostCellsIfNeeded,
bool);
153 vtkGetMacro(RequestGhostCellsIfNeeded,
bool);
154 vtkBooleanMacro(RequestGhostCellsIfNeeded,
bool);
161 virtual void SetNormalArray(
const char* val);
167 virtual void SetTCoordArray(
const char* val);
173 virtual void SetTangentArray(
const char* val);
177 virtual void SetUseOutline(
int);
178 void SetTriangulate(
int);
179 void SetNonlinearSubdivisionLevel(
int);
180 void SetMatchBoundariesIgnoringCellOrder(
int);
181 virtual void SetGenerateFeatureEdges(
bool);
182 void SetComputePointNormals(
bool);
183 void SetSplitting(
bool);
184 void SetFeatureAngle(
double);
188 virtual void SetAmbientColor(
double r,
double g,
double b);
189 virtual void SetColor(
double r,
double g,
double b);
190 virtual void SetDiffuseColor(
double r,
double g,
double b);
191 virtual void SetLighting(
bool lighting);
192 virtual void SetEdgeColor(
double r,
double g,
double b);
193 virtual void SetInteractiveSelectionColor(
double r,
double g,
double b);
194 virtual void SetInterpolation(
int val);
195 virtual void SetLineWidth(
double val);
196 virtual void SetOpacity(
double val);
197 virtual void SetEdgeOpacity(
double val);
198 virtual void SetPointSize(
double val);
199 virtual void SetSpecularColor(
double r,
double g,
double b);
200 virtual void SetSpecularPower(
double val);
201 virtual void SetLuminosity(
double val);
202 virtual void SetRenderPointsAsSpheres(
bool);
203 virtual void SetRenderLinesAsTubes(
bool);
204 virtual void SetRoughness(
double val);
205 virtual void SetMetallic(
double val);
206 virtual void SetEdgeTint(
double r,
double g,
double b);
207 virtual void SetAnisotropy(
double val);
208 virtual void SetAnisotropyRotation(
double val);
209 virtual void SetBaseIOR(
double val);
210 virtual void SetCoatIOR(
double val);
211 virtual void SetCoatStrength(
double val);
212 virtual void SetCoatRoughness(
double val);
213 virtual void SetCoatNormalScale(
double val);
214 virtual void SetCoatColor(
double r,
double g,
double b);
215 virtual void SetBaseColorTexture(
vtkTexture* tex);
216 virtual void SetMaterialTexture(
vtkTexture* tex);
217 virtual void SetAnisotropyTexture(
vtkTexture* tex);
218 virtual void SetNormalTexture(
vtkTexture* tex);
219 virtual void SetCoatNormalTexture(
vtkTexture* tex);
220 virtual void SetEmissiveTexture(
vtkTexture* tex);
221 virtual void SetNormalScale(
double val);
222 virtual void SetOcclusionStrength(
double val);
223 virtual void SetEmissiveFactor(
double rval,
double gval,
double bval);
224 virtual void SetShowTexturesOnBackface(
bool);
228 virtual void SetOrientation(
double,
double,
double);
229 virtual void SetOrigin(
double,
double,
double);
230 virtual void SetPickable(
int val);
231 virtual void SetPosition(
double,
double,
double);
232 virtual void SetScale(
double,
double,
double);
234 virtual void SetUserTransform(
const double[16]);
236 virtual
void SetFlipTextures(
bool);
241 vtkGetObjectMacro(TextureTransform, vtkTransform);
242 virtual
void SetRepeatTextures(
bool);
243 vtkGetMacro(RepeatTextures,
bool);
244 virtual
void SetInterpolateTextures(
bool);
245 vtkGetMacro(InterpolateTextures,
bool);
246 virtual
void SetUseMipmapTextures(
bool);
247 vtkGetMacro(UseMipmapTextures,
bool);
251 virtual
void SetInterpolateScalarsBeforeMapping(
int val);
253 virtual
void SetColorMissingArraysWithNanColor(
bool val);
254 virtual
void SetSeamlessU(
bool);
255 virtual
void SetSeamlessV(
bool);
264 virtual
void SetMapScalars(
int val);
265 virtual
void SetStatic(
int val);
285 vtkSetStringMacro(ActiveAssembly);
286 vtkGetStringMacro(ActiveAssembly);
293 void AddBlockSelector(
const char* selector);
294 void RemoveAllBlockSelectors();
301 void SetBlockColor(
const char* selector,
double r,
double g,
double b);
302 void RemoveAllBlockColors();
309 void SetBlockOpacity(
const char* selector,
double opacity);
310 void RemoveAllBlockOpacities();
317 void SetBlockInterpolateScalarsBeforeMapping(
const char* selector,
bool interpolate);
318 void RemoveAllBlockInterpolateScalarsBeforeMappings();
327 void SetBlockMapScalars(
const char* selector,
int val);
328 void RemoveAllBlockMapScalars();
335 void SetBlockArrayName(
const char* selector,
int assoc,
const char* arrayName);
336 void RemoveAllBlockArrayNames();
347 void RemoveAllBlockLookupTables();
353 const char* GetColorArrayName();
362 static bool GetBounds(
370 virtual void SetEnableScaling(
int v);
371 virtual void SetScalingArrayName(
const char*);
378 virtual void SetMaterial(
const char*);
387 vtkSetMacro(UseDataPartitions,
bool);
388 vtkGetMacro(UseDataPartitions,
bool);
395 virtual void SetUseShaderReplacements(
bool);
396 vtkGetMacro(UseShaderReplacements,
bool);
404 virtual void SetShaderReplacements(
const char*);
410 void SetArrayIdNames(
const char* pointArray,
const char* cellArray)
override;
425 void SetPlaceHolderDataType(
int datatype);
426 vtkGetMacro(PlaceHolderDataType,
int);
439 virtual void SetupDefaults();
469 bool AddToView(
vtkView* view)
override;
476 bool RemoveFromView(
vtkView* view)
override;
481 virtual void UpdateColoringParameters();
489 void HandleGeometryRepresentationProgress(
vtkObject* caller,
unsigned long,
void*);
504 void ComputeVisibleDataBounds();
509 void UpdateShaderReplacements();
517 virtual bool NeedsOrderedCompositing();
522 virtual void SetPointArrayToProcess(
int p,
const char* val);
527 void UpdateGeneralTextureTransform();
539 char* ActiveAssembly =
nullptr;
550 double VisibleDataBounds[6];
561 bool BlockAttrChanged =
false;
563 bool UpdateBlockAttrLOD =
false;
566 int PlaceHolderDataType = VTK_PARTITIONED_DATA_SET_COLLECTION;
592 bool DisableLighting =
false;
vtkGeometryRepresentation_detail::DecimationFilterType * Decimator
vtkTransform * TextureTransform
std::string ShaderReplacementsString
vtkAlgorithm * MultiBlockMaker
std::vector< std::pair< vtkDataObject *, vtkIdType > > BlockFieldDataTupleIds
Configured internally in vtkGeometryRepresentation.
virtual vtkPVLODActor * GetRenderedProp()
Used in ConvertSelection to locate the prop used for actual rendering.
std::vector< std::pair< std::string, vtkVector3d > > BlockColors
Configurable through vtkGeometryRepresentation API.
#define VTKREMOTINGVIEWS_EXPORT
vtkPVDataRepresentation adds some ParaView specific API to data representations.
Geometry filter that does outlines for volumes.
std::vector< std::pair< std::string, double > > BlockOpacities
Configurable through vtkGeometryRepresentation API.
representation for showing any datasets as external shell of polygons.
#define PARAVIEW_DEPRECATED_IN_5_13_0(reason)
vtkPVGeometryFilter * LODOutlineFilter
vtkTimeStamp VisibleDataBoundsTime
bool RequestGhostCellsIfNeeded
std::vector< std::pair< std::string, std::pair< int, std::string > > > BlockArrayNames
Configurable through vtkGeometryRepresentation API.
std::vector< std::pair< std::string, int > > BlockColorModes
Configurable through vtkGeometryRepresentation API.
std::vector< std::pair< std::string, bool > > BlockInterpolateScalarsBeforeMapping
Configurable through vtkGeometryRepresentation API.
vtkAlgorithm * GeometryFilter
std::vector< vtkScalarsToColors * > BlockLookupTables
Configurable through vtkGeometryRepresentation API.
std::vector< std::pair< std::string, bool > > BlockScalarVisibilities
Configured internally in vtkGeometryRepresentation.
vtkPiecewiseFunction * PWF
an actor that supports multiple levels of detail
std::vector< std::string > BlockSelectors
Configurable through vtkGeometryRepresentation API.
std::vector< std::pair< std::string, bool > > BlockUseLookupTableScalarRanges
Configured internally in vtkGeometryRepresentation.
bool UseShaderReplacements
vtkTimeStamp BlockAttributeTime
virtual void SetSuppressLOD(bool suppress)
Enable/Disable LOD;.