7 #ifndef CAFU_MORPH_PRIMITIVE_HPP_INCLUDED
8 #define CAFU_MORPH_PRIMITIVE_HPP_INCLUDED
10 #include "Math3D/Vector3.hpp"
11 #include "Templates/Array.hpp"
38 virtual TypeT GetType()
const=0;
49 TypeT GetType()
const {
return TYPE_VERTEX; }
62 TypeT GetType()
const {
return TYPE_EDGE; }
98 bool IsModified()
const {
return m_Modified; }
107 void Render(
Renderer2DT& Renderer,
bool RenderVertexHandles,
bool RenderEdgeHandles)
const;
108 void Render(
Renderer3DT& Renderer,
bool RenderVertexHandles,
bool RenderEdgeHandles)
const;
126 void UpdateBrushFromVertices();
133 void RenderHandle(
Renderer3DT& Renderer,
const wxPoint& ClientPos,
const float* color)
const;
This class provides auxiliary means for rendering a 3D view.
Definition: Renderer3D.hpp:30
This class implements the rendering into a 2D view.
Definition: Renderer2D.hpp:22
ArrayT< MP_EdgeT * > Edges
The edges of this face (pointing into the MorphPrimT::m_Edges array).
Definition: MorphPrim.hpp:74
This class adds no functionality of its own, but only exists for proper type separation.
Definition: MapPrimitive.hpp:21
This is a helper class for the ToolMorphT ("edit vertices") tool.
Definition: MorphPrim.hpp:85
bool m_Selected
Is this part/handle selected by the user?
Definition: MorphPrim.hpp:41
Definition: MapBrush.hpp:15
This class represents a bezier patch.
Definition: MapBezierPatch.hpp:44
MapPrimitiveT * GetMorphedMapPrim() const
Returns a newly created instance matching the morphed map primitive, or NULL if reconstruction was no...
Definition: MorphPrim.cpp:92
void MoveSelectedHandles(const Vector3fT &Delta)
Moves the selected handles by Delta.
Definition: MorphPrim.cpp:345
MP_VertexT * Vertices[2]
The vertices of this edge (pointing into the MorphPrimT::m_Vertices array).
Definition: MorphPrim.hpp:65
Definition: MorphPrim.hpp:70
MP_FaceT * Faces[2]
The faces this edge belongs to (pointing into the MorphPrimT::m_Faces array).
Definition: MorphPrim.hpp:66
Definition: MorphPrim.hpp:56
Definition: MorphPrim.hpp:45
Definition: MorphPrim.hpp:23
MorphPrimT(const MapPrimitiveT *MapPrim)
The constructor.
Definition: MorphPrim.cpp:31