|
VTK
9.6.20260607
|
query-driven extraction of regions and patches from any SurfaceNets filter output More...
#include <vtkSurfaceNetsAtlas.h>
Public Types | |
| enum | ExtractionModes { EXTRACT_ALL = 0 , EXTRACT_LABEL_SET = 1 } |
| enum | OutputStyles { OUTPUT_STYLE_ALL = 0 , OUTPUT_STYLE_BOUNDARY = 1 } |
Public Types inherited from vtkPartitionedDataSetCollectionAlgorithm | |
| typedef vtkAlgorithm | Superclass |
Public Types inherited from vtkAlgorithm | |
| enum | DesiredOutputPrecision { SINGLE_PRECISION , DOUBLE_PRECISION , DEFAULT_PRECISION } |
| Values used for setting the desired output precision for various algorithms. More... | |
| typedef vtkObject | Superclass |
Public Member Functions | |
| int | GetNumberOfLabels () const |
| Return the number of distinct labels in the input. | |
| vtkIdType | GetLabelForName (const std::string &name) const |
| Reverse-lookup a label value by its name. | |
| vtkIdType | GetNumberOfPatches () const |
| Return the number of patches (unordered {L0, L1} pairs with L0 < L1) in the input. | |
| void | GetPatchLabels (int patchID, vtkIdType labels[2]) const |
Fill labels with the (L0, L1) pair defining the patch at patchID, with L0 < L1. | |
| vtkIdType | GetPatchCellCount (int patchID) const |
Return the number of cells on the patch at patchID. | |
| virtual void | SetExtractionMode (int) |
| Specify which regions are emitted in the output: | |
| virtual int | GetExtractionMode () |
| Specify which regions are emitted in the output: | |
| void | SetExtractionModeToAll () |
| Specify which regions are emitted in the output: | |
| void | SetExtractionModeToLabelSet () |
| Specify which regions are emitted in the output: | |
| virtual void | SetOutputStyle (int) |
| Specify which cells are included in each emitted Region partition. | |
| virtual int | GetOutputStyle () |
| Specify which cells are included in each emitted Region partition. | |
| void | SetOutputStyleToAll () |
| Specify which cells are included in each emitted Region partition. | |
| void | SetOutputStyleToBoundary () |
| Specify which cells are included in each emitted Region partition. | |
| virtual void | SetBackgroundLabel (vtkIdType) |
| The label value that represents background voxels. | |
| virtual vtkIdType | GetBackgroundLabel () |
| The label value that represents background voxels. | |
| void | AddSelectedLabel (vtkIdType label) |
| Add, remove, or replace a single label in the selection list. | |
| void | RemoveSelectedLabel (vtkIdType label) |
| Add, remove, or replace a single label in the selection list. | |
| void | ClearSelectedLabels () |
| Add, remove, or replace a single label in the selection list. | |
| void | SetNumberOfSelectedLabels (int n) |
| Set the selection list to exactly n entries. | |
| int | GetNumberOfSelectedLabels () const |
| Set the selection list to exactly n entries. | |
| void | SetSelectedLabel (int i, vtkIdType label) |
| Index-based access to the selection list. | |
| vtkIdType | GetSelectedLabel (int i) const |
| Index-based access to the selection list. | |
| std::vector< vtkIdType > | GetSelectedLabels () const |
| Set/Get the complete selection list. | |
| void | SetSelectedLabels (const std::vector< vtkIdType > &labels) |
| Set/Get the complete selection list. | |
| void | GenerateSelectedLabels (int numLabels, vtkIdType rangeStart, vtkIdType rangeEnd) |
| Populate the selection list with numLabels equally spaced integer labels between rangeStart and rangeEnd (inclusive). | |
| void | GenerateSelectedLabels (int numLabels, vtkIdType range[2]) |
| Populate the selection list with numLabels equally spaced integer labels between rangeStart and rangeEnd (inclusive). | |
| void | GenerateSelectedLabels (vtkIdType rangeStart, vtkIdType rangeEnd) |
| Populate the selection list with numLabels equally spaced integer labels between rangeStart and rangeEnd (inclusive). | |
| int | GetNumberOfLabelNames () const |
| Human-readable names for labels. | |
| void | SetLabelName (vtkIdType label, const std::string &name) |
| Human-readable names for labels. | |
| std::string | GetLabelName (vtkIdType label) const |
| Human-readable names for labels. | |
| void | AddLabelName (vtkIdType label, const std::string &name) |
| Human-readable names for labels. | |
| void | RemoveLabelName (vtkIdType label) |
| Human-readable names for labels. | |
| void | ClearLabelNames () |
| Human-readable names for labels. | |
| virtual void | SetGenerateRegions (bool) |
| When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label. | |
| virtual bool | GetGenerateRegions () |
| When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label. | |
| virtual void | GenerateRegionsOn () |
| When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label. | |
| virtual void | GenerateRegionsOff () |
| When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label. | |
| virtual void | SetGeneratePatches (bool) |
| When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection. | |
| virtual bool | GetGeneratePatches () |
| When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection. | |
| virtual void | GeneratePatchesOn () |
| When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection. | |
| virtual void | GeneratePatchesOff () |
| When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection. | |
| virtual void | SetResolveNonManifoldPoints (bool) |
| When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component. | |
| virtual bool | GetResolveNonManifoldPoints () |
| When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component. | |
| virtual void | ResolveNonManifoldPointsOn () |
| When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component. | |
| virtual void | ResolveNonManifoldPointsOff () |
| When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component. | |
| bool | HasLabel (vtkIdType label) const |
Return whether label exists in the atlas. | |
| bool | HasLabel (const std::string &name) const |
Return whether label exists in the atlas. | |
| int | GetLIDForLabel (vtkIdType label) const |
| Translate between Label and LID. | |
| int | GetLIDForLabel (const std::string &name) const |
| Translate between Label and LID. | |
| vtkIdType | GetLabelForLID (int lid) const |
| Translate between Label and LID. | |
| bool | AreAdjacent (vtkIdType label0, vtkIdType label1) const |
| Return whether two labels share a patch. | |
| bool | AreAdjacent (const std::string &name0, const std::string &name1) const |
| Return whether two labels share a patch. | |
| std::vector< vtkIdType > | GetAdjacentLabels (vtkIdType label) const |
Return a list of labels that share a patch with label. | |
| std::vector< vtkIdType > | GetAdjacentLabels (const std::string &name) const |
Return a list of labels that share a patch with label. | |
| int | GetPatchID (vtkIdType label0, vtkIdType label1) const |
| Return the patch ID for the patch defined by the (unordered) pair (label0, label1), or -1 if no such patch exists. | |
| int | GetPatchID (const std::string &name0, const std::string &name1) const |
| Return the patch ID for the patch defined by the (unordered) pair (label0, label1), or -1 if no such patch exists. | |
| std::vector< int > | GetPatchesForLabel (vtkIdType label) const |
Returns the indices of every patch touching label. | |
| std::vector< int > | GetPatchesForLabel (const std::string &name) const |
Returns the indices of every patch touching label. | |
Public Member Functions inherited from vtkPartitionedDataSetCollectionAlgorithm | |
| vtkPartitionedDataSetCollectionAlgorithm * | NewInstance () const |
| vtkTypeBool | ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo) override |
| Upstream/Downstream requests form the generalized interface through which executives invoke a algorithm's functionality. | |
| vtkPartitionedDataSetCollection * | GetOutput () |
| Get the output data object for the specified output port. | |
| vtkPartitionedDataSetCollection * | GetOutput (int) |
| Get the output data object for the specified output port. | |
Public Member Functions inherited from vtkAlgorithm | |
| vtkAlgorithm * | NewInstance () const |
| vtkTypeBool | HasExecutive () |
| Check whether this algorithm has an assigned executive. | |
| vtkExecutive * | GetExecutive () |
| Get this algorithm's executive. | |
| virtual void | SetExecutive (vtkExecutive *executive) |
| Set this algorithm's executive. | |
| vtkTypeBool | ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo) |
| Version of ProcessRequest() that is wrapped. | |
| virtual int | ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime) |
| A special version of ProcessRequest meant specifically for the pipeline modified time request. | |
| 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. | |
| vtkInformation * | GetInputPortInformation (int port) |
| Get the information object associated with an input port. | |
| vtkInformation * | GetOutputPortInformation (int port) |
| Get the information object associated with an output 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. | |
| void | SetAbortExecuteAndUpdateTime () |
| Set AbortExecute Flag and update LastAbortTime. | |
| void | UpdateProgress (double amount) |
| Update the progress of the process object. | |
| bool | CheckAbort () |
| Checks to see if this filter should abort. | |
| virtual void | SetInputArrayToProcess (int idx, vtkInformation *info) |
| Set the input data arrays that this algorithm will process. | |
| int | GetNumberOfInputArraySpecifications () |
| Get the number of input array indices that have already been set. | |
| bool | ResetInputArraySpecifications () |
| Clear all existing input array specifications (as if SetInputArrayToProcess had never been called). | |
| vtkInformation * | GetInputArrayInformation (int idx) |
| Get the info object for the specified input array to this algorithm. | |
| void | RemoveAllInputs () |
| Remove all the input data. | |
| vtkDataObject * | GetOutputDataObject (int port) |
| Get the data object that will contain the algorithm output for the given port. | |
| vtkDataObject * | GetInputDataObject (int port, int connection) |
| Get the data object that will contain the algorithm input for the given port and given connection. | |
| virtual void | RemoveInputConnection (int port, vtkAlgorithmOutput *input) |
| Remove a connection from the given input port index. | |
| virtual void | RemoveInputConnection (int port, int idx) |
| Remove a connection given by index idx. | |
| virtual void | RemoveAllInputConnections (int port) |
| Removes all input connections. | |
| virtual void | SetInputDataObject (int port, vtkDataObject *data) |
| Sets the data-object as an input on the given port index. | |
| virtual void | SetInputDataObject (vtkDataObject *data) |
| virtual void | AddInputDataObject (int port, vtkDataObject *data) |
| Add the data-object as an input to this given port. | |
| virtual void | AddInputDataObject (vtkDataObject *data) |
| vtkAlgorithmOutput * | GetOutputPort (int index) |
| Get a proxy object corresponding to the given output port of this algorithm. | |
| vtkAlgorithmOutput * | GetOutputPort () |
| int | GetNumberOfInputConnections (int port) |
| Get the number of inputs currently connected to a port. | |
| int | GetTotalNumberOfInputConnections () |
| Get the total number of inputs for this algorithm. | |
| vtkAlgorithmOutput * | GetInputConnection (int port, int index) |
| Get the algorithm output port connected to an input port. | |
| vtkAlgorithm * | GetInputAlgorithm (int port, int index, int &algPort) |
| Returns the algorithm and the output port index of that algorithm connected to a port-index pair. | |
| vtkAlgorithm * | GetInputAlgorithm (int port, int index) |
| Returns the algorithm connected to a port-index pair. | |
| vtkAlgorithm * | GetInputAlgorithm () |
| Equivalent to GetInputAlgorithm(0, 0). | |
| vtkExecutive * | GetInputExecutive (int port, int index) |
| Returns the executive associated with a particular input connection. | |
| vtkExecutive * | GetInputExecutive () |
| Equivalent to GetInputExecutive(0, 0) | |
| vtkInformation * | GetInputInformation (int port, int index) |
| Return the information object that is associated with a particular input connection. | |
| vtkInformation * | GetInputInformation () |
| Equivalent to GetInputInformation(0, 0) | |
| vtkInformation * | GetOutputInformation (int port) |
| Return the information object that is associated with a particular output port. | |
| virtual vtkTypeBool | Update (int port, vtkInformationVector *requests) |
| This method enables the passing of data requests to the algorithm to be used during execution (in addition to bringing a particular port up-to-date). | |
| virtual vtkTypeBool | Update (vtkInformation *requests) |
| Convenience method to update an algorithm after passing requests to its first output port. | |
| virtual int | UpdatePiece (int piece, int numPieces, int ghostLevels, const int extents[6]=nullptr) |
| Convenience method to update an algorithm after passing requests to its first output port. | |
| virtual int | UpdateExtent (const int extents[6]) |
| Convenience method to update an algorithm after passing requests to its first output port. | |
| virtual int | UpdateTimeStep (double time, int piece=-1, int numPieces=1, int ghostLevels=0, const int extents[6]=nullptr) |
| Convenience method to update an algorithm after passing requests to its first output port. | |
| virtual bool | UpdateInformation () |
| Bring the algorithm's information up-to-date. | |
| virtual bool | UpdateDataObject () |
| Create output object(s). | |
| virtual void | PropagateUpdateExtent () |
| Propagate meta-data upstream. | |
| virtual bool | UpdateWholeExtent () |
| Bring this algorithm's outputs up-to-date. | |
| void | ConvertTotalInputToPortConnection (int ind, int &port, int &conn) |
| Convenience routine to convert from a linear ordering of input connections to a port/connection pair. | |
| void | RemoveNoPriorTemporalAccessInformationKey () |
Removes any information key vtkStreamingDemandDrivenPipeline::NO_PRIOR_TEMPORAL_ACCESS() to all output ports of this vtkAlgorithm. | |
| virtual vtkInformation * | GetInformation () |
| Set/Get the information object associated with this algorithm. | |
| virtual void | SetInformation (vtkInformation *) |
| Set/Get the information object associated with this algorithm. | |
| bool | UsesGarbageCollector () const override |
| Participate in garbage collection. | |
| virtual void | SetAbortExecute (vtkTypeBool) |
| Set/Get the AbortExecute flag for the process object. | |
| virtual vtkTypeBool | GetAbortExecute () |
| Set/Get the AbortExecute flag for the process object. | |
| virtual void | AbortExecuteOn () |
| Set/Get the AbortExecute flag for the process object. | |
| virtual void | AbortExecuteOff () |
| Set/Get the AbortExecute flag for the process object. | |
| virtual double | GetProgress () |
| Get the execution progress of a process object. | |
| void | SetContainerAlgorithm (vtkAlgorithm *containerAlg) |
| Set/get a Container algorithm for this algorithm. | |
| vtkAlgorithm * | GetContainerAlgorithm () |
| Set/get a Container algorithm for this algorithm. | |
| virtual void | SetAbortOutput (bool) |
| Set/Get an internal variable used to communicate between the algorithm and executive. | |
| virtual bool | GetAbortOutput () |
| Set/Get an internal variable used to communicate between the algorithm and executive. | |
| virtual void | AbortOutputOn () |
| Set/Get an internal variable used to communicate between the algorithm and executive. | |
| virtual void | AbortOutputOff () |
| Set/Get an internal variable used to communicate between the algorithm and executive. | |
| void | SetProgressShiftScale (double shift, double scale) |
Specify the shift and scale values to use to apply to the progress amount when UpdateProgress is called. | |
| virtual double | GetProgressShift () |
Specify the shift and scale values to use to apply to the progress amount when UpdateProgress is called. | |
| virtual double | GetProgressScale () |
Specify the shift and scale values to use to apply to the progress amount when UpdateProgress is called. | |
| void | SetProgressText (const char *ptext) |
| Set the current text message associated with the progress state. | |
| virtual char * | GetProgressText () |
| Set the current text message associated with the progress state. | |
| virtual unsigned long | GetErrorCode () |
| The error code contains a possible error that occurred while reading or writing the file. | |
| void | SetInputArrayToProcess (const char *name, int fieldAssociation, int component=vtkArrayComponents::AllComponents) |
| Set the input data arrays that this algorithm will process. | |
| virtual void | SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name) |
| Set the input data arrays that this algorithm will process. | |
| virtual void | SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name, int component) |
| This method variant also accepts a component to consider rather than the entire tuple. | |
| virtual void | SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType) |
| Set the input data arrays that this algorithm will process. | |
| virtual void | SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType, int component) |
| This method variant also accepts a component to consider rather than the entire tuple. | |
| virtual void | SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName) |
| Set the input data arrays that this algorithm will process. | |
| virtual void | SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName, const char *component) |
| Set the input data arrays that this algorithm will process. | |
| virtual void | SetInputConnection (int port, vtkAlgorithmOutput *input) |
| Set the connection for the given input port index. | |
| virtual void | SetInputConnection (vtkAlgorithmOutput *input) |
| Set the connection for the given input port index. | |
| virtual void | AddInputConnection (int port, vtkAlgorithmOutput *input) |
| Add a connection to the given input port index. | |
| virtual void | AddInputConnection (vtkAlgorithmOutput *input) |
| Add a connection to the given input port index. | |
| virtual bool | Update (int port) |
| Bring this algorithm's outputs up-to-date. | |
| virtual bool | Update () |
| Bring this algorithm's outputs up-to-date. | |
| virtual void | SetReleaseDataFlag (vtkTypeBool) |
| Turn release data flag on or off for all output ports. | |
| virtual vtkTypeBool | GetReleaseDataFlag () |
| 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 | ReleaseDataFlagOff () |
| Turn release data flag on or off for all output ports. | |
| int | UpdateExtentIsEmpty (vtkInformation *pinfo, 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. | |
| 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. | |
| int * | GetUpdateExtent () |
| These functions return the update extent for output ports that use 3D extents. | |
| int * | GetUpdateExtent (int port) |
| These functions return the update extent for output ports that use 3D extents. | |
| void | GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1) |
| These functions return the update extent for output ports that use 3D extents. | |
| void | GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1) |
| These functions return the update extent for output ports that use 3D extents. | |
| void | GetUpdateExtent (int extent[6]) |
| These functions return the update extent for output ports that use 3D extents. | |
| void | GetUpdateExtent (int port, int extent[6]) |
| These functions return the update extent for output ports that use 3D extents. | |
| int | GetUpdatePiece () |
| These functions return the update extent for output ports that use piece extents. | |
| int | GetUpdatePiece (int port) |
| These functions return the update extent for output ports that use piece extents. | |
| int | GetUpdateNumberOfPieces () |
| These functions return the update extent for output ports that use piece extents. | |
| int | GetUpdateNumberOfPieces (int port) |
| These functions return the update extent for output ports that use piece extents. | |
| int | GetUpdateGhostLevel () |
| These functions return the update extent for output ports that use piece extents. | |
| int | GetUpdateGhostLevel (int port) |
| These functions return the update extent for output ports that use piece extents. | |
| void | SetProgressObserver (vtkProgressObserver *) |
| If an ProgressObserver is set, the algorithm will report progress through it rather than directly. | |
| virtual vtkProgressObserver * | GetProgressObserver () |
| If an ProgressObserver is set, the algorithm will report progress through it rather than directly. | |
| void | SetNoPriorTemporalAccessInformationKey (int key) |
Set to all output ports of this algorithm the information key vtkStreamingDemandDrivenPipeline::NO_PRIOR_TEMPORAL_ACCESS(). | |
| void | SetNoPriorTemporalAccessInformationKey () |
Set to all output ports of this algorithm the information key vtkStreamingDemandDrivenPipeline::NO_PRIOR_TEMPORAL_ACCESS(). | |
Public Member Functions inherited from vtkObject | |
| vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
| virtual void | DebugOn () |
| Turn debugging output on. | |
| virtual void | DebugOff () |
| Turn debugging output off. | |
| bool | GetDebug () |
| Get the value of the debug flag. | |
| void | SetDebug (bool debugFlag) |
| Set the value of the debug flag. | |
| virtual void | Modified () |
| Update the modification time for this object. | |
| virtual vtkMTimeType | GetMTime () |
| Return this object's modified time. | |
| void | RemoveObserver (unsigned long tag) |
| void | RemoveObservers (unsigned long event) |
| void | RemoveObservers (const char *event) |
| void | RemoveAllObservers () |
| vtkTypeBool | HasObserver (unsigned long event) |
| vtkTypeBool | HasObserver (const char *event) |
| vtkTypeBool | InvokeEvent (unsigned long event) |
| vtkTypeBool | InvokeEvent (const char *event) |
| std::string | GetObjectDescription () const override |
| The object description printed in messages and PrintSelf output. | |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| vtkCommand * | GetCommand (unsigned long tag) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| void | RemoveObserver (vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| void | RemoveObservers (const char *event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| template<class U, class T> | |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
| template<class U, class T> | |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
| template<class U, class T> | |
| unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Allow user to set the AbortFlagOn() with the return value of the callback method. | |
| vtkTypeBool | InvokeEvent (unsigned long event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. | |
| vtkTypeBool | InvokeEvent (const char *event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. | |
| virtual void | SetObjectName (const std::string &objectName) |
| Set/get the name of this object for reporting purposes. | |
| virtual std::string | GetObjectName () const |
| Set/get the name of this object for reporting purposes. | |
Public Member Functions inherited from vtkObjectBase | |
| const char * | GetClassName () const |
| Return the class name as a string. | |
| virtual vtkIdType | GetNumberOfGenerationsFromBase (const char *name) |
| Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
| virtual void | Delete () |
| Delete a VTK object. | |
| virtual void | FastDelete () |
| Delete a reference to this object. | |
| void | InitializeObjectBase () |
| void | Print (ostream &os) |
| Print an object to an ostream. | |
| void | Register (vtkObjectBase *o) |
| Increase the reference count (mark as used by another object). | |
| virtual void | UnRegister (vtkObjectBase *o) |
| Decrease the reference count (release by another object). | |
| int | GetReferenceCount () |
| Return the current reference count of this object. | |
| void | SetReferenceCount (int) |
| Sets the reference count. | |
| bool | GetIsInMemkind () const |
| A local state flag that remembers whether this object lives in the normal or extended memory space. | |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. | |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. | |
Protected Member Functions | |
| vtkSurfaceNetsAtlas () | |
| ~vtkSurfaceNetsAtlas () override | |
| int | FillInputPortInformation (int port, vtkInformation *info) override |
| Fill the input port information objects for this algorithm. | |
| int | RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override |
| Methods for subclasses to override to handle different pipeline requests. | |
Protected Member Functions inherited from vtkPartitionedDataSetCollectionAlgorithm | |
| vtkPartitionedDataSetCollectionAlgorithm () | |
| ~vtkPartitionedDataSetCollectionAlgorithm () override | |
| int | FillOutputPortInformation (int port, vtkInformation *info) override |
| Fill the output port information objects for this algorithm. | |
| virtual int | RequestDataObject (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
| Methods for subclasses to override to handle different pipeline requests. | |
| virtual int | RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
| Methods for subclasses to override to handle different pipeline requests. | |
| virtual int | RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
| Methods for subclasses to override to handle different pipeline requests. | |
| virtual int | RequestUpdateTime (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
| Methods for subclasses to override to handle different pipeline requests. | |
Protected Member Functions inherited from vtkAlgorithm | |
| vtkAlgorithm () | |
| ~vtkAlgorithm () override | |
| bool | CheckUpstreamAbort () |
| Checks to see if an upstream filter has been aborted. | |
| virtual void | SetNumberOfInputPorts (int n) |
| Set the number of input ports used by the algorithm. | |
| virtual void | SetNumberOfOutputPorts (int n) |
| Set the number of output ports provided by the algorithm. | |
| int | InputPortIndexInRange (int index, const char *action) |
| int | OutputPortIndexInRange (int index, const char *action) |
| int | GetInputArrayAssociation (int idx, vtkInformationVector **inputVector) |
| Get the association of the actual data array for the input array specified by idx, this is only reasonable during the REQUEST_DATA pass. | |
| int | GetInputArrayComponent (int idx) |
| Get the component to process of the actual data array for the input array specified by idx, this is only reasonable during the REQUEST_DATA pass. | |
| vtkInformation * | GetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector) |
| This method takes in an index (as specified in SetInputArrayToProcess) and a pipeline information vector. | |
| virtual vtkExecutive * | CreateDefaultExecutive () |
| Create a default executive. | |
| void | ReportReferences (vtkGarbageCollector *) override |
| virtual void | SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input) |
| Replace the Nth connection on the given input port. | |
| virtual void | SetNumberOfInputConnections (int port, int n) |
| Set the number of input connections on the given input port. | |
| void | SetInputDataInternal (int port, vtkDataObject *input) |
| These methods are used by subclasses to implement methods to set data objects directly as input. | |
| void | AddInputDataInternal (int port, vtkDataObject *input) |
| int | GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector) |
| Filters that have multiple connections on one port can use this signature. | |
| int | GetInputArrayAssociation (int idx, vtkDataObject *input) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkDataArray * | GetInputArrayToProcess (int idx, vtkInformationVector **inputVector) |
| Get the actual data array for the input array specified by idx, this is only reasonable during the REQUEST_DATA pass. | |
| vtkDataArray * | GetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association) |
| Get the actual data array for the input array specified by idx, this is only reasonable during the REQUEST_DATA pass. | |
| vtkDataArray * | GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkDataArray * | GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkDataArray * | GetInputArrayToProcess (int idx, vtkDataObject *input) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkDataArray * | GetInputArrayToProcess (int idx, vtkDataObject *input, int &association) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector) |
| Get the actual data array for the input array specified by idx, this is only reasonable during the REQUEST_DATA pass. | |
| vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association) |
| Get the actual data array for the input array specified by idx, this is only reasonable during the REQUEST_DATA pass. | |
| vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkDataObject *input) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association) |
| Filters that have multiple connections on one port can use this signature. | |
| vtkSmartPointer< vtkAbstractArray > | GetInputArray (int idx, int connection, vtkInformationVector **inputVector, int &association, int requestedComponent=vtkArrayComponents::Requested) |
| Get an array from the input at index idx. | |
| vtkSmartPointer< vtkAbstractArray > | GetInputArray (int idx, vtkDataObject *input, int &association, int requestedComponent=vtkArrayComponents::Requested) |
| Get an array from the input at index idx. | |
| template<typename ArrayType, typename... Params> | |
| vtkSmartPointer< ArrayType > | GetInputArrayAs (Params &&... params) |
| Get an array from the input at index idx. | |
| virtual void | SetErrorCode (unsigned long) |
| The error code contains a possible error that occurred while reading or writing the file. | |
Protected Member Functions inherited from vtkObject | |
| vtkObject () | |
| ~vtkObject () override | |
| void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
| void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
| These methods allow a command to exclusively grab all events. | |
| void | InternalReleaseFocus () |
| These methods allow a command to exclusively grab all events. | |
Protected Member Functions inherited from vtkObjectBase | |
| vtkObjectBase () | |
| virtual | ~vtkObjectBase () |
| vtkObjectBase (const vtkObjectBase &) | |
| void | operator= (const vtkObjectBase &) |
| typedef vtkPartitionedDataSetCollectionAlgorithm | Superclass |
| Standard methods to instantiate, print, and provide type information. | |
| static vtkSurfaceNetsAtlas * | New () |
| Standard methods to instantiate, print, and provide type information. | |
| static vtkTypeBool | IsTypeOf (const char *type) |
| Standard methods to instantiate, print, and provide type information. | |
| static vtkSurfaceNetsAtlas * | SafeDownCast (vtkObjectBase *o) |
| Standard methods to instantiate, print, and provide type information. | |
| virtual vtkTypeBool | IsA (const char *type) |
| Standard methods to instantiate, print, and provide type information. | |
| vtkSurfaceNetsAtlas * | NewInstance () const |
| Standard methods to instantiate, print, and provide type information. | |
| void | PrintSelf (ostream &os, vtkIndent indent) override |
| Standard methods to instantiate, print, and provide type information. | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| Standard methods to instantiate, print, and provide type information. | |
Additional Inherited Members | |
Static Public Member Functions inherited from vtkPartitionedDataSetCollectionAlgorithm | |
| static vtkTypeBool | IsTypeOf (const char *type) |
| static vtkPartitionedDataSetCollectionAlgorithm * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkAlgorithm | |
| static vtkAlgorithm * | New () |
| static vtkTypeBool | IsTypeOf (const char *type) |
| static vtkAlgorithm * | SafeDownCast (vtkObjectBase *o) |
| static vtkInformationIntegerKey * | INPUT_IS_OPTIONAL () |
| Keys used to specify input port requirements. | |
| static vtkInformationIntegerKey * | INPUT_IS_REPEATABLE () |
| static vtkInformationInformationVectorKey * | INPUT_REQUIRED_FIELDS () |
| static vtkInformationStringVectorKey * | INPUT_REQUIRED_DATA_TYPE () |
| static vtkInformationInformationVectorKey * | INPUT_ARRAYS_TO_PROCESS () |
| static vtkInformationIntegerKey * | INPUT_PORT () |
| static vtkInformationIntegerKey * | INPUT_CONNECTION () |
| static vtkInformationIntegerKey * | CAN_PRODUCE_SUB_EXTENT () |
| This key tells the executive that a particular output port is capable of producing an arbitrary subextent of the whole extent. | |
| static vtkInformationIntegerKey * | CAN_HANDLE_PIECE_REQUEST () |
| Key that tells the pipeline that a particular algorithm can or cannot handle piece request. | |
| static vtkInformationIntegerKey * | ABORTED () |
| static void | SetDefaultExecutivePrototype (vtkExecutive *proto) |
| If the DefaultExecutivePrototype is set, a copy of it is created in CreateDefaultExecutive() using NewInstance(). | |
Static Public Member Functions inherited from vtkObject | |
| static vtkObject * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
| static void | BreakOnError () |
| This method is called when vtkErrorMacro executes. | |
| static void | SetGlobalWarningDisplay (vtkTypeBool val) |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| static void | GlobalWarningDisplayOn () |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| static void | GlobalWarningDisplayOff () |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| static vtkTypeBool | GetGlobalWarningDisplay () |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
Static Public Member Functions inherited from vtkObjectBase | |
| static vtkTypeBool | IsTypeOf (const char *name) |
| Return 1 if this class type is the same type of (or a subclass of) the named class. | |
| static vtkIdType | GetNumberOfGenerationsFromBaseType (const char *name) |
| Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
| static vtkObjectBase * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
| static void | SetMemkindDirectory (const char *directoryname) |
| The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. | |
| static bool | GetUsingMemkind () |
| A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. | |
Public Attributes inherited from vtkAlgorithm | |
| std::atomic< vtkTypeBool > | AbortExecute |
Static Protected Member Functions inherited from vtkAlgorithm | |
| static vtkInformationIntegerKey * | PORT_REQUIREMENTS_FILLED () |
Static Protected Member Functions inherited from vtkObjectBase | |
| static vtkMallocingFunction | GetCurrentMallocFunction () |
| static vtkReallocingFunction | GetCurrentReallocFunction () |
| static vtkFreeingFunction | GetCurrentFreeFunction () |
| static vtkFreeingFunction | GetAlternateFreeFunction () |
Protected Attributes inherited from vtkAlgorithm | |
| vtkTimeStamp | LastAbortCheckTime |
| vtkInformation * | Information |
| double | Progress |
| char * | ProgressText |
| vtkProgressObserver * | ProgressObserver |
| unsigned long | ErrorCode |
| The error code contains a possible error that occurred while reading or writing the file. | |
Protected Attributes inherited from vtkObject | |
| bool | Debug |
| vtkTimeStamp | MTime |
| vtkSubjectHelper * | SubjectHelper |
| std::string | ObjectName |
Protected Attributes inherited from vtkObjectBase | |
| std::atomic< int32_t > | ReferenceCount |
| vtkWeakPointerBase ** | WeakPointers |
Static Protected Attributes inherited from vtkAlgorithm | |
| static vtkTimeStamp | LastAbortTime |
| static vtkExecutive * | DefaultExecutivePrototype |
query-driven extraction of regions and patches from any SurfaceNets filter output
vtkSurfaceNetsAtlas consumes the polygonal output of any SurfaceNets filter — vtkSurfaceNets2D, vtkSurfaceNets3D, or vtkGeneralizedSurfaceNets3D — and exposes it as a queryable label atlas: a database of Regions (one per label) and Patches (one per ordered pair of adjacent labels) that can be efficiently re-queried without re-running the upstream surface extraction.
BoundaryLabels: the 2-component cell-data array written by the upstream SurfaceNets filter on its output vtkPolyData. Each cell carries an ordered pair (Label0, Label1) describing the labels on either side of the cell. The ordering follows the upstream filter's convention:
The mesh is wound such that the cell normal points from Label0 to Label1.
The filter produces a vtkPartitionedDataSetCollection (PDC). Each requested Region or Patch is emitted as a vtkPartitionedDataSet (PDS) containing a single vtkPolyData partition (in the serial case; distributed builds may produce multiple partitions per PDS). A vtkDataAssembly organizes the output into two top-level subtrees:
Node names default to Label_N / Label_N_Label_M but are replaced by the name set via SetLabelName() when one is present. Assembly node attributes — Region: Name, Label, LID. Patch: Name0, Name1, Label0, Label1, LID0, LID1.
Each partition's vtkPolyData also carries arrays so downstream consumers can identify it without the assembly. The scalar type of "BoundaryLabels" matches the scalar type of the upstream filter's "BoundaryLabels" input array.
Region cell data:
"BoundaryLabels" (2-component) — [Label0, Label1] for each cell. Label0 is always the region's own label, so the cell normal points outward (from the region into its neighbour). Active scalar array. Varies per cell."Label" (vtkIdType, constant) — the region's label value, same for every cell. Backed by vtkConstantArray (O(1) storage)."LID" (int, constant) — the region's dense index, same for every cell. Backed by vtkConstantArray (O(1) storage).Region field data (partition-level metadata):
"AdjacentLabels" (vtkIdType[]) — label values of all neighbouring regions."PatchIDs" (int[]) — atlas patch IDs of all patches touching this region.Patch cell data:
"BoundaryLabels" (2-component) — [Label0, Label1], with Label0 < Label1 by label value (background label is always Label1 when present). Active scalar array. Varies per cell."PatchID" (int, constant) — the atlas ID of this patch, same for every cell. Backed by vtkConstantArray (O(1) storage).Patch field data: none.
PDC field data (always present):
"LIDToLabel" (vtkIdType[]) — the full Label↔LID mapping for the current atlas."PatchLIDs" (2-component int) — maps each patch ID to its [LID0, LID1] pair."PatchLabels" (2-component vtkIdType) — maps each patch ID to its [Label0, Label1] pair (with Label0 < Label1).The atlas (the internal database of label mappings, the patch table, and per-cell patch indices) is built once per input change, gated on the input vtkPolyData's MTime. Changing extraction parameters (SelectedLabels, ExtractionMode, OutputStyle, GeneratePatches, ResolveNonManifoldPoints, BackgroundLabel) does not trigger a rebuild of the atlas; it only rebuilds the output PDC by walking the cached patch table. This makes iterative queries (e.g., interactive toggling of labels in a viewer) cheap.
Output partitions are deep-copied: the output PDC has no lifetime dependency on the input mesh.
The filter accepts the vtkPolyData output of any SurfaceNets filter:
| Upstream filter | Cell type |
|---|---|
| vtkSurfaceNets2D | Lines |
| vtkSurfaceNets3D | Quads |
| vtkSurfaceNets3D | Triangles |
| vtkGeneralizedSurfaceNets3D | Polygons |
| vtkGeneralizedSurfaceNets3D | Triangles |
The point-data array "NonManifoldTableIndices" (signed int8), produced only by vtkSurfaceNets3D, is used as a hint by ResolveNonManifoldPoints to identify candidate points; when absent, all points are scanned. The array is never present in output partitions.
Definition at line 152 of file vtkSurfaceNetsAtlas.h.
Standard methods to instantiate, print, and provide type information.
Definition at line 161 of file vtkSurfaceNetsAtlas.h.
| Enumerator | |
|---|---|
| EXTRACT_ALL | |
| EXTRACT_LABEL_SET | |
Definition at line 169 of file vtkSurfaceNetsAtlas.h.
| Enumerator | |
|---|---|
| OUTPUT_STYLE_ALL | |
| OUTPUT_STYLE_BOUNDARY | |
Definition at line 196 of file vtkSurfaceNetsAtlas.h.
|
protected |
|
overrideprotected |
|
static |
Standard methods to instantiate, print, and provide type information.
|
static |
Standard methods to instantiate, print, and provide type information.
|
virtual |
Standard methods to instantiate, print, and provide type information.
Reimplemented from vtkPartitionedDataSetCollectionAlgorithm.
|
static |
Standard methods to instantiate, print, and provide type information.
|
protectedvirtual |
Standard methods to instantiate, print, and provide type information.
Reimplemented from vtkPartitionedDataSetCollectionAlgorithm.
| vtkSurfaceNetsAtlas * vtkSurfaceNetsAtlas::NewInstance | ( | ) | const |
Standard methods to instantiate, print, and provide type information.
|
overridevirtual |
Standard methods to instantiate, print, and provide type information.
Reimplemented from vtkPartitionedDataSetCollectionAlgorithm.
|
virtual |
|
virtual |
|
inline |
Specify which regions are emitted in the output:
In LabelSet mode, an empty selection produces an empty output (it is not interpreted as "all labels"). Use All for that.
Default: EXTRACT_ALL.
Definition at line 188 of file vtkSurfaceNetsAtlas.h.
|
inline |
Specify which regions are emitted in the output:
In LabelSet mode, an empty selection produces an empty output (it is not interpreted as "all labels"). Use All for that.
Default: EXTRACT_ALL.
Definition at line 189 of file vtkSurfaceNetsAtlas.h.
|
virtual |
Specify which cells are included in each emitted Region partition.
Default: OUTPUT_STYLE_BOUNDARY.
|
virtual |
Specify which cells are included in each emitted Region partition.
Default: OUTPUT_STYLE_BOUNDARY.
|
inline |
Specify which cells are included in each emitted Region partition.
Default: OUTPUT_STYLE_BOUNDARY.
Definition at line 222 of file vtkSurfaceNetsAtlas.h.
|
inline |
Specify which cells are included in each emitted Region partition.
Default: OUTPUT_STYLE_BOUNDARY.
Definition at line 223 of file vtkSurfaceNetsAtlas.h.
|
virtual |
The label value that represents background voxels.
Used by OUTPUT_STYLE_BOUNDARY to identify the outer shell of each region (cells touching background) and, when GeneratePatches is on, to identify the interior label-to-label interfaces emitted as patches.
Default: 0.
|
virtual |
The label value that represents background voxels.
Used by OUTPUT_STYLE_BOUNDARY to identify the outer shell of each region (cells touching background) and, when GeneratePatches is on, to identify the interior label-to-label interfaces emitted as patches.
Default: 0.
| void vtkSurfaceNetsAtlas::AddSelectedLabel | ( | vtkIdType | label | ) |
Add, remove, or replace a single label in the selection list.
AddSelectedLabel is idempotent, i.e. adding a label already in the list is a no-op.
| void vtkSurfaceNetsAtlas::RemoveSelectedLabel | ( | vtkIdType | label | ) |
Add, remove, or replace a single label in the selection list.
AddSelectedLabel is idempotent, i.e. adding a label already in the list is a no-op.
| void vtkSurfaceNetsAtlas::ClearSelectedLabels | ( | ) |
Add, remove, or replace a single label in the selection list.
AddSelectedLabel is idempotent, i.e. adding a label already in the list is a no-op.
| void vtkSurfaceNetsAtlas::SetNumberOfSelectedLabels | ( | int | n | ) |
Set the selection list to exactly n entries.
Excess entries are discarded when shrinking. SetSelectedLabel(i, label) grows the list automatically when i is past the current end.
| int vtkSurfaceNetsAtlas::GetNumberOfSelectedLabels | ( | ) | const |
Set the selection list to exactly n entries.
Excess entries are discarded when shrinking. SetSelectedLabel(i, label) grows the list automatically when i is past the current end.
| void vtkSurfaceNetsAtlas::SetSelectedLabel | ( | int | i, |
| vtkIdType | label ) |
Index-based access to the selection list.
The index i ranges over [0, GetNumberOfSelectedLabels()).
SetSelectedLabel grow the list automatically when i is past the current end.
| vtkIdType vtkSurfaceNetsAtlas::GetSelectedLabel | ( | int | i | ) | const |
Index-based access to the selection list.
The index i ranges over [0, GetNumberOfSelectedLabels()).
SetSelectedLabel grow the list automatically when i is past the current end.
| std::vector< vtkIdType > vtkSurfaceNetsAtlas::GetSelectedLabels | ( | ) | const |
Set/Get the complete selection list.
| void vtkSurfaceNetsAtlas::SetSelectedLabels | ( | const std::vector< vtkIdType > & | labels | ) |
Set/Get the complete selection list.
| void vtkSurfaceNetsAtlas::GenerateSelectedLabels | ( | int | numLabels, |
| vtkIdType | rangeStart, | ||
| vtkIdType | rangeEnd ) |
Populate the selection list with numLabels equally spaced integer labels between rangeStart and rangeEnd (inclusive).
Replaces any existing selection.
The 2-argument overload selects every consecutive integer in [rangeStart, rangeEnd], which covers the common case of sequential segmentation labels. For non-uniform label sets use AddSelectedLabel / SetSelectedLabel directly.
| void vtkSurfaceNetsAtlas::GenerateSelectedLabels | ( | int | numLabels, |
| vtkIdType | range[2] ) |
Populate the selection list with numLabels equally spaced integer labels between rangeStart and rangeEnd (inclusive).
Replaces any existing selection.
The 2-argument overload selects every consecutive integer in [rangeStart, rangeEnd], which covers the common case of sequential segmentation labels. For non-uniform label sets use AddSelectedLabel / SetSelectedLabel directly.
Populate the selection list with numLabels equally spaced integer labels between rangeStart and rangeEnd (inclusive).
Replaces any existing selection.
The 2-argument overload selects every consecutive integer in [rangeStart, rangeEnd], which covers the common case of sequential segmentation labels. For non-uniform label sets use AddSelectedLabel / SetSelectedLabel directly.
| int vtkSurfaceNetsAtlas::GetNumberOfLabelNames | ( | ) | const |
Human-readable names for labels.
Names are independent of the SelectedLabels list and can be assigned to any label value, including when ExtractionMode is EXTRACT_ALL. When a name is set it is used as the assembly node name instead of the default "Label_N" / "Label_N_Label_M", and exposed as a "Name" / "Name0" / "Name1" attribute on the assembly node.
Names are not validated for XML identifier legality; the caller is responsible for avoiding characters that are invalid in XML node names (spaces, colons, leading digits, etc.).
| void vtkSurfaceNetsAtlas::SetLabelName | ( | vtkIdType | label, |
| const std::string & | name ) |
Human-readable names for labels.
Names are independent of the SelectedLabels list and can be assigned to any label value, including when ExtractionMode is EXTRACT_ALL. When a name is set it is used as the assembly node name instead of the default "Label_N" / "Label_N_Label_M", and exposed as a "Name" / "Name0" / "Name1" attribute on the assembly node.
Names are not validated for XML identifier legality; the caller is responsible for avoiding characters that are invalid in XML node names (spaces, colons, leading digits, etc.).
| std::string vtkSurfaceNetsAtlas::GetLabelName | ( | vtkIdType | label | ) | const |
Human-readable names for labels.
Names are independent of the SelectedLabels list and can be assigned to any label value, including when ExtractionMode is EXTRACT_ALL. When a name is set it is used as the assembly node name instead of the default "Label_N" / "Label_N_Label_M", and exposed as a "Name" / "Name0" / "Name1" attribute on the assembly node.
Names are not validated for XML identifier legality; the caller is responsible for avoiding characters that are invalid in XML node names (spaces, colons, leading digits, etc.).
| void vtkSurfaceNetsAtlas::AddLabelName | ( | vtkIdType | label, |
| const std::string & | name ) |
Human-readable names for labels.
Names are independent of the SelectedLabels list and can be assigned to any label value, including when ExtractionMode is EXTRACT_ALL. When a name is set it is used as the assembly node name instead of the default "Label_N" / "Label_N_Label_M", and exposed as a "Name" / "Name0" / "Name1" attribute on the assembly node.
Names are not validated for XML identifier legality; the caller is responsible for avoiding characters that are invalid in XML node names (spaces, colons, leading digits, etc.).
| void vtkSurfaceNetsAtlas::RemoveLabelName | ( | vtkIdType | label | ) |
Human-readable names for labels.
Names are independent of the SelectedLabels list and can be assigned to any label value, including when ExtractionMode is EXTRACT_ALL. When a name is set it is used as the assembly node name instead of the default "Label_N" / "Label_N_Label_M", and exposed as a "Name" / "Name0" / "Name1" attribute on the assembly node.
Names are not validated for XML identifier legality; the caller is responsible for avoiding characters that are invalid in XML node names (spaces, colons, leading digits, etc.).
| void vtkSurfaceNetsAtlas::ClearLabelNames | ( | ) |
Human-readable names for labels.
Names are independent of the SelectedLabels list and can be assigned to any label value, including when ExtractionMode is EXTRACT_ALL. When a name is set it is used as the assembly node name instead of the default "Label_N" / "Label_N_Label_M", and exposed as a "Name" / "Name0" / "Name1" attribute on the assembly node.
Names are not validated for XML identifier legality; the caller is responsible for avoiding characters that are invalid in XML node names (spaces, colons, leading digits, etc.).
|
virtual |
When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label.
Turn off to produce only the "Patches" subtree (requires GeneratePatches to also be on).
Default: on.
|
virtual |
When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label.
Turn off to produce only the "Patches" subtree (requires GeneratePatches to also be on).
Default: on.
|
virtual |
When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label.
Turn off to produce only the "Patches" subtree (requires GeneratePatches to also be on).
Default: on.
|
virtual |
When on (the default), the output PDC contains a "Regions" subtree with one PDS per selected label.
Turn off to produce only the "Patches" subtree (requires GeneratePatches to also be on).
Default: on.
|
virtual |
When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection.
In OUTPUT_STYLE_BOUNDARY mode (the default), only interior label-to-label patches (those not involving the BackgroundLabel) are emitted. Together with the boundary-only Region partitions, this produces an exact partition of the upstream SurfaceNets output with no cell duplication. In OUTPUT_STYLE_ALL mode, all patches (including those touching the BackgroundLabel) are emitted.
Default: on.
|
virtual |
When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection.
In OUTPUT_STYLE_BOUNDARY mode (the default), only interior label-to-label patches (those not involving the BackgroundLabel) are emitted. Together with the boundary-only Region partitions, this produces an exact partition of the upstream SurfaceNets output with no cell duplication. In OUTPUT_STYLE_ALL mode, all patches (including those touching the BackgroundLabel) are emitted.
Default: on.
|
virtual |
When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection.
In OUTPUT_STYLE_BOUNDARY mode (the default), only interior label-to-label patches (those not involving the BackgroundLabel) are emitted. Together with the boundary-only Region partitions, this produces an exact partition of the upstream SurfaceNets output with no cell duplication. In OUTPUT_STYLE_ALL mode, all patches (including those touching the BackgroundLabel) are emitted.
Default: on.
|
virtual |
When on, the output PDC also contains a "Patches" subtree in its assembly, with one PDS per patch (L0, L1) whose at-least-one-label is in the current selection.
In OUTPUT_STYLE_BOUNDARY mode (the default), only interior label-to-label patches (those not involving the BackgroundLabel) are emitted. Together with the boundary-only Region partitions, this produces an exact partition of the upstream SurfaceNets output with no cell duplication. In OUTPUT_STYLE_ALL mode, all patches (including those touching the BackgroundLabel) are emitted.
Default: on.
|
virtual |
When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component.
Because each partition contains only a subset of the original cells, configurations that were globally unresolvable in the source mesh may be locally resolvable here.
If the input carries a NonManifoldTableIndices point-data array (produced by vtkSurfaceNets3D), only points marked -1 in that array are candidates; otherwise every point is a candidate.
In neither case does a NonManifoldTableIndices array appear in the output partitions.
Default: off.
|
virtual |
When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component.
Because each partition contains only a subset of the original cells, configurations that were globally unresolvable in the source mesh may be locally resolvable here.
If the input carries a NonManifoldTableIndices point-data array (produced by vtkSurfaceNets3D), only points marked -1 in that array are candidates; otherwise every point is a candidate.
In neither case does a NonManifoldTableIndices array appear in the output partitions.
Default: off.
|
virtual |
When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component.
Because each partition contains only a subset of the original cells, configurations that were globally unresolvable in the source mesh may be locally resolvable here.
If the input carries a NonManifoldTableIndices point-data array (produced by vtkSurfaceNets3D), only points marked -1 in that array are candidates; otherwise every point is a candidate.
In neither case does a NonManifoldTableIndices array appear in the output partitions.
Default: off.
|
virtual |
When on, post-processes each output partition (both Regions and Patches) to resolve non-manifold points by splitting the local cell fan by connected component.
Because each partition contains only a subset of the original cells, configurations that were globally unresolvable in the source mesh may be locally resolvable here.
If the input carries a NonManifoldTableIndices point-data array (produced by vtkSurfaceNets3D), only points marked -1 in that array are candidates; otherwise every point is a candidate.
In neither case does a NonManifoldTableIndices array appear in the output partitions.
Default: off.
| int vtkSurfaceNetsAtlas::GetNumberOfLabels | ( | ) | const |
Return the number of distinct labels in the input.
| bool vtkSurfaceNetsAtlas::HasLabel | ( | vtkIdType | label | ) | const |
Return whether label exists in the atlas.
| bool vtkSurfaceNetsAtlas::HasLabel | ( | const std::string & | name | ) | const |
Return whether label exists in the atlas.
| vtkIdType vtkSurfaceNetsAtlas::GetLabelForName | ( | const std::string & | name | ) | const |
Reverse-lookup a label value by its name.
Returns -1 if the name is not found in the atlas.
| int vtkSurfaceNetsAtlas::GetLIDForLabel | ( | vtkIdType | label | ) | const |
Translate between Label and LID.
LIDs are the dense [0, N) indices used internally and as PDS indices in the output. Returns -1 if the label or LID is not found / out of range.
| int vtkSurfaceNetsAtlas::GetLIDForLabel | ( | const std::string & | name | ) | const |
Translate between Label and LID.
LIDs are the dense [0, N) indices used internally and as PDS indices in the output. Returns -1 if the label or LID is not found / out of range.
| vtkIdType vtkSurfaceNetsAtlas::GetLabelForLID | ( | int | lid | ) | const |
Translate between Label and LID.
LIDs are the dense [0, N) indices used internally and as PDS indices in the output. Returns -1 if the label or LID is not found / out of range.
Return whether two labels share a patch.
False if either label is not in the atlas.
| bool vtkSurfaceNetsAtlas::AreAdjacent | ( | const std::string & | name0, |
| const std::string & | name1 ) const |
Return whether two labels share a patch.
False if either label is not in the atlas.
Return a list of labels that share a patch with label.
Output is empty if label does not exist in the atlas.
| std::vector< vtkIdType > vtkSurfaceNetsAtlas::GetAdjacentLabels | ( | const std::string & | name | ) | const |
Return a list of labels that share a patch with label.
Output is empty if label does not exist in the atlas.
| vtkIdType vtkSurfaceNetsAtlas::GetNumberOfPatches | ( | ) | const |
Return the number of patches (unordered {L0, L1} pairs with L0 < L1) in the input.
| void vtkSurfaceNetsAtlas::GetPatchLabels | ( | int | patchID, |
| vtkIdType | labels[2] ) const |
Fill labels with the (L0, L1) pair defining the patch at patchID, with L0 < L1.
patchID ranges over [0, GetNumberOfPatches()). Sets both entries to -1 if out of range.
Return the patch ID for the patch defined by the (unordered) pair (label0, label1), or -1 if no such patch exists.
The argument order is irrelevant: GetPatchID(a, b) == GetPatchID(b, a).
| int vtkSurfaceNetsAtlas::GetPatchID | ( | const std::string & | name0, |
| const std::string & | name1 ) const |
Return the patch ID for the patch defined by the (unordered) pair (label0, label1), or -1 if no such patch exists.
The argument order is irrelevant: GetPatchID(a, b) == GetPatchID(b, a).
| vtkIdType vtkSurfaceNetsAtlas::GetPatchCellCount | ( | int | patchID | ) | const |
Return the number of cells on the patch at patchID.
Useful for diagnostics (identifying degenerate or trivially small patches) without materializing the patch polydata. Returns 0 if patchID is out of range.
| std::vector< int > vtkSurfaceNetsAtlas::GetPatchesForLabel | ( | vtkIdType | label | ) | const |
Returns the indices of every patch touching label.
The Output is empty if label does not exist in the atlas.
| std::vector< int > vtkSurfaceNetsAtlas::GetPatchesForLabel | ( | const std::string & | name | ) | const |
Returns the indices of every patch touching label.
The Output is empty if label does not exist in the atlas.
|
overrideprotectedvirtual |
Fill the input port information objects for this algorithm.
This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.
Reimplemented from vtkPartitionedDataSetCollectionAlgorithm.
|
overrideprotectedvirtual |
Methods for subclasses to override to handle different pipeline requests.
Reimplemented from vtkPartitionedDataSetCollectionAlgorithm.