ActiViz .NET  5.8.0
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Static Private Member Functions | List of all members
Kitware.VTK.vtkDecimatePro Class Reference

vtkDecimatePro - reduce the number of triangles in a mesh More...

Inheritance diagram for Kitware.VTK.vtkDecimatePro:
[legend]
Collaboration diagram for Kitware.VTK.vtkDecimatePro:
[legend]

Public Member Functions

 vtkDecimatePro (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkDecimatePro ()
 Create object with specified reduction of 90% and feature angle of 15 degrees. Edge splitting is on, defer splitting is on, and the split angle is 75 degrees. Topology preservation is off, delete boundary vertices is on, and the maximum error is set to VTK_DOUBLE_MAX. The inflection point ratio is 10 and the vertex degree is 25. Error accumulation is turned off.
virtual void AccumulateErrorOff ()
 The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.
virtual void AccumulateErrorOn ()
 The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.
virtual void BoundaryVertexDeletionOff ()
 Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.
virtual void BoundaryVertexDeletionOn ()
 Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.
virtual double GetAbsoluteError ()
 Same as MaximumError, but to be used when ErrorIsAbsolute is 1
virtual double GetAbsoluteErrorMaxValue ()
 Same as MaximumError, but to be used when ErrorIsAbsolute is 1
virtual double GetAbsoluteErrorMinValue ()
 Same as MaximumError, but to be used when ErrorIsAbsolute is 1
virtual int GetAccumulateError ()
 The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.
virtual int GetBoundaryVertexDeletion ()
 Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.
virtual int GetDegree ()
 If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)
virtual int GetDegreeMaxValue ()
 If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)
virtual int GetDegreeMinValue ()
 If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)
virtual int GetErrorIsAbsolute ()
 The MaximumError is normally defined as a fraction of the dataset bounding diagonal. By setting ErrorIsAbsolute to 1, the error is instead defined as that specified by AbsoluteError. By default ErrorIsAbsolute=0.
virtual double GetFeatureAngle ()
 Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).
virtual double GetFeatureAngleMaxValue ()
 Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).
virtual double GetFeatureAngleMinValue ()
 Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).
virtual double GetInflectionPointRatio ()
 Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.
virtual double GetInflectionPointRatioMaxValue ()
 Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.
virtual double GetInflectionPointRatioMinValue ()
 Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.
void GetInflectionPoints (IntPtr inflectionPoints)
 Get a list of inflection points. These are double values 0 < r <= 1.0 corresponding to reduction level, and there are a total of NumberOfInflectionPoints() values. You must provide an array (of the correct size) into which the inflection points are written.
IntPtr GetInflectionPoints ()
 Get a list of inflection points. These are double values 0 < r <= 1.0 corresponding to reduction level, and there are a total of NumberOfInflectionPoints() values. You must provide an array (of the correct size) into which the inflection points are written. This method returns a pointer to a list of inflection points.
virtual double GetMaximumError ()
 Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.
virtual double GetMaximumErrorMaxValue ()
 Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.
virtual double GetMaximumErrorMinValue ()
 Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.
int GetNumberOfInflectionPoints ()
 Get the number of inflection points. Only returns a valid value after the filter has executed. The values in the list are mesh reduction values at each inflection point. Note: the first inflection point always occurs right before non-planar triangles are decimated (i.e., as the error becomes non-zero).
virtual int GetPreSplitMesh ()
 In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.
virtual int GetPreserveTopology ()
 Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.
virtual double GetSplitAngle ()
 Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.
virtual double GetSplitAngleMaxValue ()
 Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.
virtual double GetSplitAngleMinValue ()
 Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.
virtual int GetSplitting ()
 Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.
virtual double GetTargetReduction ()
 Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).
virtual double GetTargetReductionMaxValue ()
 Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).
virtual double GetTargetReductionMinValue ()
 Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).
override int IsA (string type)
 Undocumented Block
new vtkDecimatePro NewInstance ()
 Undocumented Block
virtual void PreSplitMeshOff ()
 In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.
virtual void PreSplitMeshOn ()
 In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.
virtual void PreserveTopologyOff ()
 Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.
virtual void PreserveTopologyOn ()
 Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.
virtual void SetAbsoluteError (double _arg)
 Same as MaximumError, but to be used when ErrorIsAbsolute is 1
virtual void SetAccumulateError (int _arg)
 The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.
virtual void SetBoundaryVertexDeletion (int _arg)
 Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.
virtual void SetDegree (int _arg)
 If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)
virtual void SetErrorIsAbsolute (int _arg)
 The MaximumError is normally defined as a fraction of the dataset bounding diagonal. By setting ErrorIsAbsolute to 1, the error is instead defined as that specified by AbsoluteError. By default ErrorIsAbsolute=0.
virtual void SetFeatureAngle (double _arg)
 Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).
virtual void SetInflectionPointRatio (double _arg)
 Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.
virtual void SetMaximumError (double _arg)
 Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.
virtual void SetPreSplitMesh (int _arg)
 In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.
virtual void SetPreserveTopology (int _arg)
 Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.
virtual void SetSplitAngle (double _arg)
 Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.
virtual void SetSplitting (int _arg)
 Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.
virtual void SetTargetReduction (double _arg)
 Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).
virtual void SplittingOff ()
 Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.
virtual void SplittingOn ()
 Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.
- Public Member Functions inherited from Kitware.VTK.vtkPolyDataAlgorithm
 vtkPolyDataAlgorithm (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkPolyDataAlgorithm ()
 Undocumented Block
void AddInput (vtkDataObject arg0)
 Add an input of this algorithm. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::AddInputConnection(). See SetInput() for details.
void AddInput (int arg0, vtkDataObject arg1)
 Add an input of this algorithm. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::AddInputConnection(). See SetInput() for details.
vtkDataObject GetInput ()
 this method is not recommended for use, but lots of old style filters use it
vtkDataObject GetInput (int port)
 this method is not recommended for use, but lots of old style filters use it
vtkPolyData GetOutput ()
 Get the output data object for a port on this algorithm.
vtkPolyData GetOutput (int arg0)
 Get the output data object for a port on this algorithm.
vtkPolyData GetPolyDataInput (int port)
 this method is not recommended for use, but lots of old style filters use it
void SetInput (vtkDataObject arg0)
 Set an input of this algorithm. You should not override these methods because they are not the only way to connect a pipeline. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::SetInputConnection(). These methods transform the input index to the input port index, not an index of a connection within a single port.
void SetInput (int arg0, vtkDataObject arg1)
 Set an input of this algorithm. You should not override these methods because they are not the only way to connect a pipeline. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::SetInputConnection(). These methods transform the input index to the input port index, not an index of a connection within a single port.
virtual void SetOutput (vtkDataObject d)
 Get the output data object for a port on this algorithm.
- Public Member Functions inherited from Kitware.VTK.vtkAlgorithm
 vtkAlgorithm (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkAlgorithm ()
 Undocumented Block
override void Register (vtkObjectBase o)
 Participate in garbage collection.
virtual void AbortExecuteOff ()
 Set/Get the AbortExecute flag for the process object. Process objects may handle premature termination of execution in different ways.
virtual void AbortExecuteOn ()
 Set/Get the AbortExecute flag for the process object. Process objects may handle premature termination of execution in different ways.
virtual void AddInputConnection (int port, vtkAlgorithmOutput input)
 Add a connection to the given input port index. See SetInputConnection() for details on input connections. This method is the complement to RemoveInputConnection() in that it adds only the connection specified without affecting other connections. Typical usage is
virtual void AddInputConnection (vtkAlgorithmOutput input)
 Add a connection to the given input port index. See SetInputConnection() for details on input connections. This method is the complement to RemoveInputConnection() in that it adds only the connection specified without affecting other connections. Typical usage is
virtual double ComputePriority ()
 Returns the priority of the piece described by the current update extent. The priority is a number between 0.0 and 1.0 with 0 meaning skippable (REQUEST_DATA not needed) and 1.0 meaning important.
void ConvertTotalInputToPortConnection (int ind, ref int port, ref int conn)
 Convenience routine to convert from a linear ordering of input connections to a port/connection pair.
virtual int GetAbortExecute ()
 Set/Get the AbortExecute flag for the process object. Process objects may handle premature termination of execution in different ways.
virtual uint GetErrorCode ()
 The error code contains a possible error that occured while reading or writing the file.
vtkExecutive GetExecutive ()
 Get this algorithm's executive. If it has none, a default executive will be created.
virtual vtkInformation GetInformation ()
 Set/Get the information object associated with this algorithm.
vtkInformation GetInputArrayInformation (int idx)
 Get the info object for the specified input array to this algorithm
vtkAlgorithmOutput GetInputConnection (int port, int index)
 Get the algorithm output port connected to an input port.
vtkDataObject GetInputDataObject (int port, int connection)
 Get the data object that will contain the algorithm input for the given port and given connection.
vtkInformation GetInputPortInformation (int port)
 Get the information object associated with an input port. There is one input port per kind of input to the algorithm. Each input port tells executives what kind of data and downstream requests this algorithm can handle for that input.
int GetNumberOfInputConnections (int port)
 Get the number of inputs currently connected to a port.
int GetNumberOfInputPorts ()
 Get the number of input ports used by the algorithm.
int GetNumberOfOutputPorts ()
 Get the number of output ports provided by the algorithm.
vtkDataObject GetOutputDataObject (int port)
 Get the data object that will contain the algorithm output for the given port.
vtkAlgorithmOutput GetOutputPort (int index)
 Get a proxy object corresponding to the given output port of this algorithm. The proxy object can be passed to another algorithm's SetInputConnection(), AddInputConnection(), and RemoveInputConnection() methods to modify pipeline connectivity.
vtkAlgorithmOutput GetOutputPort ()
 Get a proxy object corresponding to the given output port of this algorithm. The proxy object can be passed to another algorithm's SetInputConnection(), AddInputConnection(), and RemoveInputConnection() methods to modify pipeline connectivity.
vtkInformation GetOutputPortInformation (int port)
 Get the information object associated with an output port. There is one output port per output from the algorithm. Each output port tells executives what kind of upstream requests this algorithm can handle for that output.
virtual double GetProgress ()
 Set/Get the execution progress of a process object.
virtual double GetProgressMaxValue ()
 Set/Get the execution progress of a process object.
virtual double GetProgressMinValue ()
 Set/Get the execution progress of a process object.
virtual string GetProgressText ()
 Set the current text message associated with the progress state. This may be used by a calling process/GUI. Note: Because SetProgressText() is called from inside RequestData() it does not modify the algorithm object. Algorithms are not allowed to modify themselves from inside RequestData().
virtual int GetReleaseDataFlag ()
 Turn release data flag on or off for all output ports.
int GetTotalNumberOfInputConnections ()
 Get the total number of inputs for this algorithm
int HasExecutive ()
 Check whether this algorithm has an assigned executive. This will NOT create a default executive.
virtual int ModifyRequest (vtkInformation request, int when)
 This method gives the algorithm a chance to modify the contents of a request before or after (specified in the when argument) it is forwarded. The default implementation is empty. Returns 1 on success, 0 on failure. When can be either vtkExecutive::BeforeForward or vtkExecutive::AfterForward.
int ProcessRequest (vtkInformation request, vtkCollection inInfo, vtkInformationVector outInfo)
 Version of ProcessRequest() that is wrapped. This converts the collection to an array and calls the other version.
void ReleaseDataFlagOff ()
 Turn release data flag on or off for all output ports.
void ReleaseDataFlagOn ()
 Turn release data flag on or off for all output ports.
void RemoveAllInputs ()
 Remove all the input data.
virtual void RemoveInputConnection (int port, vtkAlgorithmOutput input)
 Remove a connection from the given input port index. See SetInputConnection() for details on input connection. This method is the complement to AddInputConnection() in that it removes only the connection specified without affecting other connections. Typical usage is
virtual void SetAbortExecute (int _arg)
 Set/Get the AbortExecute flag for the process object. Process objects may handle premature termination of execution in different ways.
virtual void SetExecutive (vtkExecutive executive)
 Set this algorithm's executive. This algorithm is removed from any executive to which it has previously been assigned and then assigned to the given executive.
virtual void SetInformation (vtkInformation arg0)
 Set/Get the information object associated with this algorithm.
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, string name)
 Set the input data arrays that this algorithm will process. Specifically the idx array that this algorithm will process (starting from 0) is the array on port, connection with the specified association and name or attribute type (such as SCALARS). The fieldAssociation refers to which field in the data object the array is stored. See vtkDataObject::FieldAssociations for detail.
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 Set the input data arrays that this algorithm will process. Specifically the idx array that this algorithm will process (starting from 0) is the array on port, connection with the specified association and name or attribute type (such as SCALARS). The fieldAssociation refers to which field in the data object the array is stored. See vtkDataObject::FieldAssociations for detail.
virtual void SetInputArrayToProcess (int idx, vtkInformation info)
 Set the input data arrays that this algorithm will process. Specifically the idx array that this algorithm will process (starting from 0) is the array on port, connection with the specified association and name or attribute type (such as SCALARS). The fieldAssociation refers to which field in the data object the array is stored. See vtkDataObject::FieldAssociations for detail.
virtual void SetInputArrayToProcess (int idx, int port, int connection, string fieldAssociation, string attributeTypeorName)
 String based versions of SetInputArrayToProcess(). Because fieldAssociation and fieldAttributeType are enums, they cannot be easily accessed from scripting language. These methods provides an easy and safe way of passing association and attribute type information. Field association is one of the following:
virtual void SetInputConnection (int port, vtkAlgorithmOutput input)
 Set the connection for the given input port index. Each input port of a filter has a specific purpose. A port may have zero or more connections and the required number is specified by each filter. Setting the connection with this method removes all other connections from the port. To add more than one connection use AddInputConnection().
virtual void SetInputConnection (vtkAlgorithmOutput input)
 Set the connection for the given input port index. Each input port of a filter has a specific purpose. A port may have zero or more connections and the required number is specified by each filter. Setting the connection with this method removes all other connections from the port. To add more than one connection use AddInputConnection().
virtual void SetProgress (double _arg)
 Set/Get the execution progress of a process object.
void SetProgressText (string ptext)
 Set the current text message associated with the progress state. This may be used by a calling process/GUI. Note: Because SetProgressText() is called from inside RequestData() it does not modify the algorithm object. Algorithms are not allowed to modify themselves from inside RequestData().
virtual void SetReleaseDataFlag (int arg0)
 Turn release data flag on or off for all output ports.
virtual void Update ()
 Bring this algorithm's outputs up-to-date.
int UpdateExtentIsEmpty (vtkDataObject output)
 This detects when the UpdateExtent will generate no data This condition is satisfied when the UpdateExtent has zero volume (0,-1,...) or the UpdateNumberOfPieces is 0. The source uses this call to determine whether to call Execute.
int UpdateExtentIsEmpty (vtkInformation pinfo, int extentType)
 This detects when the UpdateExtent will generate no data This condition is satisfied when the UpdateExtent has zero volume (0,-1,...) or the UpdateNumberOfPieces is 0. The source uses this call to determine whether to call Execute.
virtual void UpdateInformation ()
 Backward compatibility method to invoke UpdateInformation on executive.
void UpdateProgress (double amount)
 Update the progress of the process object. If a ProgressMethod exists, executes it. Then set the Progress ivar to amount. The parameter amount should range between (0,1).
virtual void UpdateWholeExtent ()
 Bring this algorithm's outputs up-to-date.
- Public Member Functions inherited from Kitware.VTK.vtkObject
 vtkObject (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkObject ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
uint AddObserver (uint arg0, vtkCommand arg1, float priority)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
uint AddObserver (string arg0, vtkCommand arg1, float priority)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
virtual void DebugOff ()
 Turn debugging output off.
virtual void DebugOn ()
 Turn debugging output on.
vtkCommand GetCommand (uint tag)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
byte GetDebug ()
 Get the value of the debug flag.
virtual uint GetMTime ()
 Return this object's modified time.
int HasObserver (uint arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int HasObserver (string arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int HasObserver (uint arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int HasObserver (string arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (uint arg0, IntPtr callData)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (string arg0, IntPtr callData)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (uint arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (string arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
virtual void Modified ()
 Update the modification time for this object. Many filters rely on the modification time to determine if they need to recompute their data. The modification time is a unique monotonically increasing unsigned long integer.
void RemoveAllObservers ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObserver (vtkCommand arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObserver (uint tag)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (uint arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (string arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (uint arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (string arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void SetDebug (byte debugFlag)
 Set the value of the debug flag. A non-zero value turns debugging on.
override string ToString ()
 Returns the result of calling vtkObject::Print as a C# string.
delegate void vtkObjectEventHandler (vtkObject sender, vtkObjectEventArgs e)
 Generic signature for all vtkObject events.
void RemoveAllHandlersForAllEvents ()
 Call RemoveAllHandlers on each non-null vtkObjectEventRelay. TODO: This method needs to get called by the generated Dispose. Make that happen...
- Public Member Functions inherited from Kitware.VTK.vtkObjectBase
 vtkObjectBase (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkObjectBase ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
virtual void FastDelete ()
 Delete a reference to this object. This version will not invoke garbage collection and can potentially leak the object if it is part of a reference loop. Use this method only when it is known that the object has another reference and would not be collected if a full garbage collection check were done.
string GetClassName ()
 Return the class name as a string. This method is defined in all subclasses of vtkObjectBase with the vtkTypeMacro found in vtkSetGet.h.
int GetReferenceCount ()
 Return the current reference count of this object.
void SetReferenceCount (int arg0)
 Sets the reference count. (This is very dangerous, use with care.)

Static Public Member Functions

static new vtkDecimatePro New ()
 Create object with specified reduction of 90% and feature angle of 15 degrees. Edge splitting is on, defer splitting is on, and the split angle is 75 degrees. Topology preservation is off, delete boundary vertices is on, and the maximum error is set to VTK_DOUBLE_MAX. The inflection point ratio is 10 and the vertex degree is 25. Error accumulation is turned off.
static new int IsTypeOf (string type)
 Undocumented Block
static new vtkDecimatePro SafeDownCast (vtkObjectBase o)
 Undocumented Block

Public Attributes

new const string MRFullTypeName = "Kitware.VTK.vtkDecimatePro"
 Automatically generated type registration mechanics.
- Public Attributes inherited from Kitware.VTK.vtkPolyDataAlgorithm
new const string MRFullTypeName = "Kitware.VTK.vtkPolyDataAlgorithm"
 Automatically generated type registration mechanics.
- Public Attributes inherited from Kitware.VTK.vtkAlgorithm
new const string MRFullTypeName = "Kitware.VTK.vtkAlgorithm"
 Automatically generated type registration mechanics.
- Public Attributes inherited from Kitware.VTK.vtkObject
new const string MRFullTypeName = "Kitware.VTK.vtkObject"
 Automatically generated type registration mechanics.
- Public Attributes inherited from Kitware.VTK.vtkObjectBase
new const string MRFullTypeName = "Kitware.VTK.vtkObjectBase"
 Automatically generated type registration mechanics.
- Public Attributes inherited from Kitware.VTK.WrappedObject
const string vtkChartsEL_dll = "libKitware.VTK.vtkCharts.Unmanaged.so"
 Export layer functions for 'vtkCharts' are exported from the DLL named by the value of this variable.
const string vtkCommonEL_dll = "libKitware.VTK.vtkCommon.Unmanaged.so"
 Export layer functions for 'vtkCommon' are exported from the DLL named by the value of this variable.
const string vtkFilteringEL_dll = "libKitware.VTK.vtkFiltering.Unmanaged.so"
 Export layer functions for 'vtkFiltering' are exported from the DLL named by the value of this variable.
const string vtkGenericFilteringEL_dll = "libKitware.VTK.vtkGenericFiltering.Unmanaged.so"
 Export layer functions for 'vtkGenericFiltering' are exported from the DLL named by the value of this variable.
const string vtkGeovisEL_dll = "libKitware.VTK.vtkGeovis.Unmanaged.so"
 Export layer functions for 'vtkGeovis' are exported from the DLL named by the value of this variable.
const string vtkGraphicsEL_dll = "libKitware.VTK.vtkGraphics.Unmanaged.so"
 Export layer functions for 'vtkGraphics' are exported from the DLL named by the value of this variable.
const string vtkHybridEL_dll = "libKitware.VTK.vtkHybrid.Unmanaged.so"
 Export layer functions for 'vtkHybrid' are exported from the DLL named by the value of this variable.
const string vtkIOEL_dll = "libKitware.VTK.vtkIO.Unmanaged.so"
 Export layer functions for 'vtkIO' are exported from the DLL named by the value of this variable.
const string vtkImagingEL_dll = "libKitware.VTK.vtkImaging.Unmanaged.so"
 Export layer functions for 'vtkImaging' are exported from the DLL named by the value of this variable.
const string vtkInfovisEL_dll = "libKitware.VTK.vtkInfovis.Unmanaged.so"
 Export layer functions for 'vtkInfovis' are exported from the DLL named by the value of this variable.
const string vtkParallelEL_dll = "libKitware.VTK.vtkParallel.Unmanaged.so"
 Export layer functions for 'vtkParallel' are exported from the DLL named by the value of this variable.
const string vtkRenderingEL_dll = "libKitware.VTK.vtkRendering.Unmanaged.so"
 Export layer functions for 'vtkRendering' are exported from the DLL named by the value of this variable.
const string vtkViewsEL_dll = "libKitware.VTK.vtkViews.Unmanaged.so"
 Export layer functions for 'vtkViews' are exported from the DLL named by the value of this variable.
const string vtkVolumeRenderingEL_dll = "libKitware.VTK.vtkVolumeRendering.Unmanaged.so"
 Export layer functions for 'vtkVolumeRendering' are exported from the DLL named by the value of this variable.
const string vtkWidgetsEL_dll = "libKitware.VTK.vtkWidgets.Unmanaged.so"
 Export layer functions for 'vtkWidgets' are exported from the DLL named by the value of this variable.

Static Public Attributes

static new readonly string MRClassNameKey = "14vtkDecimatePro"
 Automatically generated type registration mechanics.
- Static Public Attributes inherited from Kitware.VTK.vtkPolyDataAlgorithm
static new readonly string MRClassNameKey = "20vtkPolyDataAlgorithm"
 Automatically generated type registration mechanics.
- Static Public Attributes inherited from Kitware.VTK.vtkAlgorithm
static new readonly string MRClassNameKey = "12vtkAlgorithm"
 Automatically generated type registration mechanics.
- Static Public Attributes inherited from Kitware.VTK.vtkObject
static new readonly string MRClassNameKey = "9vtkObject"
 Automatically generated type registration mechanics.
- Static Public Attributes inherited from Kitware.VTK.vtkObjectBase
static new readonly string MRClassNameKey = "13vtkObjectBase"
 Automatically generated type registration mechanics.

Protected Member Functions

override void Dispose (bool disposing)
 Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.

Static Private Member Functions

static vtkDecimatePro ()
 Automatically generated type registration mechanics.

Additional Inherited Members

- Properties inherited from Kitware.VTK.vtkObject
Kitware.VTK.vtkObject.vtkObjectEventHandler AbortCheckEvt
 The AbortCheckEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.AbortCheckEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler AnimationCueTickEvt
 The AnimationCueTickEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.AnimationCueTickEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler AnyEvt
 The AnyEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.AnyEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler CharEvt
 The CharEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.CharEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ConfigureEvt
 The ConfigureEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ConfigureEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ConnectionClosedEvt
 The ConnectionClosedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ConnectionClosedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ConnectionCreatedEvt
 The ConnectionCreatedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ConnectionCreatedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler CreateTimerEvt
 The CreateTimerEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.CreateTimerEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler CursorChangedEvt
 The CursorChangedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.CursorChangedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler DeleteEvt
 The DeleteEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.DeleteEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler DestroyTimerEvt
 The DestroyTimerEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.DestroyTimerEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler DisableEvt
 The DisableEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.DisableEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler DomainModifiedEvt
 The DomainModifiedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.DomainModifiedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EnableEvt
 The EnableEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EnableEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EndAnimationCueEvt
 The EndAnimationCueEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EndAnimationCueEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EndEvt
 The EndEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EndEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EndInteractionEvt
 The EndInteractionEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EndInteractionEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EndPickEvt
 The EndPickEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EndPickEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EndWindowLevelEvt
 The EndWindowLevelEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EndWindowLevelEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler EnterEvt
 The EnterEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.EnterEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ErrorEvt
 The ErrorEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ErrorEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ExecuteInformationEvt
 The ExecuteInformationEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ExecuteInformationEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ExitEvt
 The ExitEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ExitEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ExposeEvt
 The ExposeEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ExposeEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler InteractionEvt
 The InteractionEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.InteractionEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler KeyPressEvt
 The KeyPressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.KeyPressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler KeyReleaseEvt
 The KeyReleaseEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.KeyReleaseEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler LeaveEvt
 The LeaveEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.LeaveEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler LeftButtonPressEvt
 The LeftButtonPressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.LeftButtonPressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler LeftButtonReleaseEvt
 The LeftButtonReleaseEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.LeftButtonReleaseEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler MiddleButtonPressEvt
 The MiddleButtonPressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.MiddleButtonPressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler MiddleButtonReleaseEvt
 The MiddleButtonReleaseEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.MiddleButtonReleaseEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ModifiedEvt
 The ModifiedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ModifiedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler MouseMoveEvt
 The MouseMoveEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.MouseMoveEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler MouseWheelBackwardEvt
 The MouseWheelBackwardEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.MouseWheelBackwardEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler MouseWheelForwardEvt
 The MouseWheelForwardEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.MouseWheelForwardEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler PickEvt
 The PickEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.PickEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler PlacePointEvt
 The PlacePointEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.PlacePointEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler PlaceWidgetEvt
 The PlaceWidgetEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.PlaceWidgetEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ProgressEvt
 The ProgressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ProgressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler PropertyModifiedEvt
 The PropertyModifiedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.PropertyModifiedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler RegisterEvt
 The RegisterEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.RegisterEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler RenderEvt
 The RenderEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.RenderEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler RenderWindowMessageEvt
 The RenderWindowMessageEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.RenderWindowMessageEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ResetCameraClippingRangeEvt
 The ResetCameraClippingRangeEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ResetCameraClippingRangeEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ResetCameraEvt
 The ResetCameraEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ResetCameraEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler ResetWindowLevelEvt
 The ResetWindowLevelEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.ResetWindowLevelEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler RightButtonPressEvt
 The RightButtonPressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.RightButtonPressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler RightButtonReleaseEvt
 The RightButtonReleaseEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.RightButtonReleaseEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler SelectionChangedEvt
 The SelectionChangedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.SelectionChangedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler SetOutputEvt
 The SetOutputEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.SetOutputEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler StartAnimationCueEvt
 The StartAnimationCueEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.StartAnimationCueEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler StartEvt
 The StartEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.StartEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler StartInteractionEvt
 The StartInteractionEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.StartInteractionEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler StartPickEvt
 The StartPickEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.StartPickEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler StartWindowLevelEvt
 The StartWindowLevelEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.StartWindowLevelEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler TimerEvt
 The TimerEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.TimerEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler UnRegisterEvt
 The UnRegisterEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.UnRegisterEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler UpdateEvt
 The UpdateEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.UpdateEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler UpdateInformationEvt
 The UpdateInformationEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.UpdateInformationEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler UpdatePropertyEvt
 The UpdatePropertyEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.UpdatePropertyEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler VolumeMapperComputeGradientsEndEvt
 The VolumeMapperComputeGradientsEndEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.VolumeMapperComputeGradientsEndEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler VolumeMapperComputeGradientsProgressEvt
 The VolumeMapperComputeGradientsProgressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.VolumeMapperComputeGradientsProgressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler VolumeMapperComputeGradientsStartEvt
 The VolumeMapperComputeGradientsStartEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.VolumeMapperComputeGradientsStartEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler VolumeMapperRenderEndEvt
 The VolumeMapperRenderEndEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.VolumeMapperRenderEndEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler VolumeMapperRenderProgressEvt
 The VolumeMapperRenderProgressEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.VolumeMapperRenderProgressEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler VolumeMapperRenderStartEvt
 The VolumeMapperRenderStartEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.VolumeMapperRenderStartEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler WarningEvt
 The WarningEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.WarningEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler WidgetActivateEvt
 The WidgetActivateEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.WidgetActivateEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler WidgetModifiedEvt
 The WidgetModifiedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.WidgetModifiedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler WidgetValueChangedEvt
 The WidgetValueChangedEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.WidgetValueChangedEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler WindowLevelEvt
 The WindowLevelEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.WindowLevelEvent as the eventId parameter.
Kitware.VTK.vtkObject.vtkObjectEventHandler WrongTagEvt
 The WrongTagEvt event is invoked when the sender's InvokeEvent method is called with vtkCommand.EventIds.WrongTagEvent as the eventId parameter.

Detailed Description

vtkDecimatePro - reduce the number of triangles in a mesh

Description vtkDecimatePro is a filter to reduce the number of triangles in a triangle mesh, forming a good approximation to the original geometry. The input to vtkDecimatePro is a vtkPolyData object, and only triangles are treated. If you desire to decimate polygonal meshes, first triangulate the polygons with vtkTriangleFilter object.

The implementation of vtkDecimatePro is similar to the algorithm originally described in "Decimation of Triangle Meshes", Proc Siggraph `92, with three major differences. First, this algorithm does not necessarily preserve the topology of the mesh. Second, it is guaranteed to give the a mesh reduction factor specified by the user (as long as certain constraints are not set - see Caveats). Third, it is set up generate progressive meshes, that is a stream of operations that can be easily transmitted and incrementally updated (see Hugues Hoppe's Siggraph '96 paper on progressive meshes).

The algorithm proceeds as follows. Each vertex in the mesh is classified and inserted into a priority queue. The priority is based on the error to delete the vertex and retriangulate the hole. Vertices that cannot be deleted or triangulated (at this point in the algorithm) are skipped. Then, each vertex in the priority queue is processed (i.e., deleted followed by hole triangulation using edge collapse). This continues until the priority queue is empty. Next, all remaining vertices are processed, and the mesh is split into separate pieces along sharp edges or at non-manifold attachment points and reinserted into the priority queue. Again, the priority queue is processed until empty. If the desired reduction is still not achieved, the remaining vertices are split as necessary (in a recursive fashion) so that it is possible to eliminate every triangle as necessary.

To use this object, at a minimum you need to specify the ivar TargetReduction. The algorithm is guaranteed to generate a reduced mesh at this level as long as the following four conditions are met: 1) topology modification is allowed (i.e., the ivar PreserveTopology is off); 2) mesh splitting is enabled (i.e., the ivar Splitting is on); 3) the algorithm is allowed to modify the boundary of the mesh (i.e., the ivar BoundaryVertexDeletion is on); and 4) the maximum allowable error (i.e., the ivar MaximumError) is set to VTK_DOUBLE_MAX. Other important parameters to adjust include the FeatureAngle and SplitAngle ivars, since these can impact the quality of the final mesh. Also, you can set the ivar AccumulateError to force incremental error update and distribution to surrounding vertices as each vertex is deleted. The accumulated error is a conservative global error bounds and decimation error, but requires additional memory and time to compute.

Constructor & Destructor Documentation

static Kitware.VTK.vtkDecimatePro.vtkDecimatePro ( )
staticprivate

Automatically generated type registration mechanics.

Kitware.VTK.vtkDecimatePro.vtkDecimatePro ( IntPtr  rawCppThis,
bool  callDisposalMethod,
bool  strong 
)

Automatically generated constructor - called from generated code. DO NOT call directly.

Kitware.VTK.vtkDecimatePro.vtkDecimatePro ( )

Create object with specified reduction of 90% and feature angle of 15 degrees. Edge splitting is on, defer splitting is on, and the split angle is 75 degrees. Topology preservation is off, delete boundary vertices is on, and the maximum error is set to VTK_DOUBLE_MAX. The inflection point ratio is 10 and the vertex degree is 25. Error accumulation is turned off.

Member Function Documentation

virtual void Kitware.VTK.vtkDecimatePro.AccumulateErrorOff ( )
virtual

The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.

virtual void Kitware.VTK.vtkDecimatePro.AccumulateErrorOn ( )
virtual

The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.

virtual void Kitware.VTK.vtkDecimatePro.BoundaryVertexDeletionOff ( )
virtual

Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.

virtual void Kitware.VTK.vtkDecimatePro.BoundaryVertexDeletionOn ( )
virtual

Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.

override void Kitware.VTK.vtkDecimatePro.Dispose ( bool  disposing)
protected

Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.

Reimplemented from Kitware.VTK.vtkPolyDataAlgorithm.

virtual double Kitware.VTK.vtkDecimatePro.GetAbsoluteError ( )
virtual

Same as MaximumError, but to be used when ErrorIsAbsolute is 1

virtual double Kitware.VTK.vtkDecimatePro.GetAbsoluteErrorMaxValue ( )
virtual

Same as MaximumError, but to be used when ErrorIsAbsolute is 1

virtual double Kitware.VTK.vtkDecimatePro.GetAbsoluteErrorMinValue ( )
virtual

Same as MaximumError, but to be used when ErrorIsAbsolute is 1

virtual int Kitware.VTK.vtkDecimatePro.GetAccumulateError ( )
virtual

The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.

virtual int Kitware.VTK.vtkDecimatePro.GetBoundaryVertexDeletion ( )
virtual

Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.

virtual int Kitware.VTK.vtkDecimatePro.GetDegree ( )
virtual

If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)

virtual int Kitware.VTK.vtkDecimatePro.GetDegreeMaxValue ( )
virtual

If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)

virtual int Kitware.VTK.vtkDecimatePro.GetDegreeMinValue ( )
virtual

If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)

virtual int Kitware.VTK.vtkDecimatePro.GetErrorIsAbsolute ( )
virtual

The MaximumError is normally defined as a fraction of the dataset bounding diagonal. By setting ErrorIsAbsolute to 1, the error is instead defined as that specified by AbsoluteError. By default ErrorIsAbsolute=0.

virtual double Kitware.VTK.vtkDecimatePro.GetFeatureAngle ( )
virtual

Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).

virtual double Kitware.VTK.vtkDecimatePro.GetFeatureAngleMaxValue ( )
virtual

Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).

virtual double Kitware.VTK.vtkDecimatePro.GetFeatureAngleMinValue ( )
virtual

Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).

virtual double Kitware.VTK.vtkDecimatePro.GetInflectionPointRatio ( )
virtual

Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.

virtual double Kitware.VTK.vtkDecimatePro.GetInflectionPointRatioMaxValue ( )
virtual

Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.

virtual double Kitware.VTK.vtkDecimatePro.GetInflectionPointRatioMinValue ( )
virtual

Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.

void Kitware.VTK.vtkDecimatePro.GetInflectionPoints ( IntPtr  inflectionPoints)

Get a list of inflection points. These are double values 0 < r <= 1.0 corresponding to reduction level, and there are a total of NumberOfInflectionPoints() values. You must provide an array (of the correct size) into which the inflection points are written.

IntPtr Kitware.VTK.vtkDecimatePro.GetInflectionPoints ( )

Get a list of inflection points. These are double values 0 < r <= 1.0 corresponding to reduction level, and there are a total of NumberOfInflectionPoints() values. You must provide an array (of the correct size) into which the inflection points are written. This method returns a pointer to a list of inflection points.

virtual double Kitware.VTK.vtkDecimatePro.GetMaximumError ( )
virtual

Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.

virtual double Kitware.VTK.vtkDecimatePro.GetMaximumErrorMaxValue ( )
virtual

Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.

virtual double Kitware.VTK.vtkDecimatePro.GetMaximumErrorMinValue ( )
virtual

Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.

int Kitware.VTK.vtkDecimatePro.GetNumberOfInflectionPoints ( )

Get the number of inflection points. Only returns a valid value after the filter has executed. The values in the list are mesh reduction values at each inflection point. Note: the first inflection point always occurs right before non-planar triangles are decimated (i.e., as the error becomes non-zero).

virtual int Kitware.VTK.vtkDecimatePro.GetPreserveTopology ( )
virtual

Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.

virtual int Kitware.VTK.vtkDecimatePro.GetPreSplitMesh ( )
virtual

In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.

virtual double Kitware.VTK.vtkDecimatePro.GetSplitAngle ( )
virtual

Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.

virtual double Kitware.VTK.vtkDecimatePro.GetSplitAngleMaxValue ( )
virtual

Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.

virtual double Kitware.VTK.vtkDecimatePro.GetSplitAngleMinValue ( )
virtual

Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.

virtual int Kitware.VTK.vtkDecimatePro.GetSplitting ( )
virtual

Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.

virtual double Kitware.VTK.vtkDecimatePro.GetTargetReduction ( )
virtual

Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).

virtual double Kitware.VTK.vtkDecimatePro.GetTargetReductionMaxValue ( )
virtual

Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).

virtual double Kitware.VTK.vtkDecimatePro.GetTargetReductionMinValue ( )
virtual

Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).

override int Kitware.VTK.vtkDecimatePro.IsA ( string  type)
virtual

Undocumented Block

Reimplemented from Kitware.VTK.vtkPolyDataAlgorithm.

static new int Kitware.VTK.vtkDecimatePro.IsTypeOf ( string  type)
static

Undocumented Block

Reimplemented from Kitware.VTK.vtkPolyDataAlgorithm.

static new vtkDecimatePro Kitware.VTK.vtkDecimatePro.New ( )
static

Create object with specified reduction of 90% and feature angle of 15 degrees. Edge splitting is on, defer splitting is on, and the split angle is 75 degrees. Topology preservation is off, delete boundary vertices is on, and the maximum error is set to VTK_DOUBLE_MAX. The inflection point ratio is 10 and the vertex degree is 25. Error accumulation is turned off.

Reimplemented from Kitware.VTK.vtkPolyDataAlgorithm.

new vtkDecimatePro Kitware.VTK.vtkDecimatePro.NewInstance ( )

Undocumented Block

Reimplemented from Kitware.VTK.vtkPolyDataAlgorithm.

virtual void Kitware.VTK.vtkDecimatePro.PreserveTopologyOff ( )
virtual

Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.

virtual void Kitware.VTK.vtkDecimatePro.PreserveTopologyOn ( )
virtual

Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.

virtual void Kitware.VTK.vtkDecimatePro.PreSplitMeshOff ( )
virtual

In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.

virtual void Kitware.VTK.vtkDecimatePro.PreSplitMeshOn ( )
virtual

In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.

static new vtkDecimatePro Kitware.VTK.vtkDecimatePro.SafeDownCast ( vtkObjectBase  o)
static

Undocumented Block

Reimplemented from Kitware.VTK.vtkPolyDataAlgorithm.

Here is the call graph for this function:

virtual void Kitware.VTK.vtkDecimatePro.SetAbsoluteError ( double  _arg)
virtual

Same as MaximumError, but to be used when ErrorIsAbsolute is 1

virtual void Kitware.VTK.vtkDecimatePro.SetAccumulateError ( int  _arg)
virtual

The computed error can either be computed directly from the mesh or the error may be accumulated as the mesh is modified. If the error is accumulated, then it represents a global error bounds, and the ivar MaximumError becomes a global bounds on mesh error. Accumulating the error requires extra memory proportional to the number of vertices in the mesh. If AccumulateError is off, then the error is not accumulated.

virtual void Kitware.VTK.vtkDecimatePro.SetBoundaryVertexDeletion ( int  _arg)
virtual

Turn on/off the deletion of vertices on the boundary of a mesh. This may limit the maximum reduction that may be achieved.

virtual void Kitware.VTK.vtkDecimatePro.SetDegree ( int  _arg)
virtual

If the number of triangles connected to a vertex exceeds "Degree", then the vertex will be split. (NOTE: the complexity of the triangulation algorithm is proportional to Degree^2. Setting degree small can improve the performance of the algorithm.)

virtual void Kitware.VTK.vtkDecimatePro.SetErrorIsAbsolute ( int  _arg)
virtual

The MaximumError is normally defined as a fraction of the dataset bounding diagonal. By setting ErrorIsAbsolute to 1, the error is instead defined as that specified by AbsoluteError. By default ErrorIsAbsolute=0.

virtual void Kitware.VTK.vtkDecimatePro.SetFeatureAngle ( double  _arg)
virtual

Specify the mesh feature angle. This angle is used to define what an edge is (i.e., if the surface normal between two adjacent triangles is >= FeatureAngle, an edge exists).

virtual void Kitware.VTK.vtkDecimatePro.SetInflectionPointRatio ( double  _arg)
virtual

Specify the inflection point ratio. An inflection point occurs when the ratio of reduction error between two iterations is greater than or equal to the InflectionPointRatio.

virtual void Kitware.VTK.vtkDecimatePro.SetMaximumError ( double  _arg)
virtual

Set the largest decimation error that is allowed during the decimation process. This may limit the maximum reduction that may be achieved. The maximum error is specified as a fraction of the maximum length of the input data bounding box.

virtual void Kitware.VTK.vtkDecimatePro.SetPreserveTopology ( int  _arg)
virtual

Turn on/off whether to preserve the topology of the original mesh. If on, mesh splitting and hole elimination will not occur. This may limit the maximum reduction that may be achieved.

virtual void Kitware.VTK.vtkDecimatePro.SetPreSplitMesh ( int  _arg)
virtual

In some cases you may wish to split the mesh prior to algorithm execution. This separates the mesh into semi-planar patches, which are disconnected from each other. This can give superior results in some cases. If the ivar PreSplitMesh ivar is enabled, the mesh is split with the specified SplitAngle. Otherwise mesh splitting is deferred as long as possible.

virtual void Kitware.VTK.vtkDecimatePro.SetSplitAngle ( double  _arg)
virtual

Specify the mesh split angle. This angle is used to control the splitting of the mesh. A split line exists when the surface normals between two edge connected triangles are >= SplitAngle.

virtual void Kitware.VTK.vtkDecimatePro.SetSplitting ( int  _arg)
virtual

Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.

virtual void Kitware.VTK.vtkDecimatePro.SetTargetReduction ( double  _arg)
virtual

Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size). Because of various constraints, this level of reduction may not be realized. If you want to guarantee a particular reduction, you must turn off PreserveTopology, turn on SplitEdges and BoundaryVertexDeletion, and set the MaximumError to VTK_DOUBLE_MAX (these ivars are initialized this way when the object is instantiated).

virtual void Kitware.VTK.vtkDecimatePro.SplittingOff ( )
virtual

Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.

virtual void Kitware.VTK.vtkDecimatePro.SplittingOn ( )
virtual

Turn on/off the splitting of the mesh at corners, along edges, at non-manifold points, or anywhere else a split is required. Turning splitting off will better preserve the original topology of the mesh, but you may not obtain the requested reduction.

Member Data Documentation

new readonly string Kitware.VTK.vtkDecimatePro.MRClassNameKey = "14vtkDecimatePro"
static

Automatically generated type registration mechanics.

new const string Kitware.VTK.vtkDecimatePro.MRFullTypeName = "Kitware.VTK.vtkDecimatePro"

Automatically generated type registration mechanics.


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