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.