7 #ifndef CAFU_MAP_MODEL_HPP_INCLUDED
8 #define CAFU_MAP_MODEL_HPP_INCLUDED
10 #include "MapPrimitive.hpp"
11 #include "Models/AnimExpr.hpp"
12 #include "Util/Util.hpp"
24 MapModelT(
MapDocumentT& MapDoc,
const wxString& ModelFileName,
const wxString& CollisionModelFileName,
const wxString& Label,
const Vector3fT& Position,
const Vector3fT& Angles,
float Scale,
int Sequence,
float FrameOffset,
float FrameTimeScale,
bool Animated);
42 wxString GetDescription()
const {
return "Model"; }
50 void TrafoMirror(
unsigned int NormalAxis,
float Dist,
bool LockTexCoords)
override;
54 void Save_cmap(std::ostream& OutFile,
unsigned long ModelNr,
const MapDocumentT& MapDoc)
const;
67 wxString m_ModelFileName;
70 wxString m_CollModelFileName;
76 float m_FrameTimeScale;
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
This class represents a native Cafu model.
Definition: Model_cmdl.hpp:45
This class represents a CaWE "map" document.
Definition: MapDocument.hpp:45
Definition: ModifyModel.hpp:18
This class adds no functionality of its own, but only exists for proper type separation.
Definition: MapPrimitive.hpp:21
An instance of this class encapsulates the transform-related state of a MapElementT.
Definition: MapElement.hpp:39
Definition: DialogInsp-PrimitiveProps.hpp:21
void RestoreTrafoState(const TrafoMementoT *TM) override
Restores the transform-related state of this element from the given memento.
Definition: MapModel.cpp:224
void TrafoMove(const Vector3fT &Delta, bool LockTexCoords) override
Translates this element by the given vector (in world-space).
Definition: MapModel.cpp:236
void TrafoMirror(unsigned int NormalAxis, float Dist, bool LockTexCoords) override
Mirrors this element along the given mirror plane (in world-space).
Definition: MapModel.cpp:281
Definition: MapModel.hpp:19
A platform independent timer class that allows to measure the time passed since its construction or t...
Definition: Util.hpp:24
void Transform(const Matrix4x4fT &Matrix, bool LockTexCoords) override
Why does this method not replace all the other Trafo*() methods? This method is the most generic...
Definition: MapModel.cpp:290
void TrafoScale(const Vector3fT &RefPoint, const Vector3fT &Scale, bool LockTexCoords) override
Scales this element about the given reference point (in world-space).
Definition: MapModel.cpp:273
Definition: ChildFrameViewWin2D.hpp:24
MapModelT * Clone() const override
The virtual copy constructor.
Definition: MapModel.cpp:92
TrafoMementoT * GetTrafoState() const override
Returns a memento that encapsulates the transform-related state of this element.
Definition: MapModel.cpp:218
void TrafoRotate(const Vector3fT &RefPoint, const cf::math::AnglesfT &Angles, bool LockTexCoords) override
Rotates this element about the given reference point (in world-space).
Definition: MapModel.cpp:244
Definition: TypeSys.hpp:52
This class keeps type information (about an entity class that occurs in the game).
Definition: TypeSys.hpp:79
bool TracePixel(const wxPoint &Pixel, int Radius, const ViewWindow2DT &ViewWin) const
This method determines if this map element is intersected/affected by the specified disc in ViewWin...
Definition: MapModel.cpp:185
BoundingBox3fT GetBB() const
Returns the spatial bounding-box of this map element.
Definition: MapModel.cpp:98
This is a class for parsing text.
Definition: TextParser.hpp:21