Package org.jmol.export
Class _VrmlExporter
java.lang.Object
org.jmol.export.___Exporter
org.jmol.export.__CartesianExporter
org.jmol.export._VrmlExporter
- Direct Known Subclasses:
_StlExporter
,_X3dExporter
A basic VRML generator. Modified 10/2016 to no longer
use high-level objects Cone, Sphere, and Cylinder.
Makes substantial use of DEF and USE to reduce file size
hugely.
- Author:
- Bob Hanson
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String
protected String
protected float
protected String
protected P3
protected P3
protected P3
protected org.jmol.export.UseTable
Fields inherited from class org.jmol.export.__CartesianExporter
canCapCylinders, noColor, sphereMatrix, viewpoint
Fields inherited from class org.jmol.export.___Exporter
apertureAngle, backgroundColix, cameraDistance, cameraPosition, center, commandLineOptions, commentChar, degreesPerRadian, depthZ, export3D, exportScale, fileName, fixedRotationCenter, gdata, lightSource, lineWidthMad, out, privateKey, referenceCenter, scalePixelsPerAngstrom, screenHeight, screenWidth, slabZ, solidOnly, tempP1, tempP2, tempP3, tempV1, tempV2, tm, vwr
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected String
protected float
protected void
protected void
outputAppearance
(short colix, boolean isText) protected void
outputAttr
(String attr, float x, float y, float z) protected void
outputAttrPt
(String attr, T3 pt) protected void
protected void
protected void
protected void
protected void
outputCircle
(P3 pt1, P3 pt2, float radius, short colix, boolean doFill) protected void
protected void
outputColorIndices
(int[][] indices, int nPolygons, BS bsPolygons, int faceVertexMax, Map<Short, Integer> htColixes, short[] colixes, short[] polygonColixes) protected void
outputColors
(Lst<Short> colorList) protected void
outputCone
(P3 ptBase, P3 ptTip, float radius, short colix) protected boolean
outputCylinder
(P3 ptCenter, P3 pt1, P3 pt2, short colix, byte endcaps, float radius, P3 ptX, P3 ptY, boolean checkRadius) protected void
outputCylinderChildScaled
(short colix, byte endcaps) protected void
outputDefChildFaceSet
(String child) protected void
outputEllipsoid
(P3 ptCenter, P3[] points, short colix) protected void
outputFace
(int[] face, int[] map, int faceVertexMax) protected void
protected void
protected void
protected void
outputGeometry
(T3[] vertices, T3[] normals, short[] colixes, int[][] indices, short[] polygonColixes, int nVertices, int nPolygons, BS bsPolygons, int faceVertexMax, Lst<Short> colorList, Map<Short, Integer> htColixes, P3 offset) protected void
protected void
protected void
outputNormals
(Lst<String> vNormals) protected void
outputQuaternionFrame
(P3 ptCenter, P3 ptX, P3 ptY, P3 ptZ, float xScale, float yScale, float zScale) protected void
outputRotation
(A4 a) protected void
protected void
protected void
outputSolidPlate
(P3 tempP1, P3 tempP2, P3 tempP3, short colix) protected void
outputSphere
(P3 ptCenter, float radius, short colix, boolean checkRadius) protected void
outputSurface
(T3[] vertices, T3[] normals, short[] colixes, int[][] indices, short[] polygonColixes, int nVertices, int nPolygons, int nTriangles, BS bsPolygons, int faceVertexMax, short colix, Lst<Short> colorList, Map<Short, Integer> htColixes, P3 offset) protected void
outputTextPixel
(P3 pt, int argb) protected void
outputTransRot
(P3 pt1, P3 pt2, int x, int y, int z) protected void
outputTriangle
(T3 pt1, T3 pt2, T3 pt3, short colix) protected void
outputUseChildClose
(String child) protected void
protected void
Methods inherited from class org.jmol.export.__CartesianExporter
fillTriangle, getCameraPosition, getCoordinateMap, getModelCenter, getNormalMap, outputIndices, setSphereMatrix
Methods inherited from class org.jmol.export.___Exporter
finalizeOutput, finalizeOutput2, fixScreenZ, getByteCount, getColorList, getConeMesh, getExportDate, getJmolPerspective, getRotationMatrix, getRotationMatrix, getTriad, getTriadC, initOutput, opacityFractionalFromArgb, opacityFractionalFromColix, output, outputComment, outputJmolPerspective, outputVertex, outputVertices, rgbFractionalFromArgb, rgbFractionalFromColix, round, round, setTempVertex, translucencyFractionalFromColix
-
Field Details
-
useTable
protected org.jmol.export.UseTable useTable -
tempQ1
-
tempQ2
-
tempQ3
-
fontSize
protected float fontSize -
fontFace
-
fontStyle
-
fontChild
-
-
Constructor Details
-
_VrmlExporter
public _VrmlExporter()
-
-
Method Details
-
output
- Specified by:
output
in class___Exporter
-
outputHeader
protected void outputHeader()- Specified by:
outputHeader
in class___Exporter
-
outputInitialTransform
protected void outputInitialTransform() -
getViewpoint
protected float getViewpoint() -
outputAppearance
protected void outputAppearance(short colix, boolean isText) -
pushMatrix
protected void pushMatrix() -
popMatrix
protected void popMatrix() -
outputAttrPt
-
outputAttr
-
outputRotation
-
outputTransRot
-
outputQuaternionFrame
-
outputChildShapeStart
protected void outputChildShapeStart() -
outputChildStart
protected void outputChildStart() -
outputShapeStart
protected void outputShapeStart() -
outputDefChildFaceSet
-
outputFaceSetStart
protected void outputFaceSetStart() -
outputFaceSetClose
protected void outputFaceSetClose() -
outputUseChildClose
-
outputChildShapeClose
protected void outputChildShapeClose() -
outputChildClose
protected void outputChildClose() -
outputShapeClose
protected void outputShapeClose() -
outputCloseTag
protected void outputCloseTag() -
outputCircle
- Specified by:
outputCircle
in class__CartesianExporter
-
outputCone
- Specified by:
outputCone
in class__CartesianExporter
-
outputCylinder
protected boolean outputCylinder(P3 ptCenter, P3 pt1, P3 pt2, short colix, byte endcaps, float radius, P3 ptX, P3 ptY, boolean checkRadius) - Specified by:
outputCylinder
in class__CartesianExporter
-
outputCylinderChildScaled
protected void outputCylinderChildScaled(short colix, byte endcaps) -
outputSphere
- Specified by:
outputSphere
in class__CartesianExporter
-
outputEllipsoid
- Specified by:
outputEllipsoid
in class__CartesianExporter
-
outputSolidPlate
- Overrides:
outputSolidPlate
in class__CartesianExporter
- Parameters:
tempP1
-tempP2
-tempP3
-colix
-
-
outputSurface
protected void outputSurface(T3[] vertices, T3[] normals, short[] colixes, int[][] indices, short[] polygonColixes, int nVertices, int nPolygons, int nTriangles, BS bsPolygons, int faceVertexMax, short colix, Lst<Short> colorList, Map<Short, Integer> htColixes, P3 offset) - Overrides:
outputSurface
in class___Exporter
- Parameters:
vertices
- generally unique vertices [0:nVertices)normals
- one per vertexcolixes
- one per vertex, or nullindices
- one per triangular or quad polygon; may have additional elements beyond vertex indices if faceVertexMax = 3 triangular if faceVertexMax == 3; 3 or 4 if face VertexMax = 4polygonColixes
- face-based colixesnVertices
- vertices[nVertices-1] is last vertexnPolygons
- indices[nPolygons - 1] is last polygonnTriangles
- number of triangular faces requiredbsPolygons
- number of polygons (triangles or quads)faceVertexMax
- (3) triangles only, indices[][i] may have more elements (4) triangles and quads; indices[][i].length determinescolix
- overall (solid) color indexcolorList
- list of unique color IDshtColixes
- map of color IDs to colorListoffset
-
-
outputGeometry
-
outputFace
protected void outputFace(int[] face, int[] map, int faceVertexMax) - Specified by:
outputFace
in class__CartesianExporter
-
outputNormals
-
outputColors
-
outputColorIndices
-
outputTriangle
- Specified by:
outputTriangle
in class__CartesianExporter
-
outputTextPixel
- Specified by:
outputTextPixel
in class__CartesianExporter
-
getDef
-