Go to the documentation of this file.
24 std::optional<simox::Color>
color{};
62 using ObjectPoseList = std::list<objpose::ObjectPose>;
66 ChangeKind kind = MOVE;
68 ObjectPoseList::iterator iterator{};
73 ObjectPoseList newPoses;
74 std::map<std::string, Change> changed;
84 simox::OrientedBoxf
box;
99 std::priority_queue<size_t, std::vector<size_t>, std::greater<>> unusedIDs;
101 struct PlaceholderEntry
103 Placeholder placeholder;
107 std::vector<PlaceholderEntry> placeholders;
132 void visualizeMemory();
133 void visualizeMeta();
143 static constexpr
const char* memoryLayerName =
"Memory";
144 static constexpr
const char* metaLayerName =
"Meta";
145 static constexpr
const char* lineString =
"---------------------------";
147 std::vector<std::string> placeholderOptions;
159 InteractionObserver observer;
163 ChangeState changes{
this};
164 PlaceholderState placeholders{
this};
166 bool isCommitRequired;
167 bool isUpdateRequired;
168 bool isResetRequired;
169 bool isMemoryVizRequired;
170 bool isMetaVizRequired;
173 friend PlaceholderState;
ChangeState(Editor *editor)
Editor(viz::Client &client, Properties properties, std::function< void(objpose::ProvidedObjectPoseSeq &)> pushToMemory, std::function< objpose::ObjectPoseSeq(void)> pullFromMemory)
std::vector< ObjectPose > ObjectPoseSeq
Eigen::Matrix4f transform
bool applyTo(objpose::ObjectPose &pose)
MatrixXX< 4, 4, float > Matrix4f
std::vector< std::string > options
void movePlaceholder(size_t id, Eigen::Matrix4f const &transform)
void addPlaceholder(simox::OrientedBoxf box)
Used to find objects in the ArmarX objects repository [1] (formerly [2]).
void Identity(MatrixXX< N, N, T > *a)
Eigen::Matrix4f transform
void resetObject(objpose::ObjectPose const &object)
void moveObject(objpose::ObjectPose const &object, Eigen::Matrix4f const &transform)
void createObject(std::string const &objectID, Eigen::Matrix4f const &pose)
PlaceholderState(Editor *editor)
std::vector< ProvidedObjectPose > ProvidedObjectPoseSeq
float const & confidenceThreshold
auto transform(const Container< InputT, Alloc > &in, OutputT(*func)(InputT const &)) -> Container< OutputT, typename std::allocator_traits< Alloc >::template rebind_alloc< OutputT >>
Convenience function (with less typing) to transform a container of type InputT into the same contain...
void deleteObject(objpose::ObjectPose const &object)
float const & objectScaling
Eigen::Matrix4f getTransform(objpose::ObjectPose const &object)
void moveNewObjectsTo(objpose::ObjectPoseSeq &seq)
std::optional< simox::Color > color
void specifyObject(size_t id, std::string const &objectID, ChangeState &changeState)
std::vector< data::ObjectID > const & availableObjects
void removePlaceholder(size_t id)
Layer layer(std::string const &name) const
void visualizeNewObjects()
std::optional< float > alpha
void cloneObject(objpose::ObjectPose const &object)
VisualizationDescription buildVisualizationDescription(objpose::ObjectPose &object)
void visualizePlaceholders()
This file offers overloads of toIce() and fromIce() functions for STL container types.
An object pose as stored by the ObjectPoseStorage.