NASA World Wind

gov.nasa.worldwind.geom
Class BarycentricQuadrilateral

java.lang.Object
  extended by gov.nasa.worldwind.geom.BarycentricTriangle
      extended by gov.nasa.worldwind.geom.BarycentricQuadrilateral
All Implemented Interfaces:
BarycentricPlanarShape

public class BarycentricQuadrilateral
extends BarycentricTriangle

See http://www.cs.kuleuven.be/~ares/Publications/LagaeDutre2005AnEfficientRayQuadrilateralIntersectionTest/paper.pdf for a description of the calculations used to compute barycentric and bilinear coordinates.


Field Summary
protected  Vec4 p11
           
 
Fields inherited from class gov.nasa.worldwind.geom.BarycentricTriangle
p00, p01, p10, q1, q3
 
Constructor Summary
BarycentricQuadrilateral(LatLon p00, LatLon p10, LatLon p11, LatLon p01)
           
BarycentricQuadrilateral(Point p00, Point p10, Point p11, Point p01)
           
BarycentricQuadrilateral(Vec4 p00, Vec4 p10, Vec4 p11, Vec4 p01)
           
 
Method Summary
 boolean contains(Vec4 p)
           
 double[] getBilinearCoords(double alpha, double beta)
           
 double[] getBilinearCoords(Vec4 point)
           
 Vec4 getP11()
           
 double[] invertBilinear(Vec4 U)
           
static double[] invertBilinear(Vec4 U, Vec4 X, Vec4 Y, Vec4 Z, Vec4 W)
           
static void main(String[] args)
           
 
Methods inherited from class gov.nasa.worldwind.geom.BarycentricTriangle
getBarycentricCoords, getBarycentricCoords, getLocation, getP00, getP01, getP10, getPoint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

p11

protected Vec4 p11
Constructor Detail

BarycentricQuadrilateral

public BarycentricQuadrilateral(LatLon p00,
                                LatLon p10,
                                LatLon p11,
                                LatLon p01)

BarycentricQuadrilateral

public BarycentricQuadrilateral(Point p00,
                                Point p10,
                                Point p11,
                                Point p01)

BarycentricQuadrilateral

public BarycentricQuadrilateral(Vec4 p00,
                                Vec4 p10,
                                Vec4 p11,
                                Vec4 p01)
Method Detail

contains

public boolean contains(Vec4 p)
Overrides:
contains in class BarycentricTriangle

getBilinearCoords

public double[] getBilinearCoords(double alpha,
                                  double beta)
Specified by:
getBilinearCoords in interface BarycentricPlanarShape
Overrides:
getBilinearCoords in class BarycentricTriangle

getBilinearCoords

public double[] getBilinearCoords(Vec4 point)

getP11

public Vec4 getP11()

invertBilinear

public double[] invertBilinear(Vec4 U)

invertBilinear

public static double[] invertBilinear(Vec4 U,
                                      Vec4 X,
                                      Vec4 Y,
                                      Vec4 Z,
                                      Vec4 W)

main

public static void main(String[] args)

NASA World Wind