Package org.openscience.cdk.stereo
Class SquarePlanar
java.lang.Object
org.openscience.cdk.stereo.SquarePlanar
- All Implemented Interfaces:
Cloneable
,ICDKObject
,IStereoElement<IAtom,
IAtom>
Describes square planar configuration. The configuration around a square
planar is described by 3 possible values (1:U, 2:4, or 3:Z) based on the
ordering of the planar carries around the focus:
Configurations:
a a a
| | |
d--f--b = U c--f--d = 4 b--f--c = Z
| | |
c b d
SP1 SP2 SP3
cis-platin can be represented as any of the following:
[NH3][Pt@SP1]([NH3])(Cl)Cl [NH3][Pt@SP3]([NH3])(Cl)Cl [NH3][Pt@SP2](Cl)([NH3])Cl [NH3][Pt@SP1](Cl)(Cl)[NH3]trans-platin can be represented as any of the following:
[NH3][Pt@SP2]([NH3])(Cl)Cl [NH3][Pt@SP1](Cl)([NH3])Cl [NH3][Pt@SP1](Cl)([NH3])Cl [NH3][Pt@SP3](Cl)(Cl)[NH3]The normalize function (
normalize()
) create a new
IStereoElementwhere the carriers have been reorder such that the configuration is in a
U
shape (order=1).-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final int
protected static final int
protected static final int
protected static final int
protected static final int
protected static final int
Fields inherited from interface org.openscience.cdk.interfaces.IStereoElement
AL, Allenal, AT, Atropisomeric, CFG_MASK, CisTrans, CLS_MASK, CT, CU, Cumulene, GRP_ABS, GRP_MASK, GRP_NUM_MASK, GRP_NUM_SHIFT, GRP_RAC, GRP_RAC1, GRP_RAC2, GRP_RAC3, GRP_RAC4, GRP_RAC5, GRP_REL, GRP_REL1, GRP_REL2, GRP_REL3, GRP_REL4, GRP_REL5, GRP_TYPE_MASK, HBPY8, HBPY9, HeptagonalBipyramidal, HexagonalBipyramidal, LEFT, OC, Octahedral, OPPOSITE, PBPY, PentagonalBipyramidal, RIGHT, SP, SP4, SPU, SPY, SPZ, SquarePlanar, SquarePyramidal, TBPY, Tetrahedral, TH, TOGETHER, TrigonalBipyramidal
-
Constructor Summary
ConstructorsConstructorDescriptionSquarePlanar
(IAtom focus, IAtom[] carriers, int order) Create a square-planar configuration around a provided focus atom. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Does the stereo element contain the provided atom.protected SquarePlanar
Returns aIChemObjectBuilder
for the data classes that extend this class.The carriers of the stereochemistryint
Access the configuration order and class of the stereochemistry.int
The configuration class of the stereochemistry.int
The configuration order of the stereochemistry.getFocus()
The focus atom or bond at the 'centre' of the stereo-configuration.int
Access the stereo group information - see class doc.protected static <T> T[]
invapply
(T[] src, int[] perm) Map the atoms/bonds in this instance to a new stereo element using the provided atom/bond mapping.map
(Map<IChemObject, IChemObject> chemobjs) Update the stereo using the remapping of atoms/bonds in this instance to a new stereo element using the provided atom/bond mapping.final IStereoElement<IAtom,
IAtom> mapStrict
(Map<IChemObject, IChemObject> chemobjs) Update the stereo using the remapping of atoms/bonds in this instance to a new stereo element using the provided atom/bond mapping.Normalize the configuration to the lowest configuration order (1) - U-shaped.protected static int
numCarriers
(int cfg) protected void
setBuilder
(IChemObjectBuilder builder) void
setConfigOrder
(int cfg) Set the configuration order of the stereochemistry.void
setGroupInfo
(int grp) Set the stereo group information - see class doc.
-
Field Details
-
A
protected static final int A- See Also:
-
B
protected static final int B- See Also:
-
C
protected static final int C- See Also:
-
D
protected static final int D- See Also:
-
E
protected static final int E- See Also:
-
F
protected static final int F- See Also:
-
-
Constructor Details
-
SquarePlanar
Create a square-planar configuration around a provided focus atom. The carriers are flat in the plane and their arrangement is either, U-shape, 4-shape, or Z-shape.- Parameters:
focus
- the focuscarriers
- the carriersorder
- the configuration order, 1-3
-
-
Method Details
-
normalize
Normalize the configuration to the lowest configuration order (1) - U-shaped.- Returns:
- the normalized configuration
-
create
-
numCarriers
protected static int numCarriers(int cfg) -
getFocus
The focus atom or bond at the 'centre' of the stereo-configuration.- Specified by:
getFocus
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Returns:
- the focus
-
getCarriers
The carriers of the stereochemistry- Specified by:
getCarriers
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Returns:
- the carriers
-
getConfigClass
public int getConfigClass()The configuration class of the stereochemistry.- Specified by:
getConfigClass
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Returns:
- configuration class
-
getConfigOrder
public int getConfigOrder()The configuration order of the stereochemistry.- Specified by:
getConfigOrder
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Returns:
- configuration
-
getConfig
public int getConfig()Access the configuration order and class of the stereochemistry.- Specified by:
getConfig
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Returns:
- the configuration
-
setConfigOrder
public void setConfigOrder(int cfg) Set the configuration order of the stereochemistry.- Specified by:
setConfigOrder
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Parameters:
cfg
- the new configuration
-
getGroupInfo
public int getGroupInfo()Access the stereo group information - see class doc.- Specified by:
getGroupInfo
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Returns:
- the group info
-
setGroupInfo
public void setGroupInfo(int grp) Set the stereo group information - see class doc.- Specified by:
setGroupInfo
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Parameters:
grp
- the group info
-
contains
Does the stereo element contain the provided atom.- Specified by:
contains
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Parameters:
atom
- an atom to test membership- Returns:
- whether the atom is present
-
map
Map the atoms/bonds in this instance to a new stereo element using the provided atom/bond mapping. This allows the stereo element to be transferred between a cloned or aligned (i.e. isomorphic) chemical graph. If no mapping is found for a given atom or bond it is left intact. However the provided atom and bonds maps must not be null.- Specified by:
map
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Parameters:
atoms
- used to convert the original atoms to their mapped counterpartsbonds
- used to convert the original bonds to their mapped counterparts- Returns:
- a new stereo element in the same configuration but with atoms/bonds replaced with their mapped equivalence.
-
map
Description copied from interface:IStereoElement
Update the stereo using the remapping of atoms/bonds in this instance to a new stereo element using the provided atom/bond mapping. This allows the stereo element to be transferred between a cloned or aligned (i.e. isomorphic) chemical graph. If no mapping is found for a given atom or bond the existing atom/bond it is left intact. If you want to remove stereo in such cases please useIStereoElement.mapStrict(java.util.Map<org.openscience.cdk.interfaces.IChemObject, org.openscience.cdk.interfaces.IChemObject>)
.- Specified by:
map
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Parameters:
chemobjs
- chem object mapping- Returns:
- a new stereo element in the same configuration but with atoms/bonds replaced with their mapped equivalence.
-
mapStrict
Description copied from interface:IStereoElement
Update the stereo using the remapping of atoms/bonds in this instance to a new stereo element using the provided atom/bond mapping. This allows the stereo element to be transferred between a cloned or aligned (i.e. isomorphic) chemical graph. If no mapping is found for a given atom or bond a new element is NOT created.- Specified by:
mapStrict
in interfaceIStereoElement<F extends IChemObject,
C extends IChemObject> - Parameters:
chemobjs
- chem object mapping- Returns:
- a new stereo element in the same configuration but with atoms/bonds replaced with their mapped equivalence.
-
getBuilder
Returns aIChemObjectBuilder
for the data classes that extend this class.- Specified by:
getBuilder
in interfaceICDKObject
- Returns:
- The
IChemObjectBuilder
matching thisICDKObject
-
setBuilder
-
invapply
protected static <T> T[] invapply(T[] src, int[] perm)
-