]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/profile.h
Allow custom objects for tracks
[r2c2.git] / source / libr2c2 / profile.h
index 00132e9d9d8455d73923b54719af21c948fe180f..7a19fbe39998adc45ed6171fdc41e394cf0e8793 100644 (file)
@@ -23,22 +23,29 @@ public:
                Loader(Profile &);
        private:
                void point(float, float);
+               void smooth_point(float, float);
+       };
+
+       struct Vertex
+       {
+               Point pos;
+               Point normal;
+               bool smooth;
        };
 
 private:
-       std::vector<Point> points;
+       std::vector<Vertex> vertices;
        Point min_coords;
        Point max_coords;
 
 public:
-       void append_point(const Point &);
-       unsigned get_n_points() const { return points.size(); }
-       const Point &get_point(unsigned) const;
+       void append_vertex(const Point &, bool);
+       unsigned get_n_vertices() const { return vertices.size(); }
+       const Vertex &get_vertex(unsigned) const;
        const Point &get_min_coords() const { return min_coords; }
        const Point &get_max_coords() const { return max_coords; }
        float get_width() const { return max_coords.x-min_coords.x; }
        float get_height() const { return max_coords.y-min_coords.y; }
-       Point get_edge_normal(unsigned) const;
 };
 
 } // namespace R2C2