3#include "Topology/TriangleSet.h" 
   12    template<
typename TDataType>
 
   17        typedef typename TDataType::Real 
Real;
 
   18        typedef typename TDataType::Coord 
Coord;
 
   34        DEF_ENUM(PickingElementTypeSelection, PickingElementType, PickingElementTypeSelection::All, 
"");
 
   42        DEF_ENUM(PickingTypeSelection, PickingType, PickingTypeSelection::Both, 
"");
 
   50        DEF_ENUM(MultiSelectionType, MultiSelectionType, MultiSelectionType::OR, 
"");
 
   52        DEF_VAR(
bool, ToggleFlood, 
false, 
"The toggle of surface flood selection");
 
   54        DEF_VAR(
bool, ToggleVisibleFilter, 
true, 
"The toggle of visible filter");
 
   56        DEF_VAR(
bool, ToggleIndexOutput, 
true, 
"The toggle of index output");
 
   58        DEF_VAR(
Real, FloodAngle, 1.0f, 
"The angle limit of surface flood selection");
 
   60        DEF_VAR(
Real, InteractionRadius, 0.002f, 
"The radius of interaction");
 
 
#define DECLARE_TCLASS(name, T1)
 
DECLARE_ENUM(PickingElementTypeSelection, Surface=0, Edge=1, Point=2, All=3)
 
DEF_VAR(bool, ToggleIndexOutput, true, "The toggle of index output")
 
void changePickingElementType()
 
~TrianglePickerNode() override
 
DEF_ARRAY_STATE(int, Sur2PointIndex, DeviceType::GPU, "")
 
DECLARE_ENUM(MultiSelectionType, OR=0, XOR=1, C=2)
 
DEF_ENUM(PickingElementTypeSelection, PickingElementType, PickingElementTypeSelection::All, "")
 
DEF_VAR(Real, EdgeSelectedSize, 0.002f, "")
 
DEF_VAR(Real, PointOtherSize, 0.005f, "")
 
DEF_ARRAY_STATE(int, EdgeIndex, DeviceType::GPU, "")
 
DEF_VAR(bool, ToggleFlood, false, "The toggle of surface flood selection")
 
DEF_VAR(Real, PointSelectedSize, 0.006f, "")
 
DEF_ARRAY_STATE(int, PointIndex, DeviceType::GPU, "")
 
DEF_VAR(bool, ToggleVisibleFilter, true, "The toggle of visible filter")
 
std::shared_ptr< SurfaceInteraction< TDataType > > surfaceInteractor
 
DEF_ENUM(MultiSelectionType, MultiSelectionType, MultiSelectionType::OR, "")
 
DEF_ARRAY_STATE(int, TriQuadIndex, DeviceType::GPU, "")
 
DECLARE_ENUM(PickingTypeSelection, Click=0, Drag=1, Both=2)
 
std::string getNodeType()
 
std::shared_ptr< PointInteraction< TDataType > > pointInteractor
 
void changeMultiSelectionType()
 
DEF_VAR(Real, FloodAngle, 1.0f, "The angle limit of surface flood selection")
 
DEF_VAR(Real, InteractionRadius, 0.002f, "The radius of interaction")
 
DEF_ENUM(PickingTypeSelection, PickingType, PickingTypeSelection::Both, "")
 
std::shared_ptr< EdgeInteraction< TDataType > > edgeInteractor
 
DEF_INSTANCE_IN(TriangleSet< TDataType >, Topology, "")
 
DEF_VAR(Real, EdgeOtherSize, 0.0015, "")
 
void resetStates() override
 
This is an implementation of AdditiveCCD based on peridyno.