Package org.jmol.symmetry
Class Symmetry
- java.lang.Object
-
- org.jmol.symmetry.Symmetry
-
- All Implemented Interfaces:
SymmetryInterface
public class Symmetry extends java.lang.Object implements SymmetryInterface
-
-
Field Summary
Fields Modifier and Type Field Description private CIPChirality
cip
private SymmetryDesc
desc
private boolean
isBio
private static SymmetryDesc
nullDesc
private PointGroup
pointGroup
(package private) SpaceGroup
spaceGroup
private SymmetryInfo
symmetryInfo
private UnitCell
unitCell
-
Constructor Summary
Constructors Constructor Description Symmetry()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
addBioMoleculeOperation(javajs.util.M4 mat, boolean isReverse)
boolean
addLatticeVectors(javajs.util.Lst<float[]> lattvecs)
int
addSpaceGroupOperation(java.lang.String xyz, int opId)
java.lang.String
addSubSystemOp(java.lang.String code, javajs.util.Matrix rs, javajs.util.Matrix vs, javajs.util.Matrix sigma)
void
calculateCIPChiralityForAtoms(Viewer vwr, javajs.util.BS bsAtoms)
java.lang.String[]
calculateCIPChiralityForSmiles(Viewer vwr, java.lang.String smiles)
boolean
checkDistance(javajs.util.P3 f1, javajs.util.P3 f2, float distance, float dx, int iRange, int jRange, int kRange, javajs.util.P3 ptOffset)
boolean
createSpaceGroup(int desiredSpaceGroupIndex, java.lang.String name, java.lang.Object data, int modDim)
java.lang.String
fcoord(javajs.util.T3 p)
java.lang.Object
findSpaceGroup(Viewer vwr, javajs.util.BS atoms, java.lang.String opXYZ, boolean asString)
javajs.util.Lst<javajs.util.P3>
generateCrystalClass(javajs.util.P3 pt0)
javajs.util.P3[]
getCanonicalCopy(float scale, boolean withOffset)
javajs.util.P3
getCartesianOffset()
int[]
getCellRange()
private CIPChirality
getCIPChirality(Viewer vwr)
javajs.util.T3[]
getConventionalUnitCell(java.lang.String latticeType, javajs.util.M3 primitiveToCrystal)
return a conventional lattice from a primitiveboolean
getCoordinatesAreFractional()
private SymmetryDesc
getDesc(ModelSet modelSet)
void
getEquivPointList(javajs.util.Lst<javajs.util.P3> pts, int nIgnored, java.lang.String flags)
javajs.util.Lst<javajs.util.P3>
getEquivPoints(javajs.util.Lst<javajs.util.P3> pts, javajs.util.P3 pt, java.lang.String flags)
javajs.util.P3
getFractionalOffset()
javajs.util.T3
getFractionalOrigin()
java.lang.String
getIntTableNumber()
int[]
getInvariantSymops(javajs.util.P3 pt, int[] v0)
AtomIndexIterator
getIterator(Viewer vwr, Atom atom, javajs.util.BS bsAtoms, float radius)
javajs.util.Lst<javajs.util.P3>
getLatticeCentering()
java.lang.Object
getLatticeDesignation()
int
getLatticeOp()
char
getLatticeType()
java.lang.String
getMatrixFromString(java.lang.String xyz, float[] rotTransMatrix, boolean allowScaling, int modDim)
javajs.util.Lst<java.lang.String>
getMoreInfo()
javajs.util.Matrix
getOperationRsVs(int iop)
java.lang.Object
getPointGroupInfo(int modelIndex, java.lang.String drawID, boolean asInfo, java.lang.String type, int index, float scale)
java.lang.String
getPointGroupName()
javajs.util.Quat
getQuaternionRotation(java.lang.String abc)
int
getSiteMultiplicity(javajs.util.P3 pt)
java.lang.Object
getSpaceGroup()
java.util.Map<java.lang.String,java.lang.Object>
getSpaceGroupInfo(ModelSet modelSet, java.lang.String sgName, int modelIndex, boolean isFull, float[] cellParams)
java.lang.Object
getSpaceGroupInfoObj(java.lang.String name, SymmetryInterface cellInfo, boolean isFull, boolean addNonstandard)
java.lang.String
getSpaceGroupName()
java.lang.String
getSpaceGroupNameType(java.lang.String type)
javajs.util.M4
getSpaceGroupOperation(int i)
java.lang.String
getSpaceGroupOperationCode(int iOp)
int
getSpaceGroupOperationCount()
javajs.util.M4
getSpaceGroupOperationRaw(int i)
java.lang.String
getSpaceGroupXyz(int i, boolean doNormalize)
float
getSpinOp(int op)
boolean
getState(ModelSet ms, int modelIndex, javajs.util.SB commands)
java.lang.Object
getSymmetryInfoAtom(ModelSet modelSet, int iatom, java.lang.String xyz, int op, javajs.util.P3 translation, javajs.util.P3 pt, javajs.util.P3 pt2, java.lang.String id, int type, float scaleFactor, int nth, int options)
java.lang.String
getSymmetryInfoStr()
SymmetryOperation[]
getSymmetryOperations()
Tensor
getTensor(Viewer vwr, float[] parBorU)
javajs.util.M4
getTransform(javajs.util.P3 fracA, javajs.util.P3 fracB, boolean best)
SymmetryInterface
getUnitCell(javajs.util.T3[] oabc, boolean setRelative, java.lang.String name)
float[]
getUnitCellAsArray(boolean vectorsOnly)
java.lang.String
getUnitCellInfo(boolean scaled)
java.util.Map<java.lang.String,java.lang.Object>
getUnitCellInfoMap()
float
getUnitCellInfoType(int infoType)
SymmetryInterface
getUnitCellMultiplied()
javajs.util.T3
getUnitCellMultiplier()
float[]
getUnitCellParams()
java.lang.String
getUnitCellState()
javajs.util.P3[]
getUnitCellVectors()
javajs.util.P3[]
getUnitCellVerticesNoOffset()
java.lang.String
getUnitsymmetryInfo()
javajs.util.T3[]
getV0abc(java.lang.Object def)
boolean
haveUnitCell()
void
initializeOrientation(javajs.util.M3 mat)
boolean
isBio()
private boolean
isNotCentroid(javajs.util.P3 center, int n, int[] minmax, boolean centroidPacked)
boolean
isPolymer()
boolean
isSimple()
boolean
isSlab()
boolean
isSupercell()
(package private) static void
newPoint(javajs.util.M4 m, javajs.util.P3 atom1, int x, int y, int z, javajs.util.P3 atom2)
void
newSpaceGroupPoint(javajs.util.P3 pt, int i, javajs.util.M4 o, int transX, int transY, int transZ, javajs.util.P3 retPoint)
javajs.util.BS
notInCentroid(ModelSet modelSet, javajs.util.BS bsAtoms, int[] minmax)
javajs.util.BS
removeDuplicates(ModelSet ms, javajs.util.BS bs)
javajs.util.V3[]
rotateAxes(int iop, javajs.util.V3[] axes, javajs.util.P3 ptTemp, javajs.util.M3 mTemp)
void
setFinalOperations(int dim, java.lang.String name, javajs.util.P3[] atoms, int iAtomFirst, int noSymmetryCount, boolean doNormalize, java.lang.String filterSymop)
void
setLattice(int latt)
set symmetry lattice type using Hall rotationsvoid
setOffset(int nnn)
void
setOffsetPt(javajs.util.T3 pt)
SymmetryInterface
setPointGroup(SymmetryInterface siLast, javajs.util.T3 center, javajs.util.T3[] atomset, javajs.util.BS bsAtoms, boolean haveVibration, float distanceTolerance, float linearTolerance, boolean localEnvOnly)
void
setSpaceGroup(boolean doNormalize)
void
setSpaceGroupName(java.lang.String name)
void
setSpaceGroupTo(java.lang.Object sg)
SymmetryInterface
setSymmetryInfo(int modelIndex, java.util.Map<java.lang.String,java.lang.Object> modelAuxiliaryInfo, float[] unitCellParams)
Set space group and unit cell from the auxiliary info generated by the model adapter.void
setTimeReversal(int op, int val)
SymmetryInterface
setUnitCell(float[] unitCellParams, boolean setRelative)
void
setUnitCell(SymmetryInterface uc)
void
toCartesian(javajs.util.T3 fpt, boolean ignoreOffset)
void
toFractional(javajs.util.T3 pt, boolean ignoreOffset)
void
toFractionalM(javajs.util.M4 m)
boolean
toFromPrimitive(boolean toPrimitive, char type, javajs.util.T3[] oabc, javajs.util.M3 primitiveToCrystal)
javajs.util.P3
toSupercell(javajs.util.P3 fpt)
void
toUnitCell(javajs.util.T3 pt, javajs.util.T3 offset)
void
toUnitCellRnd(javajs.util.T3 pt, javajs.util.T3 offset)
boolean
unitCellEquals(SymmetryInterface uc2)
void
unitize(javajs.util.T3 ptFrac)
-
-
-
Field Detail
-
spaceGroup
SpaceGroup spaceGroup
-
pointGroup
private PointGroup pointGroup
-
symmetryInfo
private SymmetryInfo symmetryInfo
-
unitCell
private UnitCell unitCell
-
cip
private CIPChirality cip
-
isBio
private boolean isBio
-
desc
private SymmetryDesc desc
-
nullDesc
private static SymmetryDesc nullDesc
-
-
Method Detail
-
isBio
public boolean isBio()
- Specified by:
isBio
in interfaceSymmetryInterface
-
setPointGroup
public SymmetryInterface setPointGroup(SymmetryInterface siLast, javajs.util.T3 center, javajs.util.T3[] atomset, javajs.util.BS bsAtoms, boolean haveVibration, float distanceTolerance, float linearTolerance, boolean localEnvOnly)
- Specified by:
setPointGroup
in interfaceSymmetryInterface
-
getPointGroupName
public java.lang.String getPointGroupName()
- Specified by:
getPointGroupName
in interfaceSymmetryInterface
-
getPointGroupInfo
public java.lang.Object getPointGroupInfo(int modelIndex, java.lang.String drawID, boolean asInfo, java.lang.String type, int index, float scale)
- Specified by:
getPointGroupInfo
in interfaceSymmetryInterface
-
setSpaceGroup
public void setSpaceGroup(boolean doNormalize)
- Specified by:
setSpaceGroup
in interfaceSymmetryInterface
-
addSpaceGroupOperation
public int addSpaceGroupOperation(java.lang.String xyz, int opId)
- Specified by:
addSpaceGroupOperation
in interfaceSymmetryInterface
-
addBioMoleculeOperation
public int addBioMoleculeOperation(javajs.util.M4 mat, boolean isReverse)
- Specified by:
addBioMoleculeOperation
in interfaceSymmetryInterface
-
setLattice
public void setLattice(int latt)
Description copied from interface:SymmetryInterface
set symmetry lattice type using Hall rotations- Specified by:
setLattice
in interfaceSymmetryInterface
- Parameters:
latt
- SHELX index or character lattice character P I R F A B C S T or \0
-
getSpaceGroup
public java.lang.Object getSpaceGroup()
- Specified by:
getSpaceGroup
in interfaceSymmetryInterface
-
createSpaceGroup
public boolean createSpaceGroup(int desiredSpaceGroupIndex, java.lang.String name, java.lang.Object data, int modDim)
- Specified by:
createSpaceGroup
in interfaceSymmetryInterface
- Parameters:
desiredSpaceGroupIndex
-name
-data
- a Lstor Lst modDim
- in [3+d] modulation dimension- Returns:
- true if a known space group
-
getSpaceGroupInfoObj
public java.lang.Object getSpaceGroupInfoObj(java.lang.String name, SymmetryInterface cellInfo, boolean isFull, boolean addNonstandard)
- Specified by:
getSpaceGroupInfoObj
in interfaceSymmetryInterface
-
getLatticeDesignation
public java.lang.Object getLatticeDesignation()
- Specified by:
getLatticeDesignation
in interfaceSymmetryInterface
-
setFinalOperations
public void setFinalOperations(int dim, java.lang.String name, javajs.util.P3[] atoms, int iAtomFirst, int noSymmetryCount, boolean doNormalize, java.lang.String filterSymop)
- Specified by:
setFinalOperations
in interfaceSymmetryInterface
-
getSpaceGroupOperation
public javajs.util.M4 getSpaceGroupOperation(int i)
- Specified by:
getSpaceGroupOperation
in interfaceSymmetryInterface
-
getSpaceGroupOperationRaw
public javajs.util.M4 getSpaceGroupOperationRaw(int i)
- Specified by:
getSpaceGroupOperationRaw
in interfaceSymmetryInterface
-
getSpaceGroupXyz
public java.lang.String getSpaceGroupXyz(int i, boolean doNormalize)
- Specified by:
getSpaceGroupXyz
in interfaceSymmetryInterface
-
newSpaceGroupPoint
public void newSpaceGroupPoint(javajs.util.P3 pt, int i, javajs.util.M4 o, int transX, int transY, int transZ, javajs.util.P3 retPoint)
- Specified by:
newSpaceGroupPoint
in interfaceSymmetryInterface
-
rotateAxes
public javajs.util.V3[] rotateAxes(int iop, javajs.util.V3[] axes, javajs.util.P3 ptTemp, javajs.util.M3 mTemp)
- Specified by:
rotateAxes
in interfaceSymmetryInterface
-
getSpaceGroupOperationCode
public java.lang.String getSpaceGroupOperationCode(int iOp)
- Specified by:
getSpaceGroupOperationCode
in interfaceSymmetryInterface
-
setTimeReversal
public void setTimeReversal(int op, int val)
- Specified by:
setTimeReversal
in interfaceSymmetryInterface
-
getSpinOp
public float getSpinOp(int op)
- Specified by:
getSpinOp
in interfaceSymmetryInterface
-
addLatticeVectors
public boolean addLatticeVectors(javajs.util.Lst<float[]> lattvecs)
- Specified by:
addLatticeVectors
in interfaceSymmetryInterface
-
getLatticeOp
public int getLatticeOp()
- Specified by:
getLatticeOp
in interfaceSymmetryInterface
-
getLatticeCentering
public javajs.util.Lst<javajs.util.P3> getLatticeCentering()
- Specified by:
getLatticeCentering
in interfaceSymmetryInterface
-
getOperationRsVs
public javajs.util.Matrix getOperationRsVs(int iop)
- Specified by:
getOperationRsVs
in interfaceSymmetryInterface
-
getSiteMultiplicity
public int getSiteMultiplicity(javajs.util.P3 pt)
- Specified by:
getSiteMultiplicity
in interfaceSymmetryInterface
-
addSubSystemOp
public java.lang.String addSubSystemOp(java.lang.String code, javajs.util.Matrix rs, javajs.util.Matrix vs, javajs.util.Matrix sigma)
- Specified by:
addSubSystemOp
in interfaceSymmetryInterface
-
getMatrixFromString
public java.lang.String getMatrixFromString(java.lang.String xyz, float[] rotTransMatrix, boolean allowScaling, int modDim)
- Specified by:
getMatrixFromString
in interfaceSymmetryInterface
-
getSpaceGroupName
public java.lang.String getSpaceGroupName()
- Specified by:
getSpaceGroupName
in interfaceSymmetryInterface
-
getSpaceGroupNameType
public java.lang.String getSpaceGroupNameType(java.lang.String type)
- Specified by:
getSpaceGroupNameType
in interfaceSymmetryInterface
- Parameters:
type
- "Hall" or "HM" or "ITA"- Returns:
- type or null
-
setSpaceGroupName
public void setSpaceGroupName(java.lang.String name)
- Specified by:
setSpaceGroupName
in interfaceSymmetryInterface
-
getSpaceGroupOperationCount
public int getSpaceGroupOperationCount()
- Specified by:
getSpaceGroupOperationCount
in interfaceSymmetryInterface
-
getLatticeType
public char getLatticeType()
- Specified by:
getLatticeType
in interfaceSymmetryInterface
-
getIntTableNumber
public java.lang.String getIntTableNumber()
- Specified by:
getIntTableNumber
in interfaceSymmetryInterface
-
getCoordinatesAreFractional
public boolean getCoordinatesAreFractional()
- Specified by:
getCoordinatesAreFractional
in interfaceSymmetryInterface
-
getCellRange
public int[] getCellRange()
- Specified by:
getCellRange
in interfaceSymmetryInterface
-
getSymmetryInfoStr
public java.lang.String getSymmetryInfoStr()
- Specified by:
getSymmetryInfoStr
in interfaceSymmetryInterface
-
getSymmetryOperations
public SymmetryOperation[] getSymmetryOperations()
- Specified by:
getSymmetryOperations
in interfaceSymmetryInterface
-
isSimple
public boolean isSimple()
- Specified by:
isSimple
in interfaceSymmetryInterface
-
setSymmetryInfo
public SymmetryInterface setSymmetryInfo(int modelIndex, java.util.Map<java.lang.String,java.lang.Object> modelAuxiliaryInfo, float[] unitCellParams)
Set space group and unit cell from the auxiliary info generated by the model adapter.- Specified by:
setSymmetryInfo
in interfaceSymmetryInterface
-
haveUnitCell
public boolean haveUnitCell()
- Specified by:
haveUnitCell
in interfaceSymmetryInterface
-
setUnitCell
public SymmetryInterface setUnitCell(float[] unitCellParams, boolean setRelative)
- Specified by:
setUnitCell
in interfaceSymmetryInterface
-
unitCellEquals
public boolean unitCellEquals(SymmetryInterface uc2)
- Specified by:
unitCellEquals
in interfaceSymmetryInterface
-
getUnitCellState
public java.lang.String getUnitCellState()
- Specified by:
getUnitCellState
in interfaceSymmetryInterface
-
getMoreInfo
public javajs.util.Lst<java.lang.String> getMoreInfo()
- Specified by:
getMoreInfo
in interfaceSymmetryInterface
-
getUnitsymmetryInfo
public java.lang.String getUnitsymmetryInfo()
-
initializeOrientation
public void initializeOrientation(javajs.util.M3 mat)
- Specified by:
initializeOrientation
in interfaceSymmetryInterface
-
unitize
public void unitize(javajs.util.T3 ptFrac)
- Specified by:
unitize
in interfaceSymmetryInterface
-
toUnitCell
public void toUnitCell(javajs.util.T3 pt, javajs.util.T3 offset)
- Specified by:
toUnitCell
in interfaceSymmetryInterface
-
toUnitCellRnd
public void toUnitCellRnd(javajs.util.T3 pt, javajs.util.T3 offset)
- Specified by:
toUnitCellRnd
in interfaceSymmetryInterface
-
toSupercell
public javajs.util.P3 toSupercell(javajs.util.P3 fpt)
- Specified by:
toSupercell
in interfaceSymmetryInterface
-
toFractional
public void toFractional(javajs.util.T3 pt, boolean ignoreOffset)
- Specified by:
toFractional
in interfaceSymmetryInterface
-
toFractionalM
public void toFractionalM(javajs.util.M4 m)
- Specified by:
toFractionalM
in interfaceSymmetryInterface
-
toCartesian
public void toCartesian(javajs.util.T3 fpt, boolean ignoreOffset)
- Specified by:
toCartesian
in interfaceSymmetryInterface
-
getUnitCellParams
public float[] getUnitCellParams()
- Specified by:
getUnitCellParams
in interfaceSymmetryInterface
-
getUnitCellAsArray
public float[] getUnitCellAsArray(boolean vectorsOnly)
- Specified by:
getUnitCellAsArray
in interfaceSymmetryInterface
-
getTensor
public Tensor getTensor(Viewer vwr, float[] parBorU)
- Specified by:
getTensor
in interfaceSymmetryInterface
-
getUnitCellVerticesNoOffset
public javajs.util.P3[] getUnitCellVerticesNoOffset()
- Specified by:
getUnitCellVerticesNoOffset
in interfaceSymmetryInterface
-
getCartesianOffset
public javajs.util.P3 getCartesianOffset()
- Specified by:
getCartesianOffset
in interfaceSymmetryInterface
-
getFractionalOffset
public javajs.util.P3 getFractionalOffset()
- Specified by:
getFractionalOffset
in interfaceSymmetryInterface
-
setOffsetPt
public void setOffsetPt(javajs.util.T3 pt)
- Specified by:
setOffsetPt
in interfaceSymmetryInterface
-
setOffset
public void setOffset(int nnn)
- Specified by:
setOffset
in interfaceSymmetryInterface
-
getUnitCellMultiplier
public javajs.util.T3 getUnitCellMultiplier()
- Specified by:
getUnitCellMultiplier
in interfaceSymmetryInterface
-
getUnitCellMultiplied
public SymmetryInterface getUnitCellMultiplied()
- Specified by:
getUnitCellMultiplied
in interfaceSymmetryInterface
-
getCanonicalCopy
public javajs.util.P3[] getCanonicalCopy(float scale, boolean withOffset)
- Specified by:
getCanonicalCopy
in interfaceSymmetryInterface
-
getUnitCellInfoType
public float getUnitCellInfoType(int infoType)
- Specified by:
getUnitCellInfoType
in interfaceSymmetryInterface
-
getUnitCellInfo
public java.lang.String getUnitCellInfo(boolean scaled)
- Specified by:
getUnitCellInfo
in interfaceSymmetryInterface
-
isSlab
public boolean isSlab()
- Specified by:
isSlab
in interfaceSymmetryInterface
-
isPolymer
public boolean isPolymer()
- Specified by:
isPolymer
in interfaceSymmetryInterface
-
checkDistance
public boolean checkDistance(javajs.util.P3 f1, javajs.util.P3 f2, float distance, float dx, int iRange, int jRange, int kRange, javajs.util.P3 ptOffset)
- Specified by:
checkDistance
in interfaceSymmetryInterface
-
getUnitCellVectors
public javajs.util.P3[] getUnitCellVectors()
- Specified by:
getUnitCellVectors
in interfaceSymmetryInterface
-
getUnitCell
public SymmetryInterface getUnitCell(javajs.util.T3[] oabc, boolean setRelative, java.lang.String name)
- Specified by:
getUnitCell
in interfaceSymmetryInterface
- Parameters:
oabc
- [ptorigin, va, vb, vc]setRelative
- a flag only set true for IsosurfaceMeshname
-- Returns:
- this SymmetryInterface
-
isSupercell
public boolean isSupercell()
- Specified by:
isSupercell
in interfaceSymmetryInterface
-
notInCentroid
public javajs.util.BS notInCentroid(ModelSet modelSet, javajs.util.BS bsAtoms, int[] minmax)
- Specified by:
notInCentroid
in interfaceSymmetryInterface
-
isNotCentroid
private boolean isNotCentroid(javajs.util.P3 center, int n, int[] minmax, boolean centroidPacked)
-
getDesc
private SymmetryDesc getDesc(ModelSet modelSet)
-
getSymmetryInfoAtom
public java.lang.Object getSymmetryInfoAtom(ModelSet modelSet, int iatom, java.lang.String xyz, int op, javajs.util.P3 translation, javajs.util.P3 pt, javajs.util.P3 pt2, java.lang.String id, int type, float scaleFactor, int nth, int options)
- Specified by:
getSymmetryInfoAtom
in interfaceSymmetryInterface
translation
- TODOpt2
- a second point or an offsettype
- T.point, T.lattice, or T.draw, T.matrix4f, T.label, T.list, T.info, T.translation, T.axis, T.plane, T.angle, T.centernth
- TODOoptions
- could be T.offset- Returns:
- a variety of object types
-
getSpaceGroupInfo
public java.util.Map<java.lang.String,java.lang.Object> getSpaceGroupInfo(ModelSet modelSet, java.lang.String sgName, int modelIndex, boolean isFull, float[] cellParams)
- Specified by:
getSpaceGroupInfo
in interfaceSymmetryInterface
-
fcoord
public java.lang.String fcoord(javajs.util.T3 p)
- Specified by:
fcoord
in interfaceSymmetryInterface
-
getV0abc
public javajs.util.T3[] getV0abc(java.lang.Object def)
- Specified by:
getV0abc
in interfaceSymmetryInterface
-
getQuaternionRotation
public javajs.util.Quat getQuaternionRotation(java.lang.String abc)
- Specified by:
getQuaternionRotation
in interfaceSymmetryInterface
-
getFractionalOrigin
public javajs.util.T3 getFractionalOrigin()
- Specified by:
getFractionalOrigin
in interfaceSymmetryInterface
-
getState
public boolean getState(ModelSet ms, int modelIndex, javajs.util.SB commands)
- Specified by:
getState
in interfaceSymmetryInterface
-
getIterator
public AtomIndexIterator getIterator(Viewer vwr, Atom atom, javajs.util.BS bsAtoms, float radius)
- Specified by:
getIterator
in interfaceSymmetryInterface
-
toFromPrimitive
public boolean toFromPrimitive(boolean toPrimitive, char type, javajs.util.T3[] oabc, javajs.util.M3 primitiveToCrystal)
- Specified by:
toFromPrimitive
in interfaceSymmetryInterface
-
generateCrystalClass
public javajs.util.Lst<javajs.util.P3> generateCrystalClass(javajs.util.P3 pt0)
- Specified by:
generateCrystalClass
in interfaceSymmetryInterface
-
calculateCIPChiralityForAtoms
public void calculateCIPChiralityForAtoms(Viewer vwr, javajs.util.BS bsAtoms)
- Specified by:
calculateCIPChiralityForAtoms
in interfaceSymmetryInterface
-
calculateCIPChiralityForSmiles
public java.lang.String[] calculateCIPChiralityForSmiles(Viewer vwr, java.lang.String smiles) throws java.lang.Exception
- Specified by:
calculateCIPChiralityForSmiles
in interfaceSymmetryInterface
- Throws:
java.lang.Exception
-
getCIPChirality
private CIPChirality getCIPChirality(Viewer vwr)
-
getConventionalUnitCell
public javajs.util.T3[] getConventionalUnitCell(java.lang.String latticeType, javajs.util.M3 primitiveToCrystal)
return a conventional lattice from a primitive- Specified by:
getConventionalUnitCell
in interfaceSymmetryInterface
- Parameters:
latticeType
- "A" "B" "C" "R" etc.- Returns:
- [origin va vb vc]
-
getUnitCellInfoMap
public java.util.Map<java.lang.String,java.lang.Object> getUnitCellInfoMap()
- Specified by:
getUnitCellInfoMap
in interfaceSymmetryInterface
-
setUnitCell
public void setUnitCell(SymmetryInterface uc)
- Specified by:
setUnitCell
in interfaceSymmetryInterface
-
findSpaceGroup
public java.lang.Object findSpaceGroup(Viewer vwr, javajs.util.BS atoms, java.lang.String opXYZ, boolean asString)
- Specified by:
findSpaceGroup
in interfaceSymmetryInterface
-
setSpaceGroupTo
public void setSpaceGroupTo(java.lang.Object sg)
- Specified by:
setSpaceGroupTo
in interfaceSymmetryInterface
- Parameters:
sg
- ITA number, ITA full name ("48:1")
-
removeDuplicates
public javajs.util.BS removeDuplicates(ModelSet ms, javajs.util.BS bs)
- Specified by:
removeDuplicates
in interfaceSymmetryInterface
-
getEquivPoints
public javajs.util.Lst<javajs.util.P3> getEquivPoints(javajs.util.Lst<javajs.util.P3> pts, javajs.util.P3 pt, java.lang.String flags)
- Specified by:
getEquivPoints
in interfaceSymmetryInterface
-
getEquivPointList
public void getEquivPointList(javajs.util.Lst<javajs.util.P3> pts, int nIgnored, java.lang.String flags)
- Specified by:
getEquivPointList
in interfaceSymmetryInterface
-
getInvariantSymops
public int[] getInvariantSymops(javajs.util.P3 pt, int[] v0)
- Specified by:
getInvariantSymops
in interfaceSymmetryInterface
-
getTransform
public javajs.util.M4 getTransform(javajs.util.P3 fracA, javajs.util.P3 fracB, boolean best)
- Specified by:
getTransform
in interfaceSymmetryInterface
- Parameters:
fracA
-fracB
-- Returns:
- matrix
-
newPoint
static void newPoint(javajs.util.M4 m, javajs.util.P3 atom1, int x, int y, int z, javajs.util.P3 atom2)
-
-