Package org.jmol.util

Class MeshSurface

java.lang.Object
org.jmol.util.MeshSurface
Direct Known Subclasses:
Mesh, MeshData

public class MeshSurface extends Object
  • Field Details

    • SEED_COUNT

      protected static final int SEED_COUNT
      See Also:
    • P_CHECK

      public static final int P_CHECK
      See Also:
    • P_CONTOUR

      public static final int P_CONTOUR
      See Also:
    • P_EXPLICIT_COLOR

      public static final int P_EXPLICIT_COLOR
      See Also:
    • vwr

      public Viewer vwr
    • slicer

      private MeshSlicer slicer
    • oabc

      public javajs.util.V3[] oabc
    • meshType

      public String meshType
    • vc

      public int vc
      vertex count
    • vs

      public javajs.util.T3[] vs
      vertices
    • vvs

      public float[] vvs
      vertex values
    • vertexSource

      public int[] vertexSource
    • surfaceAtoms

      public javajs.util.BS surfaceAtoms
    • pc

      public int pc
      polygon count
    • pis

      public int[][] pis
      polygon indexes
    • colorsExplicit

      public boolean colorsExplicit
    • isDrawPolygon

      public boolean isDrawPolygon
    • haveQuads

      public boolean haveQuads
    • colix

      public short colix
    • colixBack

      public short colixBack
    • isColorSolid

      public boolean isColorSolid
    • offset

      public javajs.util.P3 offset
    • altVertices

      public javajs.util.T3[] altVertices
    • pcs

      public short[] pcs
      polygon color index "colix" array
    • vcs

      public short[] vcs
      vertex color index "colix" array
    • normals

      public javajs.util.T3[] normals
    • normalsTemp

      public javajs.util.V3[] normalsTemp
    • normalCount

      public int normalCount
    • normixCount

      public int normixCount
    • bsPolygons

      public javajs.util.BS bsPolygons
    • mat4

      public javajs.util.M4 mat4
    • surfaceSet

      public javajs.util.BS[] surfaceSet
    • vertexSets

      public int[] vertexSets
    • nSets

      public int nSets
    • dataOnly

      public boolean dataOnly
    • lastColor

      private int lastColor
    • lastColix

      private short lastColix
    • iA

      protected int iA
    • iB

      protected int iB
    • iC

      protected int iC
    • polygonCount0

      public int polygonCount0
    • vertexCount0

      public int vertexCount0
    • bsSlabDisplay

      public javajs.util.BS bsSlabDisplay
    • bsSlabGhost

      public javajs.util.BS bsSlabGhost
    • slabMeshType

      public int slabMeshType
    • slabColix

      public short slabColix
    • bsDisplay

      public javajs.util.BS bsDisplay
    • slabOptions

      public javajs.util.SB slabOptions
    • mergeVertexCount0

      public int mergeVertexCount0
    • mergePolygonCount0

      public int mergePolygonCount0
    • isMerged

      public boolean isMerged
  • Constructor Details

    • MeshSurface

      public MeshSurface()
  • Method Details

    • getMeshSlicer

      public MeshSlicer getMeshSlicer()
    • newMesh

      public static MeshSurface newMesh(boolean isAlt, javajs.util.T3[] vertices, int vertexCount, int[][] polygonIndexes, javajs.util.T3[] normals, int nNormals)
    • getVertices

      public javajs.util.T3[] getVertices()
      Returns:
      The vertices.
    • getFaces

      public int[][] getFaces()
      Returns:
      faces, if defined (in exporter), otherwise polygonIndexes
    • setColix

      public void setColix(short colix)
    • setColixBack

      public void setColixBack(short colix)
    • addV

      public int addV(javajs.util.T3 vertex, boolean asCopy)
    • addTriangle

      public void addTriangle(int vertexA, int vertexB, int vertexC)
    • addQuad

      public void addQuad(int vertexA, int vertexB, int vertexC, int vertexD)
    • setPolygonCount

      public void setPolygonCount(int polygonCount)
    • addVCVal

      public int addVCVal(javajs.util.T3 vertex, float value, boolean asCopy)
    • addTriangleCheck

      public int addTriangleCheck(int vertexA, int vertexB, int vertexC, int check, int iContour, int color)
    • addPolygonV3

      int addPolygonV3(int vertexA, int vertexB, int vertexC, int check, int iContour, int color, javajs.util.BS bs)
    • addPolygonC

      protected int addPolygonC(int[] polygon, int color, javajs.util.BS bs, boolean isExplicit)
    • addPolygon

      public int addPolygon(int[] polygon, javajs.util.BS bs)
    • invalidatePolygons

      public void invalidatePolygons()
    • setABC

      protected int[] setABC(int i)
    • setTranslucentVertices

      public void setTranslucentVertices(javajs.util.BS bsVertices)
      Must create bsTransPolygons, polygonTranslucencies, and new triangle set for partially translucent polygons
      Parameters:
      bsVertices -
    • getSlabColor

      public String getSlabColor()
    • getSlabType

      public String getSlabType()
    • resetSlab

      public void resetSlab()
    • slabPolygonsList

      public void slabPolygonsList(javajs.util.Lst<Object[]> slabInfo, boolean allowCap)
    • slabBrillouin

      protected void slabBrillouin(javajs.util.P3[] unitCellVectors)
      Parameters:
      unitCellVectors -
    • getResolution

      public float getResolution()
    • getSphereData

      public static MeshSurface getSphereData(int lvl)
      Calculates the data (faces, vertices, normals) for a sphere.
      Parameters:
      lvl -
      Returns:
      The data.
    • setBox

      public void setBox(javajs.util.P3 xyzMin, javajs.util.P3 xyzMax)
    • setBoundingBox

      public void setBoundingBox(javajs.util.P3[] boundBoxPoints)
      Parameters:
      boundBoxPoints -
    • getSphericalInterpolationFraction

      public static float getSphericalInterpolationFraction(double r, double valueA, double valueB, double d)