aboutsummaryrefslogtreecommitdiffstats
path: root/ardor3d-collada/src
diff options
context:
space:
mode:
Diffstat (limited to 'ardor3d-collada/src')
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaAnimUtils.java18
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaDOMUtil.java20
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaException.java62
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaImporter.java48
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaInputPipe.java2
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMaterialUtils.java32
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMeshUtils.java19
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaNodeUtils.java18
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/AnimationItem.java188
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/ControllerStore.java2
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/ColladaExtraPlugin.java38
-rw-r--r--ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/GoogleEarthPlugin.java90
12 files changed, 267 insertions, 270 deletions
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaAnimUtils.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaAnimUtils.java
index da9773f..d20278c 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaAnimUtils.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaAnimUtils.java
@@ -25,9 +25,9 @@ import java.util.StringTokenizer;
import java.util.logging.Level;
import java.util.logging.Logger;
-import org.jdom.Attribute;
-import org.jdom.DataConversionException;
-import org.jdom.Element;
+import org.jdom2.Attribute;
+import org.jdom2.DataConversionException;
+import org.jdom2.Element;
import com.ardor3d.extension.animation.skeletal.AttachmentPoint;
import com.ardor3d.extension.animation.skeletal.Joint;
@@ -198,7 +198,7 @@ public class ColladaAnimUtils {
if (meshNode != null) {
// Look for skeleton entries in the original <instance_controller> element
final List<Element> skeletonRoots = Lists.newArrayList();
- for (final Element sk : (List<Element>) instanceController.getChildren("skeleton")) {
+ for (final Element sk : instanceController.getChildren("skeleton")) {
final Element skroot = _colladaDOMUtil.findTargetWithId(sk.getText());
if (skroot != null) {
// add as a possible root for when we need to locate a joint by name later.
@@ -220,7 +220,7 @@ public class ColladaAnimUtils {
final List<Transform> bindMatrices = Lists.newArrayList();
final List<ColladaInputPipe.ParamType> paramTypes = Lists.newArrayList();
- for (final Element inputEL : (List<Element>) jointsEL.getChildren("input")) {
+ for (final Element inputEL : jointsEL.getChildren("input")) {
final ColladaInputPipe pipe = new ColladaInputPipe(_colladaDOMUtil, inputEL);
final ColladaInputPipe.SourceData sd = pipe.getSourceData();
if (pipe.getType() == ColladaInputPipe.Type.JOINT) {
@@ -330,7 +330,7 @@ public class ColladaAnimUtils {
int indOff = 0, weightOff = 0;
int maxOffset = 0;
- for (final Element inputEL : (List<Element>) weightsEL.getChildren("input")) {
+ for (final Element inputEL : weightsEL.getChildren("input")) {
final ColladaInputPipe pipe = new ColladaInputPipe(_colladaDOMUtil, inputEL);
final ColladaInputPipe.SourceData sd = pipe.getSourceData();
if (pipe.getOffset() > maxOffset) {
@@ -650,7 +650,7 @@ public class ColladaAnimUtils {
private void buildAnimations(final Element parentElement, final Collection<TargetChannel> targetList) {
final List<Element> elementTransforms = new ArrayList<Element>();
- for (final Element child : (List<Element>) parentElement.getChildren()) {
+ for (final Element child : parentElement.getChildren()) {
if (_dataCache.getTransformTypes().contains(child.getName())) {
elementTransforms.add(child);
}
@@ -675,7 +675,7 @@ public class ColladaAnimUtils {
final EnumMap<Type, ColladaInputPipe> pipes = Maps.newEnumMap(Type.class);
final Element samplerElement = _colladaDOMUtil.findTargetWithId(source);
- for (final Element inputElement : (List<Element>) samplerElement.getChildren("input")) {
+ for (final Element inputElement : samplerElement.getChildren("input")) {
final ColladaInputPipe pipe = new ColladaInputPipe(_colladaDOMUtil, inputElement);
pipes.put(pipe.getType(), pipe);
}
@@ -849,7 +849,7 @@ public class ColladaAnimUtils {
final AnimationItem animationItem = new AnimationItem(name);
animationItemRoot.getChildren().add(animationItem);
- for (final Element animationElement : (List<Element>) animationRoot.getChildren("animation")) {
+ for (final Element animationElement : animationRoot.getChildren("animation")) {
parseAnimations(channelMap, animationElement, animationItem);
}
}
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaDOMUtil.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaDOMUtil.java
index 73287c6..956af66 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaDOMUtil.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaDOMUtil.java
@@ -18,15 +18,15 @@ import java.util.StringTokenizer;
import java.util.logging.Level;
import java.util.logging.Logger;
-import org.jdom.Attribute;
-import org.jdom.CDATA;
-import org.jdom.Comment;
-import org.jdom.DataConversionException;
-import org.jdom.Element;
-import org.jdom.JDOMException;
-import org.jdom.ProcessingInstruction;
-import org.jdom.Text;
-import org.jdom.xpath.XPath;
+import org.jdom2.Attribute;
+import org.jdom2.CDATA;
+import org.jdom2.Comment;
+import org.jdom2.DataConversionException;
+import org.jdom2.Element;
+import org.jdom2.JDOMException;
+import org.jdom2.ProcessingInstruction;
+import org.jdom2.Text;
+import org.jdom2.xpath.XPath;
import com.ardor3d.extension.model.collada.jdom.data.DataCache;
import com.ardor3d.math.ColorRGBA;
@@ -361,7 +361,7 @@ public class ColladaDOMUtil {
*/
@SuppressWarnings("unchecked")
public Element getPositionSource(final Element v) {
- for (final Element input : (List<Element>) v.getChildren("input")) {
+ for (final Element input : v.getChildren("input")) {
if ("POSITION".equals(input.getAttributeValue("semantic"))) {
final Element n = findTargetWithId(input.getAttributeValue("source"));
if (n != null && "source".equals(n.getName())) {
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaException.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaException.java
index b4d4927..edadb0b 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaException.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaException.java
@@ -1,31 +1,31 @@
-/**
- * Copyright (c) 2008-2012 Ardor Labs, Inc.
- *
- * This file is part of Ardor3D.
- *
- * Ardor3D is free software: you can redistribute it and/or modify it
- * under the terms of its license which may be found in the accompanying
- * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
- */
-
-package com.ardor3d.extension.model.collada.jdom;
-
-/**
- * Customer exception thrown when something unexpected is encountered in a Collada file.
- */
-public class ColladaException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public ColladaException(final String message, final Object source) {
- super(ColladaException.createMessage(message, source));
- }
-
- public ColladaException(final String msg, final Object source, final Throwable cause) {
- super(ColladaException.createMessage(msg, source), cause);
- }
-
- private static String createMessage(final String message, final Object source) {
- return "Collada problem for source: " + (source != null ? source.toString() : "null") + ": " + message;
- }
-}
+/**
+ * Copyright (c) 2008-2012 Ardor Labs, Inc.
+ *
+ * This file is part of Ardor3D.
+ *
+ * Ardor3D is free software: you can redistribute it and/or modify it
+ * under the terms of its license which may be found in the accompanying
+ * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
+ */
+
+package com.ardor3d.extension.model.collada.jdom;
+
+/**
+ * Customer exception thrown when something unexpected is encountered in a Collada file.
+ */
+public class ColladaException extends RuntimeException {
+
+ private static final long serialVersionUID = 1L;
+
+ public ColladaException(final String message, final Object source) {
+ super(ColladaException.createMessage(message, source));
+ }
+
+ public ColladaException(final String msg, final Object source, final Throwable cause) {
+ super(ColladaException.createMessage(msg, source), cause);
+ }
+
+ private static String createMessage(final String message, final Object source) {
+ return "Collada problem for source: " + (source != null ? source.toString() : "null") + ": " + message;
+ }
+}
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaImporter.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaImporter.java
index 0298984..c813e5d 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaImporter.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaImporter.java
@@ -22,15 +22,17 @@ import java.util.Set;
import java.util.StringTokenizer;
import java.util.logging.Logger;
-import org.jdom.Attribute;
-import org.jdom.DataConversionException;
-import org.jdom.DefaultJDOMFactory;
-import org.jdom.Document;
-import org.jdom.Element;
-import org.jdom.Namespace;
-import org.jdom.Text;
-import org.jdom.input.SAXBuilder;
-import org.jdom.input.SAXHandler;
+import org.jdom2.Attribute;
+import org.jdom2.DataConversionException;
+import org.jdom2.DefaultJDOMFactory;
+import org.jdom2.Document;
+import org.jdom2.Element;
+import org.jdom2.JDOMFactory;
+import org.jdom2.Namespace;
+import org.jdom2.Text;
+import org.jdom2.input.SAXBuilder;
+import org.jdom2.input.sax.SAXHandler;
+import org.jdom2.input.sax.SAXHandlerFactory;
import org.xml.sax.SAXException;
import com.ardor3d.extension.animation.skeletal.Joint;
@@ -289,18 +291,18 @@ public class ColladaImporter {
*/
private Element readCollada(final ResourceSource resource, final DataCache dataCache) {
try {
- final SAXBuilder builder = new SAXBuilder() {
+ final JDOMFactory jdomFac = new ArdorFactory(dataCache);
+ final SAXBuilder builder = new SAXBuilder(null, new SAXHandlerFactory() {
@Override
- protected SAXHandler createContentHandler() {
- return new SAXHandler(new ArdorFactory(dataCache)) {
+ public SAXHandler createSAXHandler(final JDOMFactory factory) {
+ return new SAXHandler(jdomFac) {
@Override
public void startPrefixMapping(final String prefix, final String uri) throws SAXException {
// Just kill what's usually done here...
}
-
};
}
- };
+ }, jdomFac);
final Document doc = builder.build(resource.openStream());
final Element collada = doc.getRootElement();
@@ -335,7 +337,7 @@ public class ColladaImporter {
}
@Override
- public Text text(final String text) {
+ public Text text(final int line, final int col, final String text) {
try {
switch (bufferType) {
case Float: {
@@ -435,29 +437,29 @@ public class ColladaImporter {
}
@Override
- public Element element(final String name, final Namespace namespace) {
- currentElement = super.element(name);
+ public Element element(final int line, final int col, final String name, final Namespace namespace) {
+ currentElement = super.element(line, col, name);
handleTypes(name);
return currentElement;
}
@Override
- public Element element(final String name, final String prefix, final String uri) {
- currentElement = super.element(name);
+ public Element element(final int line, final int col, final String name, final String prefix, final String uri) {
+ currentElement = super.element(line, col, name);
handleTypes(name);
return currentElement;
}
@Override
- public Element element(final String name, final String uri) {
- currentElement = super.element(name);
+ public Element element(final int line, final int col, final String name, final String uri) {
+ currentElement = super.element(line, col, name);
handleTypes(name);
return currentElement;
}
@Override
- public Element element(final String name) {
- currentElement = super.element(name);
+ public Element element(final int line, final int col, final String name) {
+ currentElement = super.element(line, col, name);
handleTypes(name);
return currentElement;
}
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaInputPipe.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaInputPipe.java
index 75704ec..d883756 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaInputPipe.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaInputPipe.java
@@ -16,7 +16,7 @@ import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
-import org.jdom.Element;
+import org.jdom2.Element;
import com.ardor3d.extension.model.collada.jdom.data.DataCache;
import com.ardor3d.scenegraph.FloatBufferData;
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMaterialUtils.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMaterialUtils.java
index 34626bb..e4572ff 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMaterialUtils.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMaterialUtils.java
@@ -14,7 +14,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.logging.Logger;
-import org.jdom.Element;
+import org.jdom2.Element;
import com.ardor3d.extension.model.collada.jdom.data.DataCache;
import com.ardor3d.extension.model.collada.jdom.data.MaterialInfo;
@@ -154,7 +154,7 @@ public class ColladaMaterialUtils {
/* Diffuse property */
property = blinnPhongLambert.getChild("diffuse");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("color".equals(propertyValue.getName())) {
final ColorRGBA color = _colladaDOMUtil.getColor(propertyValue.getText());
mState.setDiffuse(MaterialFace.FrontAndBack, color);
@@ -166,7 +166,7 @@ public class ColladaMaterialUtils {
/* Ambient property */
property = blinnPhongLambert.getChild("ambient");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("color".equals(propertyValue.getName())) {
final ColorRGBA color = _colladaDOMUtil.getColor(propertyValue.getText());
mState.setAmbient(MaterialFace.FrontAndBack, color);
@@ -177,7 +177,7 @@ public class ColladaMaterialUtils {
/* Transparent property */
property = blinnPhongLambert.getChild("transparent");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("color".equals(propertyValue.getName())) {
transparent = _colladaDOMUtil.getColor(propertyValue.getText());
// TODO: use this
@@ -190,7 +190,7 @@ public class ColladaMaterialUtils {
/* Transparency property */
property = blinnPhongLambert.getChild("transparency");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("float".equals(propertyValue.getName())) {
transparency = Float.parseFloat(propertyValue.getText().replace(",", "."));
// TODO: use this
@@ -205,7 +205,7 @@ public class ColladaMaterialUtils {
/* Emission property */
property = blinnPhongLambert.getChild("emission");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("color".equals(propertyValue.getName())) {
mState.setEmissive(MaterialFace.FrontAndBack, _colladaDOMUtil.getColor(propertyValue.getText()));
} else if ("texture".equals(propertyValue.getName()) && _loadTextures) {
@@ -215,7 +215,7 @@ public class ColladaMaterialUtils {
/* Specular property */
property = blinnPhongLambert.getChild("specular");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("color".equals(propertyValue.getName())) {
mState.setSpecular(MaterialFace.FrontAndBack, _colladaDOMUtil.getColor(propertyValue.getText()));
} else if ("texture".equals(propertyValue.getName()) && _loadTextures) {
@@ -225,7 +225,7 @@ public class ColladaMaterialUtils {
/* Shininess property */
property = blinnPhongLambert.getChild("shininess");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("float".equals(propertyValue.getName())) {
float shininess = Float.parseFloat(propertyValue.getText().replace(",", "."));
if (shininess >= 0.0f && shininess <= 1.0f) {
@@ -248,7 +248,7 @@ public class ColladaMaterialUtils {
float reflectivity = 1.0f;
property = blinnPhongLambert.getChild("reflectivity");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("float".equals(propertyValue.getName())) {
reflectivity = Float.parseFloat(propertyValue.getText().replace(",", "."));
}
@@ -256,7 +256,7 @@ public class ColladaMaterialUtils {
/* Reflective property. Texture only */
property = blinnPhongLambert.getChild("reflective");
if (property != null) {
- final Element propertyValue = (Element) property.getChildren().get(0);
+ final Element propertyValue = property.getChildren().get(0);
if ("texture".equals(propertyValue.getName()) && _loadTextures) {
final Texture reflectiveTexture = populateTextureState(mesh, propertyValue, effect,
loadedTextures, mInfo, "reflective");
@@ -414,7 +414,7 @@ public class ColladaMaterialUtils {
}
if ("newparam".equals(node.getName())) {
- node = (Element) node.getChildren().get(0);
+ node = node.getChildren().get(0);
}
Element sampler = null;
@@ -434,7 +434,7 @@ public class ColladaMaterialUtils {
}
if ("newparam".equals(node.getName())) {
- node = (Element) node.getChildren().get(0);
+ node = node.getChildren().get(0);
}
if ("surface".equals(node.getName())) {
@@ -457,7 +457,7 @@ public class ColladaMaterialUtils {
// look for an init_from with lowest mip and use that. (usually 0)
// TODO: mip?
- final Element lowest = (Element) surface.getChildren("init_from").get(0);
+ final Element lowest = surface.getChildren("init_from").get(0);
// Element lowest = null;
// for (final Element i : (List<Element>) surface.getChildren("init_from")) {
// if (lowest == null || lowest.getMip() > i.getMip()) {
@@ -541,8 +541,7 @@ public class ColladaMaterialUtils {
return;
}
- for (final Element instance : (List<Element>) bindMaterial.getChild("technique_common").getChildren(
- "instance_material")) {
+ for (final Element instance : bindMaterial.getChild("technique_common").getChildren("instance_material")) {
final Element matNode = _colladaDOMUtil.findTargetWithId(instance.getAttributeValue("target"));
if (matNode != null && "material".equals(matNode.getName())) {
_dataCache.bindMaterial(instance.getAttributeValue("symbol"), matNode);
@@ -559,8 +558,7 @@ public class ColladaMaterialUtils {
if (bindMaterial == null || bindMaterial.getChildren().isEmpty()) {
return;
}
- for (final Element instance : (List<Element>) bindMaterial.getChild("technique_common").getChildren(
- "instance_material")) {
+ for (final Element instance : bindMaterial.getChild("technique_common").getChildren("instance_material")) {
_dataCache.unbindMaterial(instance.getAttributeValue("symbol"));
}
}
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMeshUtils.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMeshUtils.java
index bbff59e..c04e854 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMeshUtils.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaMeshUtils.java
@@ -13,10 +13,9 @@ package com.ardor3d.extension.model.collada.jdom;
import java.nio.FloatBuffer;
import java.util.EnumSet;
import java.util.LinkedList;
-import java.util.List;
import java.util.logging.Logger;
-import org.jdom.Element;
+import org.jdom2.Element;
import com.ardor3d.extension.model.collada.jdom.ColladaInputPipe.Type;
import com.ardor3d.extension.model.collada.jdom.data.DataCache;
@@ -88,7 +87,7 @@ public class ColladaMeshUtils {
// Create each as an Ardor3D Mesh, and attach to node
boolean hasChild = false;
if (cMesh.getChild("polygons") != null) {
- for (final Element p : (List<Element>) cMesh.getChildren("polygons")) {
+ for (final Element p : cMesh.getChildren("polygons")) {
final Mesh child = buildMeshPolygons(colladaGeometry, p);
if (child != null) {
if (child.getName() == null) {
@@ -100,7 +99,7 @@ public class ColladaMeshUtils {
}
}
if (cMesh.getChild("polylist") != null) {
- for (final Element p : (List<Element>) cMesh.getChildren("polylist")) {
+ for (final Element p : cMesh.getChildren("polylist")) {
final Mesh child = buildMeshPolylist(colladaGeometry, p);
if (child != null) {
if (child.getName() == null) {
@@ -112,7 +111,7 @@ public class ColladaMeshUtils {
}
}
if (cMesh.getChild("triangles") != null) {
- for (final Element t : (List<Element>) cMesh.getChildren("triangles")) {
+ for (final Element t : cMesh.getChildren("triangles")) {
final Mesh child = buildMeshTriangles(colladaGeometry, t);
if (child != null) {
if (child.getName() == null) {
@@ -124,7 +123,7 @@ public class ColladaMeshUtils {
}
}
if (cMesh.getChild("lines") != null) {
- for (final Element l : (List<Element>) cMesh.getChildren("lines")) {
+ for (final Element l : cMesh.getChildren("lines")) {
final Line child = buildMeshLines(colladaGeometry, l);
if (child != null) {
if (child.getName() == null) {
@@ -243,7 +242,7 @@ public class ColladaMeshUtils {
// use interval & sum of sizes of p entries to determine buffer sizes.
int numEntries = 0;
int numIndices = 0;
- for (final Element vals : (List<Element>) polys.getChildren("p")) {
+ for (final Element vals : polys.getChildren("p")) {
final int length = _colladaDOMUtil.parseIntArray(vals).length;
numEntries += length;
numIndices += (length / interval - 2) * 3;
@@ -268,7 +267,7 @@ public class ColladaMeshUtils {
// go through the polygon entries
int firstIndex = 0, vecIndex;
final int[] currentVal = new int[interval];
- for (final Element dia : (List<Element>) polys.getChildren("p")) {
+ for (final Element dia : polys.getChildren("p")) {
// for each p, iterate using max offset
final int[] vals = _colladaDOMUtil.parseIntArray(dia);
@@ -528,13 +527,13 @@ public class ColladaMeshUtils {
private int extractPipes(final Element inputsParent, final LinkedList<ColladaInputPipe> pipesStore) {
int maxOffset = 0;
int texCount = 0;
- for (final Element input : (List<Element>) inputsParent.getChildren("input")) {
+ for (final Element input : inputsParent.getChildren("input")) {
maxOffset = Math.max(maxOffset, _colladaDOMUtil.getAttributeIntValue(input, "offset", 0));
try {
final Type type = Type.valueOf(input.getAttributeValue("semantic"));
if (type == Type.VERTEX) {
final Element vertexElement = _colladaDOMUtil.findTargetWithId(input.getAttributeValue("source"));
- for (final Element vertexInput : (List<Element>) vertexElement.getChildren("input")) {
+ for (final Element vertexInput : vertexElement.getChildren("input")) {
vertexInput.setAttribute("offset", input.getAttributeValue("offset"));
vertexInput.setAttribute("isVertexDefined", "true");
final ColladaInputPipe pipe = new ColladaInputPipe(_colladaDOMUtil, vertexInput);
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaNodeUtils.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaNodeUtils.java
index eb5ae6f..165ad89 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaNodeUtils.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/ColladaNodeUtils.java
@@ -15,7 +15,7 @@ import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
-import org.jdom.Element;
+import org.jdom2.Element;
import com.ardor3d.extension.animation.skeletal.AttachmentPoint;
import com.ardor3d.extension.animation.skeletal.Joint;
@@ -87,7 +87,7 @@ public class ColladaNodeUtils {
// Load each sub node and attach
final JointNode baseJointNode = new JointNode(null);
_dataCache.setRootJointNode(baseJointNode);
- for (final Element n : (List<Element>) visualScene.getChildren("node")) {
+ for (final Element n : visualScene.getChildren("node")) {
final Node subNode = buildNode(n, baseJointNode);
if (subNode != null) {
sceneRoot.attachChild(subNode);
@@ -163,7 +163,7 @@ public class ColladaNodeUtils {
public AssetData parseAsset(final Element asset) {
final AssetData assetData = new AssetData();
- for (final Element child : (List<Element>) asset.getChildren()) {
+ for (final Element child : asset.getChildren()) {
if ("contributor".equals(child.getName())) {
parseContributor(assetData, child);
} else if ("created".equals(child.getName())) {
@@ -204,7 +204,7 @@ public class ColladaNodeUtils {
@SuppressWarnings("unchecked")
private void parseContributor(final AssetData assetData, final Element contributor) {
- for (final Element child : (List<Element>) contributor.getChildren()) {
+ for (final Element child : contributor.getChildren()) {
if ("author".equals(child.getName())) {
assetData.setAuthor(child.getText());
} else if ("authoringTool".equals(child.getName())) {
@@ -270,7 +270,7 @@ public class ColladaNodeUtils {
final Node node = new Node(nodeName);
final List<Element> transforms = new ArrayList<Element>();
- for (final Element child : (List<Element>) dNode.getChildren()) {
+ for (final Element child : dNode.getChildren()) {
if (_dataCache.getTransformTypes().contains(child.getName())) {
transforms.add(child);
}
@@ -287,7 +287,7 @@ public class ColladaNodeUtils {
}
// process any instance geometries
- for (final Element instance_geometry : (List<Element>) dNode.getChildren("instance_geometry")) {
+ for (final Element instance_geometry : dNode.getChildren("instance_geometry")) {
_colladaMaterialUtils.bindMaterials(instance_geometry.getChild("bind_material"));
final Spatial mesh = _colladaMeshUtils.getGeometryMesh(instance_geometry);
@@ -299,12 +299,12 @@ public class ColladaNodeUtils {
}
// process any instance controllers
- for (final Element instanceController : (List<Element>) dNode.getChildren("instance_controller")) {
+ for (final Element instanceController : dNode.getChildren("instance_controller")) {
_dataCache.getControllers().add(new ControllerStore(node, instanceController));
}
// process any instance nodes
- for (final Element in : (List<Element>) dNode.getChildren("instance_node")) {
+ for (final Element in : dNode.getChildren("instance_node")) {
final Node subNode = getNode(in, jointNode);
if (subNode != null) {
node.attachChild(subNode);
@@ -317,7 +317,7 @@ public class ColladaNodeUtils {
}
// process any concrete child nodes.
- for (final Element n : (List<Element>) dNode.getChildren("node")) {
+ for (final Element n : dNode.getChildren("node")) {
final Node subNode = buildNode(n, jointNode);
if (subNode != null) {
node.attachChild(subNode);
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/AnimationItem.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/AnimationItem.java
index 43c732b..400384c 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/AnimationItem.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/AnimationItem.java
@@ -1,94 +1,94 @@
-/**
- * Copyright (c) 2008-2012 Ardor Labs, Inc.
- *
- * This file is part of Ardor3D.
- *
- * Ardor3D is free software: you can redistribute it and/or modify it
- * under the terms of its license which may be found in the accompanying
- * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
- */
-
-package com.ardor3d.extension.model.collada.jdom.data;
-
-import java.io.IOException;
-import java.lang.reflect.Field;
-import java.util.ArrayList;
-import java.util.List;
-
-import com.ardor3d.annotation.SavableFactory;
-import com.ardor3d.extension.animation.skeletal.clip.AnimationClip;
-import com.ardor3d.util.export.InputCapsule;
-import com.ardor3d.util.export.OutputCapsule;
-import com.ardor3d.util.export.Savable;
-import com.google.common.collect.Lists;
-
-@SavableFactory(factoryMethod = "initSavable")
-public class AnimationItem implements Savable {
- private final String _name;
- private final List<AnimationItem> _children = Lists.newArrayList();
- private AnimationClip _animationClip;
-
- public AnimationItem(final String name) {
- _name = name;
- }
-
- public AnimationClip getAnimationClip() {
- return _animationClip;
- }
-
- public void setAnimationClip(final AnimationClip animationClip) {
- _animationClip = animationClip;
- }
-
- public String getName() {
- return _name;
- }
-
- public List<AnimationItem> getChildren() {
- return _children;
- }
-
- @Override
- public String toString() {
- return "AnimationItem [name=" + _name + (_animationClip != null ? ", " + _animationClip.toString() : "") + "]";
- }
-
- // /////////////////
- // Methods for Savable
- // /////////////////
-
- @Override
- public Class<? extends AnimationItem> getClassTag() {
- return this.getClass();
- }
-
- @Override
- public void read(final InputCapsule capsule) throws IOException {
- final String name = capsule.readString("name", "");
- try {
- final Field field1 = AnimationClip.class.getDeclaredField("_name");
- field1.setAccessible(true);
- field1.set(this, name);
- } catch (final Exception e) {
- e.printStackTrace();
- }
- _children.clear();
- _children.addAll(capsule.readSavableList("children", new ArrayList<AnimationItem>()));
- _animationClip = (AnimationClip) capsule.readSavable("animationClip", null);
- }
-
- @Override
- public void write(final OutputCapsule capsule) throws IOException {
- capsule.write(_name, "name", null);
- capsule.writeSavableList(_children, "children", null);
- capsule.write(_animationClip, "animationClip", null);
- }
-
- public static AnimationItem initSavable() {
- return new AnimationItem();
- }
-
- private AnimationItem() {
- this(null);
- }
-}
+/**
+ * Copyright (c) 2008-2012 Ardor Labs, Inc.
+ *
+ * This file is part of Ardor3D.
+ *
+ * Ardor3D is free software: you can redistribute it and/or modify it
+ * under the terms of its license which may be found in the accompanying
+ * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
+ */
+
+package com.ardor3d.extension.model.collada.jdom.data;
+
+import java.io.IOException;
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.List;
+
+import com.ardor3d.annotation.SavableFactory;
+import com.ardor3d.extension.animation.skeletal.clip.AnimationClip;
+import com.ardor3d.util.export.InputCapsule;
+import com.ardor3d.util.export.OutputCapsule;
+import com.ardor3d.util.export.Savable;
+import com.google.common.collect.Lists;
+
+@SavableFactory(factoryMethod = "initSavable")
+public class AnimationItem implements Savable {
+ private final String _name;
+ private final List<AnimationItem> _children = Lists.newArrayList();
+ private AnimationClip _animationClip;
+
+ public AnimationItem(final String name) {
+ _name = name;
+ }
+
+ public AnimationClip getAnimationClip() {
+ return _animationClip;
+ }
+
+ public void setAnimationClip(final AnimationClip animationClip) {
+ _animationClip = animationClip;
+ }
+
+ public String getName() {
+ return _name;
+ }
+
+ public List<AnimationItem> getChildren() {
+ return _children;
+ }
+
+ @Override
+ public String toString() {
+ return "AnimationItem [name=" + _name + (_animationClip != null ? ", " + _animationClip.toString() : "") + "]";
+ }
+
+ // /////////////////
+ // Methods for Savable
+ // /////////////////
+
+ @Override
+ public Class<? extends AnimationItem> getClassTag() {
+ return this.getClass();
+ }
+
+ @Override
+ public void read(final InputCapsule capsule) throws IOException {
+ final String name = capsule.readString("name", "");
+ try {
+ final Field field1 = AnimationClip.class.getDeclaredField("_name");
+ field1.setAccessible(true);
+ field1.set(this, name);
+ } catch (final Exception e) {
+ e.printStackTrace();
+ }
+ _children.clear();
+ _children.addAll(capsule.readSavableList("children", new ArrayList<AnimationItem>()));
+ _animationClip = (AnimationClip) capsule.readSavable("animationClip", null);
+ }
+
+ @Override
+ public void write(final OutputCapsule capsule) throws IOException {
+ capsule.write(_name, "name", null);
+ capsule.writeSavableList(_children, "children", null);
+ capsule.write(_animationClip, "animationClip", null);
+ }
+
+ public static AnimationItem initSavable() {
+ return new AnimationItem();
+ }
+
+ private AnimationItem() {
+ this(null);
+ }
+}
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/ControllerStore.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/ControllerStore.java
index 9da548b..b827add 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/ControllerStore.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/data/ControllerStore.java
@@ -1,7 +1,7 @@
package com.ardor3d.extension.model.collada.jdom.data;
-import org.jdom.Element;
+import org.jdom2.Element;
import com.ardor3d.scenegraph.Node;
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/ColladaExtraPlugin.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/ColladaExtraPlugin.java
index f9b4bd3..d766f38 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/ColladaExtraPlugin.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/ColladaExtraPlugin.java
@@ -1,19 +1,19 @@
-/**
- * Copyright (c) 2008-2012 Ardor Labs, Inc.
- *
- * This file is part of Ardor3D.
- *
- * Ardor3D is free software: you can redistribute it and/or modify it
- * under the terms of its license which may be found in the accompanying
- * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
- */
-
-package com.ardor3d.extension.model.collada.jdom.plugin;
-
-import org.jdom.Element;
-
-public interface ColladaExtraPlugin {
-
- boolean processExtra(Element extra, Object[] params);
-
-}
+/**
+ * Copyright (c) 2008-2012 Ardor Labs, Inc.
+ *
+ * This file is part of Ardor3D.
+ *
+ * Ardor3D is free software: you can redistribute it and/or modify it
+ * under the terms of its license which may be found in the accompanying
+ * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
+ */
+
+package com.ardor3d.extension.model.collada.jdom.plugin;
+
+import org.jdom2.Element;
+
+public interface ColladaExtraPlugin {
+
+ boolean processExtra(Element extra, Object[] params);
+
+}
diff --git a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/GoogleEarthPlugin.java b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/GoogleEarthPlugin.java
index 8481428..73621ff 100644
--- a/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/GoogleEarthPlugin.java
+++ b/ardor3d-collada/src/main/java/com/ardor3d/extension/model/collada/jdom/plugin/GoogleEarthPlugin.java
@@ -1,46 +1,44 @@
-/**
- * Copyright (c) 2008-2012 Ardor Labs, Inc.
- *
- * This file is part of Ardor3D.
- *
- * Ardor3D is free software: you can redistribute it and/or modify it
- * under the terms of its license which may be found in the accompanying
- * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
- */
-
-package com.ardor3d.extension.model.collada.jdom.plugin;
-
-import java.util.List;
-
-import org.jdom.Attribute;
-import org.jdom.Element;
-
-import com.ardor3d.renderer.state.CullState;
-import com.ardor3d.scenegraph.Mesh;
-
-public class GoogleEarthPlugin implements ColladaExtraPlugin {
- @SuppressWarnings("unchecked")
- @Override
- public boolean processExtra(final Element extra, final Object[] params) {
- if (params.length > 0 && params[0] instanceof Mesh) {
- final Mesh mesh = (Mesh) params[0];
- // should have a child: <technique profile="GOOGLEEARTH">
- final Element technique = extra.getChild("technique");
- if (technique != null) {
- final Attribute profile = technique.getAttribute("profile");
- if (profile != null && "GOOGLEEARTH".equalsIgnoreCase(profile.getValue())) {
- for (final Element child : (List<Element>) technique.getChildren()) {
- // disable back face culling if it's been enabled.
- if ("double_sided".equalsIgnoreCase(child.getName()) && "1".equals(child.getTextTrim())) {
- final CullState cs = new CullState();
- cs.setEnabled(false);
- mesh.setRenderState(cs);
- }
- }
- return true;
- }
- }
- }
- return false;
- }
-}
+/**
+ * Copyright (c) 2008-2012 Ardor Labs, Inc.
+ *
+ * This file is part of Ardor3D.
+ *
+ * Ardor3D is free software: you can redistribute it and/or modify it
+ * under the terms of its license which may be found in the accompanying
+ * LICENSE file or at <http://www.ardor3d.com/LICENSE>.
+ */
+
+package com.ardor3d.extension.model.collada.jdom.plugin;
+
+import org.jdom2.Attribute;
+import org.jdom2.Element;
+
+import com.ardor3d.renderer.state.CullState;
+import com.ardor3d.scenegraph.Mesh;
+
+public class GoogleEarthPlugin implements ColladaExtraPlugin {
+
+ @Override
+ public boolean processExtra(final Element extra, final Object[] params) {
+ if (params.length > 0 && params[0] instanceof Mesh) {
+ final Mesh mesh = (Mesh) params[0];
+ // should have a child: <technique profile="GOOGLEEARTH">
+ final Element technique = extra.getChild("technique");
+ if (technique != null) {
+ final Attribute profile = technique.getAttribute("profile");
+ if (profile != null && "GOOGLEEARTH".equalsIgnoreCase(profile.getValue())) {
+ for (final Element child : technique.getChildren()) {
+ // disable back face culling if it's been enabled.
+ if ("double_sided".equalsIgnoreCase(child.getName()) && "1".equals(child.getTextTrim())) {
+ final CullState cs = new CullState();
+ cs.setEnabled(false);
+ mesh.setRenderState(cs);
+ }
+ }
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+}