iMSTK
Interactive Medical Simulation Toolkit
|
This filter takes in two surface meshes and generates two surface meshes that are subsets of the two input meshes. The new surface meshes are made of faces of the two meshes that fall within a distance (m_proximity) of each other. More...
#include <imstkProximitySurfaceSelector.h>
Public Member Functions | |
void | setInputMeshes (std::shared_ptr< SurfaceMesh > inputMeshA, std::shared_ptr< SurfaceMesh > inputMeshB) |
std::shared_ptr< SurfaceMesh > | getOutputMeshA () const |
std::shared_ptr< SurfaceMesh > | getOutputMeshB () const |
void | setProximity (double prox) |
Get/Set the proximity. Any faces within this distance between the two meshes are added to the output surface meshes. | |
double | getProximity () |
![]() | |
std::shared_ptr< Geometry > | getInput (size_t port=0) const |
Returns input geometry given port, returns nullptr if doesn't exist. | |
std::shared_ptr< Geometry > | getOutput (size_t port=0) const |
Returns output geometry given port, returns nullptr if doesn't exist. | |
void | setInput (std::shared_ptr< Geometry > inputGeometry, size_t port=0) |
Set the input at the port. | |
void | update () |
Do the actual algorithm. | |
Protected Member Functions | |
void | requestUpdate () override |
Users can implement this for the logic to be run. | |
![]() | |
void | setOutput (std::shared_ptr< Geometry > inputGeometry, const size_t port=0) |
Set the output at the port. | |
template<typename T > | |
void | setRequiredInputType (const size_t port) |
Declares the type for the port with the given number, also defines that the give port is required for the filter to run correctly. | |
template<typename T > | |
void | setOptionalInputType (const size_t port) |
Declares the type for the port with the given number, the data for this port is optional and may be omitted. | |
virtual bool | areInputsValid () |
Check inputs are correct. More... | |
void | setNumInputPorts (const size_t numPorts) |
Get/Set the amount of input ports. | |
imstkGetMacro (NumInputPorts, size_t) | |
void | setNumOutputPorts (const size_t numPorts) |
Get/Set the amount of output ports. | |
imstkGetMacro (NumOutputPorts, size_t) | |
Protected Attributes | |
double | m_proximity = 0.0 |
![]() | |
TypeCheckContainer | m_requiredTypeChecks |
TypeCheckContainer | m_optionalTypeChecks |
Additional Inherited Members | |
![]() | |
using | GeometryCheck = std::function< bool(Geometry *)> |
using | TypeCheckContainer = std::unordered_map< size_t, GeometryCheck > |
This filter takes in two surface meshes and generates two surface meshes that are subsets of the two input meshes. The new surface meshes are made of faces of the two meshes that fall within a distance (m_proximity) of each other.
Definition at line 25 of file imstkProximitySurfaceSelector.h.