SMTK
@SMTK_VERSION@
Simulation Modeling Tool Kit
|
10 #ifndef smtk_model_Instance_h
11 #define smtk_model_Instance_h
28 static constexpr
const char*
const placements =
"placements";
31 static constexpr
const char*
const orientations =
"orientations";
34 static constexpr
const char*
const scales =
"scales";
37 static constexpr
const char*
const masks =
"masks";
40 static constexpr
const char*
const colors =
"colors";
43 static constexpr
const char*
const subset =
"subset";
50 bool setPrototype(
const EntityRef& prototype);
62 std::string rule()
const;
63 bool setRule(
const std::string& nextRule);
65 bool setSampleSurface(
const EntityRef& surface);
69 bool addSnapEntity(
const EntityRef& snapTo);
70 bool removeSnapEntity(
const EntityRef& snapTo);
71 bool setSnapEntity(
const EntityRef& snapTo);
72 bool setSnapEntities(
const EntityRefs& snapTo);
75 std::size_t numberOfPlacements();
94 Instance clonePlacements(I begin, I end,
bool relate =
true);
116 template<
typename Container>
117 Container divide(
bool merge =
false, Container* clonesIncluded =
nullptr);
130 template<
typename Container>
131 static Instance merge(
const Container& instances);
137 template<
typename Container>
138 void divideMapInternal(
140 std::set<int>& taken,
142 std::vector<std::vector<int>>& output,
143 Container* clonesIncluded);
145 bool checkMergeable(
const Instance& other)
const;
146 bool mergeInternal(
const Instance& other);
149 typedef std::vector<Instance> InstanceEntities;
154 #endif // smtk_model_Instance_h
The main namespace for the Simulation Modeling Tool Kit (SMTK).
Definition: doc.h:33
Store geometric information related to model entities.
Definition: Tessellation.h:91
A entityref subclass that provides methods specific to entity use records.
Definition: Instance.h:23
#define SMTK_ENTITYREF_CLASS(thisclass, superclass, typecheck)
A macro to implement mandatory EntityRef-subclass constructors.
Definition: EntityRef.h:43
std::set< smtk::model::EntityRef > EntityRefs
Definition: PublicPointerDefs.h:162
A lightweight entityref pointing to a model entity's resource.
Definition: EntityRef.h:112