cz.cuni.jagrlib.piece
Class GLBrepRender

java.lang.Object
  extended by cz.cuni.jagrlib.DefaultProperty
      extended by cz.cuni.jagrlib.Piece
          extended by cz.cuni.jagrlib.DefaultRender3D
              extended by cz.cuni.jagrlib.piece.GLBrepRender
All Implemented Interfaces:
Breakable, GLGraphics, Property, Render, Render3D, Trigger, Template

public class GLBrepRender
extends DefaultRender3D
implements GLGraphics

GL scene rendering of connected Brep-scene.

See Also:
GLBrepRender.java

Field Summary
protected  float[] backgroundColor
          Background color.
protected  Brep brep
          Accelerator: connected Brep scene.
protected static java.lang.String CATEGORY
          Object category.
protected  float clearDepth
          Clear-depth value.
protected  int glDepthFunc
          Current "glDepthFunc" value.
protected static int[] glEnableConstants
          Constants for "glEnable".
protected  int[][] glHints
          Hint tuples for "glHint".
protected  int lights
          How many OpenGL lights will be used?
protected  float perpectiveZFar
          Far-plane distance.
protected  float perpectiveZNear
          Near-plane distance.
protected  float perspectiveFovy
          Angle of perspective view (in degrees).
static RegPiece reg
          Static registration instance for this class.
static java.lang.String SHADING_MODEL
           
protected  int shadingModel
          Current shading model.
protected static java.lang.String TEMPLATE_NAME
          Object template identifier.
static java.lang.String USE_LIGHTS
           
 
Fields inherited from class cz.cuni.jagrlib.DefaultRender3D
compound, depthComparison, modelView, mvChanged, prChanged, projection, renderStyle, vpHeight, vpChanged, vpWidth, vpX0, vpY0
 
Fields inherited from class cz.cuni.jagrlib.Piece
channels, info, pl, plugs, TEMPLATE_TYPE, userBreak
 
Fields inherited from interface cz.cuni.jagrlib.iface.Render3D
DEPTH_GEQUAL, DEPTH_GREATER, DEPTH_LEQUAL, DEPTH_LESS
 
Fields inherited from interface cz.cuni.jagrlib.iface.Render
LINE_CAP, LINE_CAP_BUTT, LINE_CAP_ROUND, LINE_CAP_SQUARE, LINE_JOIN, LINE_JOIN_BEVEL, LINE_JOIN_DISJOINT, LINE_JOIN_MITER, LINE_JOIN_OVERLAP, LINE_JOIN_ROUND, LINE_WIDTH, PROJECTION, RENDER_STYLE, RENDER_STYLE_FLAT, RENDER_STYLE_GOURAUD, RENDER_STYLE_LINE, RENDER_STYLE_PHONG, RENDER_STYLE_TEXTURE
 
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_CAUSTIC, 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_PHOTON, PL_PROPERTY, PL_QUANTIZER, PL_RASTER, PL_RENDER, PL_SHADOW, PL_STREAM, PL_TRANSFORM, PL_TRIGGER, PL_VOLUME, PL_WINDOW, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INTEGER, TYPE_LONG, TYPE_OBJECT, TYPE_STRING
 
Constructor Summary
GLBrepRender()
           
 
Method Summary
 java.lang.Object get(java.lang.String key)
          Gets the given property.
 void initRoutine(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu)
          Initialization of GL context.
 void paintRoutine(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu)
          Routine responsible for GL context repainting.
 void reshapeRoutine(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu, int x, int y, int width, int height)
          Reshape routine is called every time the dimensions of GL context are changed.
 void set(java.lang.String key, java.lang.Object value)
          Sets the given property.
static int setTemplate(Template t, int ord)
          General-purpose registration routine.
 
Methods inherited from class cz.cuni.jagrlib.DefaultRender3D
fire, checkMatrix, render, render, setDepthComparison, setModelView, setProjection, setProjection, setRenderStyle, setViewport
 
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

brep

protected Brep brep
Accelerator: connected Brep scene.


perspectiveFovy

protected float perspectiveFovy
Angle of perspective view (in degrees).


perpectiveZNear

protected float perpectiveZNear
Near-plane distance.


perpectiveZFar

protected float perpectiveZFar
Far-plane distance.


backgroundColor

protected float[] backgroundColor
Background color.


shadingModel

protected int shadingModel
Current shading model.


lights

protected int lights
How many OpenGL lights will be used? (0 for no GL lighting)


glEnableConstants

protected static final int[] glEnableConstants
Constants for "glEnable".


glDepthFunc

protected int glDepthFunc
Current "glDepthFunc" value.


glHints

protected int[][] glHints
Hint tuples for "glHint".


clearDepth

protected float clearDepth
Clear-depth value.


USE_LIGHTS

public static final java.lang.String USE_LIGHTS
See Also:
Constant Field Values

SHADING_MODEL

public static final java.lang.String SHADING_MODEL
See Also:
Constant Field Values

TEMPLATE_NAME

protected static final java.lang.String TEMPLATE_NAME
Object template identifier.

See Also:
Constant Field Values

CATEGORY

protected static final java.lang.String CATEGORY
Object category.

See Also:
Constant Field Values

reg

public static final RegPiece reg
Static registration instance for this class. Automatically initialized in class-loading time.

Constructor Detail

GLBrepRender

public GLBrepRender()
Method Detail

paintRoutine

public void paintRoutine(javax.media.opengl.GL gl,
                         javax.media.opengl.glu.GLU glu)
Routine responsible for GL context repainting.

Specified by:
paintRoutine in interface GLGraphics
Parameters:
gl - GL commands access object.
glu - GLU commands access object.

initRoutine

public void initRoutine(javax.media.opengl.GL gl,
                        javax.media.opengl.glu.GLU glu)
Initialization of GL context. It's called in init-time of every GL context.

Specified by:
initRoutine in interface GLGraphics
Parameters:
gl - GL commands access object.
glu - GLU commands access object.

reshapeRoutine

public void reshapeRoutine(javax.media.opengl.GL gl,
                           javax.media.opengl.glu.GLU glu,
                           int x,
                           int y,
                           int width,
                           int height)
Reshape routine is called every time the dimensions of GL context are changed. It usually contains projection setup.

Specified by:
reshapeRoutine in interface GLGraphics
Parameters:
gl - GL commands access object.
glu - GLU commands access object.
x - X position of reshaped canvas.
y - Y position of reshaped canvas.
width - Width of reshaped canvas.
height - Height of reshaped canvas.

set

public void set(java.lang.String key,
                java.lang.Object value)
Sets the given property.

Specified by:
set in interface Property
Overrides:
set in class DefaultProperty
Parameters:
key - Key string.
value - The new value.
See Also:
Property.commit()

get

public java.lang.Object get(java.lang.String key)
Gets the given property.

Specified by:
get in interface Property
Overrides:
get in class DefaultProperty
Parameters:
key - Key string.
Returns:
The actual value or null.

setTemplate

public static int setTemplate(Template t,
                              int ord)
General-purpose registration routine. Sets all plugs, strings, etc. to the given Template.