9 #include "imstkComponent.h" 10 #include "imstkPuncture.h" 24 ~
Needle()
override =
default;
30 std::shared_ptr<Puncture> getPuncture(
const PunctureId&
id);
39 Puncture::State getState(
const PunctureId&
id);
42 PunctureMap& getPunctures() {
return m_punctures; }
53 virtual Vec3d getNeedleTip()
const {
return Vec3d(0.0, 0.0, 0.0); }
56 PunctureMap m_punctures;
virtual Vec3d getNeedleDirection() const
Returns direction at needle tip.
void setPuncture(const PunctureId &id, std::shared_ptr< Puncture > data)
Get/Set puncture data.
Base for all needles in imstk it supports global puncture state, per object puncture state...
void setState(const PunctureId &id, const Puncture::State state)
Get/set puncture state. This can be done through data too but this supports the allocation of new pun...
Represents a part of an entity, involved in a system. The component system is doubly linked meaning t...
std::tuple< int, int, int > PunctureId
Punctures are identified via three ints. The needle id, the puncturable id, and a local id that allow...
bool getInserted() const
Get if inserted at all.