|
From: <axl...@us...> - 2009-10-11 15:40:59
|
Revision: 562
http://hgengine.svn.sourceforge.net/hgengine/?rev=562&view=rev
Author: axlecrusher
Date: 2009-10-11 15:40:51 +0000 (Sun, 11 Oct 2009)
Log Message:
-----------
update
Modified Paths:
--------------
Mercury2/src/DataTypes/MTriangle.cpp
Mercury2/src/DataTypes/MTriangle.h
Modified: Mercury2/src/DataTypes/MTriangle.cpp
===================================================================
--- Mercury2/src/DataTypes/MTriangle.cpp 2009-10-11 03:34:07 UTC (rev 561)
+++ Mercury2/src/DataTypes/MTriangle.cpp 2009-10-11 15:40:51 UTC (rev 562)
@@ -35,6 +35,23 @@
return MercuryVertex(ru, rv, 1-(ru+rv));
}
+MercuryVertex MTriangle::InterpolatePosition(const MercuryVertex& barycentric)
+{
+ MercuryVertex result( m_verts[0] );
+
+ barycentric.Print();
+
+ result += (m_verts[1] - m_verts[0])*barycentric;
+ result += (m_verts[2] - m_verts[0])*barycentric;
+
+// result.Print();
+
+ result[3] = 0;
+
+ result.Print();
+ return result;
+}
+
bool MTriangle::IsInTriangle(const MercuryVertex& p)
{
MercuryVertex v = Barycentric(p);
Modified: Mercury2/src/DataTypes/MTriangle.h
===================================================================
--- Mercury2/src/DataTypes/MTriangle.h 2009-10-11 03:34:07 UTC (rev 561)
+++ Mercury2/src/DataTypes/MTriangle.h 2009-10-11 15:40:51 UTC (rev 562)
@@ -13,9 +13,10 @@
bool IsInTriangle( const MercuryVertex& p );
float Area();
-
+ MercuryVertex InterpolatePosition(const MercuryVertex& barycentric);
+
bool operator == (const MTriangle& rhs);
- private:
+// private:
MercuryVertex m_verts[3];
};
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|