X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2F3d%2Fpath.h;h=ceeb178ce04c6b11fa67e63792ce4f054fb70ba3;hb=399b48a7a80dafde49e7530ff8dfd2820232a73f;hp=58dae2435d8fe4cb87036d2857035273e31bbf2a;hpb=d15ac13f2e170f155b4bbd124df48400c339b644;p=r2c2.git diff --git a/source/3d/path.h b/source/3d/path.h index 58dae24..ceeb178 100644 --- a/source/3d/path.h +++ b/source/3d/path.h @@ -4,17 +4,20 @@ #include #include #include +#include "utility.h" namespace R2C2 { class Track3D; -class Path3D: public Msp::GL::Renderable +class Path3D: public Utility3D, public Msp::GL::Renderable, public sigc::trackable { private: const Track3D &track; - unsigned paths; + int path; + int side; bool automatic; + const Msp::GL::Mesh *mesh; Msp::GL::Color color; float z_offs; @@ -23,11 +26,15 @@ public: ~Path3D(); void set_automatic(); - void set_path(unsigned); - void set_mask(unsigned); + void set_path(int); + void set_side(int); void set_color(const Msp::GL::Color &); void set_layer(float); +private: + void path_changed(unsigned); + void update_mesh(); +public: virtual long get_instance_key() const; virtual void render(Msp::GL::Renderer &, const Msp::GL::Tag &) const;