Modifier and Type | Class and Description |
---|---|
protected static class |
DAEExporter.LatentClosure
record containing all needed info to export a closure joint
|
protected static class |
DAEExporter.Libraries
all needed COLLADA libraries
|
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
cvsid |
protected static vona.dae.util.DAEUtils |
daeUtils
for now use the singleton DAEUtils
|
protected static javax.xml.datatype.DatatypeFactory |
datatypeFactory
XML datatype factory
|
protected static javax.xml.bind.Marshaller |
marshaller
marshaller for DAE MSim extras
|
protected static vona.dae.jaxb.dae.ObjectFactory |
objFact
DAE object factory
|
Constructor and Description |
---|
DAEExporter() |
Modifier and Type | Method and Description |
---|---|
protected static vona.dae.jaxb.dae.NodeType |
exportLinkToDAE(Link link,
boolean exportWidgets,
boolean exportParentJoint,
DAEExporter.Libraries lib,
java.util.List<DAEExporter.LatentClosure> latentClosures)
Export an MSim
Link to a DAE "node". |
static vona.dae.jaxb.dae.COLLADA |
exportToDAE(Link linkageRoot)
Covers
exportToDAE(Link, boolean) , exports widgets. |
static vona.dae.jaxb.dae.COLLADA |
exportToDAE(Link linkageRoot,
boolean exportUserLinkWidgets)
Export a
Linkage sub-tree to a COLLADA visual scene graph. |
protected static vona.dae.jaxb.dae.ExtraType |
wrapExtra(DAEMSimExtra daeMSimExtra)
Marshal an MSim DAE extra element into a DAE extra/technique with
profile=MSim.
|
private static final java.lang.String cvsid
protected static final vona.dae.util.DAEUtils daeUtils
protected static final javax.xml.bind.Marshaller marshaller
protected static final javax.xml.datatype.DatatypeFactory datatypeFactory
protected static final vona.dae.jaxb.dae.ObjectFactory objFact
public static vona.dae.jaxb.dae.COLLADA exportToDAE(Link linkageRoot, boolean exportUserLinkWidgets)
Export a Linkage
sub-tree to a COLLADA visual scene graph.
The COLLADA scene graph could then be marshalled via a call to
DAEUtils.marshalDAE(COLLADA, File)
.
Any encountered closure joints which attach outside the subtree rooted at linkageRoot are not exported (warnings will be issued).
The passed linkageRoot will correspond to a COLLADA node at the top of a visual scene graph tree. That node will in turn be the only child of a COLLADA visual_scene with an msim_skip extra that indicates the scene is replaced by the node.
exportUserLinkWidgets
- whether to export user link widgets as
COLLADA geometriespublic static vona.dae.jaxb.dae.COLLADA exportToDAE(Link linkageRoot)
Covers exportToDAE(Link, boolean)
, exports widgets.
protected static vona.dae.jaxb.dae.NodeType exportLinkToDAE(Link link, boolean exportWidgets, boolean exportParentJoint, DAEExporter.Libraries lib, java.util.List<DAEExporter.LatentClosure> latentClosures)
Export an MSim Link
to a DAE "node".
Recurs on the connected tree child joints of link to export the entire subtree. All encountered closure joints are collected in latentClosures for later export, as they need to be checked to ensure that their children are within the export tree.
link
- the link to export, not nullexportWidgets
- whether to export user link widgetsexportParentJoint
- whether to export the configuration of
link's parent joint as a DAE msim extra node "msim_parent_joint",
provided that link is not a rootlib
- the DAE libraries into which various elements will be storedlatentClosures
- the list of encountered closure jointsprotected static vona.dae.jaxb.dae.ExtraType wrapExtra(DAEMSimExtra daeMSimExtra)
Marshal an MSim DAE extra element into a DAE extra/technique with profile=MSim.