public void outputContext(PrintWriter printStream, String indentString) { AppearanceNode appearance = getAppearanceNodes(); if (appearance != null) { if (appearance.isInstanceNode() == false) { String nodeName = appearance.getName(); if (nodeName != null && 0 < nodeName.length()) printStream.println( indentString + "\t" + "appearance DEF " + appearance.getName() + " Appearance {"); else printStream.println(indentString + "\t" + "appearance Appearance {"); appearance.outputContext(printStream, indentString + "\t"); printStream.println(indentString + "\t" + "}"); } else printStream.println(indentString + "\t" + "appearance USE " + appearance.getName()); } Node geonode = getGeometry3DNode(); if (geonode != null) { if (geonode.isInstanceNode() == false) { String nodeName = geonode.getName(); if (nodeName != null && 0 < nodeName.length()) printStream.println( indentString + "\t" + "geometry DEF " + geonode.getName() + " " + geonode.getTypeString() + " {"); else printStream.println(indentString + "\t" + "geometry " + geonode.getTypeString() + " {"); geonode.outputContext(printStream, indentString + "\t"); printStream.println(indentString + "\t" + "}"); } else printStream.println(indentString + "\t" + "geometry USE " + geonode.getName()); } }