Package chemaxon.struc.sgroup
Class MulticenterSgroup
java.lang.Object
chemaxon.struc.Sgroup
chemaxon.struc.sgroup.MulticenterSgroup
- All Implemented Interfaces:
Serializable
Multicenter S-group to represent complexes like
markush ring structures, ferrocenes, metallocenes...
This sgroup represents a group of atoms with an atom called central atom. The atomic number of this central atom is
This sgroup represents a group of atoms with an atom called central atom. The atomic number of this central atom is
MolAtom.MULTICENTER
.
The represented atoms are in the sgroup graph.
Only the parent molecule of the sgroup contains the central atom, the
sgroup graph doesn't.- Since:
- Marvin 5.0, 01/09/2007
- See Also:
-
Field Summary
Fields inherited from class chemaxon.struc.Sgroup
atomSet, brackets, CHARGE_ON_ATOMS, CHARGE_ON_GROUP, parentSgroup, PR_ATSYMS, RA_IN_EXPAND, RA_REMOVE_EXCEPT_RU, SCN_EITHER_UNKNOWN, SCN_HEAD_TO_HEAD, SCN_HEAD_TO_TAIL, SGROUP_TYPE_COUNT, sgroupGraph, sgroupType, SORT_CHILD_PARENT, SORT_PARENT_CHILD, SST_ALTERNATING, SST_BLOCK, SST_RANDOM, ST_AMINOACID, ST_ANY, ST_COMPONENT, ST_COPOLYMER, ST_CROSSLINK, ST_DATA, ST_FORMULATION, ST_GENERIC, ST_GRAFT, ST_MER, ST_MIXTURE, ST_MODIFICATION, ST_MONOMER, ST_MULTICENTER, ST_MULTIPLE, ST_SRU, ST_SUPERATOM, XSTATE_C, XSTATE_NONE, XSTATE_X, XSTATE_XC
-
Constructor Summary
ModifierConstructorDescriptionMulticenterSgroup
(Molecule parent) Constructs a Multicenter S-group.protected
MulticenterSgroup
(MulticenterSgroup sg, Molecule m, Sgroup psg) Copy constructor.protected
MulticenterSgroup
(MulticenterSgroup sg, Molecule m, Sgroup psg, int[] atomIndexMap) Copy constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a central atom to this sgroup.protected Sgroup
cloneSgroup
(Molecule m, Sgroup psg, int[] atomIndexMap) Gets a new Sgroup instance.Gets the central atom of this sgroup.boolean
Does a bracket belong to this sgroup?boolean
Decides whether the central atom of the sgroup has a non-coordinate bond.Recalculates and sets the coordinates of the central atom of this sgroup.void
replaceAtom
(MolAtom oldAtom, MolAtom newAtom, int opts) Replace an existing atom by a new one in this S-group and its parent (recursively).void
replaceMulticenterAtom
(MolAtom atom, MolAtom atom2) Deprecated, for removal: This API element is subject to removal in a future version.void
setCentralAtom
(MolAtom atom) Sets the central atom of this sgroup.Methods inherited from class chemaxon.struc.Sgroup
add, addBracket, addChildSgroup, areChildSgroupsVisible, checkBondConsistency, checkBonds, checkConsistencyInEmbeddings, checkSgroupGraphConsistency, clearObjects, cloneSgroup, cloneStructure, contains, containsAllAtomsOf, contract, countAllAtoms, createMolecule, createMolecule, expand, findCrossingBonds, findSmallestSgroupContaining, findSmallestSgroupOf, getAtom, getAtomArray, getAtomCount, getAtomSymbolListAsString, getAttach, getBondArray, getBracketCount, getBrackets, getChargeLocation, getChildSgroup, getChildSgroupCount, getChildSgroups, getConnectivity, getCrossingAtoms, getId, getParentMolecule, getParentSgroup, getSgroupGraph, getSgroupType, getSubscript, getSubType, getSuperscript, getTotalCharge, getType, getXState, hasAtom, indexOf, indexOf, initBrackets, isBracketCrossingBond, isBracketVisible, isDescendantOf, isEmpty, isOrderedComponentSgroup, isPartSelected, isRemovable, isSelected, isTotalSelected, isVisible, removeAtom, removeAtom, removeAtom, removeBond, removeBonds, removeChildSgroup, removeGroupedAtom, removeObject, replaceAtom, selectAllObjects, setAtom, setChargeLocation, setConnectivity, setGUIStateRecursively, setGUIStateRecursively, setId, setParentMolecule, setSgroupGraph, setSubscript, setSubType, setXState, setXState, setXState0, sort, toString, toString, transformByParent
-
Constructor Details
-
MulticenterSgroup
Constructs a Multicenter S-group. Please note the S-group is not added automatically to the parent molecule.- Parameters:
parent
- the parent molecule- Since:
- Marvin 5.0
- See Also:
-
MulticenterSgroup
Copy constructor.- Parameters:
sg
- the S-group to copym
- the new parent moleculepsg
- the new parent S-group or null- Since:
- Marvin 5.0
-
MulticenterSgroup
Copy constructor.- Parameters:
sg
- the S-group to copym
- the new parent moleculepsg
- the new parent S-group or nullatomIndexMap
- indices of cloned atoms in the original molecule ornull
- Since:
- Marvin 5.0
-
-
Method Details
-
cloneSgroup
Gets a new Sgroup instance.- Overrides:
cloneSgroup
in classSgroup
- Parameters:
m
- the new parent moleculepsg
- the new parent S-groupatomIndexMap
- indices of cloned atoms in the original molecule ornull
- Returns:
- the new object
- Since:
- Marvin 5.0.2
-
addCentralAtom
public void addCentralAtom()Adds a central atom to this sgroup. -
recalcCentralAtom
Recalculates and sets the coordinates of the central atom of this sgroup.- Returns:
- the recalculated coordinates of the central atom
-
hasBrackets
public boolean hasBrackets()Does a bracket belong to this sgroup?- Overrides:
hasBrackets
in classSgroup
- Returns:
- returns false
-
hasNonCoordinateBond
public boolean hasNonCoordinateBond()Decides whether the central atom of the sgroup has a non-coordinate bond.- Returns:
- returns true if the central atom of the sgroup has at least one non-coordinate bond, false otherwise.
-
getCentralAtom
Gets the central atom of this sgroup.- Returns:
- the central atom
-
setCentralAtom
Sets the central atom of this sgroup.- Parameters:
atom
- the central atom
-
replaceMulticenterAtom
@Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) public void replaceMulticenterAtom(MolAtom atom, MolAtom atom2) Deprecated, for removal: This API element is subject to removal in a future version.as of Marvin 2014.08.25.0, usesetCentralAtom(chemaxon.struc.MolAtom)
insteadReplace an existing central atom by a new one in this S-group and its parent (recursively).- Parameters:
atom
- the original atomatom2
- the new atom
-
replaceAtom
Description copied from class:Sgroup
Replace an existing atom by a new one in this S-group and its parent (recursively).- Overrides:
replaceAtom
in classSgroup
- Parameters:
oldAtom
- the original atomnewAtom
- the new atomopts
- options- See Also:
-
setCentralAtom(chemaxon.struc.MolAtom)
instead