org.jmol.symmetry
Class SymmetryOperation

java.lang.Object
  extended by javax.vecmath.Matrix4f
      extended by org.jmol.symmetry.SymmetryOperation
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

 class SymmetryOperation
extends javax.vecmath.Matrix4f


Field Summary
(package private)  javax.vecmath.Point3f atomTest
           
(package private)  boolean doNormalize
           
(package private)  boolean isFinalized
           
private  javax.vecmath.Point4f temp
           
private static java.lang.String[] twelfths
           
(package private)  java.lang.String xyz
           
(package private)  java.lang.String xyzOriginal
           
 
Fields inherited from class javax.vecmath.Matrix4f
m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23, m30, m31, m32, m33
 
Constructor Summary
SymmetryOperation()
           
SymmetryOperation(boolean doNormalize)
           
SymmetryOperation(SymmetryOperation op, javax.vecmath.Point3f[] atoms, int atomIndex, int count, boolean doNormalize)
           
 
Method Summary
private static float approx(float f)
           
private static float approx(float f, float n)
           
private static javax.vecmath.Tuple3f approx(javax.vecmath.Tuple3f pt)
           
(package private)  void doFinalize()
           
private static void drawLine(java.lang.StringBuffer s, java.lang.String id, float diameter, javax.vecmath.Point3f pt0, javax.vecmath.Point3f pt1, java.lang.String color)
           
(package private) static java.lang.String dumpCanonicalSeitz(javax.vecmath.Matrix4f s)
           
(package private)  java.lang.String dumpInfo()
           
(package private) static java.lang.String dumpSeitz(javax.vecmath.Matrix4f s)
           
private static java.lang.String fc(float x)
           
private static java.lang.String fcoord(javax.vecmath.Tuple3f p)
           
private static java.lang.Object[] getDescription(javax.vecmath.Matrix4f m, java.lang.String xyzOriginal, SymmetryInterface uc, javax.vecmath.Point3f pt00, java.lang.String id)
           
 java.lang.Object[] getDescription(SymmetryInterface uc, javax.vecmath.Point3f pt00, java.lang.String id)
           
 java.lang.Object[] getProduct(SymmetryOperation op2, SymmetryInterface uc, javax.vecmath.Point3f pt00, java.lang.String id)
           
(package private)  java.lang.String getXyz(boolean normalized)
           
(package private) static java.lang.String getXYZFromMatrix(javax.vecmath.Matrix4f mat, boolean is12ths, boolean allPositive, boolean halfOrLess)
           
(package private)  void newPoint(javax.vecmath.Point3f atom1, javax.vecmath.Point3f atom2, int transX, int transY, int transZ)
           
static void normalizeTranslation(javax.vecmath.Matrix4f operation)
           
private  float normalizeTwelfths(float iValue)
           
(package private)  javax.vecmath.Vector3f[] rotateEllipsoid(javax.vecmath.Point3f cartCenter, javax.vecmath.Vector3f[] vectors, UnitCell unitcell, javax.vecmath.Point3f ptTemp1, javax.vecmath.Point3f ptTemp2)
           
(package private)  boolean setMatrixFromXYZ(java.lang.String xyz)
           
private  void setOffset(javax.vecmath.Point3f[] atoms, int atomIndex, int count)
           
private  void transformCartesian(UnitCell unitcell, javax.vecmath.Point3f pt)
           
private static java.lang.String twelfthsOf(float n12ths)
           
private static java.lang.String xyzFraction(float n12ths, boolean allPositive, boolean halfOrLess)
           
 
Methods inherited from class javax.vecmath.Matrix4f
add, add, add, add, clone, determinant, epsilonEquals, equals, equals, get, get, get, get, get, getColumn, getColumn, getElement, getM00, getM01, getM02, getM03, getM10, getM11, getM12, getM13, getM20, getM21, getM22, getM23, getM30, getM31, getM32, getM33, getRotationScale, getRow, getRow, getScale, hashCode, invert, invert, mul, mul, mul, mul, mulTransposeBoth, mulTransposeLeft, mulTransposeRight, negate, negate, rotX, rotY, rotZ, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, setColumn, setColumn, setColumn, setElement, setIdentity, setM00, setM01, setM02, setM03, setM10, setM11, setM12, setM13, setM20, setM21, setM22, setM23, setM30, setM31, setM32, setM33, setRotation, setRotation, setRotation, setRotation, setRotation, setRotationScale, setRow, setRow, setRow, setScale, setTranslation, setZero, sub, sub, toString, transform, transform, transform, transform, transform, transform, transpose, transpose
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

xyzOriginal

java.lang.String xyzOriginal

xyz

java.lang.String xyz

doNormalize

boolean doNormalize

isFinalized

boolean isFinalized

temp

private javax.vecmath.Point4f temp

twelfths

private static final java.lang.String[] twelfths

atomTest

javax.vecmath.Point3f atomTest
Constructor Detail

SymmetryOperation

SymmetryOperation()

SymmetryOperation

SymmetryOperation(boolean doNormalize)

SymmetryOperation

SymmetryOperation(SymmetryOperation op,
                  javax.vecmath.Point3f[] atoms,
                  int atomIndex,
                  int count,
                  boolean doNormalize)
Method Detail

doFinalize

void doFinalize()

getXyz

java.lang.String getXyz(boolean normalized)

newPoint

void newPoint(javax.vecmath.Point3f atom1,
              javax.vecmath.Point3f atom2,
              int transX,
              int transY,
              int transZ)

dumpInfo

java.lang.String dumpInfo()

dumpSeitz

static final java.lang.String dumpSeitz(javax.vecmath.Matrix4f s)

dumpCanonicalSeitz

static final java.lang.String dumpCanonicalSeitz(javax.vecmath.Matrix4f s)

setMatrixFromXYZ

boolean setMatrixFromXYZ(java.lang.String xyz)

normalizeTwelfths

private float normalizeTwelfths(float iValue)

getXYZFromMatrix

static final java.lang.String getXYZFromMatrix(javax.vecmath.Matrix4f mat,
                                               boolean is12ths,
                                               boolean allPositive,
                                               boolean halfOrLess)

twelfthsOf

private static final java.lang.String twelfthsOf(float n12ths)

xyzFraction

private static final java.lang.String xyzFraction(float n12ths,
                                                  boolean allPositive,
                                                  boolean halfOrLess)

setOffset

private void setOffset(javax.vecmath.Point3f[] atoms,
                       int atomIndex,
                       int count)

transformCartesian

private void transformCartesian(UnitCell unitcell,
                                javax.vecmath.Point3f pt)

rotateEllipsoid

javax.vecmath.Vector3f[] rotateEllipsoid(javax.vecmath.Point3f cartCenter,
                                         javax.vecmath.Vector3f[] vectors,
                                         UnitCell unitcell,
                                         javax.vecmath.Point3f ptTemp1,
                                         javax.vecmath.Point3f ptTemp2)

getProduct

public java.lang.Object[] getProduct(SymmetryOperation op2,
                                     SymmetryInterface uc,
                                     javax.vecmath.Point3f pt00,
                                     java.lang.String id)

getDescription

public java.lang.Object[] getDescription(SymmetryInterface uc,
                                         javax.vecmath.Point3f pt00,
                                         java.lang.String id)
Parameters:
uc -
pt00 -
id -
Returns:
Object[] containing: xyz (Jones-Faithful calculated from matrix) xyzOriginal (Provided by calling method) info ("C2 axis", for example) draw commands translation vector (fractional) translation vector (Cartesian) inversion point axis point axis vector angle of rotation matrix representation

getDescription

private static java.lang.Object[] getDescription(javax.vecmath.Matrix4f m,
                                                 java.lang.String xyzOriginal,
                                                 SymmetryInterface uc,
                                                 javax.vecmath.Point3f pt00,
                                                 java.lang.String id)

drawLine

private static void drawLine(java.lang.StringBuffer s,
                             java.lang.String id,
                             float diameter,
                             javax.vecmath.Point3f pt0,
                             javax.vecmath.Point3f pt1,
                             java.lang.String color)

fcoord

private static java.lang.String fcoord(javax.vecmath.Tuple3f p)

fc

private static java.lang.String fc(float x)

approx

private static javax.vecmath.Tuple3f approx(javax.vecmath.Tuple3f pt)

approx

private static float approx(float f)

approx

private static float approx(float f,
                            float n)

normalizeTranslation

public static void normalizeTranslation(javax.vecmath.Matrix4f operation)