|
||||||||||
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.piece.CornellBox
public class CornellBox
Generates classical Cornell Box. Original data from Cornell University.
Nested Class Summary | |
---|---|
protected static class |
CornellBox.Interior
Supported interiors. |
Field Summary | |
---|---|
protected int |
attrColorF
Actual face-color attribute. |
protected int |
attrColorV
Actual vertex-color attribute. |
protected int |
attrEmission
Actual face-emission attribute. |
protected int |
attrNormal
Actual vertex-normal attribute. |
static String |
AUTOMATIC_TESS
|
protected boolean |
automaticTess
Automatic tessellation? |
protected Brep |
brep
Accelerator: input B-rep database. |
protected static String |
CATEGORY
Object category. |
protected int |
cellsUBlock
Number of rows for block (short, tall). |
protected int |
cellsUBox
Number of rows for the box. |
protected int |
cellsVBlock
Number of columns for block (short, tall). |
protected int |
cellsVBox
Number of columns for the box. |
protected float[][] |
color
All colors in float[] format. |
protected int |
ctx
Actual Brep context. |
protected String |
emissionName
Name of face-emission attribute. |
protected CornellBox.Interior |
interior
Actually used number of boxes. |
static String |
INTERIOR
|
static String |
LEFT_SURFACE_COLOR
|
protected Color |
leftSurfaceColor
Color of the left side of the box. |
static String |
LIGHT_HEIGHT
|
static String |
LIGHT_WIDTH
|
protected double |
lightHeight
Height of light(s). |
protected double |
lightWidth
Width of light(s). |
static String |
MAX_SIDE_LENGTH
|
protected double |
maxSideLength
Maximal size of triangle in scene (used if automaticTess is true). |
static String |
NUMBER_COLS_BLOCK
|
static String |
NUMBER_COLS_BOX
|
static String |
NUMBER_ROWS_BLOCK
|
static String |
NUMBER_ROWS_BOX
|
static String |
OTHER_SURFACES_COLOR
|
protected Color |
otherSurfacesColor
Color of all other sides. |
static RegPiece |
reg
Static registration instance for this class. |
static String |
RIGHT_SURFACE_COLOR
|
protected Color |
rightSurfaceColor
Color of the right side of the box. |
protected static String |
TEMPLATE_NAME
Object template identifier. |
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 |
Fields inherited from interface cz.cuni.jagrlib.Template |
---|
ALL_PLUGS, C_1D, C_2D, C_3D, C_ALPHA, C_BINARY, C_BREP, C_CAMERA, C_CIRCLE, C_CLIP, C_COMPRESSION, C_CURVE, C_DATA, C_DRAW, C_EDITOR, C_ELLIPSE, C_FILL, C_FILTER, C_FLOAT, C_FUNCTION, C_IMAGE, C_INTEGER, C_IO, C_LIGHT, C_LINE, C_METRIC, C_POLYGON, C_PROJECTION, C_RADIOSITY, C_RASTER, C_RENDER, C_SAMPLE, C_SCENE, C_SET, C_SOLID, C_TEXT, C_TRANSFORM, C_VECTOR, C_VIEWER, C_WORKER, CAT_EMPTY, EMPTY, IFACE, JAGRLIB, JAGRLIB2, MANIPULATOR_COMBO, MANIPULATOR_CUSTOM, MANIPULATOR_DEFAULT, MANIPULATOR_MULTILINE, PL_ALPHAMASK, PL_BITMASK, PL_CODEC, PL_COLORMAP, PL_COMPARE, PL_DATA, PL_DIRECT, PL_EDITOR, PL_FILTER, PL_FUNCTION, PL_IMAGE, PL_IMPORT, PL_INPUT, PL_INTERSECTION, PL_LIGHTSOURCE, PL_ORDER, PL_OUTPUT, PL_PALETTE, PL_PROPERTY, PL_QUANTIZER, PL_RASTER, PL_RENDER, PL_STREAM, PL_TRANSFORM, PL_TRIGGER, PL_WINDOW, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INTEGER, TYPE_LONG, TYPE_OBJECT, TYPE_STRING |
Constructor Summary | |
---|---|
CornellBox()
|
Method Summary | |
---|---|
protected int |
autoEdges(double[] a,
double[] b)
Computes number of edges used in splitting the given segment. |
protected void |
box()
Creates Cornell-box external walls. |
void |
createQuad(double[] ur,
double[] ul,
double[] ll,
double[] lr,
int horiz,
int vert,
float[] vColor,
float[] fColor,
float[] fEmiss)
Creates quadrilateral with the given parameters. |
boolean |
fire(int type)
Triggers the (undetermined) action. |
Object |
get(String key)
Gets the given property. |
protected void |
light()
Creates rectangular light (near the ceiling). |
void |
prepare(Brep data,
int ctx)
Should be called at the beginning of each Cornell-box construction. |
void |
set(String key,
Object value)
Sets the given property. |
static int |
setTemplate(Template t,
int ord)
General-purpose registration routine. |
protected void |
shortBlock()
Creates short block inside the box. |
protected void |
tallBlock()
Creates tall block inside the box. |
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, intProperty, intProperty, intProperty, longProperty, longProperty, longProperty, 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 |
Methods inherited from interface cz.cuni.jagrlib.Breakable |
---|
setProgressListener, stop |
Field Detail |
---|
protected Brep brep
protected int ctx
Brep
context.
protected int attrColorV
protected int attrNormal
protected int attrColorF
protected int attrEmission
protected String emissionName
protected CornellBox.Interior interior
protected boolean automaticTess
protected int cellsUBox
protected int cellsVBox
protected int cellsUBlock
protected int cellsVBlock
protected double maxSideLength
automaticTess
is true).
protected Color leftSurfaceColor
protected Color rightSurfaceColor
protected Color otherSurfacesColor
protected double lightWidth
protected double lightHeight
protected float[][] color
float[]
format.
public static final String AUTOMATIC_TESS
public static final String NUMBER_ROWS_BOX
public static final String NUMBER_COLS_BOX
public static final String NUMBER_ROWS_BLOCK
public static final String NUMBER_COLS_BLOCK
public static final String MAX_SIDE_LENGTH
public static final String LEFT_SURFACE_COLOR
public static final String RIGHT_SURFACE_COLOR
public static final String OTHER_SURFACES_COLOR
public static final String LIGHT_WIDTH
public static final String LIGHT_HEIGHT
public static final String INTERIOR
protected static final String TEMPLATE_NAME
protected static final String CATEGORY
public static final RegPiece reg
Constructor Detail |
---|
public CornellBox()
Method Detail |
---|
public void prepare(Brep data, int ctx)
protected int autoEdges(double[] a, double[] b)
maxSideLength
public void createQuad(double[] ur, double[] ul, double[] ll, double[] lr, int horiz, int vert, float[] vColor, float[] fColor, float[] fEmiss)
prepare(cz.cuni.jagrlib.iface.Brep, int)
.
ur
- Coordinates of up right vertex.ul
- Coordinates of up left vertex.ll
- Coordinates of low left vertex.lr
- Coordinates of low right vertex.horiz
- Number of horizontal edges (columns).vert
- Number of vertical edges (rows).vColor
- Vertex-color.fColor
- Face-color (reflectivity).fEmiss
- Face-emission (nonzero for light sources).protected void box()
protected void light()
protected void shortBlock()
protected void tallBlock()
public boolean fire(int type)
fire
in interface Trigger
type
- The action type (whatever it means..).
true
if the action was successful.public void set(String key, Object value)
set
in interface Property
set
in class DefaultProperty
key
- Key string.value
- The new value.Property.commit()
public Object get(String key)
get
in interface Property
get
in class DefaultProperty
key
- Key string.
null
.public static int setTemplate(Template t, int ord)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |