| java.lang.Object java.awt.Component java.awt.Canvas javax.media.j3d.Canvas3D
All known Subclasses: com.db.media.print.OffScreenCanvas3D, org.jdesktop.j3d.examples.offscreen_canvas3d.OffScreenCanvas3D, com.db.layers.underlay.TransparentCanvas3D, org.jdesktop.j3d.examples.offscreen_canvas3d.OnScreenCanvas3D, com.db.layers.overlay.FixedCanvas3D, org.jdesktop.j3d.examples.print_canvas3d.OffScreenCanvas3D,
Canvas3D | public class Canvas3D extends Canvas (Code) | | The Canvas3D class provides a drawing canvas for 3D rendering. It
is used either for on-screen rendering or off-screen rendering.
Canvas3D is an extension of the AWT Canvas class that users may
further subclass to implement additional functionality.
The Canvas3D object extends the Canvas object to include
3D-related information such as the size of the canvas in pixels,
the Canvas3D's location, also in pixels, within a Screen3D object,
and whether or not the canvas has stereo enabled.
Because all Canvas3D objects contain a
reference to a Screen3D object and because Screen3D objects define
the size of a pixel in physical units, Java 3D can convert a Canvas3D
size in pixels to a physical world size in meters. It can also
determine the Canvas3D's position and orientation in the
physical world.
On-screen Rendering vs. Off-screen Rendering
The Canvas3D class is used either for on-screen rendering or
off-screen rendering.
On-screen Canvas3Ds are added to AWT or Swing Container objects
like any other canvas. Java 3D automatically and continuously
renders to all on-screen canvases that are attached to an active
View object. On-screen Canvas3Ds can be either single or double
buffered and they can be either stereo or monoscopic.
Off-screen Canvas3Ds must not be added to any Container. Java 3D
renders to off-screen canvases in response to the
renderOffScreenBuffer method. Off-screen Canvas3Ds
are single buffered. However, on many systems, the actual
rendering is done to an off-screen hardware buffer or to a 3D
library-specific buffer and only copied to the off-screen buffer of
the Canvas when the rendering is complete, at "buffer swap" time.
Off-screen Canvas3Ds are monoscopic.
The setOffScreenBuffer method sets the off-screen buffer for this
Canvas3D. The specified image is written into by the Java 3D renderer.
The size of the specified ImageComponent determines the size, in
pixels, of this Canvas3D - the size inherited from Component is
ignored. Note that the size, physical width, and physical height of the
associated Screen3D must be set
explicitly prior to rendering. Failure to do so will result in an
exception.
The getOffScreenBuffer method retrieves the off-screen
buffer for this Canvas3D.
The renderOffScreenBuffer method schedules the rendering of a frame
into this Canvas3D's off-screen buffer. The rendering is done from
the point of view of the View object to which this Canvas3D has been
added. No rendering is performed if this Canvas3D object has not been
added to an active View. This method does not wait for the rendering
to actually happen. An application that wishes to know when the
rendering is complete must either subclass Canvas3D and
override the postSwap method, or call waitForOffScreenRendering.
The setOfScreenLocation methods set the location of this off-screen
Canvas3D. The location is the upper-left corner of the Canvas3D
relative to the upper-left corner of the corresponding off-screen
Screen3D. The function of these methods is similar to that of
Component.setLocation for on-screen Canvas3D objects. The default
location is (0,0).
Accessing and Modifying an Eye's Image Plate Position
A Canvas3D object provides sophisticated applications with access
to the eye's position information in head-tracked, room-mounted
runtime environments. It also allows applications to manipulate
the position of an eye relative to an image plate in non-head-tracked
runtime environments.
The setLeftManualEyeInImagePlate and setRightManualEyeInImagePlate
methods set the position of the manual left and right eyes in image
plate coordinates. These values determine eye placement when a head
tracker is not in use and the application is directly controlling the
eye position in image plate coordinates. In head-tracked mode or
when the windowEyepointPolicy is RELATIVE_TO_FIELD_OF_VIEW or
RELATIVE_TO_COEXISTENCE, this
value is ignored. When the windowEyepointPolicy is RELATIVE_TO_WINDOW,
only the Z value is used.
The getLeftEyeInImagePlate, getRightEyeInImagePlate, and
getCenterEyeInImagePlate methods retrieve the actual position of the
left eye, right eye, and center eye in image plate coordinates and
copy that value into the object provided. The center eye is the
fictional eye half-way between the left and right eye. These three
values are a function of the windowEyepointPolicy, the tracking
enable flag, and the manual left, right, and center eye positions.
Monoscopic View Policy
The setMonoscopicViewPolicy and getMonoscopicViewPolicy methods
set and retrieve the policy regarding how Java 3D generates monoscopic
view. If the policy is set to View.LEFT_EYE_VIEW, the view generated
corresponds to the view as seen from the left eye. If set to
View.RIGHT_EYE_VIEW, the view generated corresponds to the view as
seen from the right eye. If set to View.CYCLOPEAN_EYE_VIEW, the view
generated corresponds to the view as seen from the "center eye," the
fictional eye half-way between the left and right eye. The default
monoscopic view policy is View.CYCLOPEAN_EYE_VIEW.
Immediate Mode Rendering
Pure immediate-mode rendering provides for those applications and
applets that do not want Java 3D to do any automatic rendering of
the scene graph. Such applications may not even wish to build a
scene graph to represent their graphical data. However, they use
Java 3D's attribute objects to set graphics state and Java 3D's
geometric objects to render geometry.
A pure immediate mode application must create a minimal set of
Java 3D objects before rendering. In addition to a Canvas3D object,
the application must create a View object, with its associated
PhysicalBody and PhysicalEnvironment objects, and the following
scene graph elements: a VirtualUniverse object, a high-resolution
Locale object, a BranchGroup node object, a TransformGroup node
object with associated transform, and a ViewPlatform
leaf node object that defines the position and orientation within
the virtual universe that generates the view.
In immediate mode, all rendering is done completely under user
control. It is necessary for the user to clear the 3D canvas,
render all geometry, and swap the buffers. Additionally,
rendering the right and left eye for stereo viewing becomes the
sole responsibility of the application. In pure immediate mode,
the user must stop the Java 3D renderer, via the
Canvas3D object stopRenderer method, prior to adding the
Canvas3D object to an active View object (that is, one that is
attached to a live ViewPlatform object).
Other Canvas3D methods related to immediate mode rendering are:
getGraphicsContext3D retrieves the immediate-mode
3D graphics context associated with this Canvas3D. It creates a
new graphics context if one does not already exist.
getGraphics2D retrieves the
2D graphics object associated with this Canvas3D. It creates a
new 2D graphics object if one does not already exist.
swap synchronizes and swaps buffers on a
double-buffered canvas for this Canvas3D object. This method
should only be called if the Java 3D renderer has been stopped.
In the normal case, the renderer automatically swaps
the buffer.
Mixed Mode Rendering
Mixing immediate mode and retained or compiled-retained mode
requires more structure than pure immediate mode. In mixed mode,
the Java 3D renderer is running continuously, rendering the scene
graph into the canvas.
Canvas3D methods related to mixed mode rendering are:
preRender called by the Java 3D rendering loop after
clearing the canvas and before any rendering has been done for
this frame.
postRender called by the Java 3D rendering loop after
completing all rendering to the canvas for this frame and before
the buffer swap.
postSwap called by the Java 3D rendering loop after
completing all rendering to the canvas, and all other canvases
associated with this view, for this frame following the
buffer swap.
renderField called by the Java 3D rendering loop
during the execution of the rendering loop. It is called once
for each field (i.e., once per frame on a mono system or once
each for the right eye and left eye on a two-pass stereo system.
The above callback methods are called by the Java 3D rendering system
and should not be called by an application directly.
The basic Java 3D stereo rendering loop,
executed for each Canvas3D, is as follows:
clear canvas (both eyes)
call preRender() // user-supplied method
set left eye view
render opaque scene graph objects
call renderField(FIELD_LEFT) // user-supplied method
render transparent scene graph objects
set right eye view
render opaque scene graph objects again
call renderField(FIELD_RIGHT) // user-supplied method
render transparent scene graph objects again
call postRender() // user-supplied method
synchronize and swap buffers
call postSwap() // user-supplied method
The basic Java 3D monoscopic rendering loop is as follows:
clear canvas
call preRender() // user-supplied method
set view
render opaque scene graph objects
call renderField(FIELD_ALL) // user-supplied method
render transparent scene graph objects
call postRender() // user-supplied method
synchronize and swap buffers
call postSwap() // user-supplied method
In both cases, the entire loop, beginning with clearing the canvas
and ending with swapping the buffers, defines a frame. The application
is given the opportunity to render immediate-mode geometry at any of
the clearly identified spots in the rendering loop. A user specifies
his or her own rendering methods by extending the Canvas3D class and
overriding the preRender, postRender, postSwap, and/or renderField
methods.
Updates to live Geometry, Texture, and ImageComponent objects
in the scene graph are not allowed from any of these callback
methods.
Serialization
Canvas3D does not support serialization. An attempt to
serialize a Canvas3D object will result in an
UnsupportedOperationException being thrown.
Additional Information
For more information, see the
Introduction to the Java 3D API and
View Model
documents.
See Also: Screen3D See Also: View See Also: GraphicsContext3D |
Constructor Summary | |
public | Canvas3D(GraphicsConfiguration graphicsConfiguration) Constructs and initializes a new Canvas3D object that Java 3D
can render into. | public | Canvas3D(GraphicsConfiguration graphicsConfiguration, boolean offScreen) Constructs and initializes a new Canvas3D object that Java 3D
can render into.
Parameters: graphicsConfiguration - a valid GraphicsConfiguration objectthat will be used to create the canvas. |
Method Summary | |
void | accum(Context ctx, float value) | void | accumReturn(Context ctx) | void | activeTextureUnit(Context ctx, int texUnitIndex) | public void | addNotify() Canvas3D uses the addNotify callback to track when it is added
to a container. | void | addTextureResource(int id, Object obj) obj is either TextureRetained or DetailTextureImage
if obj is DetailTextureImage then we just clear
the resourceCreationMask of all the formats
no matter it is create or not since we don't
remember the format information for simplicity. | void | allocateCanvasId() | final void | beginScene() | void | callDisplayList(Context ctx, int id, boolean isNonUniformScale) | void | clear(BackgroundRetained bg, int winWidth, int winHeight) | void | clear(Context ctx, float r, float g, float b, boolean clearStencil) | void | clearAccum(Context ctx) | void | computeViewCache() | Context | createNewContext(Context shareCtx, boolean isSharedCtx) Wrapper for native createNewContext method. | Drawable | createOffScreenBuffer(Context ctx, long display, long fbConfig, int width, int height) | void | createQueryContext() | void | createTexUnitState() | void | ctxUpdateEyeLightingEnable(Context ctx, boolean localEyeLightingEnable) | void | d3dResize() | void | d3dToggle() | boolean | decal1stChildSetup(Context ctx) | void | decalNthChildSetup(Context ctx) | void | decalReset(Context ctx, boolean depthBufferEnable) | static void | destroyContext(long display, Drawable drawable, Context ctx) | void | destroyOffScreenBuffer(Context ctx, long display, long fbConfig, Drawable drawable) | void | disableFog(Context ctx) | void | disableModelClip(Context ctx) | void | doSwap() | void | enableSeparateSpecularColor() Enable separate specular color if it is not overriden by the
property j3d.disableSeparateSpecular. | void | endDisplayList(Context ctx) | void | endOffScreenRendering() | final void | endScene() | void | evaluateActive() | void | evaluateVisiblilty() | void | executeRasterDepth(Context ctx, float posX, float posY, float posZ, int srcOffsetX, int srcOffsetY, int rasterWidth, int rasterHeight, int depthWidth, int depthHeight, int depthType, Object depthData) | void | freeAllDisplayListResources(Context ctx) | void | freeCanvasId() | void | freeContextResources(Renderer rdr, boolean freeBackground, Context ctx) | static void | freeDisplayList(Context ctx, int id) | void | freeResourcesInFreeList(Context ctx) | static void | freeTexture(Context ctx, int id) | public Rectangle | getBounds() | public Rectangle | getBounds(Rectangle rv) | public void | getCenterEyeInImagePlate(Point3d position) Retrieves the actual position of the center eye
in image-plate
coordinates and copies that value into the object provided. | public boolean | getDoubleBufferAvailable() Returns a status flag indicating whether or not double
buffering is available. | public boolean | getDoubleBufferEnable() Returns a status flag indicating whether or not double
buffering is enabled. | public J3DGraphics2D | getGraphics2D() Get the 2D graphics object associated with
this Canvas3D. | public GraphicsContext3D | getGraphicsContext3D() Get the immediate mode 3D graphics context associated with
this Canvas3D. | public int | getHeight() | public void | getImagePlateToVworld(Transform3D t) Retrieves the current ImagePlate coordinates to Virtual World
coordinates transform and places it into the specified object. | public void | getInverseVworldProjection(Transform3D leftInverseProjection, Transform3D rightInverseProjection) Copies the inverse of the current Vworld projection transform
for each eye into the specified Transform3D objects. | int | getLastActiveTexUnit() | void | getLastVworldToImagePlate(Transform3D t) | public void | getLeftEyeInImagePlate(Point3d position) Retrieves the actual position of the left eye
in image-plate
coordinates and copies that value into the object provided. | public void | getLeftManualEyeInImagePlate(Point3d position) Retrieves the position of the user-specified, manual left eye
in image-plate
coordinates and copies that value into the object provided. | public Point | getLocation(Point rv) | public Point | getLocation() | public Point | getLocationOnScreen() | public int | getMonoscopicViewPolicy() Returns policy on how Java 3D generates monoscopic view. | int | getNumActiveTexUnit() | int | getNumCtxLights(Context ctx) | public ImageComponent2D | getOffScreenBuffer() Retrieves the off-screen buffer for this Canvas3D. | public Point | getOffScreenLocation() Retrieves the location of this off-screen Canvas3D. | public Point | getOffScreenLocation(Point rv) Retrieves the location of this off-screen Canvas3D and stores
it in the specified Point object. | public double | getPhysicalHeight() Retrieves the physical height of this canvas window in meters. | public double | getPhysicalWidth() Retrieves the physical width of this canvas window in meters. | public void | getPixelLocationFromImagePlate(Point3d imagePlatePoint, Point2d pixelLocation) Projects the specified point from image plate coordinates
into AWT pixel coordinates. | public void | getPixelLocationInImagePlate(int x, int y, Point3d imagePlatePoint) Computes the position of the specified AWT pixel value
in image-plate
coordinates and copies that value into the object provided. | void | getPixelLocationInImagePlate(double x, double y, double z, Point3d imagePlatePoint) | public void | getPixelLocationInImagePlate(Point2d pixelLocation, Point3d imagePlatePoint) Computes the position of the specified AWT pixel value
in image-plate
coordinates and copies that value into the object provided. | public void | getRightEyeInImagePlate(Point3d position) Retrieves the actual position of the right eye
in image-plate
coordinates and copies that value into the object provided. | public void | getRightManualEyeInImagePlate(Point3d position) Retrieves the position of the user-specified, manual right eye
in image-plate
coordinates and copies that value into the object provided. | public boolean | getSceneAntialiasingAvailable() Returns a status flag indicating whether or not scene
antialiasing is available. | public Screen3D | getScreen3D() Retrieve the Screen3D object that this Canvas3D is attached to. | public Dimension | getSize() | public Dimension | getSize(Dimension rv) | int | getStencilSize() | public boolean | getStereoAvailable() Returns a status flag indicating whether or not stereo
is available. | public boolean | getStereoEnable() Returns a status flag indicating whether or not stereo
is enabled. | public View | getView() Gets view that points to this Canvas3D. | public void | getVworldProjection(Transform3D leftProjection, Transform3D rightProjection) Copies the current Vworld projection transform for each eye
into the specified Transform3D objects. | public void | getVworldToImagePlate(Transform3D t) Retrieves the current Virtual World coordinates to ImagePlate
coordinates transform and places it into the specified object. | public int | getWidth() | public int | getX() | public int | getY() | boolean | hasDoubleBuffer() | boolean | hasSceneAntialiasingAccum() | boolean | hasSceneAntialiasingMultisample() | boolean | hasStereo() | boolean | initTexturemapping(Context ctx, int texWidth, int texHeight, int objectId) | boolean | isFatalError() | public boolean | isOffScreen() Retrieves a flag indicating whether this Canvas3D is an
off-screen canvas. | final public boolean | isRendererRunning() Retrieves the state of the renderer for this Canvas3D object. | public boolean | isShadingLanguageSupported(int shadingLanguage) Returns a flag indicating whether or not the specified shading
language is supported. | final void | makeCtxCurrent() Make the context associated with the specified canvas current. | final void | makeCtxCurrent(Context ctx) Make the specified context current. | final void | makeCtxCurrent(Context ctx, long dpy, Drawable drawable) | void | newDisplayList(Context ctx, int displayListId) | void | notifyD3DPeer(int cmd) | public void | paint(Graphics g) Canvas3D uses the paint callback to track when it is possible to
render into the canvas. | public void | postRender() This routine is called by the Java 3D rendering loop after completing
all rendering to the canvas for this frame and before the buffer swap. | public void | postSwap() This routine is called by the Java 3D rendering loop after completing
all rendering to the canvas, and all other canvases associated with
this view, for this frame following the buffer swap. | public void | preRender() This routine is called by the Java 3D rendering loop after clearing
the canvas and before any rendering has been done for this frame. | final public Map | queryProperties() Returns a read-only Map object containing key-value pairs that define
various properties for this Canvas3D. | void | redraw() This version looks for the view and notifies it. | void | releaseCtx() | public void | removeNotify() Canvas3D uses the removeNotify callback to track when it is removed
from a container. | public void | renderField(int fieldDesc) This routine is called by the Java 3D rendering loop during the
execution of the rendering loop. | public void | renderOffScreenBuffer() Schedules the rendering of a frame into this Canvas3D's
off-screen buffer. | void | reset() | void | resetColoringAttributes(Context ctx, float r, float g, float b, float a, boolean enableLight) | void | resetImmediateRendering(int status) | void | resetLineAttributes(Context ctx) | void | resetPointAttributes(Context ctx) | void | resetPolygonAttributes(Context ctx) | void | resetRendering(int status) | void | resetRenderingAttributes(Context ctx, boolean depthBufferWriteEnableOverride, boolean depthBufferEnableOverride) | void | resetTexCoordGeneration(Context ctx) | void | resetTexture(Context ctx, int texUnitIndex) | void | resetTextureAttributes(Context ctx) | void | resetTextureBin() | void | resetTextureNative(Context ctx, int texUnitIndex) | void | resetTransparency(Context ctx, int geometryType, int polygonMode, boolean lineAA, boolean pointAA) | void | restoreTextureBin() | void | sendEventToBehaviorScheduler(AWTEvent evt) This method overrides AWT's handleEvent class... | void | setBlendColor(Context ctx, float red, float green, float blue, float alpha) | void | setBlendFunc(Context ctx, int src, int dst) | void | setDepthBufferEnableOverride(boolean flag) | void | setDepthBufferWriteEnable(boolean mode) | void | setDepthBufferWriteEnable(Context ctx, boolean mode) | void | setDepthBufferWriteEnableOverride(boolean flag) | public void | setDoubleBufferEnable(boolean flag) Turns double buffering on or off. | void | setFatalError() | void | setFogEnableFlag(Context ctx, boolean enableFlag) | void | setFrustumPlanes(Vector4d[] planes) | void | setFullSceneAntialiasing(Context ctx, boolean enable) | void | setGlobalAlpha(Context ctx, float alpha) | void | setLastActiveTexUnit(int n) | public void | setLeftManualEyeInImagePlate(Point3d position) Sets the position of the manual left eye in image-plate
coordinates. | void | setLightEnables(Context ctx, long enableMask, int maxLights) | void | setModelViewMatrix(Context ctx, double[] viewMatrix, Transform3D mTrans) | void | setModelViewMatrix(Context ctx, double[] viewMatrix, double[] modelMatrix) | public void | setMonoscopicViewPolicy(int policy) Specifies how Java 3D generates monoscopic view. | void | setNumActiveTexUnit(int n) | public void | setOffScreenBuffer(ImageComponent2D buffer) Sets the off-screen buffer for this Canvas3D. | public void | setOffScreenLocation(int x, int y) Sets the location of this off-screen Canvas3D. | public void | setOffScreenLocation(Point p) Sets the location of this off-screen Canvas3D. | void | setProjectionMatrix(Context ctx, Transform3D projTrans) | void | setProjectionMatrix(Context ctx, double[] projMatrix) | void | setRenderMode(Context ctx, int mode, boolean doubleBuffer) | public void | setRightManualEyeInImagePlate(Point3d position) Sets the position of the manual right eye in image-plate
coordinates. | void | setSceneAmbient(Context ctx, float red, float green, float blue) | void | setStateIsUpdated(int bit) | void | setStateToUpdate(int bit, Object bin) | public void | setStereoEnable(boolean flag) Turns stereo on or off. | void | setView(View view) Sets view that points to this Canvas3D. | void | setViewport(Context ctx, int x, int y, int width, int height) | final public void | startRenderer() Start the Java 3D renderer on this Canvas3D object. | final public void | stopRenderer() Stop the Java 3D renderer on this Canvas3D object. | boolean | supportGlobalAlpha() | public void | swap() Synchronize and swap buffers on a double buffered canvas for
this Canvas3D object. | int | swapBuffers(Context ctx, long dpy, Drawable drawable) | void | syncRender(Context ctx, boolean wait) This native method makes sure that the rendering for this canvas
gets done now. | void | textureFill(RasterRetained raster, Point2d winCoord, float mapZ, float alpha) | void | textureFill(BackgroundRetained bg, int winWidth, int winHeight) | void | textureFillBackground(Context ctx, float texMinU, float texMaxU, float texMinV, float texMaxV, float mapMinX, float mapMaxX, float mapMinY, float mapMaxY, boolean useBiliearFilter) | void | textureFillRaster(Context ctx, float texMinU, float texMaxU, float texMinV, float texMaxV, float mapMinX, float mapMaxX, float mapMinY, float mapMaxY, float mapZ, float alpha, boolean useBiliearFilter) | void | texturemapping(Context ctx, int px, int py, int xmin, int ymin, int xmax, int ymax, int texWidth, int texHeight, int rasWidth, int format, int objectId, byte[] image, int winWidth, int winHeight) | void | updateEnvState() | void | updateMaterial(Context ctx, float r, float g, float b, float a) | void | updateSeparateSpecularColorEnable(Context ctx, boolean control) | void | updateState(int dirtyBits) | void | updateTextureForRaster(Texture2DRetained texture) | void | updateViewCache(boolean flag, CanvasViewCache cvc, BoundingBox frustumBBox, boolean doInfinite) Update the view cache associated with this canvas. | static boolean | useCtx(Context ctx, long display, Drawable drawable) | public void | waitForOffScreenRendering() Waits for this Canvas3D's off-screen rendering to be done.
This method will wait until the postSwap method of this
off-screen Canvas3D has completed. |
AMBIENTLIGHT_DIRTY | final static int AMBIENTLIGHT_DIRTY(Code) | | |
ATTRIBUTEBIN_BIT | final static int ATTRIBUTEBIN_BIT(Code) | | |
ATTRIBUTEBIN_DIRTY | final static int ATTRIBUTEBIN_DIRTY(Code) | | |
BACKGROUND_DIRTY | final static int BACKGROUND_DIRTY(Code) | | |
BACKGROUND_IMAGE_DIRTY | final static int BACKGROUND_IMAGE_DIRTY(Code) | | |
COLORINGATTRS_DIRTY | final static int COLORINGATTRS_DIRTY(Code) | | |
ENVIRONMENTSET_BIT | final static int ENVIRONMENTSET_BIT(Code) | | |
ENV_STATE_MASK | static int ENV_STATE_MASK(Code) | | |
EXT_ABGR | final static int EXT_ABGR(Code) | | |
EXT_BGR | final static int EXT_BGR(Code) | | |
EYE_IN_IMAGE_PLATE_DIRTY | final static int EYE_IN_IMAGE_PLATE_DIRTY(Code) | | |
FIELD_ALL | final public static int FIELD_ALL(Code) | | Specifies a single-field rendering loop.
|
FIELD_LEFT | final public static int FIELD_LEFT(Code) | | Specifies the left field of a field-sequential stereo rendering loop.
A left field always precedes a right field.
|
FIELD_RIGHT | final public static int FIELD_RIGHT(Code) | | Specifies the right field of a field-sequential stereo rendering loop.
A right field always follows a left field.
|
FOG_DIRTY | final static int FOG_DIRTY(Code) | | |
LIGHTBIN_BIT | final static int LIGHTBIN_BIT(Code) | | |
LIGHTBIN_DIRTY | final static int LIGHTBIN_DIRTY(Code) | | |
LIGHTENABLES_DIRTY | final static int LIGHTENABLES_DIRTY(Code) | | |
LINEATTRS_DIRTY | final static int LINEATTRS_DIRTY(Code) | | |
MATERIAL_DIRTY | final static int MATERIAL_DIRTY(Code) | | |
MODELCLIP_DIRTY | final static int MODELCLIP_DIRTY(Code) | | |
MONOSCOPIC_VIEW_POLICY_DIRTY | final static int MONOSCOPIC_VIEW_POLICY_DIRTY(Code) | | |
MOVED_OR_RESIZED_DIRTY | final static int MOVED_OR_RESIZED_DIRTY(Code) | | |
MULTISAMPLE | final static int MULTISAMPLE(Code) | | |
NOCHANGE | final static int NOCHANGE(Code) | | |
POINTATTRS_DIRTY | final static int POINTATTRS_DIRTY(Code) | | |
POLYGONATTRS_DIRTY | final static int POLYGONATTRS_DIRTY(Code) | | |
RECREATEDDRAW | final static int RECREATEDDRAW(Code) | | |
RENDERER_DIRTY_IDX | final static int RENDERER_DIRTY_IDX(Code) | | |
RENDERMOLECULE_BIT | final static int RENDERMOLECULE_BIT(Code) | | |
RENDERMOLECULE_DIRTY | final static int RENDERMOLECULE_DIRTY(Code) | | |
RENDER_BIN_DIRTY_IDX | final static int RENDER_BIN_DIRTY_IDX(Code) | | |
RESETSURFACE | final static int RESETSURFACE(Code) | | |
RESIZE | final static int RESIZE(Code) | | |
SHADERBIN_BIT | final static int SHADERBIN_BIT(Code) | | |
STEREO_DIRTY | final static int STEREO_DIRTY(Code) | | |
SUN_GLOBAL_ALPHA | final static int SUN_GLOBAL_ALPHA(Code) | | |
TEXTUREATTRIBUTES_DIRTY | final static int TEXTUREATTRIBUTES_DIRTY(Code) | | |
TEXTUREBIN_BIT | final static int TEXTUREBIN_BIT(Code) | | |
TEXTUREBIN_DIRTY | final static int TEXTUREBIN_DIRTY(Code) | | |
TEXTURE_3D | final static int TEXTURE_3D(Code) | | |
TEXTURE_ANISOTROPIC_FILTER | final static int TEXTURE_ANISOTROPIC_FILTER(Code) | | |
TEXTURE_AUTO_MIPMAP_GENERATION | final static int TEXTURE_AUTO_MIPMAP_GENERATION(Code) | | |
TEXTURE_COLOR_TABLE | final static int TEXTURE_COLOR_TABLE(Code) | | |
TEXTURE_COMBINE | final static int TEXTURE_COMBINE(Code) | | |
TEXTURE_COMBINE_DOT3 | final static int TEXTURE_COMBINE_DOT3(Code) | | |
TEXTURE_COMBINE_SUBTRACT | final static int TEXTURE_COMBINE_SUBTRACT(Code) | | |
TEXTURE_CUBE_MAP | final static int TEXTURE_CUBE_MAP(Code) | | |
TEXTURE_DETAIL | final static int TEXTURE_DETAIL(Code) | | |
TEXTURE_FILTER4 | final static int TEXTURE_FILTER4(Code) | | |
TEXTURE_LERP | final static int TEXTURE_LERP(Code) | | |
TEXTURE_LOD_OFFSET | final static int TEXTURE_LOD_OFFSET(Code) | | |
TEXTURE_LOD_RANGE | final static int TEXTURE_LOD_RANGE(Code) | | |
TEXTURE_MULTI_TEXTURE | final static int TEXTURE_MULTI_TEXTURE(Code) | | |
TEXTURE_NON_POWER_OF_TWO | final static int TEXTURE_NON_POWER_OF_TWO(Code) | | |
TEXTURE_REGISTER_COMBINERS | final static int TEXTURE_REGISTER_COMBINERS(Code) | | |
TEXTURE_SHARPEN | final static int TEXTURE_SHARPEN(Code) | | |
TOGGLEFULLSCREEN | final static int TOGGLEFULLSCREEN(Code) | | |
TRANSPARENCYATTRS_DIRTY | final static int TRANSPARENCYATTRS_DIRTY(Code) | | |
TRANSPARENCY_BIT | final static int TRANSPARENCY_BIT(Code) | | |
VIEW_INFO_DIRTY | final static int VIEW_INFO_DIRTY(Code) | | |
VIEW_MATRIX_DIRTY | final static int VIEW_MATRIX_DIRTY(Code) | | |
actualStencilSize | int actualStencilSize(Code) | | |
anisotropicDegreeMax | float anisotropicDegreeMax(Code) | | |
antialiasingSet | boolean antialiasingSet(Code) | | |
canvasDirty | int canvasDirty(Code) | | Dirty bit to determine if the NodeComponent needs to be re-sent
down to the underlying API
|
ctxChanged | boolean ctxChanged(Code) | | |
ctxEyeLightingEnable | boolean ctxEyeLightingEnable(Code) | | |
ctxReset | boolean ctxReset(Code) | | |
ctxTimeStamp | volatile long ctxTimeStamp(Code) | | |
currentLights | LightRetained[] currentLights(Code) | | The list of lights that are currently being represented in the native
graphics context.
|
cvDirtyMask | int[] cvDirtyMask(Code) | | |
depthBufferEnableOverride | boolean depthBufferEnableOverride(Code) | | Flag to override RenderAttributes.depthBufferEnable
|
depthBufferWriteEnable | boolean depthBufferWriteEnable(Code) | | |
depthBufferWriteEnableOverride | boolean depthBufferWriteEnableOverride(Code) | | Flag to override RenderAttributes.depthBufferWriteEnable
|
dirtyDisplayList | boolean dirtyDisplayList(Code) | | |
doubleBufferAvailable | boolean doubleBufferAvailable(Code) | | |
doubleBufferEnable | boolean doubleBufferEnable(Code) | | |
enableLighting | boolean enableLighting(Code) | | |
enableMask | long enableMask(Code) | | |
extensionsSupported | int extensionsSupported(Code) | | |
firstPaintCalled | boolean firstPaintCalled(Code) | | |
frameCount | int frameCount(Code) | | |
fullScreenMode | boolean fullScreenMode(Code) | | |
fullscreenHeight | int fullscreenHeight(Code) | | |
fullscreenWidth | int fullscreenWidth(Code) | | |
imageReady | boolean imageReady(Code) | | |
isRunning | volatile boolean isRunning(Code) | | |
isRunningStatus | volatile boolean isRunningStatus(Code) | | |
lastActiveTexUnit | int lastActiveTexUnit(Code) | | |
leftManualEyeInImagePlate | Point3d leftManualEyeInImagePlate(Code) | | |
lightBin | LightBin lightBin(Code) | | The RenderBin bundle references used to decide what the underlying
context contains.
|
lightChanged | boolean lightChanged(Code) | | |
manualRendering | boolean manualRendering(Code) | | |
maxAvailableTextureUnits | int maxAvailableTextureUnits(Code) | | |
maxCombinedTextureImageUnits | int maxCombinedTextureImageUnits(Code) | | |
maxTexCoordSets | int maxTexCoordSets(Code) | | |
maxTextureImageUnits | int maxTextureImageUnits(Code) | | |
maxTextureUnits | int maxTextureUnits(Code) | | |
maxVertexAttrs | int maxVertexAttrs(Code) | | |
maxVertexTextureImageUnits | int maxVertexTextureImageUnits(Code) | | |
monoscopicViewPolicy | int monoscopicViewPolicy(Code) | | |
multiTexAccelerated | boolean multiTexAccelerated(Code) | | |
needToRebuildDisplayList | boolean needToRebuildDisplayList(Code) | | |
numActiveTexUnit | int numActiveTexUnit(Code) | | |
offScreen | boolean offScreen(Code) | | |
offScreenBufferInfo | long offScreenBufferInfo(Code) | | |
offScreenBufferPending | volatile boolean offScreenBufferPending(Code) | | |
offScreenRendering | volatile boolean offScreenRendering(Code) | | |
raIsVisible | boolean raIsVisible(Code) | | |
reEvaluateCanvasCmd | int reEvaluateCanvasCmd(Code) | | |
requestedStencilSize | int requestedStencilSize(Code) | | |
resizeGraphics2D | boolean resizeGraphics2D(Code) | | |
rightManualEyeInImagePlate | Point3d rightManualEyeInImagePlate(Code) | | |
rightStereoPass | boolean rightStereoPass(Code) | | |
sceneAmbient | Color3f sceneAmbient(Code) | | |
sceneAntialiasingAvailable | boolean sceneAntialiasingAvailable(Code) | | |
sceneAntialiasingMultiSamplesAvailable | boolean sceneAntialiasingMultiSamplesAvailable(Code) | | |
shadingLanguageCg | boolean shadingLanguageCg(Code) | | |
shadingLanguageGLSL | boolean shadingLanguageGLSL(Code) | | |
stateUpdateMask | int stateUpdateMask(Code) | | |
stereoAvailable | boolean stereoAvailable(Code) | | |
stereoEnable | boolean stereoEnable(Code) | | |
swapDone | boolean swapDone(Code) | | |
systemStencilAvailable | boolean systemStencilAvailable(Code) | | |
texLinearMode | boolean texLinearMode(Code) | | Set to true when any one of texture state use
Texture Generation linear mode. This is used for D3D
temporary turn displayList off and do its own coordinate
generation since D3D don't support it.
TODO aces : is this still true in DX9?
|
texture | TextureRetained texture(Code) | | These cached values are only used in Pure Immediate and Mixed Mode rendering
|
texture3DDepthMax | int texture3DDepthMax(Code) | | |
texture3DHeightMax | int texture3DHeightMax(Code) | | |
texture3DWidthMax | int texture3DWidthMax(Code) | | |
textureBoundaryWidthMax | int textureBoundaryWidthMax(Code) | | |
textureColorTableSize | int textureColorTableSize(Code) | | |
textureExtendedFeatures | int textureExtendedFeatures(Code) | | |
textureHeightMax | int textureHeightMax(Code) | | |
textureWidthMax | int textureWidthMax(Code) | | |
useDoubleBuffer | boolean useDoubleBuffer(Code) | | |
useSharedCtx | boolean useSharedCtx(Code) | | |
useStereo | boolean useStereo(Code) | | |
userStencilAvailable | boolean userStencilAvailable(Code) | | |
validCanvas | boolean validCanvas(Code) | | |
validCtx | boolean validCtx(Code) | | |
vfPlanesValid | boolean vfPlanesValid(Code) | | |
Canvas3D | public Canvas3D(GraphicsConfiguration graphicsConfiguration)(Code) | | Constructs and initializes a new Canvas3D object that Java 3D
can render into. The following Canvas3D attributes are initialized
to default values as shown:
left manual eye in image plate : (0.142, 0.135, 0.4572)
right manual eye in image plate : (0.208, 0.135, 0.4572)
stereo enable : true
double buffer enable : true
monoscopic view policy : View.CYCLOPEAN_EYE_VIEW
off-screen mode : false
off-screen buffer : null
off-screen location : (0,0)
Parameters: graphicsConfiguration - a valid GraphicsConfiguration object thatwill be used to create the canvas. This object should not be null andshould be created using a GraphicsConfigTemplate3D or thegetPreferredConfiguration() method of the SimpleUniverse utility. Forbackward compatibility with earlier versions of Java 3D, a null ordefault GraphicsConfiguration will still work when used to create aCanvas3D on the default screen, but an error message will be printed.A NullPointerException or IllegalArgumentException will be thrown in asubsequent release. exception: IllegalArgumentException - if the specifiedGraphicsConfiguration does not support 3D rendering |
Canvas3D | public Canvas3D(GraphicsConfiguration graphicsConfiguration, boolean offScreen)(Code) | | Constructs and initializes a new Canvas3D object that Java 3D
can render into.
Parameters: graphicsConfiguration - a valid GraphicsConfiguration objectthat will be used to create the canvas. This must be created eitherwith a GraphicsConfigTemplate3D or by using thegetPreferredConfiguration() method of the SimpleUniverse utility. Parameters: offScreen - a flag that indicates whether this canvas isan off-screen 3D rendering canvas. Note that if offScreenis set to true, this Canvas3D object cannot be used for normalrendering; it should not be added to any Container object. exception: NullPointerException - if the GraphicsConfigurationis null. exception: IllegalArgumentException - if the specifiedGraphicsConfiguration does not support 3D rendering since: Java 3D 1.2 |
activeTextureUnit | void activeTextureUnit(Context ctx, int texUnitIndex)(Code) | | |
addNotify | public void addNotify()(Code) | | Canvas3D uses the addNotify callback to track when it is added
to a container. Subclasses of Canvas3D that override this
method need to call super.addNotify() in their addNotify() method for Java 3D
to function properly.
|
addTextureResource | void addTextureResource(int id, Object obj)(Code) | | obj is either TextureRetained or DetailTextureImage
if obj is DetailTextureImage then we just clear
the resourceCreationMask of all the formats
no matter it is create or not since we don't
remember the format information for simplicity.
We don't need to check duplicate value of id in the
table since this procedure is invoke only when id
of texture is -1 one time only.
This is always call from Renderer thread.
|
allocateCanvasId | void allocateCanvasId()(Code) | | |
beginScene | final void beginScene()(Code) | | |
callDisplayList | void callDisplayList(Context ctx, int id, boolean isNonUniformScale)(Code) | | |
clear | void clear(Context ctx, float r, float g, float b, boolean clearStencil)(Code) | | |
computeViewCache | void computeViewCache()(Code) | | |
createNewContext | Context createNewContext(Context shareCtx, boolean isSharedCtx)(Code) | | Wrapper for native createNewContext method.
|
createOffScreenBuffer | Drawable createOffScreenBuffer(Context ctx, long display, long fbConfig, int width, int height)(Code) | | |
createQueryContext | void createQueryContext()(Code) | | |
createTexUnitState | void createTexUnitState()(Code) | | |
ctxUpdateEyeLightingEnable | void ctxUpdateEyeLightingEnable(Context ctx, boolean localEyeLightingEnable)(Code) | | |
d3dResize | void d3dResize()(Code) | | |
d3dToggle | void d3dToggle()(Code) | | |
decalReset | void decalReset(Context ctx, boolean depthBufferEnable)(Code) | | |
destroyOffScreenBuffer | void destroyOffScreenBuffer(Context ctx, long display, long fbConfig, Drawable drawable)(Code) | | |
enableSeparateSpecularColor | void enableSeparateSpecularColor()(Code) | | Enable separate specular color if it is not overriden by the
property j3d.disableSeparateSpecular.
|
endOffScreenRendering | void endOffScreenRendering()(Code) | | |
endScene | final void endScene()(Code) | | |
evaluateActive | void evaluateActive()(Code) | | |
evaluateVisiblilty | void evaluateVisiblilty()(Code) | | |
executeRasterDepth | void executeRasterDepth(Context ctx, float posX, float posY, float posZ, int srcOffsetX, int srcOffsetY, int rasterWidth, int rasterHeight, int depthWidth, int depthHeight, int depthType, Object depthData)(Code) | | |
freeAllDisplayListResources | void freeAllDisplayListResources(Context ctx)(Code) | | |
freeCanvasId | void freeCanvasId()(Code) | | |
freeDisplayList | static void freeDisplayList(Context ctx, int id)(Code) | | |
freeResourcesInFreeList | void freeResourcesInFreeList(Context ctx)(Code) | | |
getCenterEyeInImagePlate | public void getCenterEyeInImagePlate(Point3d position)(Code) | | Retrieves the actual position of the center eye
in image-plate
coordinates and copies that value into the object provided.
The center eye is the fictional eye half-way between the left and
right eye.
This value is a function of the windowEyepointPolicy, the tracking
enable flag, and the manual right and left eye positions.
Parameters: position - the object that will receive the position See Also: Canvas3D.setMonoscopicViewPolicy |
getDoubleBufferAvailable | public boolean getDoubleBufferAvailable()(Code) | | Returns a status flag indicating whether or not double
buffering is available.
This is equivalent to:
((Boolean)queryProperties().
get("doubleBufferAvailable")).
booleanValue()
a flag indicating whether double buffering is available. |
getDoubleBufferEnable | public boolean getDoubleBufferEnable()(Code) | | Returns a status flag indicating whether or not double
buffering is enabled.
a flag indicating if double buffering is enabled. |
getGraphics2D | public J3DGraphics2D getGraphics2D()(Code) | | Get the 2D graphics object associated with
this Canvas3D. A new 2D graphics object is created if one does
not already exist.
a Graphics2D object that can be used for Java 2Drendering into this Canvas3D. since: Java 3D 1.2 |
getGraphicsContext3D | public GraphicsContext3D getGraphicsContext3D()(Code) | | Get the immediate mode 3D graphics context associated with
this Canvas3D. A new graphics context object is created if one does
not already exist.
a GraphicsContext3D object that can be used for immediatemode rendering to this Canvas3D. |
getHeight | public int getHeight()(Code) | | |
getImagePlateToVworld | public void getImagePlateToVworld(Transform3D t)(Code) | | Retrieves the current ImagePlate coordinates to Virtual World
coordinates transform and places it into the specified object.
Parameters: t - the Transform3D object that will receive thetransform |
getInverseVworldProjection | public void getInverseVworldProjection(Transform3D leftInverseProjection, Transform3D rightInverseProjection)(Code) | | Copies the inverse of the current Vworld projection transform
for each eye into the specified Transform3D objects. This
transform takes points in clipping coordinates, which are in
the range [-1,1] in X, Y, and Z after
clipping and perspective division, and transforms them into
virtual world coordinates.
In monoscopic mode, the same inverse projection transform will
be copied into both the right and left eye Transform3D objects.
Parameters: leftInverseProjection - the Transform3D object that willreceive a copy of the current inverse projection transform forthe left eye. Parameters: rightInverseProjection - the Transform3D object that willreceive a copy of the current inverse projection transform forthe right eye. since: Java 3D 1.3 |
getLastActiveTexUnit | int getLastActiveTexUnit()(Code) | | |
getLeftEyeInImagePlate | public void getLeftEyeInImagePlate(Point3d position)(Code) | | Retrieves the actual position of the left eye
in image-plate
coordinates and copies that value into the object provided.
This value is a function of the windowEyepointPolicy, the tracking
enable flag, and the manual left eye position.
Parameters: position - the object that will receive the position |
getLeftManualEyeInImagePlate | public void getLeftManualEyeInImagePlate(Point3d position)(Code) | | Retrieves the position of the user-specified, manual left eye
in image-plate
coordinates and copies that value into the object provided.
Parameters: position - the object that will receive the position |
getLocationOnScreen | public Point getLocationOnScreen()(Code) | | |
getMonoscopicViewPolicy | public int getMonoscopicViewPolicy()(Code) | | Returns policy on how Java 3D generates monoscopic view.
policy one of View.LEFT_EYE_VIEW, View.RIGHT_EYE_VIEW orView.CYCLOPEAN_EYE_VIEW. since: Java 3D 1.2 |
getNumActiveTexUnit | int getNumActiveTexUnit()(Code) | | |
getOffScreenBuffer | public ImageComponent2D getOffScreenBuffer()(Code) | | Retrieves the off-screen buffer for this Canvas3D.
the current off-screen buffer for this Canvas3D. exception: IllegalStateException - if this Canvas3D is not inoff-screen mode. since: Java 3D 1.2 |
getOffScreenLocation | public Point getOffScreenLocation()(Code) | | Retrieves the location of this off-screen Canvas3D. The
location is the upper-left corner of the Canvas3D relative to
the upper-left corner of the corresponding off-screen Screen3D.
The function of this method is similar to that of
Component.getLocation for on-screen Canvas3D
objects.
a new point representing the upper-left corner of thelocation of this off-screen Canvas3D. exception: IllegalStateException - if this Canvas3D is not inoff-screen mode. since: Java 3D 1.2 |
getOffScreenLocation | public Point getOffScreenLocation(Point rv)(Code) | | Retrieves the location of this off-screen Canvas3D and stores
it in the specified Point object. The location is the
upper-left corner of the Canvas3D relative to the upper-left
corner of the corresponding off-screen Screen3D. The function
of this method is similar to that of
Component.getLocation for on-screen Canvas3D
objects. This version of getOffScreenLocation is
useful if the caller wants to avoid allocating a new Point
object on the heap.
Parameters: rv - Point object into which the upper-left corner of thelocation of this off-screen Canvas3D is copied.If rv is null, a new Point is allocated. rv exception: IllegalStateException - if this Canvas3D is not inoff-screen mode. since: Java 3D 1.2 |
getPhysicalHeight | public double getPhysicalHeight()(Code) | | Retrieves the physical height of this canvas window in meters.
the physical window height in meters. |
getPhysicalWidth | public double getPhysicalWidth()(Code) | | Retrieves the physical width of this canvas window in meters.
the physical window width in meters. |
getPixelLocationFromImagePlate | public void getPixelLocationFromImagePlate(Point3d imagePlatePoint, Point2d pixelLocation)(Code) | | Projects the specified point from image plate coordinates
into AWT pixel coordinates. The AWT pixel coordinates are
copied into the object provided.
Parameters: imagePlatePoint - the position inphysical image plate coordinates (relative to the lower-leftcorner of the screen). Parameters: pixelLocation - the object that will receive the coordinatesof the pixel relative to the upper-left hand corner of the window. since: Java 3D 1.2 |
getPixelLocationInImagePlate | public void getPixelLocationInImagePlate(int x, int y, Point3d imagePlatePoint)(Code) | | Computes the position of the specified AWT pixel value
in image-plate
coordinates and copies that value into the object provided.
Parameters: x - the X coordinate of the pixel relative to the upper-lefthand corner of the window. Parameters: y - the Y coordinate of the pixel relative to the upper-lefthand corner of the window. Parameters: imagePlatePoint - the object that will receive the position inphysical image plate coordinates (relative to the lower-leftcorner of the screen). |
getPixelLocationInImagePlate | void getPixelLocationInImagePlate(double x, double y, double z, Point3d imagePlatePoint)(Code) | | |
getPixelLocationInImagePlate | public void getPixelLocationInImagePlate(Point2d pixelLocation, Point3d imagePlatePoint)(Code) | | Computes the position of the specified AWT pixel value
in image-plate
coordinates and copies that value into the object provided.
Parameters: pixelLocation - the coordinates of the pixel relative tothe upper-left hand corner of the window. Parameters: imagePlatePoint - the object that will receive the position inphysical image plate coordinates (relative to the lower-leftcorner of the screen). since: Java 3D 1.2 |
getRightEyeInImagePlate | public void getRightEyeInImagePlate(Point3d position)(Code) | | Retrieves the actual position of the right eye
in image-plate
coordinates and copies that value into the object provided.
This value is a function of the windowEyepointPolicy, the tracking
enable flag, and the manual right eye position.
Parameters: position - the object that will receive the position |
getRightManualEyeInImagePlate | public void getRightManualEyeInImagePlate(Point3d position)(Code) | | Retrieves the position of the user-specified, manual right eye
in image-plate
coordinates and copies that value into the object provided.
Parameters: position - the object that will receive the position |
getSceneAntialiasingAvailable | public boolean getSceneAntialiasingAvailable()(Code) | | Returns a status flag indicating whether or not scene
antialiasing is available.
This is equivalent to:
((Boolean)queryProperties().
get("sceneAntialiasingAvailable")).
booleanValue()
a flag indicating whether scene antialiasing is available. |
getScreen3D | public Screen3D getScreen3D()(Code) | | Retrieve the Screen3D object that this Canvas3D is attached to.
If this Canvas3D is an off-screen buffer, a new Screen3D object
is created corresponding to the off-screen buffer.
the 3D screen object that this Canvas3D is attached to |
getStencilSize | int getStencilSize()(Code) | | |
getStereoAvailable | public boolean getStereoAvailable()(Code) | | Returns a status flag indicating whether or not stereo
is available.
This is equivalent to:
((Boolean)queryProperties().
get("stereoAvailable")).
booleanValue()
a flag indicating whether stereo is available |
getStereoEnable | public boolean getStereoEnable()(Code) | | Returns a status flag indicating whether or not stereo
is enabled.
a flag indicating whether stereo is enabled |
getView | public View getView()(Code) | | Gets view that points to this Canvas3D.
view object that points to this Canvas3D |
getVworldProjection | public void getVworldProjection(Transform3D leftProjection, Transform3D rightProjection)(Code) | | Copies the current Vworld projection transform for each eye
into the specified Transform3D objects. This transform takes
points in virtual world coordinates and projects them into
clipping coordinates, which are in the range [-1,1] in
X, Y, and Z after clipping and perspective
division.
In monoscopic mode, the same projection transform will be
copied into both the right and left eye Transform3D objects.
Parameters: leftProjection - the Transform3D object that will receivea copy of the current projection transform for the left eye. Parameters: rightProjection - the Transform3D object that will receivea copy of the current projection transform for the right eye. since: Java 3D 1.3 |
getVworldToImagePlate | public void getVworldToImagePlate(Transform3D t)(Code) | | Retrieves the current Virtual World coordinates to ImagePlate
coordinates transform and places it into the specified object.
Parameters: t - the Transform3D object that will receive thetransform |
getWidth | public int getWidth()(Code) | | |
hasDoubleBuffer | boolean hasDoubleBuffer()(Code) | | |
hasSceneAntialiasingAccum | boolean hasSceneAntialiasingAccum()(Code) | | |
hasSceneAntialiasingMultisample | boolean hasSceneAntialiasingMultisample()(Code) | | |
hasStereo | boolean hasStereo()(Code) | | |
initTexturemapping | boolean initTexturemapping(Context ctx, int texWidth, int texHeight, int objectId)(Code) | | |
isFatalError | boolean isFatalError()(Code) | | |
isOffScreen | public boolean isOffScreen()(Code) | | Retrieves a flag indicating whether this Canvas3D is an
off-screen canvas.
true if this Canvas3D is an off-screen canvas;false if this is an on-screen canvas. since: Java 3D 1.2 |
isRendererRunning | final public boolean isRendererRunning()(Code) | | Retrieves the state of the renderer for this Canvas3D object.
the state of the renderer since: Java 3D 1.2 |
isShadingLanguageSupported | public boolean isShadingLanguageSupported(int shadingLanguage)(Code) | | Returns a flag indicating whether or not the specified shading
language is supported. A ShaderError will be generated if an
unsupported shading language is used.
Parameters: shadingLanguage - the shading language being queried, one of:Shader.SHADING_LANGUAGE_GLSL orShader.SHADING_LANGUAGE_CG . true if the specified shading language is supported,false otherwise. since: Java 3D 1.4 |
makeCtxCurrent | final void makeCtxCurrent()(Code) | | Make the context associated with the specified canvas current.
|
makeCtxCurrent | final void makeCtxCurrent(Context ctx)(Code) | | Make the specified context current.
|
newDisplayList | void newDisplayList(Context ctx, int displayListId)(Code) | | |
notifyD3DPeer | void notifyD3DPeer(int cmd)(Code) | | |
paint | public void paint(Graphics g)(Code) | | Canvas3D uses the paint callback to track when it is possible to
render into the canvas. Subclasses of Canvas3D that override this
method need to call super.paint() in their paint method for Java 3D
to function properly.
Parameters: g - the graphics context |
postRender | public void postRender()(Code) | | This routine is called by the Java 3D rendering loop after completing
all rendering to the canvas for this frame and before the buffer swap.
Applications that wish to perform operations in the rendering loop,
following any actual rendering may override this function.
Updates to live Geometry, Texture, and ImageComponent objects
in the scene graph are not allowed from this method.
NOTE: Applications should not call this method.
|
postSwap | public void postSwap()(Code) | | This routine is called by the Java 3D rendering loop after completing
all rendering to the canvas, and all other canvases associated with
this view, for this frame following the buffer swap.
Applications that wish to perform operations at the very
end of the rendering loop may override this function.
In off-screen mode, all rendering is copied to the off-screen
buffer before this method is called.
Updates to live Geometry, Texture, and ImageComponent objects
in the scene graph are not allowed from this method.
NOTE: Applications should not call this method.
|
preRender | public void preRender()(Code) | | This routine is called by the Java 3D rendering loop after clearing
the canvas and before any rendering has been done for this frame.
Applications that wish to perform operations in the rendering loop,
prior to any actual rendering may override this function.
Updates to live Geometry, Texture, and ImageComponent objects
in the scene graph are not allowed from this method.
NOTE: Applications should not call this method.
|
queryProperties | final public Map queryProperties()(Code) | | Returns a read-only Map object containing key-value pairs that define
various properties for this Canvas3D. All of the keys are
String objects. The values are key-specific, but most will be
Boolean, Integer, Float, Double, or String objects.
The currently defined keys are:
Key (String) |
Value Type |
shadingLanguageCg |
Boolean |
shadingLanguageGLSL |
Boolean |
doubleBufferAvailable |
Boolean |
stereoAvailable |
Boolean |
sceneAntialiasingAvailable |
Boolean |
sceneAntialiasingNumPasses |
Integer |
stencilSize |
Integer |
texture3DAvailable |
Boolean |
textureColorTableSize |
Integer |
textureLodRangeAvailable |
Boolean |
textureLodOffsetAvailable |
Boolean |
textureWidthMax |
Integer |
textureHeightMax |
Integer |
textureBoundaryWidthMax |
Integer |
textureEnvCombineAvailable |
Boolean |
textureCombineDot3Available |
Boolean |
textureCombineSubtractAvailable |
Boolean |
textureCoordSetsMax |
Integer |
textureUnitStateMax |
Integer |
textureImageUnitsMax |
Integer |
textureImageUnitsVertexMax |
Integer |
textureImageUnitsCombinedMax |
Integer |
textureCubeMapAvailable |
Boolean |
textureDetailAvailable |
Boolean |
textureSharpenAvailable |
Boolean |
textureFilter4Available |
Boolean |
textureAnisotropicFilterDegreeMax |
Float |
textureNonPowerOfTwoAvailable |
Boolean |
vertexAttrsMax |
Integer |
compressedGeometry.majorVersionNumber |
Integer |
compressedGeometry.minorVersionNumber |
Integer |
compressedGeometry.minorMinorVersionNumber |
Integer |
native.version |
String |
The descriptions of the values returned for each key are as follows:
-
shadingLanguageCg
A Boolean indicating whether or not Cg shading Language
is available for this Canvas3D.
-
shadingLanguageGLSL
A Boolean indicating whether or not GLSL shading Language
is available for this Canvas3D.
-
doubleBufferAvailable
A Boolean indicating whether or not double buffering
is available for this Canvas3D. This is equivalent to
the getDoubleBufferAvailable method. If this flag is false,
the Canvas3D will be rendered in single buffer mode; requests
to enable double buffering will be ignored.
-
stereoAvailable
A Boolean indicating whether or not stereo
is available for this Canvas3D. This is equivalent to
the getStereoAvailable method. If this flag is false,
the Canvas3D will be rendered in monoscopic mode; requests
to enable stereo will be ignored.
-
sceneAntialiasingAvailable
A Boolean indicating whether or not scene antialiasing
is available for this Canvas3D. This is equivalent to
the getSceneAntialiasingAvailable method. If this flag is false,
requests to enable scene antialiasing will be ignored.
-
sceneAntialiasingNumPasses
An Integer indicating the number of passes scene antialiasing
requires to render a single frame for this Canvas3D.
If this value is zero, scene antialiasing is not supported.
If this value is one, multisampling antialiasing is used.
Otherwise, the number indicates the number of rendering passes
needed.
-
stencilSize
An Integer indicating the number of stencil bits that are available
for this Canvas3D.
-
texture3DAvailable
A Boolean indicating whether or not 3D Texture mapping
is available for this Canvas3D. If this flag is false,
3D texture mapping is either not supported by the underlying
rendering layer or is otherwise unavailable for this
particular Canvas3D. All use of 3D texture mapping will be
ignored in this case.
-
textureColorTableSize
An Integer indicating the maximum size of the texture color
table for this Canvas3D. If the size is 0, the texture
color table is either not supported by the underlying rendering
layer or is otherwise unavailable for this particular
Canvas3D. An attempt to use a texture color table larger than
textureColorTableSize will be ignored; no color lookup will be
performed.
-
textureLodRangeAvailable
A Boolean indicating whether or not setting only a subset of mipmap
levels and setting a range of texture LOD are available for this
Canvas3D.
If it indicates false, setting a subset of mipmap levels and
setting a texture LOD range are not supported by the underlying
rendering layer, and an attempt to set base level, or maximum level,
or minimum LOD, or maximum LOD will be ignored. In this case,
images for all mipmap levels must be defined for the texture to be
valid.
-
textureLodOffsetAvailable
A Boolean indicating whether or not setting texture LOD offset is
available for this Canvas3D. If it indicates false, setting
texture LOD offset is not supported by the underlying rendering
layer, and an attempt to set the texture LOD offset will be ignored.
-
textureWidthMax
An Integer indicating the maximum texture width supported by
this Canvas3D. If the width of a texture exceeds the maximum texture
width for a Canvas3D, then the texture will be effectively disabled
for that Canvas3D.
-
textureHeightMax
An Integer indicating the maximum texture height supported by
this Canvas3D. If the height of a texture exceeds the maximum texture
height for a Canvas3D, then the texture will be effectively disabled
for that Canvas3D.
-
textureBoundaryWidthMax
An Integer indicating the maximum texture boundary width
supported by the underlying rendering layer for this Canvas3D. If
the maximum supported texture boundary width is 0, then texture
boundary is not supported by the underlying rendering layer.
An attempt to specify a texture boundary width > the
textureBoundaryWidthMax will effectively disable the texture.
-
textureEnvCombineAvailable
A Boolean indicating whether or not texture environment combine
operation is supported for this Canvas3D. If it indicates false,
then texture environment combine is not supported by the
underlying rendering layer, and an attempt to specify COMBINE
as the texture mode will be ignored. The texture mode in effect
will be REPLACE.
-
textureCombineDot3Available
A Boolean indicating whether or not texture combine mode
COMBINE_DOT3 is
supported for this Canvas3D. If it indicates false, then
texture combine mode COMBINE_DOT3 is not supported by
the underlying rendering layer, and an attempt to specify
COMBINE_DOT3 as the texture combine mode will be ignored.
The texture combine mode in effect will be COMBINE_REPLACE.
-
textureCombineSubtractAvailable
A Boolean indicating whether or not texture combine mode
COMBINE_SUBTRACT is
supported for this Canvas3D. If it indicates false, then
texture combine mode COMBINE_SUBTRACT is not supported by
the underlying rendering layer, and an attempt to specify
COMBINE_SUBTRACT as the texture combine mode will be ignored.
The texture combine mode in effect will be COMBINE_REPLACE.
-
textureCoordSetsMax
An Integer indicating the maximum number of texture coordinate sets
supported by the underlying rendering layer.
-
textureUnitStateMax
An Integer indicating the maximum number of fixed-function texture units
supported by the underlying rendering layer. If the number of
application-sepcified texture unit states exceeds the maximum number
for a Canvas3D, and the fixed-function rendering pipeline is used, then
the texture will be effectively disabled for that Canvas3D.
-
textureImageUnitsMax
An Integer indicating the maximum number of texture image units
that can be accessed by the fragment shader when programmable shaders
are used.
-
textureImageUnitsVertexMax
An Integer indicating the maximum number of texture image units
that can be accessed by the vertex shader when programmable shaders
are used.
-
textureImageUnitsCombinedMax
An Integer indicating the combined maximum number of texture image units
that can be accessed by the vertex shader and the fragment shader when
programmable shaders are used.
-
textureCubeMapAvailable
A Boolean indicating whether or not texture cube map is supported
for this Canvas3D. If it indicates false, then texture cube map
is not supported by the underlying rendering layer, and an attempt
to specify NORMAL_MAP or REFLECTION_MAP as the texture generation
mode will be ignored. The texture generation mode in effect will
be SPHERE_MAP.
-
textureDetailAvailable
A Boolean indicating whether or not detail texture is supported
for this Canvas3D. If it indicates false, then detail texture is
not supported by the underlying rendering layer, and an attempt
to specify LINEAR_DETAIL, LINEAR_DETAIL_ALPHA or
LINEAR_DETAIL_RGB as the texture magnification filter mode will
be ignored. The texture magnification filter mode in effect will
be BASE_LEVEL_LINEAR.
As of Java 3D 1.5, this property is always false.
-
textureSharpenAvailable
A Boolean indicating whether or not sharpen texture is supported
for this Canvas3D. If it indicates false, then sharpen texture
is not supported by the underlying rendering layer, and an attempt
to specify LINEAR_SHARPEN, LINEAR_SHARPEN_ALPHA or
LINEAR_SHARPEN_RGB as the texture magnification filter mode
will be ignored. The texture magnification filter mode in effect
will be BASE_LEVEL_LINEAR.
-
textureFilter4Available
A Boolean indicating whether or not filter4 is supported for this
Canvas3D. If it indicates flase, then filter4 is not supported
by the underlying rendering layer, and an attempt to specify
FILTER_4 as the texture minification filter mode or texture
magnification filter mode will be ignored. The texture filter mode
in effect will be BASE_LEVEL_LINEAR.
-
textureAnisotropicFilterDegreeMax
A Float indicating the maximum degree of anisotropic filter
available for this Canvas3D. If it indicates 1.0, setting
anisotropic filter is not supported by the underlying rendering
layer, and an attempt to set anisotropic filter degree will be ignored.
-
textureNonPowerOfTwoAvailable
A Boolean indicating whether or not texture dimensions that are
not powers of two are supported for
for this Canvas3D. If it indicates false, then textures with
non power of two sizes will be ignored. Set the property
j3d.textureEnforcePowerOfTwo to revert to the pre-1.5 behavior
of throwing exceptions for non power of two textures.
-
vertexAttrsMax
An Integer indicating the maximum number of vertex attributes
supported by the underlying rendering layer. This is in addition to
the vertex coordinate (position), color, normal, and so forth.
-
compressedGeometry.majorVersionNumber
compressedGeometry.minorVersionNumber
compressedGeometry.minorMinorVersionNumber
Integers indicating the major, minor, and minor-minor
version numbers, respectively, of the version of compressed
geometry supported by this version of Java 3D.
-
native.version
A String indicating the version number of the native graphics
library. The format of this string is defined by the native
library.
the properties of this Canavs3D since: Java 3D 1.2 |
redraw | void redraw()(Code) | | This version looks for the view and notifies it.
|
releaseCtx | void releaseCtx()(Code) | | |
removeNotify | public void removeNotify()(Code) | | Canvas3D uses the removeNotify callback to track when it is removed
from a container. Subclasses of Canvas3D that override this
method need to call super.removeNotify() in their removeNotify()
method for Java 3D to function properly.
|
renderField | public void renderField(int fieldDesc)(Code) | | This routine is called by the Java 3D rendering loop during the
execution of the rendering loop. It is called once for each
field (i.e., once per frame on
a mono system or once each for the right eye and left eye on a
two-pass stereo system. This is intended for use by applications that
want to mix retained/compiled-retained mode rendering with some
immediate mode rendering. Applications that wish to perform
operations during the rendering loop, may override this
function.
Updates to live Geometry, Texture, and ImageComponent objects
in the scene graph are not allowed from this method.
NOTE: Applications should not call this method.
Parameters: fieldDesc - field description, one of: FIELD_LEFT, FIELD_RIGHT orFIELD_ALL. Applications that wish to work correctly in stereo modeshould render the same image for both FIELD_LEFT and FIELD_RIGHT calls.If Java 3D calls the renderer with FIELD_ALL then the immediate moderendering only needs to be done once. |
resetColoringAttributes | void resetColoringAttributes(Context ctx, float r, float g, float b, float a, boolean enableLight)(Code) | | |
resetImmediateRendering | void resetImmediateRendering(int status)(Code) | | |
resetPointAttributes | void resetPointAttributes(Context ctx)(Code) | | |
resetPolygonAttributes | void resetPolygonAttributes(Context ctx)(Code) | | |
resetRendering | void resetRendering(int status)(Code) | | |
resetRenderingAttributes | void resetRenderingAttributes(Context ctx, boolean depthBufferWriteEnableOverride, boolean depthBufferEnableOverride)(Code) | | |
resetTexCoordGeneration | void resetTexCoordGeneration(Context ctx)(Code) | | |
resetTexture | void resetTexture(Context ctx, int texUnitIndex)(Code) | | |
resetTextureAttributes | void resetTextureAttributes(Context ctx)(Code) | | |
resetTextureBin | void resetTextureBin()(Code) | | |
resetTextureNative | void resetTextureNative(Context ctx, int texUnitIndex)(Code) | | |
resetTransparency | void resetTransparency(Context ctx, int geometryType, int polygonMode, boolean lineAA, boolean pointAA)(Code) | | |
restoreTextureBin | void restoreTextureBin()(Code) | | |
sendEventToBehaviorScheduler | void sendEventToBehaviorScheduler(AWTEvent evt)(Code) | | This method overrides AWT's handleEvent class...
|
setBlendColor | void setBlendColor(Context ctx, float red, float green, float blue, float alpha)(Code) | | |
setBlendFunc | void setBlendFunc(Context ctx, int src, int dst)(Code) | | |
setDepthBufferEnableOverride | void setDepthBufferEnableOverride(boolean flag)(Code) | | Set depthBufferEnableOverride flag
|
setDepthBufferWriteEnable | void setDepthBufferWriteEnable(boolean mode)(Code) | | |
setDepthBufferWriteEnable | void setDepthBufferWriteEnable(Context ctx, boolean mode)(Code) | | |
setDepthBufferWriteEnableOverride | void setDepthBufferWriteEnableOverride(boolean flag)(Code) | | Set depthBufferWriteEnableOverride flag
|
setDoubleBufferEnable | public void setDoubleBufferEnable(boolean flag)(Code) | | Turns double buffering on or off. If double buffering
is off, all drawing is to the front buffer and no buffer swap
is done between frames. It should be stressed that running
Java 3D with double buffering disabled is not recommended.
Enabling double buffering on a Canvas3D
that does not support double buffering has no effect.
Parameters: flag - enables or disables double buffering. See Also: Canvas3D.queryProperties |
setFatalError | void setFatalError()(Code) | | |
setFogEnableFlag | void setFogEnableFlag(Context ctx, boolean enableFlag)(Code) | | |
setFrustumPlanes | void setFrustumPlanes(Vector4d[] planes)(Code) | | |
setFullSceneAntialiasing | void setFullSceneAntialiasing(Context ctx, boolean enable)(Code) | | |
setGlobalAlpha | void setGlobalAlpha(Context ctx, float alpha)(Code) | | |
setLastActiveTexUnit | void setLastActiveTexUnit(int n)(Code) | | |
setLeftManualEyeInImagePlate | public void setLeftManualEyeInImagePlate(Point3d position)(Code) | | Sets the position of the manual left eye in image-plate
coordinates. This value determines eye placement when a head
tracker is not in use and the application is directly controlling
the eye position in image-plate coordinates.
In head-tracked mode or when the windowEyePointPolicy is
RELATIVE_TO_FIELD_OF_VIEW or RELATIVE_TO_COEXISTENCE, this value
is ignored. When the
windowEyepointPolicy is RELATIVE_TO_WINDOW only the Z value is
used.
Parameters: position - the new manual left eye position |
setLightEnables | void setLightEnables(Context ctx, long enableMask, int maxLights)(Code) | | |
setModelViewMatrix | void setModelViewMatrix(Context ctx, double[] viewMatrix, double[] modelMatrix)(Code) | | |
setMonoscopicViewPolicy | public void setMonoscopicViewPolicy(int policy)(Code) | | Specifies how Java 3D generates monoscopic view. If set to
View.LEFT_EYE_VIEW, the view generated corresponds to the view as
seen from the left eye. If set to View.RIGHT_EYE_VIEW, the view
generated corresponds to the view as seen from the right
eye. If set to View.CYCLOPEAN_EYE_VIEW, the view generated
corresponds to the view as seen from the 'center eye', the
fictional eye half-way between the left and right eye. The
default monoscopic view policy is View.CYCLOPEAN_EYE_VIEW.
NOTE: for backward compatibility with Java 3D 1.1, if this
attribute is set to its default value of
View.CYCLOPEAN_EYE_VIEW, the monoscopic view policy in the
View object will be used. An application should not use both
the deprecated View method and this Canvas3D method at the same
time.
Parameters: policy - one of View.LEFT_EYE_VIEW, View.RIGHT_EYE_VIEW, orView.CYCLOPEAN_EYE_VIEW. exception: IllegalStateException - if the specifiedpolicy is CYCLOPEAN_EYE_VIEW, the canvas is a stereo canvas,and the viewPolicy for the associated view is HMD_VIEW since: Java 3D 1.2 |
setNumActiveTexUnit | void setNumActiveTexUnit(int n)(Code) | | |
setOffScreenBuffer | public void setOffScreenBuffer(ImageComponent2D buffer)(Code) | | Sets the off-screen buffer for this Canvas3D. The specified
image is written into by the Java 3D renderer. The size of the
specified ImageComponent determines the size, in pixels, of
this Canvas3D--the size inherited from Component is ignored.
NOTE: the size, physical width, and physical height of the associated
Screen3D must be set explicitly prior to rendering.
Failure to do so will result in an exception.
Parameters: buffer - the image component that will be rendered into bysubsequent calls to renderOffScreenBuffer. The image component must notbe part of a live scene graph, nor may it subsequently be made part of alive scene graph while being used as an off-screen buffer; anIllegalSharingException is thrown in such cases. The buffer may be null,indicating that the previous off-screen buffer is released without a newbuffer being set. exception: IllegalStateException - if this Canvas3D is not inoff-screen mode. exception: RestrictedAccessException - if an off-screen renderingis in process for this Canvas3D. exception: IllegalSharingException - if the specified ImageComponent2Dis part of a live scene graph exception: IllegalSharingException - if the specified ImageComponent2D isbeing used by an immediate mode context, or by another Canvas3D asan off-screen buffer. exception: IllegalArgumentException - if the image class of the specifiedImageComponent2D is not ImageClass.BUFFERED_IMAGE. exception: IllegalArgumentException - if the specifiedImageComponent2D is in by-reference mode and itsRenderedImage is null. exception: IllegalArgumentException - if the ImageComponent2D formatis not a 3-component format (e.g., FORMAT_RGB)or a 4-component format (e.g., FORMAT_RGBA). See Also: Canvas3D.renderOffScreenBuffer See Also: Screen3D.setSize(intint) See Also: Screen3D.setSize(Dimension) See Also: Screen3D.setPhysicalScreenWidth See Also: Screen3D.setPhysicalScreenHeight since: Java 3D 1.2 |
setOffScreenLocation | public void setOffScreenLocation(int x, int y)(Code) | | Sets the location of this off-screen Canvas3D. The location is
the upper-left corner of the Canvas3D relative to the
upper-left corner of the corresponding off-screen Screen3D.
The function of this method is similar to that of
Component.setLocation for on-screen Canvas3D
objects. The default location is (0,0).
Parameters: x - the x coordinate of the upper-left corner ofthe new location. Parameters: y - the y coordinate of the upper-left corner ofthe new location. exception: IllegalStateException - if this Canvas3D is not inoff-screen mode. since: Java 3D 1.2 |
setOffScreenLocation | public void setOffScreenLocation(Point p)(Code) | | Sets the location of this off-screen Canvas3D. The location is
the upper-left corner of the Canvas3D relative to the
upper-left corner of the corresponding off-screen Screen3D.
The function of this method is similar to that of
Component.setLocation for on-screen Canvas3D
objects. The default location is (0,0).
Parameters: p - the point defining the upper-left corner of the newlocation. exception: IllegalStateException - if this Canvas3D is not inoff-screen mode. since: Java 3D 1.2 |
setProjectionMatrix | void setProjectionMatrix(Context ctx, double[] projMatrix)(Code) | | |
setRenderMode | void setRenderMode(Context ctx, int mode, boolean doubleBuffer)(Code) | | |
setRightManualEyeInImagePlate | public void setRightManualEyeInImagePlate(Point3d position)(Code) | | Sets the position of the manual right eye in image-plate
coordinates. This value determines eye placement when a head
tracker is not in use and the application is directly controlling
the eye position in image-plate coordinates.
In head-tracked mode or when the windowEyePointPolicy is
RELATIVE_TO_FIELD_OF_VIEW or RELATIVE_TO_COEXISTENCE, this value
is ignored. When the
windowEyepointPolicy is RELATIVE_TO_WINDOW only the Z value is
used.
Parameters: position - the new manual right eye position |
setSceneAmbient | void setSceneAmbient(Context ctx, float red, float green, float blue)(Code) | | |
setStateIsUpdated | void setStateIsUpdated(int bit)(Code) | | |
setStateToUpdate | void setStateToUpdate(int bit, Object bin)(Code) | | |
setStereoEnable | public void setStereoEnable(boolean flag)(Code) | | Turns stereo on or off. Note that this attribute is used
only when stereo is available. Enabling stereo on a Canvas3D
that does not support stereo has no effect.
Parameters: flag - enables or disables the display of stereo See Also: Canvas3D.queryProperties |
setView | void setView(View view)(Code) | | Sets view that points to this Canvas3D.
Parameters: view - view object that points to this Canvas3D |
setViewport | void setViewport(Context ctx, int x, int y, int width, int height)(Code) | | |
startRenderer | final public void startRenderer()(Code) | | Start the Java 3D renderer on this Canvas3D object. If the
Java 3D renderer is not currently running, any rendering to other
Canvas3D objects sharing the same View will be synchronized before this
Canvas3D's renderer is (re)started. When a Canvas3D is created, it is
initially marked as being started. This means that as soon as the
Canvas3D is added to an active View object, the rendering loop will
render the scene graph to the canvas.
|
stopRenderer | final public void stopRenderer()(Code) | | Stop the Java 3D renderer on this Canvas3D object. If the
Java 3D renderer is currently running, the rendering will be
synchronized before being stopped. No further rendering will be done
to this canvas by Java 3D until the renderer is started again.
In pure immediate mode this method should be called prior to adding
this canvas to an active View object.
exception: IllegalStateException - if this Canvas3D is inoff-screen mode. |
supportGlobalAlpha | boolean supportGlobalAlpha()(Code) | | |
swap | public void swap()(Code) | | Synchronize and swap buffers on a double buffered canvas for
this Canvas3D object. This method should only be called if the
Java 3D renderer has been stopped. In the normal case, the renderer
automatically swaps the buffer.
This method calls the flush(true) methods of the
associated 2D and 3D graphics contexts, if they have been allocated.
exception: RestrictedAccessException - if the Java 3D renderer isrunning. exception: IllegalStateException - if this Canvas3D is inoff-screen mode. See Also: Canvas3D.stopRenderer See Also: GraphicsContext3D.flush See Also: J3DGraphics2D.flush |
syncRender | void syncRender(Context ctx, boolean wait)(Code) | | This native method makes sure that the rendering for this canvas
gets done now.
|
textureFill | void textureFill(RasterRetained raster, Point2d winCoord, float mapZ, float alpha)(Code) | | |
textureFillBackground | void textureFillBackground(Context ctx, float texMinU, float texMaxU, float texMinV, float texMaxV, float mapMinX, float mapMaxX, float mapMinY, float mapMaxY, boolean useBiliearFilter)(Code) | | |
textureFillRaster | void textureFillRaster(Context ctx, float texMinU, float texMaxU, float texMinV, float texMaxV, float mapMinX, float mapMaxX, float mapMinY, float mapMaxY, float mapZ, float alpha, boolean useBiliearFilter)(Code) | | |
texturemapping | void texturemapping(Context ctx, int px, int py, int xmin, int ymin, int xmax, int ymax, int texWidth, int texHeight, int rasWidth, int format, int objectId, byte[] image, int winWidth, int winHeight)(Code) | | |
updateEnvState | void updateEnvState()(Code) | | |
updateMaterial | void updateMaterial(Context ctx, float r, float g, float b, float a)(Code) | | |
updateSeparateSpecularColorEnable | void updateSeparateSpecularColorEnable(Context ctx, boolean control)(Code) | | |
updateState | void updateState(int dirtyBits)(Code) | | update state if neccessary according to the stateUpdatedMask
|
updateViewCache | void updateViewCache(boolean flag, CanvasViewCache cvc, BoundingBox frustumBBox, boolean doInfinite)(Code) | | Update the view cache associated with this canvas.
|
waitForOffScreenRendering | public void waitForOffScreenRendering()(Code) | | Waits for this Canvas3D's off-screen rendering to be done.
This method will wait until the postSwap method of this
off-screen Canvas3D has completed. If this Canvas3D has not
been added to an active view or if the renderer is stopped for this
Canvas3D, then this method will return
immediately. This method must not be called from a render
callback method of an off-screen Canvas3D.
exception: IllegalStateException - if this Canvas3D is not inoff-screen mode, or if this method is called from a rendercallback method of an off-screen Canvas3D. See Also: Canvas3D.renderOffScreenBuffer See Also: Canvas3D.postSwap since: Java 3D 1.2 |
Methods inherited from java.awt.Component | public boolean action(Event evt, Object what)(Code)(Java Doc) public void add(PopupMenu popup)(Code)(Java Doc) public synchronized void addComponentListener(ComponentListener l)(Code)(Java Doc) public synchronized void addFocusListener(FocusListener l)(Code)(Java Doc) public void addHierarchyBoundsListener(HierarchyBoundsListener l)(Code)(Java Doc) public void addHierarchyListener(HierarchyListener l)(Code)(Java Doc) public synchronized void addInputMethodListener(InputMethodListener l)(Code)(Java Doc) public synchronized void addKeyListener(KeyListener l)(Code)(Java Doc) public synchronized void addMouseListener(MouseListener l)(Code)(Java Doc) public synchronized void addMouseMotionListener(MouseMotionListener l)(Code)(Java Doc) public synchronized void addMouseWheelListener(MouseWheelListener l)(Code)(Java Doc) public void addNotify()(Code)(Java Doc) public synchronized void addPropertyChangeListener(PropertyChangeListener listener)(Code)(Java Doc) public synchronized void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)(Code)(Java Doc) public void applyComponentOrientation(ComponentOrientation orientation)(Code)(Java Doc) public boolean areFocusTraversalKeysSet(int id)(Code)(Java Doc) public Rectangle bounds()(Code)(Java Doc) public int checkImage(Image image, ImageObserver observer)(Code)(Java Doc) public int checkImage(Image image, int width, int height, ImageObserver observer)(Code)(Java Doc) protected AWTEvent coalesceEvents(AWTEvent existingEvent, AWTEvent newEvent)(Code)(Java Doc) public boolean contains(int x, int y)(Code)(Java Doc) public boolean contains(Point p)(Code)(Java Doc) public Image createImage(ImageProducer producer)(Code)(Java Doc) public Image createImage(int width, int height)(Code)(Java Doc) public VolatileImage createVolatileImage(int width, int height)(Code)(Java Doc) public VolatileImage createVolatileImage(int width, int height, ImageCapabilities caps) throws AWTException(Code)(Java Doc) public void deliverEvent(Event e)(Code)(Java Doc) public void disable()(Code)(Java Doc) final protected void disableEvents(long eventsToDisable)(Code)(Java Doc) final public void dispatchEvent(AWTEvent e)(Code)(Java Doc) public void doLayout()(Code)(Java Doc) public void enable()(Code)(Java Doc) public void enable(boolean b)(Code)(Java Doc) final protected void enableEvents(long eventsToEnable)(Code)(Java Doc) public void enableInputMethods(boolean enable)(Code)(Java Doc) protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)(Code)(Java Doc) protected void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)(Code)(Java Doc) protected void firePropertyChange(String propertyName, int oldValue, int newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, byte oldValue, byte newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, char oldValue, char newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, short oldValue, short newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, long oldValue, long newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, float oldValue, float newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, double oldValue, double newValue)(Code)(Java Doc) public AccessibleContext getAccessibleContext()(Code)(Java Doc) public float getAlignmentX()(Code)(Java Doc) public float getAlignmentY()(Code)(Java Doc) public Color getBackground()(Code)(Java Doc) public int getBaseline(int width, int height)(Code)(Java Doc) public BaselineResizeBehavior getBaselineResizeBehavior()(Code)(Java Doc) public Rectangle getBounds()(Code)(Java Doc) public Rectangle getBounds(Rectangle rv)(Code)(Java Doc) public ColorModel getColorModel()(Code)(Java Doc) public Component getComponentAt(int x, int y)(Code)(Java Doc) public Component getComponentAt(Point p)(Code)(Java Doc) public synchronized ComponentListener[] getComponentListeners()(Code)(Java Doc) public ComponentOrientation getComponentOrientation()(Code)(Java Doc) public Cursor getCursor()(Code)(Java Doc) public synchronized DropTarget getDropTarget()(Code)(Java Doc) public Container getFocusCycleRootAncestor()(Code)(Java Doc) public synchronized FocusListener[] getFocusListeners()(Code)(Java Doc) public Set<AWTKeyStroke> getFocusTraversalKeys(int id)(Code)(Java Doc) public boolean getFocusTraversalKeysEnabled()(Code)(Java Doc) public Font getFont()(Code)(Java Doc) public FontMetrics getFontMetrics(Font font)(Code)(Java Doc) public Color getForeground()(Code)(Java Doc) public Graphics getGraphics()(Code)(Java Doc) public GraphicsConfiguration getGraphicsConfiguration()(Code)(Java Doc) public int getHeight()(Code)(Java Doc) public synchronized HierarchyBoundsListener[] getHierarchyBoundsListeners()(Code)(Java Doc) public synchronized HierarchyListener[] getHierarchyListeners()(Code)(Java Doc) public boolean getIgnoreRepaint()(Code)(Java Doc) public InputContext getInputContext()(Code)(Java Doc) public synchronized InputMethodListener[] getInputMethodListeners()(Code)(Java Doc) public InputMethodRequests getInputMethodRequests()(Code)(Java Doc) public synchronized KeyListener[] getKeyListeners()(Code)(Java Doc) public T[] getListeners(Class<T> listenerType)(Code)(Java Doc) public Locale getLocale()(Code)(Java Doc) public Point getLocation()(Code)(Java Doc) public Point getLocation(Point rv)(Code)(Java Doc) public Point getLocationOnScreen()(Code)(Java Doc) public Dimension getMaximumSize()(Code)(Java Doc) public Dimension getMinimumSize()(Code)(Java Doc) public synchronized MouseListener[] getMouseListeners()(Code)(Java Doc) public synchronized MouseMotionListener[] getMouseMotionListeners()(Code)(Java Doc) public Point getMousePosition() throws HeadlessException(Code)(Java Doc) public synchronized MouseWheelListener[] getMouseWheelListeners()(Code)(Java Doc) public String getName()(Code)(Java Doc) public Container getParent()(Code)(Java Doc) public ComponentPeer getPeer()(Code)(Java Doc) public Dimension getPreferredSize()(Code)(Java Doc) public synchronized PropertyChangeListener[] getPropertyChangeListeners()(Code)(Java Doc) public synchronized PropertyChangeListener[] getPropertyChangeListeners(String propertyName)(Code)(Java Doc) public Dimension getSize()(Code)(Java Doc) public Dimension getSize(Dimension rv)(Code)(Java Doc) public Toolkit getToolkit()(Code)(Java Doc) final public Object getTreeLock()(Code)(Java Doc) public int getWidth()(Code)(Java Doc) public int getX()(Code)(Java Doc) public int getY()(Code)(Java Doc) public boolean gotFocus(Event evt, Object what)(Code)(Java Doc) public boolean handleEvent(Event evt)(Code)(Java Doc) public boolean hasFocus()(Code)(Java Doc) public void hide()(Code)(Java Doc) public boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h)(Code)(Java Doc) public boolean inside(int x, int y)(Code)(Java Doc) public void invalidate()(Code)(Java Doc) public boolean isBackgroundSet()(Code)(Java Doc) public boolean isCursorSet()(Code)(Java Doc) public boolean isDisplayable()(Code)(Java Doc) public boolean isDoubleBuffered()(Code)(Java Doc) public boolean isEnabled()(Code)(Java Doc) public boolean isFocusCycleRoot(Container container)(Code)(Java Doc) public boolean isFocusOwner()(Code)(Java Doc) public boolean isFocusTraversable()(Code)(Java Doc) public boolean isFocusable()(Code)(Java Doc) public boolean isFontSet()(Code)(Java Doc) public boolean isForegroundSet()(Code)(Java Doc) public boolean isLightweight()(Code)(Java Doc) public boolean isMaximumSizeSet()(Code)(Java Doc) public boolean isMinimumSizeSet()(Code)(Java Doc) public boolean isOpaque()(Code)(Java Doc) public boolean isPreferredSizeSet()(Code)(Java Doc) public boolean isShowing()(Code)(Java Doc) public boolean isValid()(Code)(Java Doc) public boolean isVisible()(Code)(Java Doc) public boolean keyDown(Event evt, int key)(Code)(Java Doc) public boolean keyUp(Event evt, int key)(Code)(Java Doc) public void layout()(Code)(Java Doc) public void list()(Code)(Java Doc) public void list(PrintStream out)(Code)(Java Doc) public void list(PrintStream out, int indent)(Code)(Java Doc) public void list(PrintWriter out)(Code)(Java Doc) public void list(PrintWriter out, int indent)(Code)(Java Doc) public Component locate(int x, int y)(Code)(Java Doc) public Point location()(Code)(Java Doc) public boolean lostFocus(Event evt, Object what)(Code)(Java Doc) public Dimension minimumSize()(Code)(Java Doc) public boolean mouseDown(Event evt, int x, int y)(Code)(Java Doc) public boolean mouseDrag(Event evt, int x, int y)(Code)(Java Doc) public boolean mouseEnter(Event evt, int x, int y)(Code)(Java Doc) public boolean mouseExit(Event evt, int x, int y)(Code)(Java Doc) public boolean mouseMove(Event evt, int x, int y)(Code)(Java Doc) public boolean mouseUp(Event evt, int x, int y)(Code)(Java Doc) public void move(int x, int y)(Code)(Java Doc) public void nextFocus()(Code)(Java Doc) public void paint(Graphics g)(Code)(Java Doc) public void paintAll(Graphics g)(Code)(Java Doc) protected String paramString()(Code)(Java Doc) public boolean postEvent(Event e)(Code)(Java Doc) public Dimension preferredSize()(Code)(Java Doc) public boolean prepareImage(Image image, ImageObserver observer)(Code)(Java Doc) public boolean prepareImage(Image image, int width, int height, ImageObserver observer)(Code)(Java Doc) public void print(Graphics g)(Code)(Java Doc) public void printAll(Graphics g)(Code)(Java Doc) protected void processComponentEvent(ComponentEvent e)(Code)(Java Doc) protected void processEvent(AWTEvent e)(Code)(Java Doc) protected void processFocusEvent(FocusEvent e)(Code)(Java Doc) protected void processHierarchyBoundsEvent(HierarchyEvent e)(Code)(Java Doc) protected void processHierarchyEvent(HierarchyEvent e)(Code)(Java Doc) protected void processInputMethodEvent(InputMethodEvent e)(Code)(Java Doc) protected void processKeyEvent(KeyEvent e)(Code)(Java Doc) protected void processMouseEvent(MouseEvent e)(Code)(Java Doc) protected void processMouseMotionEvent(MouseEvent e)(Code)(Java Doc) protected void processMouseWheelEvent(MouseWheelEvent e)(Code)(Java Doc) public void remove(MenuComponent popup)(Code)(Java Doc) public synchronized void removeComponentListener(ComponentListener l)(Code)(Java Doc) public synchronized void removeFocusListener(FocusListener l)(Code)(Java Doc) public void removeHierarchyBoundsListener(HierarchyBoundsListener l)(Code)(Java Doc) public void removeHierarchyListener(HierarchyListener l)(Code)(Java Doc) public synchronized void removeInputMethodListener(InputMethodListener l)(Code)(Java Doc) public synchronized void removeKeyListener(KeyListener l)(Code)(Java Doc) public synchronized void removeMouseListener(MouseListener l)(Code)(Java Doc) public synchronized void removeMouseMotionListener(MouseMotionListener l)(Code)(Java Doc) public synchronized void removeMouseWheelListener(MouseWheelListener l)(Code)(Java Doc) public void removeNotify()(Code)(Java Doc) public synchronized void removePropertyChangeListener(PropertyChangeListener listener)(Code)(Java Doc) public synchronized void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)(Code)(Java Doc) public void repaint()(Code)(Java Doc) public void repaint(long tm)(Code)(Java Doc) public void repaint(int x, int y, int width, int height)(Code)(Java Doc) public void repaint(long tm, int x, int y, int width, int height)(Code)(Java Doc) public void requestFocus()(Code)(Java Doc) protected boolean requestFocus(boolean temporary)(Code)(Java Doc) public boolean requestFocusInWindow()(Code)(Java Doc) protected boolean requestFocusInWindow(boolean temporary)(Code)(Java Doc) public void reshape(int x, int y, int width, int height)(Code)(Java Doc) public void resize(int width, int height)(Code)(Java Doc) public void resize(Dimension d)(Code)(Java Doc) public void setBackground(Color c)(Code)(Java Doc) public void setBounds(int x, int y, int width, int height)(Code)(Java Doc) public void setBounds(Rectangle r)(Code)(Java Doc) public void setComponentOrientation(ComponentOrientation o)(Code)(Java Doc) public void setCursor(Cursor cursor)(Code)(Java Doc) public synchronized void setDropTarget(DropTarget dt)(Code)(Java Doc) public void setEnabled(boolean b)(Code)(Java Doc) public void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)(Code)(Java Doc) public void setFocusTraversalKeysEnabled(boolean focusTraversalKeysEnabled)(Code)(Java Doc) public void setFocusable(boolean focusable)(Code)(Java Doc) public void setFont(Font f)(Code)(Java Doc) public void setForeground(Color c)(Code)(Java Doc) public void setIgnoreRepaint(boolean ignoreRepaint)(Code)(Java Doc) public void setLocale(Locale l)(Code)(Java Doc) public void setLocation(int x, int y)(Code)(Java Doc) public void setLocation(Point p)(Code)(Java Doc) public void setMaximumSize(Dimension maximumSize)(Code)(Java Doc) public void setMinimumSize(Dimension minimumSize)(Code)(Java Doc) public void setName(String name)(Code)(Java Doc) public void setPreferredSize(Dimension preferredSize)(Code)(Java Doc) public void setSize(int width, int height)(Code)(Java Doc) public void setSize(Dimension d)(Code)(Java Doc) public void setVisible(boolean b)(Code)(Java Doc) public void show()(Code)(Java Doc) public void show(boolean b)(Code)(Java Doc) public Dimension size()(Code)(Java Doc) public String toString()(Code)(Java Doc) public void transferFocus()(Code)(Java Doc) public void transferFocusBackward()(Code)(Java Doc) public void transferFocusUpCycle()(Code)(Java Doc) public void update(Graphics g)(Code)(Java Doc) public void validate()(Code)(Java Doc)
|
|
|