PMeshWriter
Date: 2019-10-22

org.jmol.shapesurface

## Class PMeshWriter

- java.lang.Object
- - org.jmol.shapesurface.PMeshWriter

-     public class PMeshWriter
      extends java.lang.Object

  A class called by reflection from IsosurfaceMesh from the Jmol command WRITE xxxx.pmesh (ascii) or WRITE xxxx.pmb (binary)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private javajs.util.BS` | `bsPolygons`
    `private boolean` | `colorArrayed`
    `private boolean` | `colorSolid`
    `private short[]` | `contourColixes`
    `private short` | `cx`
    `private boolean` | `haveBsDisplay`
    `private int` | `i0`
    `private int[]` | `imap`
    `private IsosurfaceMesh` | `imesh`
    `(package private) boolean` | `isBinary`
    `private boolean` | `noColor`
    `private javajs.util.OC` | `oc`
    `private int[][]` | `polygonIndexes`
    `private boolean` | `selectedPolyOnly`
    `private short[]` | `vertexColixes`
    `private int` | `vertexCount`
    `private float[]` | `vertexValues`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PMeshWriter()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `private void` | `checkPoints(javajs.util.BS bsVert)`
    `private void` | `checkTriangles(boolean fill, javajs.util.BS bsPoly, javajs.util.BS bsVert)`
    `private void` | `outputEdge(int iA, int iB, int color)`
    `private void` | `outputInt(int i)`
    `private int` | `outputPoint(int iA, int color)`
    `private void` | `outputPoints(javajs.util.BS bsPoints)`
    `private void` | `outputTriangle(int iA, int iB, int iC, int color, int check)`
    `private void` | `outputTriangles(boolean fill, javajs.util.BS bsPoly, javajs.util.BS bsDone)`
    `private void` | `outputXYZ(javajs.util.T3 pt)`
    `private void` | `setup(boolean fill)`
    `(package private) java.lang.Object` | `write(IsosurfaceMesh isosurfaceMesh, boolean isBinary)`
    `private void` | `writePmeshHeader(int nV)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### imesh

          private IsosurfaceMesh imesh

    - #### isBinary

          boolean isBinary

    - #### oc

          private javajs.util.OC oc

    - #### i0

          private int i0

    - #### polygonIndexes

          private int[][] polygonIndexes

    - #### selectedPolyOnly

          private boolean selectedPolyOnly

    - #### bsPolygons

          private javajs.util.BS bsPolygons

    - #### haveBsDisplay

          private boolean haveBsDisplay

    - #### colorSolid

          private boolean colorSolid

    - #### colorArrayed

          private boolean colorArrayed

    - #### cx

          private short cx

    - #### vertexColixes

          private short[] vertexColixes

    - #### noColor

          private boolean noColor

    - #### contourColixes

          private short[] contourColixes

    - #### vertexValues

          private float[] vertexValues

    - #### vertexCount

          private int vertexCount

    - #### imap

          private int[] imap

  - ### Constructor Detail

    - #### PMeshWriter

          public PMeshWriter()

  - ### Method Detail

    - #### write

          java.lang.Object write(IsosurfaceMesh isosurfaceMesh,
                                 boolean isBinary)

    - #### outputPoints

          private void outputPoints(javajs.util.BS bsPoints)

    - #### outputTriangles

          private void outputTriangles(boolean fill,
                                       javajs.util.BS bsPoly,
                                       javajs.util.BS bsDone)

    - #### checkPoints

          private void checkPoints(javajs.util.BS bsVert)

    - #### checkTriangles

          private void checkTriangles(boolean fill,
                                      javajs.util.BS bsPoly,
                                      javajs.util.BS bsVert)

    - #### setup

          private void setup(boolean fill)

    - #### writePmeshHeader

          private void writePmeshHeader(int nV)

    - #### outputInt

          private void outputInt(int i)

    - #### outputPoint

          private int outputPoint(int iA,
                                  int color)

    - #### outputXYZ

          private void outputXYZ(javajs.util.T3 pt)

    - #### outputEdge

          private void outputEdge(int iA,
                                  int iB,
                                  int color)

    - #### outputTriangle

          private void outputTriangle(int iA,
                                      int iB,
                                      int iC,
                                      int color,
                                      int check)