]> git.tdb.fi Git - r2c2.git/blobdiff - source/3d/tracktype.h
Make use of the mspmath library
[r2c2.git] / source / 3d / tracktype.h
index 3c06c58d8234047d7b198f2d0f9a68cfb1744f4a..0f6b30fa29a1241047d45f8892b07404355a25c3 100644 (file)
@@ -1,10 +1,3 @@
-/* $Id$
-
-This file is part of R²C²
-Copyright © 2010 Mikkosoft Productions, Mikko Rasa
-Distributed under the GPL
-*/
-
 #ifndef R2C2_3D_TRACKTYPE_H_
 #define R2C2_3D_TRACKTYPE_H_
 
@@ -22,10 +15,10 @@ class TrackType3D
 {
 private:
        Catalogue3D &catalogue;
-       Msp::GL::Mesh mesh;
-       Msp::GL::Object object;
+       Msp::GL::Mesh *mesh;
+       Msp::GL::Object *object;
        std::vector<Msp::GL::Mesh *> path_meshes;
-       std::vector<Point> border;
+       std::vector<Vector> border;
        float min_z;
        float max_z;
 
@@ -33,12 +26,12 @@ public:
        TrackType3D(Catalogue3D &, const TrackType &);
        ~TrackType3D();
 
-       void get_bounds(float, Point &, Point &) const;
-       const Msp::GL::Object &get_object() const { return object; }
+       void get_bounds(const Angle &, Vector &, Vector &) const;
+       const Msp::GL::Object &get_object() const { return *object; }
        const Msp::GL::Mesh &get_path_mesh(unsigned) const;
 
 private:
-       void build_part(const TrackPart &, const Profile &, const Point &, Msp::GL::MeshBuilder &, unsigned &);
+       void build_part(const TrackPart &, const Profile &, const Vector &, bool, Msp::GL::MeshBuilder &, unsigned &);
 };
 
 } // namespace R2C2