The class that uses jReality (part of program1) is given below.java.lang.NullPointerException
at gnu.xml.aelfred2.SAXDriver.getLineNumber(SAXDriver.java:1165)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.getLineNumber(Parser.java:1388)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.parseTopLevel(Parser.java:1087)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.parsePattern(Parser.java:1078)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Template.parseContents(Template.java:213)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Stylesheet.parseOwnChildren(Stylesheet.java:590)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Stylesheet.parseContents(Stylesheet.java:562)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.createAST(Parser.java:381)
at com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.compile(XSLTC.java:344)
at com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.compile(XSLTC.java:429)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:792)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:614)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadConfiguration(ToolSystemConfiguration.java:136)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadDefaultDesktopConfiguration(ToolSystemConfiguration.java:100)
at de.jreality.ui.viewerapp.ViewerApp$3.run(ViewerApp.java:588)
at de.jreality.ui.viewerapp.ViewerApp$3.run(ViewerApp.java:579)
at java.security.AccessController.doPrivileged(Native Method)
at de.jreality.util.Secure.doPrivileged(Secure.java:49)
at de.jreality.ui.viewerapp.ViewerApp.loadToolSystemConfiguration(ViewerApp.java:579)
at de.jreality.ui.viewerapp.ViewerApp.createToolSystem(ViewerApp.java:555)
at de.jreality.ui.viewerapp.ViewerApp.access$000(ViewerApp.java:107)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:466)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:463)
at java.security.AccessController.doPrivileged(Native Method)
at de.jreality.util.Secure.doPrivileged(Secure.java:49)
at de.jreality.ui.viewerapp.ViewerApp.setupViewer(ViewerApp.java:463)
at de.jreality.ui.viewerapp.ViewerApp.init(ViewerApp.java:225)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:189)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:159)
at BasicNurbsClasses.VISUALIZERS.XYCurve_jReality.setUpPlots(XYCurve_jReality.java:31)
at BasicNurbsClasses.BSplineCurve.drawCurve(BSplineCurve.java:54)
at BasicNurbsClasses.BSplineCurve.<init>(BSplineCurve.java:37)
at BasicNurbsClasses.BSplineCurve.main(BSplineCurve.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
ERROR: 'null'
FATAL ERROR: 'Could not compile stylesheet'
javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:825)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:614)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadConfiguration(ToolSystemConfiguration.java:136)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadDefaultDesktopConfiguration(ToolSystemConfiguration.java:100)
at de.jreality.ui.viewerapp.ViewerApp$3.run(ViewerApp.java:588)
at de.jreality.ui.viewerapp.ViewerApp$3.run(ViewerApp.java:579)
at java.security.AccessController.doPrivileged(Native Method)
at de.jreality.util.Secure.doPrivileged(Secure.java:49)
at de.jreality.ui.viewerapp.ViewerApp.loadToolSystemConfiguration(ViewerApp.java:579)
at de.jreality.ui.viewerapp.ViewerApp.createToolSystem(ViewerApp.java:555)
at de.jreality.ui.viewerapp.ViewerApp.access$000(ViewerApp.java:107)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:466)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:463)
at java.security.AccessController.doPrivileged(Native Method)
at de.jreality.util.Secure.doPrivileged(Secure.java:49)
at de.jreality.ui.viewerapp.ViewerApp.setupViewer(ViewerApp.java:463)
at de.jreality.ui.viewerapp.ViewerApp.init(ViewerApp.java:225)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:189)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:159)
at BasicNurbsClasses.VISUALIZERS.XYCurve_jReality.setUpPlots(XYCurve_jReality.java:31)
at BasicNurbsClasses.BSplineCurve.drawCurve(BSplineCurve.java:54)
at BasicNurbsClasses.BSplineCurve.<init>(BSplineCurve.java:37)
at BasicNurbsClasses.BSplineCurve.main(BSplineCurve.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
java.lang.NullPointerException
at gnu.xml.aelfred2.SAXDriver.getLineNumber(SAXDriver.java:1165)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.getLineNumber(Parser.java:1388)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.parseTopLevel(Parser.java:1087)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.parsePattern(Parser.java:1078)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Template.parseContents(Template.java:213)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Stylesheet.parseOwnChildren(Stylesheet.java:590)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Stylesheet.parseContents(Stylesheet.java:562)
at com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.createAST(Parser.java:381)
at com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.compile(XSLTC.java:344)
at com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.compile(XSLTC.java:429)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:792)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:614)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadConfiguration(ToolSystemConfiguration.java:136)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadDefaultConfiguration(ToolSystemConfiguration.java:86)
at de.jreality.toolsystem.ToolSystem.loadConfiguration(ToolSystem.java:250)
at de.jreality.toolsystem.ToolSystem.<init>(ToolSystem.java:265)
at de.jreality.ui.viewerapp.ViewerApp.createToolSystem(ViewerApp.java:559)
at de.jreality.ui.viewerapp.ViewerApp.access$000(ViewerApp.java:107)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:466)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:463)
at java.security.AccessController.doPrivileged(Native Method)
at de.jreality.util.Secure.doPrivileged(Secure.java:49)
at de.jreality.ui.viewerapp.ViewerApp.setupViewer(ViewerApp.java:463)
at de.jreality.ui.viewerapp.ViewerApp.init(ViewerApp.java:225)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:189)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:159)
at BasicNurbsClasses.VISUALIZERS.XYCurve_jReality.setUpPlots(XYCurve_jReality.java:31)
at BasicNurbsClasses.BSplineCurve.drawCurve(BSplineCurve.java:54)
at BasicNurbsClasses.BSplineCurve.<init>(BSplineCurve.java:37)
at BasicNurbsClasses.BSplineCurve.main(BSplineCurve.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
ERROR: 'null'
FATAL ERROR: 'Could not compile stylesheet'
javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:825)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:614)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadConfiguration(ToolSystemConfiguration.java:136)
at de.jreality.toolsystem.config.ToolSystemConfiguration.loadDefaultConfiguration(ToolSystemConfiguration.java:86)
at de.jreality.toolsystem.ToolSystem.loadConfiguration(ToolSystem.java:250)
at de.jreality.toolsystem.ToolSystem.<init>(ToolSystem.java:265)
at de.jreality.ui.viewerapp.ViewerApp.createToolSystem(ViewerApp.java:559)
at de.jreality.ui.viewerapp.ViewerApp.access$000(ViewerApp.java:107)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:466)
at de.jreality.ui.viewerapp.ViewerApp$1.run(ViewerApp.java:463)
at java.security.AccessController.doPrivileged(Native Method)
at de.jreality.util.Secure.doPrivileged(Secure.java:49)
at de.jreality.ui.viewerapp.ViewerApp.setupViewer(ViewerApp.java:463)
at de.jreality.ui.viewerapp.ViewerApp.init(ViewerApp.java:225)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:189)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:159)
at BasicNurbsClasses.VISUALIZERS.XYCurve_jReality.setUpPlots(XYCurve_jReality.java:31)
at BasicNurbsClasses.BSplineCurve.drawCurve(BSplineCurve.java:54)
at BasicNurbsClasses.BSplineCurve.<init>(BSplineCurve.java:37)
at BasicNurbsClasses.BSplineCurve.main(BSplineCurve.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
Exception in thread "main" java.lang.NullPointerException
at de.jreality.ui.viewerapp.ViewerApp.setupViewer(ViewerApp.java:471)
at de.jreality.ui.viewerapp.ViewerApp.init(ViewerApp.java:225)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:189)
at de.jreality.ui.viewerapp.ViewerApp.<init>(ViewerApp.java:159)
at BasicNurbsClasses.VISUALIZERS.XYCurve_jReality.setUpPlots(XYCurve_jReality.java:31)
at BasicNurbsClasses.BSplineCurve.drawCurve(BSplineCurve.java:54)
at BasicNurbsClasses.BSplineCurve.<init>(BSplineCurve.java:37)
at BasicNurbsClasses.BSplineCurve.main(BSplineCurve.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
Code: Select all
public class XYCurve_jReality {
private IndentingPrinter printer;
private String title;
public XYCurve_jReality(String title, IndentingPrinter printer) {
this.printer = printer;
this.title = title;
}
public void setUpPlots(double[][][] curvePoints) {
ViewerApp va = new ViewerApp(createCurveGeometry(curvePoints));
CameraUtility.encompass(va.getCurrentViewer());
JFrame f = new JFrame(title);
f.getContentPane().add((Component) va.getViewingComponent());
f.setSize(512, 512);
f.validate();
f.setVisible(true);
}
public SceneGraphComponent createCurveGeometry(double[][][] curvePoints) {
SceneGraphComponent sgc = new SceneGraphComponent();
IndexedLineSetFactory factory = new IndexedLineSetFactory();
double[][] vertices = generatePoints();
int[][] edgeIndices = createEdgeIndices(vertices);
factory.setVertexCount(vertices.length);
factory.setVertexCoordinates(vertices);
factory.setLineCount(edgeIndices.length);
factory.setEdgeIndices(edgeIndices);
factory.update();
sgc.setGeometry(factory.getPointSet());
sgc.setGeometry(factory.getIndexedLineSet());
//setUpCoordinateAxes(sgc);
return sgc;
}
public int[][] createEdgeIndices(double[][] points) {
int[][] edges = new int[points.length - 1][2];
for (int i = 0; i < points.length - 1; i++) {
edges[i][0] = i;
edges[i][1] = i + 1;
}
return edges;
}
public void setUpCoordinateAxes(SceneGraphComponent sgc) {
double axisScale = 5.0;
Font font = new Font("TimesRoman", Font.PLAIN, 50);
int[][] edges = new int[][]{{-1, 1}, {-1, 1}, {1, 1}};
Color green = new Color(0, 255, 0);
Color blue = new Color(0, 0, 255);
Color red = new Color(255, 0, 0);
CoordinateSystemFactory factory2 = new CoordinateSystemFactory(sgc, axisScale);
factory2.setLabelBoxEdges(edges);
factory2.setLabelScale(.02);
factory2.setLabelFont(font);
factory2.showAxes(true);
factory2.setLabelColor(blue);
factory2.showLabels(true);
factory2.showAxesArrows(true);
factory2.setColor(green);
factory2.setGridColor(red);
factory2.showBox(true);
factory2.beautify(true);
}
public double[][] generatePoints() {
double[][] points = new double[13][3];
double[] point1 = new double[3];
point1 = new double[]{0.0, 0.0, 0.0};
points[0] = point1;
double[] point2 = new double[3];
point2 = new double[]{2.0, 2.0, 0.0};
points[1] = point2;
double[] point3 = new double[3];
point3 = new double[]{5.0, 9.0, 0.0};
points[2] = point3;
double[] point4 = new double[3];
point4 = new double[]{10.0, 10.0, 0.0};
points[3] = point4;
double[] point5 = new double[3];
point5 = new double[]{12.0, 8.0, 0.0};
points[4] = point5;
double[] point6 = new double[3];
point6 = new double[]{18.0, 2.0, 0.0};
points[5] = point6;
double[] point7 = new double[3];
point7 = new double[]{20.0, 0.0, 0.0};
points[6] = point7;
double[] point8 = new double[3];
point8 = new double[]{22.0, 2.0, 0.0};
points[7] = point8;
double[] point9 = new double[3];
point9 = new double[]{25.0, 9.0, 0.0};
points[8] = point9;
double[] point10 = new double[3];
point10 = new double[]{30.0, 10.0, 0.0};
points[9] = point10;
double[] point11 = new double[3];
point11 = new double[]{32.0, 8.0, 0.0};
points[10] = point11;
double[] point12 = new double[3];
point12 = new double[]{38.0, 2.0, 0.0};
points[11] = point12;
double[] point13 = new double[3];
point13 = new double[]{40.0, 0.0, 0.0};
points[12] = point13;
return points;
}
}
Thanks,
Karuna