


PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
java.lang.Object net.algart.drawing3d.PlanePolygon3D
public class PlanePolygon3D extends java.lang.Object implements Shape3D
Plane polygon, placed in 3D space.
This figure is a polygon inside some plane
The polygon is usually supposed to be convex: it is not checked, but the drawing algorithm
of this figure, offered by ConvexPlanePolygon3DDrawingRule
class, works incorrectly
if it is not convex.
The vertices are supposed to lie at the plane
Note: the norm of (a,b,c) vector is always 1.0: a²+b²+c²=1.0. The coefficients are normalized automatically while instantiating by the constructor.
This class is immutable and threadsafe: there are no ways to modify settings of the created instance.
AlgART Laboratory 2010
Constructor and Description 

PlanePolygon3D(double a,
double b,
double c,
double d,
double... verticesXYZ)
Creates new plane polygon: a polygonal area inside the plane 
Modifier and Type  Method and Description 

double 
getA()
The coefficient a in the plane equation 
double 
getB()
The coefficient b in the plane equation 
double 
getC()
The coefficient c in the plane equation 
double 
getD()
The coefficient d in the plane equation 
int 
getVerticesCount()
The number of vertices of the polygon: verticesXYZ.length/3, where verticesXYZ is the last argument of the constructor. 
double[] 
getVerticesXYZ()
Returns all vertices of the polygon. 
java.lang.String 
toString()
Returns a brief string description of this object. 
Methods inherited from class java.lang.Object 

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait 
Constructor Detail 

public PlanePolygon3D(double a, double b, double c, double d, double... verticesXYZ)
The coefficients a,b,c,d are passed via the arguments.
The vector (a,b,c) is automatically normalized: all 4 numbers are divided by
The verticesXYZ argument should specify the sequence of 3D vertices of some polygon
inside the plane
The passed verticesXYZ argument is cloned by this constructor: no references to it are maintained by the created object.
a
 the coefficient a.b
 the coefficient b.c
 the coefficient c.d
 the coefficient d.verticesXYZ
 the sequential vertices of some polygon inside the wall boundary, which will be drawn
by 3Ddrawing algorithms.java.lang.IllegalArgumentException
 if (a,b,c) is zero (and, so, cannot be normalized),
or if the length of verticesXYZ array is not divisible by 3,
or if the length of verticesXYZ array is less than 9 (3 vertices).Method Detail 

public double getA()
public double getB()
public double getC()
public double getD()
public int getVerticesCount()
public double[] getVerticesXYZ()
The returned array is a clone of the internal array stored in this object.
public java.lang.String toString()
The result of this method may depend on implementation.
toString
in class java.lang.Object


PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 