39 #ifndef H_OGF_MESH_GFX_TOOLS_MESH_GROB_COMPONENT_TOOLS_H
40 #define H_OGF_MESH_GFX_TOOLS_MESH_GROB_COMPONENT_TOOLS_H
42 #include <OGF/mesh_gfx/common/common.h>
58 gom_attribute(category,
"components")
59 gom_attribute(icon, "move_component")
60 gom_attribute(help, "move component / resize component / rotate component")
63 "btn1: move; btn2: resize; btn3: rotate"
115 invert_selection_(invert_selection) {
123 bool invert_selection_;
133 gom_attribute(category,
"components")
134 gom_attribute(icon, "remove_component")
135 gom_attribute(help, "remove component / keep component")
138 "btn1: remove component; btn3: keep component"
168 gom_attribute(category,
"components")
169 gom_attribute(icon, "copy_component")
170 gom_attribute(help, "
copy component / delete component")
173 "btn1:
copy component; btn3: remove component"
185 MOUSE_BUTTON_MIDDLE,
nullptr
215 gom_attribute(category,
"components")
216 gom_attribute(icon, "flip_component")
217 gom_attribute(help, "flip component")
218 gom_attribute(message, "btn1: flip")
Specialization of vector for elements of type bool.
A tool that copies and drags a connected component of a mesh.
MeshGrobCopyComponent(ToolsManager *parent)
MeshGrobCopyComponent constructor.
void pick_subset(MeshGrobTransformSubset *tool, const RayPick &rp) override
Gets the subset by picking.
void transform_subset(const mat4 &M) override
Applies a 3D transform to the subset.
A tool that flips the normals of a connected component.
void grab(const RayPick &p_ndc) override
MeshGrobFlipComponent(ToolsManager *parent)
MeshGrobFlipComponent constructor.
A tool that removes a connected component of a mesh or its complement depending on the pushed mouse b...
~MeshGrobKeepOrRemoveComponent() override
MeshGrobKeepOrRemoveComponent destructor.
MeshGrobKeepOrRemoveComponent(ToolsManager *parent)
MeshGrobRemoveOrKeepComponent constructor.
A tool that removes a connected component of a mesh.
MeshGrobRemoveComponent(ToolsManager *parent, bool invert_selection=false)
MeshGrobRemoveComponent constructor.
void grab(const RayPick &p_ndc) override
void copy(void *to, const void *from, size_t size)
Copies a memory block.
geo_index_t index_t
The type for storing and manipulating indices.
Global Graphite namespace.
Represents the information related with a picking event.