84#ifndef vtkImprintFilter_h 
   85#define vtkImprintFilter_h 
   87#include "vtkFiltersModelingModule.h"  
   90VTK_ABI_NAMESPACE_BEGIN
 
  146  vtkGetMacro(Tolerance, 
double);
 
  156    ABSOLUTE_TOLERANCE = 0,
 
  157    RELATIVE_TO_PROJECTION_TOLERANCE = 1,
 
  158    RELATIVE_TO_MIN_EDGE_LENGTH = 2
 
  167  vtkSetClampMacro(MergeToleranceType, 
int, ABSOLUTE_TOLERANCE, RELATIVE_TO_MIN_EDGE_LENGTH);
 
  168  vtkGetMacro(MergeToleranceType, 
int);
 
  172    this->SetMergeToleranceType(RELATIVE_TO_PROJECTION_TOLERANCE);
 
  176    this->SetMergeToleranceType(RELATIVE_TO_MIN_EDGE_LENGTH);
 
  179  vtkGetMacro(MergeTolerance, 
double);
 
  186    PROJECTED_IMPRINT = 2,
 
  187    IMPRINTED_REGION = 3,
 
  205  vtkSetClampMacro(OutputType, 
int, TARGET_CELLS, MERGED_IMPRINT);
 
  206  vtkGetMacro(OutputType, 
int);
 
  222  vtkSetMacro(BoundaryEdgeInsertion, 
bool);
 
  223  vtkGetMacro(BoundaryEdgeInsertion, 
bool);
 
  224  vtkBooleanMacro(BoundaryEdgeInsertion, 
bool);
 
  232  vtkSetMacro(PassCellData, 
bool);
 
  233  vtkGetMacro(PassCellData, 
bool);
 
  234  vtkBooleanMacro(PassCellData, 
bool);
 
  246  vtkSetMacro(PassPointData, 
bool);
 
  247  vtkGetMacro(PassPointData, 
bool);
 
  248  vtkBooleanMacro(PassPointData, 
bool);
 
  253    USE_TARGET_EDGES = 0,
 
  254    USE_IMPRINT_EDGES = 1
 
  263  vtkSetClampMacro(PointInterpolation, 
int, USE_TARGET_EDGES, USE_IMPRINT_EDGES);
 
  264  vtkGetMacro(PointInterpolation, 
int);
 
  272    TRIANGULATION_INPUT = 1,
 
  273    TRIANGULATION_OUTPUT = 2
 
  284  vtkSetMacro(TriangulateOutput, 
bool);
 
  285  vtkGetMacro(TriangulateOutput, 
bool);
 
  286  vtkBooleanMacro(TriangulateOutput, 
bool);
 
  298  vtkSetClampMacro(DebugOutputType, 
int, NO_DEBUG_OUTPUT, TRIANGULATION_OUTPUT);
 
  299  vtkGetMacro(DebugOutputType, 
int);
 
Proxy object to connect input/output ports.
 
general representation of visualization data
 
Imprint the contact surface of one object onto another surface.
 
void SetImprintData(vtkDataObject *imprint)
Specify the a second vtkPolyData input which defines the surface mesh with which to imprint the targe...
 
~vtkImprintFilter() override
 
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
void SetPointInterpolationToImprintEdges()
If PassPointData is on, indicate how new point data is to generated at the intersection points betwee...
 
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
vtkDataObject * GetImprint()
Specify the a second vtkPolyData input which defines the surface mesh with which to imprint the targe...
 
void SetOutputTypeToTargetCells()
Control what is output by the filter.
 
void SetMergeToleranceTypeToMinEdge()
Specify a tolerance which is used to determine whether two points are considered coincident to one an...
 
void SetOutputTypeToProjectedImprint()
Control what is output by the filter.
 
void SetMergeToleranceTypeToAbsolute()
Specify a tolerance which is used to determine whether two points are considered coincident to one an...
 
void SetDebugOutputTypeToNoDebugOutput()
The following methods support debugging.
 
void SetImprintConnection(vtkAlgorithmOutput *algOutput)
Specify the a second vtkPolyData input connection which defines the surface mesh with which to imprin...
 
void SetDebugOutputTypeToTriangulationOutput()
The following methods support debugging.
 
void SetDebugOutputTypeToTriangulationInput()
The following methods support debugging.
 
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods to instantiate, print and provide type information.
 
vtkPolyData * GetDebugOutput()
Get the output data (in the second output, if the DebugOutput != NO_DEBUG_OUTPUT).
 
void SetMergeToleranceTypeToRelativeToProjection()
Specify a tolerance which is used to determine whether two points are considered coincident to one an...
 
bool BoundaryEdgeInsertion
 
void SetOutputTypeToImprintedCells()
Control what is output by the filter.
 
void SetPointInterpolationToTargetEdges()
If PassPointData is on, indicate how new point data is to generated at the intersection points betwee...
 
vtkDataObject * GetTarget()
Specify the first vtkPolyData input which defines the surface mesh to imprint (i.e....
 
void SetTargetData(vtkDataObject *target)
Specify the first vtkPolyData input which defines the surface mesh to imprint (i.e....
 
static vtkImprintFilter * New()
Standard methods to instantiate, print and provide type information.
 
vtkAlgorithmOutput * GetImprintConnection()
 
vtkAlgorithmOutput * GetTargetConnection()
 
void SetOutputTypeToMergedImprint()
Control what is output by the filter.
 
void SetOutputTypeToImprintedRegion()
Control what is output by the filter.
 
double ComputeMergeTolerance(vtkPolyData *pdata)
 
void SetTargetConnection(vtkAlgorithmOutput *algOutput)
Specify the first vtkPolyData input connection which defines the surface mesh to imprint (i....
 
a simple class to control print indentation
 
Superclass for algorithms that produce only polydata as output.
 
concrete dataset represents vertices, lines, polygons, and triangle strips
 
perform fast cell location operations
 
boost::graph_traits< vtkGraph * >::vertex_descriptor target(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)