org.jmol.symmetry
Class Symmetry
java.lang.Object
org.jmol.symmetry.Symmetry
- All Implemented Interfaces:
- SymmetryInterface
public class Symmetry
- extends Object
- implements SymmetryInterface
|
Method Summary |
void |
addSpaceGroupOperation(Matrix4f mat)
|
int |
addSpaceGroupOperation(String xyz,
int opId)
|
boolean |
checkDistance(Point3f f1,
Point3f f2,
float distance,
float dx,
int iRange,
int jRange,
int kRange,
Point3f ptOffset)
|
boolean |
createSpaceGroup(int desiredSpaceGroupIndex,
String name,
float[] notionalUnitCell)
|
String |
fcoord(Tuple3f p)
|
Point3f[] |
getCanonicalCopy(float scale)
|
Point3f |
getCartesianOffset()
|
int[] |
getCellRange()
|
boolean |
getCoordinatesAreFractional()
|
Object[] |
getEllipsoid(float[] parBorU)
|
Object[] |
getEllipsoid(Vector3f[] vectors,
float a,
float b,
float c)
|
Point3f |
getFractionalOffset()
|
Object |
getLatticeDesignation()
|
String |
getMatrixFromString(String xyz,
float[] temp,
boolean allowScaling)
|
float[] |
getNotionalUnitCell()
|
Object |
getPointGroupInfo(int modelIndex,
boolean asDraw,
boolean asInfo,
String type,
int index,
float scale)
|
String |
getPointGroupName()
|
Object |
getSpaceGroup()
|
String |
getSpaceGroupInfo(String name,
SymmetryInterface cellInfo)
|
String |
getSpaceGroupName()
|
Matrix4f |
getSpaceGroupOperation(int i)
|
int |
getSpaceGroupOperationCount()
|
String |
getSpaceGroupXyz(int i,
boolean doNormalize)
|
String |
getSymmetryInfoString()
|
Object[] |
getSymmetryOperationDescription(int isym,
SymmetryInterface cellInfo,
Point3f pt1,
Point3f pt2,
String id)
|
String[] |
getSymmetryOperations()
|
float[] |
getUnitCellAsArray(boolean vectorsOnly)
|
String |
getUnitCellInfo()
|
float |
getUnitCellInfo(int infoType)
|
Point3f |
getUnitCellMultiplier()
|
Point3f[] |
getUnitCellVertices()
|
String |
getUnitsymmetryInfo()
|
float |
getUnitsymmetryInfo(int infoType)
|
boolean |
haveSpaceGroup()
|
boolean |
haveUnitCell()
|
Point3f |
ijkToPoint3f(int nnn)
|
boolean |
isPeriodic()
|
boolean |
isPolymer()
|
boolean |
isSlab()
|
void |
newSpaceGroupPoint(int i,
Point3f atom1,
Point3f atom2,
int transX,
int transY,
int transZ)
|
Object |
rotateEllipsoid(int i,
Point3f ptTemp,
Vector3f[] axes,
Point3f ptTemp1,
Point3f ptTemp2)
|
void |
setFinalOperations(Point3f[] atoms,
int iAtomFirst,
int noSymmetryCount,
boolean doNormalize)
|
void |
setLattice(int latt)
set symmetry lattice type using Hall rotations |
void |
setMinMaxLatticeParameters(Point3i minXYZ,
Point3i maxXYZ)
|
void |
setOffset(int nnn)
|
SymmetryInterface |
setPointGroup(SymmetryInterface siLast,
Atom[] atomset,
BitSet bsAtoms,
boolean haveVibration,
float distanceTolerance,
float linearTolerance)
|
void |
setSpaceGroup(boolean doNormalize)
|
void |
setSpaceGroup(SymmetryInterface symmetry)
|
void |
setSymmetryInfo(int modelIndex,
Map<String,Object> modelAuxiliaryInfo)
|
void |
setUnitCell(float[] notionalUnitCell)
|
void |
setUnitCellAllFractionalRelative(boolean TF)
|
void |
setUnitCellOffset(Point3f pt)
|
void |
setUnitCellOrientation(Matrix3f matUnitCellOrientation)
|
void |
toCartesian(Point3f fpt,
boolean isAbsolute)
|
void |
toFractional(Point3f pt,
boolean isAbsolute)
|
void |
toUnitCell(Point3f pt,
Point3f offset)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
pointGroup
private PointGroup pointGroup
spaceGroup
private SpaceGroup spaceGroup
symmetryInfo
private SymmetryInfo symmetryInfo
unitCell
private UnitCell unitCell
Symmetry
public Symmetry()
setPointGroup
public SymmetryInterface setPointGroup(SymmetryInterface siLast,
Atom[] atomset,
BitSet bsAtoms,
boolean haveVibration,
float distanceTolerance,
float linearTolerance)
- Specified by:
setPointGroup in interface SymmetryInterface
getPointGroupName
public String getPointGroupName()
- Specified by:
getPointGroupName in interface SymmetryInterface
getPointGroupInfo
public Object getPointGroupInfo(int modelIndex,
boolean asDraw,
boolean asInfo,
String type,
int index,
float scale)
- Specified by:
getPointGroupInfo in interface SymmetryInterface
setSpaceGroup
public void setSpaceGroup(boolean doNormalize)
- Specified by:
setSpaceGroup in interface SymmetryInterface
addSpaceGroupOperation
public int addSpaceGroupOperation(String xyz,
int opId)
- Specified by:
addSpaceGroupOperation in interface SymmetryInterface
addSpaceGroupOperation
public void addSpaceGroupOperation(Matrix4f mat)
- Specified by:
addSpaceGroupOperation in interface SymmetryInterface
setLattice
public void setLattice(int latt)
- Description copied from interface:
SymmetryInterface
- set symmetry lattice type using Hall rotations
- Specified by:
setLattice in interface SymmetryInterface
- Parameters:
latt - SHELX index or character lattice character P I R F A B C S T or \0
getSpaceGroupName
public String getSpaceGroupName()
- Specified by:
getSpaceGroupName in interface SymmetryInterface
getSpaceGroup
public Object getSpaceGroup()
- Specified by:
getSpaceGroup in interface SymmetryInterface
setSpaceGroup
public void setSpaceGroup(SymmetryInterface symmetry)
- Specified by:
setSpaceGroup in interface SymmetryInterface
createSpaceGroup
public boolean createSpaceGroup(int desiredSpaceGroupIndex,
String name,
float[] notionalUnitCell)
- Specified by:
createSpaceGroup in interface SymmetryInterface
haveSpaceGroup
public boolean haveSpaceGroup()
- Specified by:
haveSpaceGroup in interface SymmetryInterface
getSpaceGroupInfo
public String getSpaceGroupInfo(String name,
SymmetryInterface cellInfo)
- Specified by:
getSpaceGroupInfo in interface SymmetryInterface
getLatticeDesignation
public Object getLatticeDesignation()
- Specified by:
getLatticeDesignation in interface SymmetryInterface
setFinalOperations
public void setFinalOperations(Point3f[] atoms,
int iAtomFirst,
int noSymmetryCount,
boolean doNormalize)
- Specified by:
setFinalOperations in interface SymmetryInterface
getSpaceGroupOperationCount
public int getSpaceGroupOperationCount()
- Specified by:
getSpaceGroupOperationCount in interface SymmetryInterface
getSpaceGroupOperation
public Matrix4f getSpaceGroupOperation(int i)
- Specified by:
getSpaceGroupOperation in interface SymmetryInterface
getSpaceGroupXyz
public String getSpaceGroupXyz(int i,
boolean doNormalize)
- Specified by:
getSpaceGroupXyz in interface SymmetryInterface
newSpaceGroupPoint
public void newSpaceGroupPoint(int i,
Point3f atom1,
Point3f atom2,
int transX,
int transY,
int transZ)
- Specified by:
newSpaceGroupPoint in interface SymmetryInterface
rotateEllipsoid
public Object rotateEllipsoid(int i,
Point3f ptTemp,
Vector3f[] axes,
Point3f ptTemp1,
Point3f ptTemp2)
- Specified by:
rotateEllipsoid in interface SymmetryInterface
getSymmetryOperationDescription
public Object[] getSymmetryOperationDescription(int isym,
SymmetryInterface cellInfo,
Point3f pt1,
Point3f pt2,
String id)
- Specified by:
getSymmetryOperationDescription in interface SymmetryInterface
fcoord
public String fcoord(Tuple3f p)
- Specified by:
fcoord in interface SymmetryInterface
getMatrixFromString
public String getMatrixFromString(String xyz,
float[] temp,
boolean allowScaling)
- Specified by:
getMatrixFromString in interface SymmetryInterface
ijkToPoint3f
public Point3f ijkToPoint3f(int nnn)
- Specified by:
ijkToPoint3f in interface SymmetryInterface
getCoordinatesAreFractional
public boolean getCoordinatesAreFractional()
- Specified by:
getCoordinatesAreFractional in interface SymmetryInterface
getCellRange
public int[] getCellRange()
- Specified by:
getCellRange in interface SymmetryInterface
getSymmetryInfoString
public String getSymmetryInfoString()
- Specified by:
getSymmetryInfoString in interface SymmetryInterface
getSymmetryOperations
public String[] getSymmetryOperations()
- Specified by:
getSymmetryOperations in interface SymmetryInterface
isPeriodic
public boolean isPeriodic()
- Specified by:
isPeriodic in interface SymmetryInterface
setSymmetryInfo
public void setSymmetryInfo(int modelIndex,
Map<String,Object> modelAuxiliaryInfo)
- Specified by:
setSymmetryInfo in interface SymmetryInterface
setUnitCell
public void setUnitCell(float[] notionalUnitCell)
- Specified by:
setUnitCell in interface SymmetryInterface
haveUnitCell
public boolean haveUnitCell()
- Specified by:
haveUnitCell in interface SymmetryInterface
getUnitsymmetryInfo
public String getUnitsymmetryInfo()
setUnitCellOrientation
public void setUnitCellOrientation(Matrix3f matUnitCellOrientation)
- Specified by:
setUnitCellOrientation in interface SymmetryInterface
toUnitCell
public void toUnitCell(Point3f pt,
Point3f offset)
- Specified by:
toUnitCell in interface SymmetryInterface
toCartesian
public void toCartesian(Point3f fpt,
boolean isAbsolute)
- Specified by:
toCartesian in interface SymmetryInterface
toFractional
public void toFractional(Point3f pt,
boolean isAbsolute)
- Specified by:
toFractional in interface SymmetryInterface
getNotionalUnitCell
public float[] getNotionalUnitCell()
- Specified by:
getNotionalUnitCell in interface SymmetryInterface
getUnitCellAsArray
public float[] getUnitCellAsArray(boolean vectorsOnly)
- Specified by:
getUnitCellAsArray in interface SymmetryInterface
getEllipsoid
public Object[] getEllipsoid(float[] parBorU)
- Specified by:
getEllipsoid in interface SymmetryInterface
getEllipsoid
public Object[] getEllipsoid(Vector3f[] vectors,
float a,
float b,
float c)
- Specified by:
getEllipsoid in interface SymmetryInterface
getUnitCellVertices
public Point3f[] getUnitCellVertices()
- Specified by:
getUnitCellVertices in interface SymmetryInterface
getCartesianOffset
public Point3f getCartesianOffset()
- Specified by:
getCartesianOffset in interface SymmetryInterface
getFractionalOffset
public Point3f getFractionalOffset()
- Specified by:
getFractionalOffset in interface SymmetryInterface
setUnitCellOffset
public void setUnitCellOffset(Point3f pt)
- Specified by:
setUnitCellOffset in interface SymmetryInterface
setOffset
public void setOffset(int nnn)
- Specified by:
setOffset in interface SymmetryInterface
getUnitCellMultiplier
public Point3f getUnitCellMultiplier()
- Specified by:
getUnitCellMultiplier in interface SymmetryInterface
getCanonicalCopy
public Point3f[] getCanonicalCopy(float scale)
- Specified by:
getCanonicalCopy in interface SymmetryInterface
getUnitsymmetryInfo
public float getUnitsymmetryInfo(int infoType)
getUnitCellInfo
public float getUnitCellInfo(int infoType)
- Specified by:
getUnitCellInfo in interface SymmetryInterface
getUnitCellInfo
public String getUnitCellInfo()
- Specified by:
getUnitCellInfo in interface SymmetryInterface
isSlab
public boolean isSlab()
- Specified by:
isSlab in interface SymmetryInterface
isPolymer
public boolean isPolymer()
- Specified by:
isPolymer in interface SymmetryInterface
setMinMaxLatticeParameters
public void setMinMaxLatticeParameters(Point3i minXYZ,
Point3i maxXYZ)
- Specified by:
setMinMaxLatticeParameters in interface SymmetryInterface
setUnitCellAllFractionalRelative
public void setUnitCellAllFractionalRelative(boolean TF)
- Specified by:
setUnitCellAllFractionalRelative in interface SymmetryInterface
checkDistance
public boolean checkDistance(Point3f f1,
Point3f f2,
float distance,
float dx,
int iRange,
int jRange,
int kRange,
Point3f ptOffset)
- Specified by:
checkDistance in interface SymmetryInterface