|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcz.cuni.jagrlib.DefaultProperty
cz.cuni.jagrlib.Piece
cz.cuni.jagrlib.DefaultSolid
cz.cuni.jagrlib.piece.Plane
public class Plane
Plane objects (infinite plane, rectangle, triangle) as elementary 3D solids.
Field Summary | |
---|---|
protected boolean |
canonicU
Use canonic u coordinate (=x)? |
protected boolean |
canonicV
Use canonic v coordinate (=y)? |
static RegPiece |
reg
Static registration instance for this class. |
protected double |
scaleU
Scale coefficient for u coordinate. |
protected double |
scaleV
Scale coefficient for v coordinate. |
protected boolean |
triangle
Use three restrictions instead of four (the 3rd one is: xMax * x + yMax * y < 1.0 ). |
protected double |
xMax
Upper bound for x coordinate (or see triangle ). |
protected double |
xMin
Lower bound for x coordinate. |
protected double |
yMax
Upper bound for y coordinate (or see triangle ). |
protected double |
yMin
Lower bound for y coordinate. |
Fields inherited from class cz.cuni.jagrlib.DefaultSolid |
---|
CATEGORY, TEMPLATE_NAME |
Fields inherited from class cz.cuni.jagrlib.Piece |
---|
channels, info, pl, plugs, TEMPLATE_TYPE, userBreak |
Fields inherited from interface cz.cuni.jagrlib.iface.Property |
---|
LOGGING, STATISTICS, TEXT_DESCRIPTION |
Constructor Summary | |
---|---|
Plane()
Infinite plane. |
|
Plane(double xMa,
double yMa)
Triangle (three restrictions). |
|
Plane(double xMi,
double xMa,
double yMi,
double yMa)
Rectangle (four restrictions). |
Method Summary | |
---|---|
int |
assertAttributes(MicroFacet mf,
java.lang.Object tmp,
int attributes)
Asserts validity of the given intersection-attributes. |
java.util.List<MicroFacet> |
intersection(double[] P0,
double[] P1)
Computes intersection of the solid with the given ray. |
boolean |
isInside(double[] point)
Point vs. solid test ("inside-test"). |
static int |
setTemplate(Template t,
int ord)
General-purpose registration routine. |
Methods inherited from class cz.cuni.jagrlib.DefaultSolid |
---|
createPolyhedr, getBoundingVolume |
Methods inherited from class cz.cuni.jagrlib.Piece |
---|
className, connect, findPlug, findPlug, getInfo, getInterface, getInterface, getPlug, getReg, init, isCompatible, isCompatible, isConnected, logError, logWarning, myInterface, newInputPlug, newOptOutputPlug, newOutputPlug, newPlug, noTemplates, propBegin, propBounds, propDefault, propEnd, propEnum, propManipulator, propManipulator, setProgressListener, setRegStrings, setTemplateDynamic, stop |
Methods inherited from class cz.cuni.jagrlib.DefaultProperty |
---|
booleanProperty, booleanProperty, colorDoubleProperty, colorProperty, commit, doubleProperty, doubleProperty, doubleProperty, enumProperty, floatProperty, floatProperty, floatProperty, get, intProperty, intProperty, intProperty, longProperty, longProperty, longProperty, set, set, stringProperty |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface cz.cuni.jagrlib.iface.Property |
---|
commit, get, set |
Field Detail |
---|
protected double xMin
protected double xMax
triangle
).
protected double yMin
protected double yMax
triangle
).
protected boolean triangle
xMax * x + yMax * y < 1.0
).
protected boolean canonicU
protected boolean canonicV
protected double scaleU
protected double scaleV
public static final RegPiece reg
Constructor Detail |
---|
public Plane()
public Plane(double xMi, double xMa, double yMi, double yMa)
public Plane(double xMa, double yMa)
Method Detail |
---|
public java.util.List<MicroFacet> intersection(double[] P0, double[] P1)
P0
- Ray origin (double[3]
or double[4]
).P1
- Direction vector of the ray (double[3]
or double[4]
).
MicroFacet
s) sorted by t
(parametric distance from P0
). null
is returned in case
of bad arguments or if no intersection exists..MicroFacet
,
BoundingVolume
public int assertAttributes(MicroFacet mf, java.lang.Object tmp, int attributes)
VALID_TANGENT
,
VALID_TEX_COORD
.
assertAttributes
in interface IntersectionAttributes
assertAttributes
in class DefaultSolid
mf
- The checked intersection.tmp
- Non-mandatory object holding state-information for deferred computations.attributes
- Attribute mask (required attributes - see
MicroFacet.VALID_*
).
public boolean isInside(double[] point)
isInside
in interface Solid
isInside
in class DefaultSolid
point
- Coordinates of the 3D point (double[3]
or
double[4]
).
true
if the given point lies inside the solid.public static int setTemplate(Template t, int ord)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |