Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2009-08-09 16:34:38 +0000
committerStijn Buys <ingar@osirion.org>2009-08-09 16:34:38 +0000
commit324f5431245f2a550acddea70ea72770430a19d1 (patch)
treeaa05d127c20f5bb5995a3fdceb915b5280887e4b /src/model/triangle.h
parentb808c0e24cc4a59bd801059147bc9805944bee9a (diff)
initial .ase support
Diffstat (limited to 'src/model/triangle.h')
-rw-r--r--src/model/triangle.h38
1 files changed, 36 insertions, 2 deletions
diff --git a/src/model/triangle.h b/src/model/triangle.h
index 416a3e6..27abeed 100644
--- a/src/model/triangle.h
+++ b/src/model/triangle.h
@@ -17,9 +17,19 @@ namespace model
class Triangle
{
public:
- /// a new triangle with 3 vertices, a normal, color and a detail flag
+ /// a new triangle with 3 vertices, a normal and detail flag
Triangle(math::Vector3f const &v0, math::Vector3f const &v1, math::Vector3f const &v2,
math::Vector3f const &normal, bool detail);
+
+ /**
+ * @brief a new triangle with 3 vertices with normals and a face normal
+ * this constructor sets the detail flag to false
+ */
+ Triangle( math::Vector3f const &v0, math::Vector3f const &n0,
+ math::Vector3f const &v1, math::Vector3f const &n1,
+ math::Vector3f const &v2, math::Vector3f const &n2,
+ math::Vector3f const &normal);
+
/// delete triangle
~Triangle();
@@ -41,23 +51,47 @@ public:
return triangle_v0;
}
+ /// triangle vertex 0 normal
+ inline math::Vector3f & n0()
+ {
+ return triangle_n0;
+ }
+
/// triangle vertex 1
inline math::Vector3f & v1()
{
return triangle_v1;
}
+
+ /// triangle vertex 1 normal
+ inline math::Vector3f & n1()
+ {
+ return triangle_n1;
+ }
/// triangle vertex 2
inline math::Vector3f & v2()
{
return triangle_v2;
}
+
+ /// triangle vertex 0 normal
+ inline math::Vector3f & n2()
+ {
+ return triangle_n2;
+ }
+
private:
math::Vector3f triangle_v0;
+ math::Vector3f triangle_n0;
+
math::Vector3f triangle_v1;
+ math::Vector3f triangle_n1;
+
math::Vector3f triangle_v2;
-
+ math::Vector3f triangle_n2;
+
math::Vector3f triangle_normal;
bool triangle_detail;
};