]> git.tdb.fi Git - r2c2.git/blob - source/3d/path.h
67b525839d23b43f0adaff946409154c794e22fe
[r2c2.git] / source / 3d / path.h
1 /* $Id$
2
3 This file is part of R²C²
4 Copyright © 2010 Mikkosoft Productions, Mikko Rasa
5 Distributed under the GPL
6 */
7
8 #ifndef R2C2_3D_PATH_H_
9 #define R2C2_3D_PATH_H_
10
11 #include <msp/gl/color.h>
12 #include <msp/gl/mesh.h>
13 #include <msp/gl/renderable.h>
14
15 namespace R2C2 {
16
17 class Track3D;
18
19 class Path3D: public Msp::GL::Renderable
20 {
21 private:
22         const Track3D &track;
23         unsigned paths;
24         bool automatic;
25         Msp::GL::Color color;
26         float z_offs;
27
28 public:
29         Path3D(const Track3D &);
30         ~Path3D();
31
32         void set_automatic();
33         void set_path(unsigned);
34         void set_mask(unsigned);
35         void set_color(const Msp::GL::Color &);
36         void set_layer(float);
37
38         virtual long get_instance_key() const;
39
40         virtual void render(Msp::GL::Renderer &, const Msp::GL::Tag &) const;
41 };
42
43 } // namespace R2C2
44
45 #endif