Ejemplo n.º 1
0
my::Vector my::AbstractPolygon::orientationVector() const
{
    _prePolygon("orientationVector");

    my::Vector crossSum;

    crossSum = my::Vector(0,0,0);
    for(int i=0; i < size()-1; ++i){
        crossSum += glm::cross( edgeVector(i), edgeVector(i+1) );
    }

    return crossSum;
}
Ejemplo n.º 2
0
float my::AbstractPolygon::circumference()const
{
    int i;
    float sum;

    sum = 0;
    for(i=0; i<size(); ++i){
        sum += glm::length(edgeVector(i));
    }

    return sum;
}
Ejemplo n.º 3
0
my::PlanarExpression my::AbstractPolygon::basePlaneExpression()const
{
    _prePolygon("basePlaneExpression");

    return my::PlanarExpression(vertex(0), edgeVector(0), edgeVector(1));
}
Ejemplo n.º 4
0
my::Planar my::AbstractPolygon::basePlane()const
{
    _prePolygon("basePlane");

    return my::Planar(vertex(0), edgeVector(0), edgeVector(1));
}
Ejemplo n.º 5
0
float my::AbstractPolygon::area()const
{
    return std::abs( signedArea(glm::cross(edgeVector(0), edgeVector(1))) );
}
Ejemplo n.º 6
0
inline KVector3D KHalfEdgeMeshPrivate::edgeVector(HalfEdgeIndex const &idx) const
{
  return edgeVector(halfEdge(idx));
}