You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-dev@xmlgraphics.apache.org by Jaime Gaviria <ki...@yahoo.com> on 2003/04/09 23:48:54 UTC
Determinant is 0
Regards,
Operating System : WinXP
JDK version : 1.4.1
I'm try to run my demo.... but the JSVGCanvas let me know the error :
SVGError : Determinant is 0
java.awt.geom.NoninvertibleTransformException: Determinant is 0 at java.awt.geom.AffineTransform.createInverse(AffineTransform.java:2033) at org.apache.batik.swing.gvt.JGVTComponent.setRenderingTransform(Unknown Source) at org.apache.batik.swing.svg.JSVGComponent.computeRenderingTransform(Unknown Source) at org.apache.batik.swing.svg.JSVGComponent$SVGListener.gvtBuildStarted(Unknown Source)
at org.apache.batik.swing.svg.GVTTreeBuilder$1.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:171)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:448)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy
EventDispatchThread.java:197)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:99)
The source code is :
import java.io.IOException;
import javax.swing.JFrame;
import org.apache.batik.dom.svg.SAXSVGDocumentFactory;
import org.apache.batik.dom.svg.SVGDOMImplementation;
import org.apache.batik.swing.JSVGCanvas;
import org.apache.batik.util.XMLResourceDescriptor;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.svg.SVGDocument;
public class SVGSaxExample {
private static Document doc;
private static final String svgNS = SVGDOMImplementation.SVG_NAMESPACE_URI;
public static void main(String[] args) {
String parser = XMLResourceDescriptor.getXMLParserClassName();
System.out.println("Parser used : " + parser);
String cssparser = XMLResourceDescriptor.getCSSParserClassName();
System.out.println("CSS Parser used : " + cssparser);
SAXSVGDocumentFactory f = new SAXSVGDocumentFactory(parser);
String myURI= "file:/C:/eclipse-SDK-M5-win32/workspace/SVGViewer/final.svg";
try {
doc = f.createDocument(myURI);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Begin Documento ... ");
traverse(doc);
System.out.println("End Documento ... ");
// Now, display the document
JSVGCanvas canvas = new JSVGCanvas();
JFrame myframe = new JFrame();
myframe.getContentPane().add(canvas);
canvas.setSVGDocument((SVGDocument)doc);
myframe.pack();
myframe.setVisible(true);
}
// Traverse DOM Tree. Print out Element Names
private static void traverse (Node node) {
int type = node.getNodeType();
if (type == Node.ELEMENT_NODE)
System.out.println (node.getNodeName());
NodeList children = node.getChildNodes();
if (children != null) {
for (int i=0; i< children.getLength(); i++)
traverse (children.item(i));
}
}
}
Thanks
---------------------------------
Do You Yahoo!?
Todo lo que quieres saber de Estados Unidos, América Latina y el resto del Mundo.
Visíta Yahoo! Noticias.