Class X3DClassicExporter

java.lang.Object
org.web3d.vrml.export.Exporter
org.web3d.vrml.export.X3DClassicExporter
All Implemented Interfaces:
ContentHandler, ProtoHandler, RouteHandler, ScriptHandler, StringContentHandler

public class X3DClassicExporter extends Exporter
X3D Classic VRML encoding Exporter.

The pretty printing on this is pretty bad. Routes are pushed to the end of the execution space, spacing is off and comments are lost. In the future this may be fixed, but its not a trivial problem.

WARNING: Do not change the location of a push or pop unless you really test the results.

This class must track when a MFField ends. The rules for this are fairly complex. A field starts either on a startField, protoFieldDecl or scriptFieldDecl. it ends on another startField/scriptfield/protofield, an endProtoDecl, endScriptDecl or endNode which had at least one field decl and an IS decl and a fieldValue call. yesh.

startField pushes these stacks:

  • inFieldType
  • currentField
  • nodeCnt -- all fields, only MFNode fieldDecl
on the end of the field it pops these stacks.

startNode pushes these stacks:

  • fieldCnt
Version:
$Revision: 1.19 $
Author:
Alan Hudson