org.jmol.symmetry
Class UnitCell

java.lang.Object
  extended by org.jmol.util.SimpleUnitCell
      extended by org.jmol.symmetry.UnitCell

 class UnitCell
extends SimpleUnitCell

a class private to the org.jmol.symmetry package to be accessed only through the SymmetryInterface API adds vertices and offsets orientation, and a variety of additional calculations that in principle could be put in SimpleUnitCell if desired, but for now are in this optional package.


Nested Class Summary
protected  class UnitCell.Esort
           
 
Field Summary
private  boolean allFractionalRelative
           
private  javax.vecmath.Point3f cartesianOffset
           
private  javax.vecmath.Point3f fractionalOffset
           
private static double twoP2
           
private  javax.vecmath.Point3f unitCellMultiplier
           
private  javax.vecmath.Point3f[] vertices
           
 
Fields inherited from class org.jmol.util.SimpleUnitCell
a, a_, alpha, b, b_, beta, c, c_, cA_, cB_, cosAlpha, cosBeta, cosGamma, dimension, gamma, INFO_A, INFO_ALPHA, INFO_B, INFO_BETA, INFO_C, INFO_DIMENSIONS, INFO_GAMMA, matrixCartesianToFractional, matrixCtoFAbsolute, matrixFractionalToCartesian, matrixFtoCAbsolute, notionalUnitcell, sinAlpha, sinBeta, sinGamma, toRadians, volume
 
Constructor Summary
UnitCell(float[] notionalUnitcell)
           
 
Method Summary
private  void calcUnitcellVertices()
           
 boolean checkDistance(javax.vecmath.Point3f f1, javax.vecmath.Point3f f2, float distance, float dx, int iRange, int jRange, int kRange, javax.vecmath.Point3f ptOffset)
           
(package private)  java.lang.String dumpInfo(boolean isFull)
           
(package private)  javax.vecmath.Point3f[] getCanonicalCopy(float scale)
           
(package private)  javax.vecmath.Point3f getCartesianOffset()
           
(package private)  java.lang.Object[] getEllipsoid(float[] parBorU)
           
 java.lang.Object[] getEllipsoid(javax.vecmath.Vector3f[] vectors, float a, float b, float c)
           
(package private)  javax.vecmath.Point3f getFractionalOffset()
           
 javax.vecmath.Point3f getUnitCellMultiplier()
           
(package private)  javax.vecmath.Point3f[] getVertices()
           
(package private)  void setAllFractionalRelative(boolean TF)
           
(package private)  void setMinMaxLatticeParameters(javax.vecmath.Point3i minXYZ, javax.vecmath.Point3i maxXYZ)
           
(package private)  void setOffset(int nnn)
           
(package private)  void setOffset(javax.vecmath.Point3f pt)
           
(package private)  void setOrientation(javax.vecmath.Matrix3f mat)
           
private static float toFractional(float x)
           
(package private)  void toUnitCell(javax.vecmath.Point3f pt, javax.vecmath.Point3f offset)
          when offset is null,
 
Methods inherited from class org.jmol.util.SimpleUnitCell
getInfo, getNotionalUnitCell, getUnitCellAsArray, ijkToPoint3f, ijkToPoint3f, isPolymer, isSlab, isValid, toCartesian, toFractional
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

vertices

private javax.vecmath.Point3f[] vertices

cartesianOffset

private javax.vecmath.Point3f cartesianOffset

fractionalOffset

private javax.vecmath.Point3f fractionalOffset

allFractionalRelative

private boolean allFractionalRelative

unitCellMultiplier

private javax.vecmath.Point3f unitCellMultiplier

twoP2

private static final double twoP2
See Also:
Constant Field Values
Constructor Detail

UnitCell

UnitCell(float[] notionalUnitcell)
Method Detail

setOrientation

void setOrientation(javax.vecmath.Matrix3f mat)

toUnitCell

final void toUnitCell(javax.vecmath.Point3f pt,
                      javax.vecmath.Point3f offset)
when offset is null,

Parameters:
pt -
offset -

setAllFractionalRelative

void setAllFractionalRelative(boolean TF)

setOffset

void setOffset(javax.vecmath.Point3f pt)

setOffset

void setOffset(int nnn)

setMinMaxLatticeParameters

void setMinMaxLatticeParameters(javax.vecmath.Point3i minXYZ,
                                javax.vecmath.Point3i maxXYZ)

dumpInfo

final java.lang.String dumpInfo(boolean isFull)

getVertices

javax.vecmath.Point3f[] getVertices()

getCartesianOffset

javax.vecmath.Point3f getCartesianOffset()

getFractionalOffset

javax.vecmath.Point3f getFractionalOffset()

getEllipsoid

java.lang.Object[] getEllipsoid(float[] parBorU)

getEllipsoid

public java.lang.Object[] getEllipsoid(javax.vecmath.Vector3f[] vectors,
                                       float a,
                                       float b,
                                       float c)

getCanonicalCopy

javax.vecmath.Point3f[] getCanonicalCopy(float scale)

toFractional

private static float toFractional(float x)

calcUnitcellVertices

private void calcUnitcellVertices()

checkDistance

public boolean checkDistance(javax.vecmath.Point3f f1,
                             javax.vecmath.Point3f f2,
                             float distance,
                             float dx,
                             int iRange,
                             int jRange,
                             int kRange,
                             javax.vecmath.Point3f ptOffset)
Parameters:
f1 -
f2 -
distance -
dx -
iRange -
jRange -
kRange -
ptOffset - TODO
Returns:
TRUE if pt has been set.

getUnitCellMultiplier

public javax.vecmath.Point3f getUnitCellMultiplier()