net.dzzd
Class DzzDJSApplet

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Panel
              extended byjava.applet.Applet
                  extended bynet.dzzd.DzzDApplet
                      extended bynet.dzzd.DzzDJSApplet
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, IScene3DRenderCallBack, java.awt.MenuContainer, java.io.Serializable

public final class DzzDJSApplet
extends DzzDApplet
implements IScene3DRenderCallBack

Provide an easy way to implements 3D Applet using only JavaScript.

Overview:

This class is provided to enable 3D Demo creation, without the need of java compiler, using only JavaScript and HTML.

HTML code sample:
You can use the following HTML code to include a 3D scene in your web page.

<APPLET MAYSCRIPT
archive = "dzzd.jar"
code = "dzzd.DzzDJSApplet.class"
width = "600"
height = "400">
<PARAM NAME="JavaScriptInit" value="start">
</APPLET>


JavaScriptInit
The "JavaScriptInit" parameter is used to tell the 3DzzD API to call the javascript function "start" once initialised.
You may change the value of this parameter to set you own JavaScript function.
Usually you will use this function to start loading a 3D scene and/or register other callback function as : render3DObjectMonitor,render3DWorldSpace.

JavaScript code sample:
<SCRIPT LANGUAGE="JavaScript">
function start(applet)
{
applet.getScene3DRender().getScene3D().loadScene3DFrom3DS(applet.getBaseURL(),"SCENE.3DS");
}
</SCRIPT>

This JavaScript code will load the 3DS file name "SCENE.3DS".

The given sample expect that all files are in the same directory including dzzd.jar.

Since:
1.0
Version:
1.0, 01/01/04
Author:
Bruno Augier
See Also:
IScene3DRender, Serialized Form

Field Summary
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
DzzDJSApplet()
           
 
Method Summary
 void destroy()
           
 void init()
           
 void registerRender3DWorldSpace(java.lang.String fName)
          Register the javascript function to call for world space event.
 void render3DCameraSpace(IScene3DRender r)
          Called for each rendered frame when all scene 3D Object are in camera space.
 void render3DEnd(IScene3DRender r)
          Called for each rendered frame when final image has been drawn to screen.
 void render3DPixelsUpdate(IScene3DRender r)
          Called for each rendered frame just before drawing to internal pixels array.
 void render3DPixelsUpdated(IScene3DRender r)
          Called for each rendered frame just after internal pixels array has been updated with new frame.
 void render3DStart(IScene3DRender r)
          Called for each rendered frame when a new rendering process start.
 void render3DstartCallBack(IScene3DRender r)
          Called once before all others events to inform this object that it must now handle callback.
 void render3DSwitched(IScene3DRender r)
          Called once when a request to switch Render3D implementation has been performed.
 void render3DWorldSpace(IScene3DRender r)
          Called for each rendered frame when all scene 3D Object are in world space.
 void start()
           
 
Methods inherited from class net.dzzd.DzzDApplet
getAppletInfo, getBaseURL, getHeight, getWidth
 
Methods inherited from class java.applet.Applet
getAccessibleContext, getAppletContext, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, stop
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, remove, remove, removeAll, removeContainerListener, removeNotify, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DzzDJSApplet

public DzzDJSApplet()
Method Detail

registerRender3DWorldSpace

public void registerRender3DWorldSpace(java.lang.String fName)
Register the javascript function to call for world space event.

You can use this function to register/replace or remove the function used for the world space event.

use null value to remove the current function.

Parameters:
fName - the JavaScript function name

init

public void init()

start

public void start()

destroy

public void destroy()

render3DstartCallBack

public void render3DstartCallBack(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called once before all others events to inform this object that it must now handle callback.

This method will be called once each times this CallBack handler will be linked to a Render3D
This event may be used to load scene into rendere or initialise object.

Specified by:
render3DstartCallBack in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DStart

public void render3DStart(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called for each rendered frame when a new rendering process start.

This method will be called before all other events.

Specified by:
render3DStart in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DWorldSpace

public void render3DWorldSpace(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called for each rendered frame when all scene 3D Object are in world space.

This method will be called for each rendered frame when all scene 3D Object are in world space : Mesh,Camera,Light, etc...

Specified by:
render3DWorldSpace in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DCameraSpace

public void render3DCameraSpace(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called for each rendered frame when all scene 3D Object are in camera space.

This method will be called for each rendered frame when all scene 3D Object are in camera space : Mesh,Camera,Light, etc...

Specified by:
render3DCameraSpace in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DPixelsUpdate

public void render3DPixelsUpdate(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called for each rendered frame just before drawing to internal pixels array.

This method will be called for each rendered frame just before drawing scene object to internal pixels array.

Specified by:
render3DPixelsUpdate in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DPixelsUpdated

public void render3DPixelsUpdated(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called for each rendered frame just after internal pixels array has been updated with new frame.

This method will be called for each rendered frame just after scene object have been drawn to internal pixels array.

Specified by:
render3DPixelsUpdated in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DEnd

public void render3DEnd(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called for each rendered frame when final image has been drawn to screen.

This method will be called for each rendered frame after all others events.

Specified by:
render3DEnd in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface

render3DSwitched

public void render3DSwitched(IScene3DRender r)
Description copied from interface: IScene3DRenderCallBack
Called once when a request to switch Render3D implementation has been performed.

Render3D switching is asynchronous, this event will be launched once the request has been performed even if it has failed..

Specified by:
render3DSwitched in interface IScene3DRenderCallBack
Parameters:
r - Render3D object source interface