Package org.jmol.modelkit
Class ModelKit
- java.lang.Object
-
- org.jmol.modelkit.ModelKit
-
public class ModelKit extends java.lang.Object
An abstract popup class that is instantiated for a given platform and context as one of:-- abstract ModelKitPopup -- AwtModelKitPopup -- JSModelKitPopup
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
ModelKit.Constraint
-
Field Summary
Fields Modifier and Type Field Description private Atom
a0
private Atom
a3
(package private) boolean
addXtalHydrogens
when TRUE, add H atoms to C when added to the modelSet.(package private) boolean
alertedNoEdit
(package private) java.lang.String[]
allOperators
private ModelKit.Constraint[]
atomConstraints
(package private) java.lang.String
atomHoverLabel
(package private) int
atomIndexSphere
(package private) boolean
autoBond
set to true for proximity-based autobonding (prior to 14.32.4/15.2.4 the default was TRUE(package private) int
bondAtomIndex1
(package private) int
bondAtomIndex2
(package private) java.lang.String
bondHoverLabel
(package private) int
bondIndex
(package private) java.lang.String
bondRotationName
static java.lang.String
BOOLEAN_OPTIONS
(package private) int
branchAtomIndex
(package private) javajs.util.BS
bsHighlight
(package private) javajs.util.BS
bsRotateBranch
(package private) int
centerAtomIndex
(package private) float
centerDistance
(package private) javajs.util.P3
centerPoint
(package private) boolean
clickToSetElement
Except for H atoms, do not allow changes to elements just by clicking them.private ModelKit.Constraint
constraint
(package private) int
currentModelIndex
(package private) java.lang.String
drawData
(package private) java.lang.String
drawScript
private static int
GET
private static int
GET_CREATE
private static int
GET_DELETE
(package private) boolean
hasUnitCell
(package private) int
iatom0
(package private) boolean
isPickAtomAssignCharge
(package private) boolean
isRotateBond
(package private) java.lang.String
lastCenter
(package private) java.lang.String
lastElementType
protected ModelSet
lastModelSet
(package private) java.lang.String
lastOffset
(package private) static ModelKit.Constraint
locked
private ModelKitPopup
menu
static java.lang.String
MODE_OPTIONS
(package private) static ModelKit.Constraint
none
(package private) java.lang.String
pickAtomAssignType
(package private) char
pickBondAssignType
private static javajs.util.P3
Pt000
(package private) float
rotationDeg
(package private) int[]
screenXY
(package private) int
secondAtomIndex
static java.lang.String
SET_OPTIONS
(package private) boolean
showSymopInfo
(package private) javajs.util.P3
spherePoint
(package private) int
state
(package private) static int
STATE_BITS_SYM_EDIT
(package private) static int
STATE_BITS_SYM_VIEW
(package private) static int
STATE_BITS_UNITCELL
(package private) static int
STATE_BITS_XTAL
(package private) static int
STATE_MOLECULAR
(package private) static int
STATE_SYM_APPLYFULL
(package private) static int
STATE_SYM_APPLYLOCAL
(package private) static int
STATE_SYM_NONE
(package private) static int
STATE_SYM_RETAINLOCAL
(package private) static int
STATE_SYM_SHOW
(package private) static int
STATE_UNITCELL_EXTEND
(package private) static int
STATE_UNITCELL_PACKED
(package private) static int
STATE_XTALEDIT
(package private) static int
STATE_XTALVIEW
static java.lang.String
SYMMETRY_OPTIONS
(package private) java.lang.Object
symop
static java.lang.String
UNITCELL_OPTIONS
(package private) javajs.util.P3
viewOffset
private Viewer
vwr
(package private) java.lang.String
xtalHoverLabel
-
Constructor Summary
Constructors Constructor Description ModelKit()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionRotateBond(int deltaX, int deltaY, int x, int y, boolean forceFull)
Actually rotate the bond.private ModelKit.Constraint
addConstraint(int iatom, ModelKit.Constraint c)
private void
addInfo(java.util.Map<java.lang.String,java.lang.Object> info, java.lang.String key, java.lang.Object value)
void
addLockedAtoms(javajs.util.BS bs)
private void
appRunScript(java.lang.String script)
private int
assignAtom(int atomIndex, java.lang.String type, boolean autoBond, boolean addHsAndBond, boolean isClick, javajs.util.BS bsAtoms)
Original ModelKitPopup functionality -- assign an atom.void
assignAtomClick(int atomIndex, java.lang.String element, javajs.util.P3 ptNew)
private void
assignAtoms(javajs.util.P3 pt, boolean newPoint, int atomIndex, java.lang.String type, java.lang.String cmd, boolean isClick, javajs.util.BS bs, int atomicNo, int site, SymmetryInterface uc, javajs.util.Lst<javajs.util.P3> points, java.lang.String packing)
Change element, charge, and deleting an atom by clicking on it or via the MODELKIT ASSIGN ATOM command.private boolean
assignBond(int bondIndex, char type, javajs.util.BS bsAtoms)
Original ModelKit functionality -- assign a bond.int
assignMoveAtom(int iatom, javajs.util.P3 pt, javajs.util.BS bsFixed)
(package private) boolean
checkNewModel()
void
clearAtomConstraints()
int
cmdAssignAddAtoms(java.lang.String type, javajs.util.P3[] pts, javajs.util.BS bsAtoms, java.lang.String packing, java.lang.String cmd, boolean isClick)
MODELKIT ADD @3 ...void
cmdAssignAtom(int atomIndex, javajs.util.P3 pt, java.lang.String type, java.lang.String cmd, boolean isClick)
A versatile method that allows changing element, setting charge, setting position, adding or deleting an atom by clicking or dragging or via the MODELKIT ASSIGN ATOM command.void
cmdAssignBond(int bondIndex, char type, java.lang.String cmd)
void
cmdAssignConnect(int index, int index2, char type, java.lang.String cmd)
int
cmdAssignDeleteAtoms(javajs.util.BS bs)
Delete all atoms that are equivalent to this atom.int
cmdAssignMoveAtoms(javajs.util.BS bsSelected, int iatom, javajs.util.P3 p, boolean allowProjection)
Move all atoms that are equivalent to this atom PROVIDED that they have the same symmetry-invariant properties.java.lang.String
cmdAssignSpaceGroup(javajs.util.BS bs, java.lang.String name, int mi)
Assign a given space group, currently only "P1"void
dispose()
(package private) void
exitBondRotation(java.lang.String text)
private boolean
fillPointsForMove(SymmetryInterface sg, javajs.util.BS bseq, int i0, javajs.util.P3 a, javajs.util.P3 pt, javajs.util.P3[] points)
Find the operator that transforms fractional point fa to one of its symmetry-equivalent points, and then also transform pt by that same matrix.java.lang.String
getActiveMenu()
for the thin box on the top left of the window(package private) java.lang.String[]
getAllOperators()
private java.lang.String
getBondLabel(Atom[] atoms)
(package private) java.lang.String
getCenterText()
private ModelKit.Constraint
getConstraint(SymmetryInterface sym, int ia, int mode)
This constraint will be set for the site only.java.lang.String
getDefaultModel()
(package private) java.lang.String
getElementFromUser()
private java.lang.String
getHoverLabel(int atomIndex)
Called by Viewer.hoverOn to set the special label if desired.private java.lang.Object
getinfo()
(package private) int
getMKState()
private Atom
getOtherAtomIndex(Atom a1, Atom a2)
java.lang.Object
getProperty(java.lang.String name)
Get a property of the modelkit.int
getRotateBondIndex()
(package private) int
getSymEditState()
(package private) java.lang.String
getSymopText()
(package private) int
getSymViewState()
(package private) int
getUnitCellState()
boolean
handleAssignNew(MouseState pressed, MouseState dragged, MeasurementPending mp, int dragAtomIndex)
handle a mouse-generated assignNew eventprivate boolean
handleDragAtom(MouseState pressed, MouseState dragged, int[] countPlusIndices)
boolean
hasConstraint(int iatom, boolean ignoreGeneral, boolean addNew)
void
initializeForModel()
boolean
isHidden()
boolean
isPickAtomAssignCharge()
private static boolean
isTrue(java.lang.Object value)
private boolean
isVwrRotateBond()
(package private) boolean
isXtalState()
int
moveConstrained(int iatom, javajs.util.P3 ptNew, boolean doAssign, boolean allowProjection)
This is the main method from viewer.moveSelected.private static void
notImplemented(java.lang.String action)
private static javajs.util.P3
pointFromTriad(java.lang.String pos)
private boolean
processAtomClick(int atomIndex)
An atom has been clicked -- handle it.(package private) void
processMKPropertyItem(java.lang.String name, boolean TF)
private void
processModeClick(java.lang.String action)
private void
processSelClick(java.lang.String action)
private java.lang.String
processSelOpClick(java.lang.String action)
private void
processSymClick(java.lang.String action)
(package private) boolean
processSymop(java.lang.String id, boolean isFocus)
private void
processUCClick(java.lang.String action)
(package private) void
processXtalClick(java.lang.String id, java.lang.String action)
private java.lang.String
promptUser(java.lang.String msg, java.lang.String def)
(package private) void
resetAtomPickType()
(package private) void
resetBondFields()
private java.lang.String
runScriptBuffered(java.lang.String script)
private void
setBondIndex(int index, boolean isRotate)
Set the bond for rotation -- called by Sticks.checkObjectHovered via Viewer.highlightBond.MeasurementPending
setBondMeasure(int bi, MeasurementPending mp)
(package private) void
setDefaultState(int mode)
(package private) boolean
setHasUnitCell()
(package private) void
setHoverLabel(java.lang.String activeMenu, java.lang.String text)
void
setMenu(ModelKitPopup menu)
(package private) void
setMKState(int bits)
java.lang.Object
setProperty(java.lang.String key, java.lang.Object value)
Modify the state by setting a property.(package private) void
setSymEdit(int bits)
(package private) void
setSymViewState(int bits)
(package private) void
setUnitCell(int bits)
void
showMenu(int x, int y)
private void
showSymop(java.lang.Object symop)
private void
showXtalSymmetry()
Draw the symmetry elementvoid
updateMenu()
-
-
-
Field Detail
-
locked
static ModelKit.Constraint locked
-
none
static ModelKit.Constraint none
-
vwr
private Viewer vwr
-
menu
private ModelKitPopup menu
-
MODE_OPTIONS
public static final java.lang.String MODE_OPTIONS
- See Also:
- Constant Field Values
-
SYMMETRY_OPTIONS
public static final java.lang.String SYMMETRY_OPTIONS
- See Also:
- Constant Field Values
-
UNITCELL_OPTIONS
public static final java.lang.String UNITCELL_OPTIONS
- See Also:
- Constant Field Values
-
BOOLEAN_OPTIONS
public static final java.lang.String BOOLEAN_OPTIONS
- See Also:
- Constant Field Values
-
SET_OPTIONS
public static final java.lang.String SET_OPTIONS
- See Also:
- Constant Field Values
-
STATE_MOLECULAR
static final int STATE_MOLECULAR
- See Also:
- Constant Field Values
-
STATE_XTALVIEW
static final int STATE_XTALVIEW
- See Also:
- Constant Field Values
-
STATE_XTALEDIT
static final int STATE_XTALEDIT
- See Also:
- Constant Field Values
-
STATE_BITS_XTAL
static final int STATE_BITS_XTAL
- See Also:
- Constant Field Values
-
STATE_BITS_SYM_VIEW
static final int STATE_BITS_SYM_VIEW
- See Also:
- Constant Field Values
-
STATE_SYM_NONE
static final int STATE_SYM_NONE
- See Also:
- Constant Field Values
-
STATE_SYM_SHOW
static final int STATE_SYM_SHOW
- See Also:
- Constant Field Values
-
STATE_BITS_SYM_EDIT
static final int STATE_BITS_SYM_EDIT
- See Also:
- Constant Field Values
-
STATE_SYM_APPLYLOCAL
static final int STATE_SYM_APPLYLOCAL
- See Also:
- Constant Field Values
-
STATE_SYM_RETAINLOCAL
static final int STATE_SYM_RETAINLOCAL
- See Also:
- Constant Field Values
-
STATE_SYM_APPLYFULL
static final int STATE_SYM_APPLYFULL
- See Also:
- Constant Field Values
-
STATE_BITS_UNITCELL
static final int STATE_BITS_UNITCELL
- See Also:
- Constant Field Values
-
STATE_UNITCELL_PACKED
static final int STATE_UNITCELL_PACKED
- See Also:
- Constant Field Values
-
STATE_UNITCELL_EXTEND
static final int STATE_UNITCELL_EXTEND
- See Also:
- Constant Field Values
-
Pt000
private static final javajs.util.P3 Pt000
-
state
int state
-
rotationDeg
float rotationDeg
-
atomHoverLabel
java.lang.String atomHoverLabel
-
bondHoverLabel
java.lang.String bondHoverLabel
-
xtalHoverLabel
java.lang.String xtalHoverLabel
-
hasUnitCell
boolean hasUnitCell
-
allOperators
java.lang.String[] allOperators
-
currentModelIndex
int currentModelIndex
-
alertedNoEdit
boolean alertedNoEdit
-
lastModelSet
protected ModelSet lastModelSet
-
pickAtomAssignType
java.lang.String pickAtomAssignType
-
lastElementType
java.lang.String lastElementType
-
pickBondAssignType
char pickBondAssignType
-
isPickAtomAssignCharge
boolean isPickAtomAssignCharge
-
bsHighlight
javajs.util.BS bsHighlight
-
bondIndex
int bondIndex
-
bondAtomIndex1
int bondAtomIndex1
-
bondAtomIndex2
int bondAtomIndex2
-
bsRotateBranch
javajs.util.BS bsRotateBranch
-
branchAtomIndex
int branchAtomIndex
-
isRotateBond
boolean isRotateBond
-
screenXY
int[] screenXY
-
showSymopInfo
boolean showSymopInfo
-
addXtalHydrogens
boolean addXtalHydrogens
when TRUE, add H atoms to C when added to the modelSet.
-
clickToSetElement
boolean clickToSetElement
Except for H atoms, do not allow changes to elements just by clicking them. This protects against doing that inadvertently when editing.
-
autoBond
boolean autoBond
set to true for proximity-based autobonding (prior to 14.32.4/15.2.4 the default was TRUE
-
centerPoint
javajs.util.P3 centerPoint
-
spherePoint
javajs.util.P3 spherePoint
-
viewOffset
javajs.util.P3 viewOffset
-
centerDistance
float centerDistance
-
symop
java.lang.Object symop
-
centerAtomIndex
int centerAtomIndex
-
secondAtomIndex
int secondAtomIndex
-
atomIndexSphere
int atomIndexSphere
-
drawData
java.lang.String drawData
-
drawScript
java.lang.String drawScript
-
iatom0
int iatom0
-
bondRotationName
java.lang.String bondRotationName
-
lastCenter
java.lang.String lastCenter
-
lastOffset
java.lang.String lastOffset
-
a0
private Atom a0
-
a3
private Atom a3
-
constraint
private ModelKit.Constraint constraint
-
atomConstraints
private ModelKit.Constraint[] atomConstraints
-
GET
private static int GET
-
GET_CREATE
private static int GET_CREATE
-
GET_DELETE
private static int GET_DELETE
-
-
Method Detail
-
setMenu
public void setMenu(ModelKitPopup menu)
-
initializeForModel
public void initializeForModel()
-
showMenu
public void showMenu(int x, int y)
-
getDefaultModel
public java.lang.String getDefaultModel()
-
updateMenu
public void updateMenu()
-
dispose
public void dispose()
-
isPickAtomAssignCharge
public boolean isPickAtomAssignCharge()
-
isHidden
public boolean isHidden()
-
getActiveMenu
public java.lang.String getActiveMenu()
for the thin box on the top left of the window- Returns:
- [ "atomMenu" | "bondMenu" | "xtalMenu" | null ]
-
getRotateBondIndex
public int getRotateBondIndex()
-
getProperty
public java.lang.Object getProperty(java.lang.String name)
Get a property of the modelkit.- Parameters:
name
-- Returns:
- value
-
setProperty
public java.lang.Object setProperty(java.lang.String key, java.lang.Object value)
Modify the state by setting a property. Also can be used for "get" purposes.- Parameters:
key
-value
- to set, or null to simply return the current value- Returns:
- null or "get" value
-
setBondMeasure
public MeasurementPending setBondMeasure(int bi, MeasurementPending mp)
-
actionRotateBond
public void actionRotateBond(int deltaX, int deltaY, int x, int y, boolean forceFull)
Actually rotate the bond.- Parameters:
deltaX
-deltaY
-x
-y
-forceFull
-
-
handleAssignNew
public boolean handleAssignNew(MouseState pressed, MouseState dragged, MeasurementPending mp, int dragAtomIndex)
handle a mouse-generated assignNew event- Parameters:
pressed
-dragged
-mp
-dragAtomIndex
-- Returns:
- true if we should do a refresh now
-
isXtalState
boolean isXtalState()
-
setMKState
void setMKState(int bits)
-
getMKState
int getMKState()
-
setSymEdit
void setSymEdit(int bits)
-
getSymEditState
int getSymEditState()
-
setSymViewState
void setSymViewState(int bits)
-
getSymViewState
int getSymViewState()
-
setUnitCell
void setUnitCell(int bits)
-
getUnitCellState
int getUnitCellState()
-
exitBondRotation
void exitBondRotation(java.lang.String text)
-
resetBondFields
void resetBondFields()
-
processXtalClick
void processXtalClick(java.lang.String id, java.lang.String action)
-
processSymop
boolean processSymop(java.lang.String id, boolean isFocus)
-
setDefaultState
void setDefaultState(int mode)
-
getAllOperators
java.lang.String[] getAllOperators()
-
setHasUnitCell
boolean setHasUnitCell()
-
checkNewModel
boolean checkNewModel()
-
getSymopText
java.lang.String getSymopText()
-
getCenterText
java.lang.String getCenterText()
-
resetAtomPickType
void resetAtomPickType()
-
setHoverLabel
void setHoverLabel(java.lang.String activeMenu, java.lang.String text)
-
getElementFromUser
java.lang.String getElementFromUser()
-
processMKPropertyItem
void processMKPropertyItem(java.lang.String name, boolean TF)
-
assignAtom
private int assignAtom(int atomIndex, java.lang.String type, boolean autoBond, boolean addHsAndBond, boolean isClick, javajs.util.BS bsAtoms)
Original ModelKitPopup functionality -- assign an atom.- Parameters:
atomIndex
-type
-autoBond
-addHsAndBond
-isClick
- whether this is a click or notbsAtoms
-- Returns:
- atomicNumber or -1
-
cmdAssignSpaceGroup
public java.lang.String cmdAssignSpaceGroup(javajs.util.BS bs, java.lang.String name, int mi)
Assign a given space group, currently only "P1"- Parameters:
bs
- atoms in the set defining the space groupname
- "P1" or "1" or ignoredmi
-- Returns:
- new name or "" or error message
-
cmdAssignDeleteAtoms
public int cmdAssignDeleteAtoms(javajs.util.BS bs)
Delete all atoms that are equivalent to this atom.- Parameters:
bs
-- Returns:
- number of deleted atoms
-
setBondIndex
private void setBondIndex(int index, boolean isRotate)
Set the bond for rotation -- called by Sticks.checkObjectHovered via Viewer.highlightBond.- Parameters:
index
-isRotate
-
-
handleDragAtom
private boolean handleDragAtom(MouseState pressed, MouseState dragged, int[] countPlusIndices)
- Parameters:
pressed
-dragged
-countPlusIndices
-- Returns:
- true if handled here
-
showSymop
private void showSymop(java.lang.Object symop)
-
showXtalSymmetry
private void showXtalSymmetry()
Draw the symmetry element
-
getinfo
private java.lang.Object getinfo()
-
addInfo
private void addInfo(java.util.Map<java.lang.String,java.lang.Object> info, java.lang.String key, java.lang.Object value)
-
processAtomClick
private boolean processAtomClick(int atomIndex)
An atom has been clicked -- handle it. Called from CmdExt.assignAtom from the script created in ActionManager.assignNew from Actionmanager.checkReleaseAction- Parameters:
atomIndex
-- Returns:
- true if handled
-
processModeClick
private void processModeClick(java.lang.String action)
-
processSelClick
private void processSelClick(java.lang.String action)
-
processSelOpClick
private java.lang.String processSelOpClick(java.lang.String action)
-
processSymClick
private void processSymClick(java.lang.String action)
-
processUCClick
private void processUCClick(java.lang.String action)
-
getHoverLabel
private java.lang.String getHoverLabel(int atomIndex)
Called by Viewer.hoverOn to set the special label if desired.- Parameters:
atomIndex
-- Returns:
- special label or null
-
getBondLabel
private java.lang.String getBondLabel(Atom[] atoms)
-
isVwrRotateBond
private boolean isVwrRotateBond()
-
promptUser
private java.lang.String promptUser(java.lang.String msg, java.lang.String def)
-
appRunScript
private void appRunScript(java.lang.String script)
-
runScriptBuffered
private java.lang.String runScriptBuffered(java.lang.String script)
-
isTrue
private static boolean isTrue(java.lang.Object value)
-
pointFromTriad
private static javajs.util.P3 pointFromTriad(java.lang.String pos)
-
notImplemented
private static void notImplemented(java.lang.String action)
-
cmdAssignAtom
public void cmdAssignAtom(int atomIndex, javajs.util.P3 pt, java.lang.String type, java.lang.String cmd, boolean isClick)
A versatile method that allows changing element, setting charge, setting position, adding or deleting an atom by clicking or dragging or via the MODELKIT ASSIGN ATOM command.- Parameters:
atomIndex
- may be -1pt
- a Cartesian position for a new atom or when moving an atom to a new positiontype
- one of: an element symbol, "X" (delete), "Mi" (decrement charge), "Pl" (increment charge), "." (from connect; just adding hydrogens)cmd
- reference command given; may be nullisClick
- if this is a user-generated click event
-
assignAtoms
private void assignAtoms(javajs.util.P3 pt, boolean newPoint, int atomIndex, java.lang.String type, java.lang.String cmd, boolean isClick, javajs.util.BS bs, int atomicNo, int site, SymmetryInterface uc, javajs.util.Lst<javajs.util.P3> points, java.lang.String packing)
Change element, charge, and deleting an atom by clicking on it or via the MODELKIT ASSIGN ATOM command. null n bs ASSIGN ATOM @1 "N" pt -1 null ASSIGN ATOM "N" {x,y,z} pt -1 bs ADD ATOM @1 "N" {x,y,z}- Parameters:
pt
-newPoint
-atomIndex
-type
-cmd
-isClick
-bs
-atomicNo
-site
-uc
- a SymmetryInterface or nullpoints
-packing
-
-
cmdAssignBond
public void cmdAssignBond(int bondIndex, char type, java.lang.String cmd)
-
assignBond
private boolean assignBond(int bondIndex, char type, javajs.util.BS bsAtoms)
Original ModelKit functionality -- assign a bond.- Parameters:
bondIndex
-type
-bsAtoms
-- Returns:
- bit set of atoms to modify
-
cmdAssignConnect
public void cmdAssignConnect(int index, int index2, char type, java.lang.String cmd)
-
assignAtomClick
public void assignAtomClick(int atomIndex, java.lang.String element, javajs.util.P3 ptNew)
-
cmdAssignAddAtoms
public int cmdAssignAddAtoms(java.lang.String type, javajs.util.P3[] pts, javajs.util.BS bsAtoms, java.lang.String packing, java.lang.String cmd, boolean isClick)
MODELKIT ADD @3 ...- Parameters:
type
-pts
- one or more new pointsbsAtoms
- the atoms to process, presumably from different sitespacking
- "packed" or ""cmd
- the command generating this callisClick
-- Returns:
- the number of atoms added
-
cmdAssignMoveAtoms
public int cmdAssignMoveAtoms(javajs.util.BS bsSelected, int iatom, javajs.util.P3 p, boolean allowProjection)
Move all atoms that are equivalent to this atom PROVIDED that they have the same symmetry-invariant properties.- Parameters:
bsSelected
- could be a single atom or a moleculeiatom
- atom indexp
-allowProjection
-- Returns:
- number of atoms moved
-
assignMoveAtom
public int assignMoveAtom(int iatom, javajs.util.P3 pt, javajs.util.BS bsFixed)
-
fillPointsForMove
private boolean fillPointsForMove(SymmetryInterface sg, javajs.util.BS bseq, int i0, javajs.util.P3 a, javajs.util.P3 pt, javajs.util.P3[] points)
Find the operator that transforms fractional point fa to one of its symmetry-equivalent points, and then also transform pt by that same matrix. Optionally, save the transformed points in a compact array.- Parameters:
sg
-bseq
-i0
-a
-pt
-points
-- Returns:
- false if there is a failure to find a transform
-
clearAtomConstraints
public void clearAtomConstraints()
-
hasConstraint
public boolean hasConstraint(int iatom, boolean ignoreGeneral, boolean addNew)
-
moveConstrained
public int moveConstrained(int iatom, javajs.util.P3 ptNew, boolean doAssign, boolean allowProjection)
This is the main method from viewer.moveSelected.- Parameters:
iatom
-ptNew
-doAssign
- allow for exit with setting ptNew but not creating atomsallowProjection
-- Returns:
- number of atoms moved
-
getConstraint
private ModelKit.Constraint getConstraint(SymmetryInterface sym, int ia, int mode)
This constraint will be set for the site only.- Parameters:
sym
-ia
-mode
- GET, GET_CREATE, or GET_DELETE- Returns:
- a Constraint, or possibly null if not createNew
-
addConstraint
private ModelKit.Constraint addConstraint(int iatom, ModelKit.Constraint c)
-
addLockedAtoms
public void addLockedAtoms(javajs.util.BS bs)
-
-