igeo
Class IFace

java.lang.Object
  extended by igeo.IFace

public class IFace
extends java.lang.Object

Class of a face of polygon mesh.


Field Summary
 IEdge[] edges
           
 IVec normal
           
 IVertex[] vertices
           
 
Constructor Summary
IFace(IEdge[] e)
           
IFace(IEdge e1, IEdge e2, IEdge e3)
           
IFace(IEdge e1, IEdge e2, IEdge e3, IEdge e4)
           
IFace(IFace f)
          Copis a face but shareing same vertices and edges with the original
IFace(IVertex[] v)
           
IFace(IVertex v1, IVertex v2, IVertex v3)
           
IFace(IVertex v1, IVertex v2, IVertex v3, IVertex v4)
           
 
Method Summary
 double area()
           
 void calcNormal()
           
 boolean contains(IEdge e)
           
 boolean contains(IVertex v)
           
 void del()
           
 IFace dup()
           
 IEdge edge(int i)
           
 int edgeNum()
           
static boolean eq(double v1, double v2)
           
 boolean eq(IFace face)
           
 void flipNormal()
           
 IVec getAverageNormal()
           
 IVec[] getBoundary()
           
 IVec getCenter()
           
 IEdge getEdge(int i)
           
 IEdge getEdge(IVertex v1, IVertex v2)
           
 IVertex getOtherVertex(IVertex v1, IVertex v2)
           
 IVertex getVertex(int i)
           
 int indexOf(IEdge e)
           
 void init(IEdge[] e)
           
 void replaceVertex(IVertex oldVertex, IVertex newVertex)
           
 void setNormal(IVec n)
           
 java.util.ArrayList<java.lang.Object> triangulate(boolean triangulateDirection, IMeshCreator creator)
           
 java.util.ArrayList<java.lang.Object> triangulateAtCenter(IMeshCreator creator)
           
 IVertex vertex(int i)
           
 int vertexNum()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

vertices

public IVertex[] vertices

edges

public IEdge[] edges

normal

public IVec normal
Constructor Detail

IFace

public IFace(IEdge[] e)

IFace

public IFace(IEdge e1,
             IEdge e2,
             IEdge e3)

IFace

public IFace(IEdge e1,
             IEdge e2,
             IEdge e3,
             IEdge e4)

IFace

public IFace(IVertex[] v)

IFace

public IFace(IVertex v1,
             IVertex v2,
             IVertex v3)

IFace

public IFace(IVertex v1,
             IVertex v2,
             IVertex v3,
             IVertex v4)

IFace

public IFace(IFace f)
Copis a face but shareing same vertices and edges with the original

Method Detail

init

public void init(IEdge[] e)

dup

public IFace dup()

getVertex

public IVertex getVertex(int i)

vertex

public IVertex vertex(int i)

getEdge

public IEdge getEdge(int i)

edge

public IEdge edge(int i)

vertexNum

public int vertexNum()

edgeNum

public int edgeNum()

getEdge

public IEdge getEdge(IVertex v1,
                     IVertex v2)

getOtherVertex

public IVertex getOtherVertex(IVertex v1,
                              IVertex v2)

getCenter

public IVec getCenter()

del

public void del()

contains

public boolean contains(IVertex v)

contains

public boolean contains(IEdge e)

indexOf

public int indexOf(IEdge e)

replaceVertex

public void replaceVertex(IVertex oldVertex,
                          IVertex newVertex)

area

public double area()

getAverageNormal

public IVec getAverageNormal()

calcNormal

public void calcNormal()

setNormal

public void setNormal(IVec n)

flipNormal

public void flipNormal()

triangulate

public java.util.ArrayList<java.lang.Object> triangulate(boolean triangulateDirection,
                                                         IMeshCreator creator)

triangulateAtCenter

public java.util.ArrayList<java.lang.Object> triangulateAtCenter(IMeshCreator creator)

eq

public static boolean eq(double v1,
                         double v2)

eq

public boolean eq(IFace face)

getBoundary

public IVec[] getBoundary()