]> git.tdb.fi Git - r2c2.git/blobdiff - source/3d/tracktype.cpp
Move the fitting part of Manipulator::connect to a separate function
[r2c2.git] / source / 3d / tracktype.cpp
index 12a1bb92a15df585e426e381cc30ab5331877b3f..6dab43c4f7d59de418bcbbe8622fba641298e7d4 100644 (file)
@@ -135,6 +135,12 @@ TrackType3D::TrackType3D(const Catalogue3D &cat3d, const TrackType &tt):
        border.erase(graham_scan(border.begin(), border.end()), border.end());
 }
 
+TrackType3D::~TrackType3D()
+{
+       for(vector<GL::Mesh *>::iterator i=path_meshes.begin(); i!=path_meshes.end(); ++i)
+               delete *i;
+}
+
 void TrackType3D::get_bounds(float angle, Point &minp, Point &maxp) const
 {
        float c = cos(-angle);
@@ -177,7 +183,7 @@ void TrackType3D::render(const GL::Tag &tag) const
 void TrackType3D::build_part(const TrackPart &part, const Profile &profile, const Point &offset, GL::MeshBuilder &bld, unsigned &base_index)
 {
        float plen = part.get_length();
-       unsigned nsegs = (part.is_curved() ? static_cast<unsigned>(plen*16)+1 : 1);
+       unsigned nsegs = (part.is_curved() ? static_cast<unsigned>(plen*32)+1 : 1);
 
        unsigned n_points = profile.get_n_points();
        for(unsigned i=0; i<=nsegs; ++i)