numericalMethods.geometry.meshGeneration.ruppert
Class Delaunay

java.lang.Object
  |
  +--numericalMethods.geometry.meshGeneration.ruppert.Delaunay
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
Ruppert

public class Delaunay
extends java.lang.Object
implements java.io.Serializable

See Also:
Serialized Form

Field Summary
(package private)  double circleR
           
(package private)  double circleX
           
(package private)  double circleY
           
(package private)  int[] face
           
(package private)  boolean hasExteriorPoints
           
(package private)  int maxNof
           
(package private)  int maxNop
           
(package private) static double MIN_LINE_COS_ANGLE
           
(package private)  int[] neighbor
           
(package private)  int[] newEdge
           
(package private)  int[] newFace
           
(package private)  int nof
           
(package private)  int nop
           
(package private)  boolean[] obsolete
           
(package private)  double[] point
           
(package private)  int pointOnEdge
           
(package private)  boolean[] segment
           
(package private)  double xyBound
           
 
Constructor Summary
Delaunay(double[] p)
           
Delaunay(double[][] p)
           
 
Method Summary
 void addPoint(double x, double y)
           
(package private)  void addPoint(double x, double y, int f)
           
(package private)  void addPoint(double x, double y, int f, int e)
           
(package private)  void checkFaceArray()
           
(package private)  int checkForNewEdges(double x1, double y1, double x2, double y2, double x, double y, int f, int e)
           
(package private)  void checkPointArray()
           
(package private)  boolean checkTriangle(int f, double x, double y)
           
(package private)  void computeCircumCircle(double x0, double y0, double x1, double y1, double x2, double y2)
           
(package private)  void computeCircumCircle(int f)
           
(package private)  boolean computeInteriorPoint(double[] p)
           
(package private)  void deleteObsoleteFaces()
           
(package private)  boolean[] doubleSize(boolean[] p)
           
(package private)  double[] doubleSize(double[] p)
           
(package private)  int[] doubleSize(int[] p)
           
(package private)  void eatExterior()
           
(package private)  void eatExterior(double[][] p)
           
(package private)  void eatFace(int f)
           
(package private)  boolean edgeIllegal(int f, int e)
           
(package private)  int edgeInFace(int f, int v1, int v2)
           
(package private)  int findTriangle(double x, double y)
           
(package private)  int flipEdge(int f, int e)
           
 double getBound()
           
 int[] getIndices()
           
(package private)  int getNeighbor(int f, int n)
           
(package private)  int getNeighborPtr(int f, int n)
           
 int getNumFaces()
           
 int getNumPoints()
           
 void getPoint(int index, double[] point)
           
 double[] getPoints()
           
 void getPoints(double[] points, int offset)
           
 boolean[] getSegments()
           
(package private)  void init(double[] p)
           
(package private)  void legalizeEdge(int f, int e)
           
(package private)  void legalizeNewFaces()
           
(package private) static double[] makePointArray(double[][] p)
           
(package private)  void makeSegments(double[][] p)
           
(package private)  boolean markSegment(int f, int e)
           
(package private)  boolean pointInCircle(double x, double y, int f)
           
(package private)  int pointInFace(int f, int v)
           
(package private)  void replaceNeighbor(int f, int n, int r)
           
(package private)  boolean seekAndMarkSegment(int v0, int v1)
           
(package private)  void seekSegment(int v0, int v1)
           
(package private)  void shiftPoints()
           
(package private)  void splitEdge(int f, int e)
           
(package private)  void splitTriangle(int f)
           
static int[] triangulate(double[] p)
           
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MIN_LINE_COS_ANGLE

static double MIN_LINE_COS_ANGLE

maxNop

int maxNop

maxNof

int maxNof

point

double[] point

face

int[] face

neighbor

int[] neighbor

segment

boolean[] segment

nop

int nop

nof

int nof

xyBound

double xyBound

obsolete

boolean[] obsolete

hasExteriorPoints

boolean hasExteriorPoints

newFace

int[] newFace

newEdge

int[] newEdge

pointOnEdge

int pointOnEdge

circleX

double circleX

circleY

double circleY

circleR

double circleR
Constructor Detail

Delaunay

public Delaunay(double[] p)

Delaunay

public Delaunay(double[][] p)
Method Detail

triangulate

public static int[] triangulate(double[] p)

getBound

public double getBound()

getIndices

public int[] getIndices()

getPoint

public void getPoint(int index,
                     double[] point)

getPoints

public void getPoints(double[] points,
                      int offset)

getPoints

public double[] getPoints()

getNumFaces

public int getNumFaces()

getNumPoints

public int getNumPoints()

getSegments

public boolean[] getSegments()

init

void init(double[] p)

addPoint

public void addPoint(double x,
                     double y)

addPoint

void addPoint(double x,
              double y,
              int f)

addPoint

void addPoint(double x,
              double y,
              int f,
              int e)

legalizeNewFaces

void legalizeNewFaces()

flipEdge

int flipEdge(int f,
             int e)

findTriangle

int findTriangle(double x,
                 double y)

checkTriangle

boolean checkTriangle(int f,
                      double x,
                      double y)

checkForNewEdges

int checkForNewEdges(double x1,
                     double y1,
                     double x2,
                     double y2,
                     double x,
                     double y,
                     int f,
                     int e)

splitTriangle

void splitTriangle(int f)

splitEdge

void splitEdge(int f,
               int e)

replaceNeighbor

void replaceNeighbor(int f,
                     int n,
                     int r)

getNeighborPtr

int getNeighborPtr(int f,
                   int n)

getNeighbor

int getNeighbor(int f,
                int n)

edgeIllegal

boolean edgeIllegal(int f,
                    int e)

computeCircumCircle

void computeCircumCircle(double x0,
                         double y0,
                         double x1,
                         double y1,
                         double x2,
                         double y2)

computeCircumCircle

void computeCircumCircle(int f)

pointInCircle

boolean pointInCircle(double x,
                      double y,
                      int f)

legalizeEdge

void legalizeEdge(int f,
                  int e)

checkPointArray

void checkPointArray()

checkFaceArray

void checkFaceArray()

doubleSize

double[] doubleSize(double[] p)

doubleSize

int[] doubleSize(int[] p)

doubleSize

boolean[] doubleSize(boolean[] p)

pointInFace

int pointInFace(int f,
                int v)

edgeInFace

int edgeInFace(int f,
               int v1,
               int v2)

eatExterior

void eatExterior()

deleteObsoleteFaces

void deleteObsoleteFaces()

shiftPoints

void shiftPoints()

makePointArray

static double[] makePointArray(double[][] p)

makeSegments

void makeSegments(double[][] p)

markSegment

boolean markSegment(int f,
                    int e)

seekAndMarkSegment

boolean seekAndMarkSegment(int v0,
                           int v1)

seekSegment

void seekSegment(int v0,
                 int v1)

eatExterior

void eatExterior(double[][] p)

computeInteriorPoint

boolean computeInteriorPoint(double[] p)

eatFace

void eatFace(int f)