]> git.tdb.fi Git - r2c2.git/blobdiff - source/3d/layout.cpp
Split mesh generation from Track3D to TrackType3D
[r2c2.git] / source / 3d / layout.cpp
index dcf5544e8dfb8435d793dc7aa98fd300971c9ace..633baa1957668a6fc77af6a6f39c0f2fb55f072c 100644 (file)
@@ -1,7 +1,7 @@
 /* $Id$
 
 This file is part of the MSP Märklin suite
-Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa
+Copyright © 2006-2010 Mikkosoft Productions, Mikko Rasa
 Distributed under the GPL
 */
 
@@ -20,6 +20,7 @@ namespace Marklin {
 
 Layout3D::Layout3D(Layout &l):
        layout(l),
+       catalogue(layout.get_catalogue()),
        quality(4)
 {
        layout.signal_track_added.connect(sigc::mem_fun(this, &Layout3D::track_added));
@@ -35,8 +36,6 @@ Layout3D::~Layout3D()
 void Layout3D::set_quality(unsigned q)
 {
        quality = q;
-       for(list<Track3D *>::iterator i=tracks.begin(); i!=tracks.end(); ++i)
-               (*i)->set_quality(quality);
 }
 
 void Layout3D::render(bool endpoints) const
@@ -122,7 +121,7 @@ Track3D *Layout3D::pick_track(float x, float y, float size) const
 
 void Layout3D::track_added(Track &t)
 {
-       tracks.push_back(new Track3D(t, quality));
+       tracks.push_back(new Track3D(*this, t));
 }
 
 void Layout3D::track_removed(Track &t)