vclip
Class ConvexPolygon

java.lang.Object
  extended byvclip.ConvexPolygon

public class ConvexPolygon
extends java.lang.Object

A 2d convex polygon used by Vclip is handling face-face contact.


Field Summary
static int EDGE_WITHIN
           
static int NO_OVERLAP
           
static int OVERLAP
           
static int POLY_WITHIN
           
 
Constructor Summary
ConvexPolygon()
           
ConvexPolygon(double[] vlist)
           
 
Method Summary
 void addVertex(double x, double y, boolean ccw)
           
 double area()
           
 void beginDef()
           
 void centroid(javax.vecmath.Point2d p)
           
 boolean consistencyCheck(boolean print)
           
 void endDef()
           
 boolean epsilonEquals(ConvexPolygon poly, double prec)
           
 vclip.ConvexPolygon.VertexIterator getVertexIterator()
           
 java.util.Iterator getVertices()
           
 ConvexPolygon intersect(ConvexPolygon poly1)
           
 ConvexPolygon intersect(ConvexPolygon poly1, boolean boundingBoxCheck)
           
 ConvexPolygon intersect(ConvexPolygon poly1, ConvexPolygon poly2)
           
 ConvexPolygon intersect(ConvexPolygon poly1, ConvexPolygon poly2, boolean boundingBoxCheck)
           
 ConvexPolygon intersect(ConvexPolygon poly, vclip.Line2d hp)
           
 ConvexPolygon intersect(vclip.Line2d hp)
           
 int intersectLine(double[] lam, vclip.Line2d line)
           
 int intersectLine(double[] lam, vclip.Line2d line, double tol)
           
 int isInside(javax.vecmath.Point2d p)
           
 int numVertices()
           
 void scan(java.io.StreamTokenizer stok)
           
 void set(ConvexPolygon poly)
           
 void set(double[] vlist)
           
 java.lang.String sprintf()
           
 java.lang.String toString()
           
 void xform(ConvexPolygon poly, double px, double py, double ang)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NO_OVERLAP

public static final int NO_OVERLAP
See Also:
Constant Field Values

OVERLAP

public static final int OVERLAP
See Also:
Constant Field Values

EDGE_WITHIN

public static final int EDGE_WITHIN
See Also:
Constant Field Values

POLY_WITHIN

public static final int POLY_WITHIN
See Also:
Constant Field Values
Constructor Detail

ConvexPolygon

public ConvexPolygon()

ConvexPolygon

public ConvexPolygon(double[] vlist)
Method Detail

set

public void set(double[] vlist)

beginDef

public void beginDef()

addVertex

public void addVertex(double x,
                      double y,
                      boolean ccw)

endDef

public void endDef()

set

public void set(ConvexPolygon poly)

scan

public void scan(java.io.StreamTokenizer stok)
          throws java.io.IOException
Throws:
java.io.IOException

sprintf

public java.lang.String sprintf()

epsilonEquals

public boolean epsilonEquals(ConvexPolygon poly,
                             double prec)

consistencyCheck

public boolean consistencyCheck(boolean print)

intersect

public ConvexPolygon intersect(vclip.Line2d hp)

intersect

public ConvexPolygon intersect(ConvexPolygon poly,
                               vclip.Line2d hp)

centroid

public void centroid(javax.vecmath.Point2d p)

area

public double area()

isInside

public int isInside(javax.vecmath.Point2d p)

intersectLine

public int intersectLine(double[] lam,
                         vclip.Line2d line)

intersectLine

public int intersectLine(double[] lam,
                         vclip.Line2d line,
                         double tol)

intersect

public ConvexPolygon intersect(ConvexPolygon poly1,
                               ConvexPolygon poly2)

intersect

public ConvexPolygon intersect(ConvexPolygon poly1,
                               boolean boundingBoxCheck)

intersect

public ConvexPolygon intersect(ConvexPolygon poly1)

intersect

public ConvexPolygon intersect(ConvexPolygon poly1,
                               ConvexPolygon poly2,
                               boolean boundingBoxCheck)

numVertices

public int numVertices()

getVertices

public java.util.Iterator getVertices()

getVertexIterator

public vclip.ConvexPolygon.VertexIterator getVertexIterator()

xform

public void xform(ConvexPolygon poly,
                  double px,
                  double py,
                  double ang)

toString

public java.lang.String toString()