chemaxon.struc
Class SelectionMolecule

java.lang.Object
  extended bychemaxon.struc.CGraph
      extended bychemaxon.struc.MoleculeGraph
          extended bychemaxon.struc.SelectionMolecule
All Implemented Interfaces:
java.lang.Cloneable, MTransformable, chemaxon.struc.ReadableMolecule, java.io.Serializable, StereoConstants

public class SelectionMolecule
extends MoleculeGraph

A selection object derived from Molecule's ancestor.

Since:
Marvin 3.0
Version:
4.1.1, 09/08/2006
Author:
Peter Csizmadia
See Also:
Serialized Form

Field Summary
 
Fields inherited from class chemaxon.struc.MoleculeGraph
AROM_BASIC, AROM_CHEMAXON, AROM_DAYLIGHT, AROM_GENERAL, CACHE_REMOVE_AROMATAMODULE, CACHE_REMOVE_GRINVMODULE, CACHE_REMOVE_PARITYMODULE, CACHE_REMOVE_SSSRMODULE, DIM_MASK, flags, GRINV_DONT_STORE, GRINV_NOHYDROGEN, GRINV_OLDSTEREO, GRINV_STEREO, GRINV_VALUE_OPTIONS, INVALID_LINKNODE_MESSAGE, isMultiChiral, MIN_RING_SIZE_FOR_TRANS_DB, orix, oriy, oriz, propertyContainer, RMCLEANUP_MOBJECT, RMCLEANUP_STEREO
 
Fields inherited from class chemaxon.struc.CGraph
btab, CACHE_REMOVE_ALL, CACHE_REMOVE_CACHEMEMORY, cacheMemory, ctab, edgeCount, edges, fragIds, grinv, grinvCC, grinvOptions, INITIAL_CAPACITY, nFrags, nGrinv, nodeCount, nodes, parentGraph, RMCLEANUP_ALL, RMCLEANUP_EDGES, RMCLEANUP_NONE, sssr, sssrl2idx, superGraph
 
Fields inherited from interface chemaxon.struc.ReadableMolecule
HS_S, HS_SP, HS_SP2, HS_SP3, HS_UNKNOWN
 
Fields inherited from interface chemaxon.struc.StereoConstants
ATOMSTEREO_EITHER, ATOMSTEREO_MASK, ATOMSTEREO_NONE, ATOMSTEREO_SPECIFIC, CHIRALITY_MASK, CHIRALITY_R, CHIRALITY_S, CHIRALITYSUPPORT_ALL, CHIRALITYSUPPORT_NONE, CHIRALITYSUPPORT_SELECTED, CIS, CTUMASK, CTUNKNOWN, CTUNSPEC, DBS_ALL, DBS_MARKED, DBS_NONE, PARITY_EITHER, PARITY_EVEN, PARITY_MASK, PARITY_ODD, PARITY_UNSPEC, STGRP_ABS, STGRP_AND, STGRP_NONE, STGRP_OR, TRANS
 
Constructor Summary
SelectionMolecule()
           
 
Method Summary
 void add(CEdge edge)
          Adds an edge to the graph.
protected  void addEdge0(CEdge edge)
          Adds an edge.
protected  void addNode0(CNode node)
          Adds a node.
 java.lang.Object clone()
          Create a clone of the selection.
 void clonecopy(CGraph graph)
          Copies the clones of nodes and edges of this graph to another one.
protected  void fuse0(CGraph g)
          Adds those nodes and edges of a graph to this one that are not already elements.
protected  boolean isRealNodeParent()
          Selection molecules are not real node parents.
protected  void regenCtabs()
          Regenerates connection table and edge table.
 void removeEdge(CEdge edge)
          Removes an edge by reference.
 void removeEdge(int i)
          Removes an edge from the graph.
 void removeNode(CNode node)
          Removes a node and its edges.
 void removeNode(int i)
          Removes a node and its edges from the graph.
 void setEdge(int i, CEdge edge)
          Sets the edge at the specified index.
protected  void setNode0(int i, CNode node)
          Sets the node at the specified index.
 void swapNodes(int i, int j)
          Swap two nodes.
 void transform(CTransform3D t)
          Apply a transformation matrix to the atomic coordinates.
 
Methods inherited from class chemaxon.struc.MoleculeGraph
addAtomsAndBondsTo, addExplicitLonePairs, adjustMultiChiralFlag, aromatize, aromatize, aromatize, arrangeComponents, bondlength, calcCenter, calcCenter, calcDehydrogenizedGrinv, calcHeight, calcHybridization, calcOutRect, calcOutRect, calcOutRectCenter, calcOutRectCenter, calcWidth, canBeCT, canBeCT, clean, clean, clear, clearCachedInfo, clearForImport, clonelesscopy, contains, createBHtab, createCHtab, createDehydrogenizedReadOnlyGraph, dearomatize, findAtomClone, getAromaticAndAliphaticRings, getAromrings, getAromrings, getAtom, getAtomArray, getAtomCount, getBond, getBondArray, getBondCount, getCharge, getChirality, getDesiredLength, getDesiredLength, getDim, getDocument, getDocumentForChild, getEdgeArray, getEdgeVector, getExactMass, getExplicitHcount, getFormula, getGraphUnion, getGrinv, getGrinv, getGrinv, getHybridizationState, getImplicitHcount, getLocalChirality, getLocalParity, getLocation, getLonePairCount, getMass, getMassno, getName, getNeighbor, getNeighborCount, getNodeVector, getNonAromrings, getNonAromrings, getParentDocument, getParity, getPoints, getRadical, getSSSRBondSet, getSSSRBondSetInLong, getStereo2, getStereo2, getStereo2, getStereo2, getStereo2, getStereo2, getStereo2, getSubGraphCount, getSubGraphs, getSubGraphs, getVisibleCoords, hasAtomSet, hasBondSet, hasExplicitLonePairs, hasExtraLabelSet, hasImplicitH, hasValenceError, hydrogenize, implicitizeHydrogens, isAbsStereo, isAtom, isBond, isMultiChiral, isQuery, isRingBond, isSimilarTo, isValidLinkNode, makeItSimilar, mergeNodes, moveTo, newInstance, partialClean, properties, qpropCheck, removeExplicitLonePairs, removeNode, removeNode, restoreCache, revalidateCoordDependentProps, saveCache, setAbsStereo, setAtomSetSeqs, setBondSetSeqs, setChirality, setDim, setLinkNodeDefaultOuters, setLocation, setParity, setParity, setParity, setSetSeqs, stereoClean, toString, transform, updateDim, valenceCheck, valenceCheck
 
Methods inherited from class chemaxon.struc.CGraph
add, addEdgeWithoutChangingIt, addNodeWithoutChangingIt, contains, findComponentIds, findComponentIds, findEdge, findFrag, findFragById, findFrags, findNode, fuse, getBtab, getCtab, getEdge, getEdgeCount, getForefather, getFragCount, getFragIds, getGrinv, getGrinvCC, getLock, getNode, getNodeCount, getParent, getSmallestRingSizeForIdx, getSSSR, incGrinvCC, incGrinvCCOnly, indexOf, indexOf, insertEdge, insertNode, insertNullEdges, insertNullNodes, isEmpty, isRing, isSymmetric, pack, regenEdges, removeAll, removeAllEdges, removeEdge, removeEdge, replaceEdge, resetCtab, resetGrinvInParents, setGrinvCC, setNode, sortEdgesAccordingTo
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SelectionMolecule

public SelectionMolecule()
Method Detail

isRealNodeParent

protected boolean isRealNodeParent()
Selection molecules are not real node parents. However, in some special cases a selection molecule can be a node parent.

Overrides:
isRealNodeParent in class CGraph
Returns:
false
Since:
Marvin 3.0

setEdge

public void setEdge(int i,
                    CEdge edge)
Sets the edge at the specified index.

Overrides:
setEdge in class MoleculeGraph
Parameters:
i - edge index
edge - the edge reference

add

public void add(CEdge edge)
Adds an edge to the graph. If the graph is a superGraph, the edge is also added to its endpoints (two CNode objects).

Overrides:
add in class CGraph
Parameters:
edge - the edge object

swapNodes

public void swapNodes(int i,
                      int j)
Swap two nodes.

Parameters:
i - index of the first node
j - index of the second node
Since:
Marvin 3.3, 11/04/2003

removeNode

public void removeNode(CNode node)
Removes a node and its edges.

Overrides:
removeNode in class CGraph
Parameters:
node - the node

removeNode

public void removeNode(int i)
Removes a node and its edges from the graph.

Overrides:
removeNode in class CGraph
Parameters:
i - the node index

removeEdge

public void removeEdge(CEdge edge)
Removes an edge by reference.

Overrides:
removeEdge in class CGraph
Parameters:
edge - the edge

removeEdge

public void removeEdge(int i)
Removes an edge from the graph.

Overrides:
removeEdge in class CGraph
Parameters:
i - the edge index

addNode0

protected void addNode0(CNode node)
Adds a node.

Overrides:
addNode0 in class CGraph
Parameters:
node - the node reference

setNode0

protected void setNode0(int i,
                        CNode node)
Sets the node at the specified index.

Overrides:
setNode0 in class MoleculeGraph
Parameters:
i - node index
node - new node reference

addEdge0

protected void addEdge0(CEdge edge)
Adds an edge.

Overrides:
addEdge0 in class CGraph
Parameters:
edge - the edge reference

regenCtabs

protected void regenCtabs()
Regenerates connection table and edge table.

Overrides:
regenCtabs in class CGraph
Since:
Marvin 3.5.2, 12/16/2004

fuse0

protected void fuse0(CGraph g)
Adds those nodes and edges of a graph to this one that are not already elements.

Overrides:
fuse0 in class MoleculeGraph
Parameters:
g - the graph

transform

public void transform(CTransform3D t)
Apply a transformation matrix to the atomic coordinates.

Specified by:
transform in interface MTransformable
Overrides:
transform in class MoleculeGraph
Parameters:
t - the transformation matrix

clonecopy

public void clonecopy(CGraph graph)
Copies the clones of nodes and edges of this graph to another one.

Overrides:
clonecopy in class MoleculeGraph
Parameters:
graph - the target graph

clone

public java.lang.Object clone()
Create a clone of the selection.

Overrides:
clone in class MoleculeGraph
Returns:
the clone