|
BALL
1.4.2
|
#include <BALL/STRUCTURE/sdGenerator.h>
Classes | |
| class | AtomComparator |
| struct | Default |
| Default values for options. More... | |
| struct | Option |
| Option names. More... | |
Public Types | |
| enum | Property { FIRST_SDGENERATOR_PROPERTY = PDBAtom::NUMBER_OF_PROPERTIES+1, IN_RING, CORE_CHAIN, DEPOSITED, FXAS, EQAS, HEAD, EDGE, ASSEMBLED, ZIG, ZAG, INITIALIZED_HEAD_CFS, LAST_SDGENERATOR_PROPERTY } |
| Properties, used to describe atoms and their status. More... | |
Public Member Functions | |
| void | generateSD (System &molecule_sys) |
| Generates a structure Diagram from the input System. More... | |
| void | clear () |
Constructors and Destructors. | |
| SDGenerator (bool show_hydrogens=false) | |
| virtual | ~SDGenerator () |
Accessors | |
| void | setDefaultOptions () |
Public Attributes | |
Public Attributes | |
| Options | options |
| options More... | |
Protected Member Functions | |
| void | prepare_ () |
| Distinguishes between ring-atoms and core-chain-atoms, removes all H-Atoms from the System. More... | |
| void | constructRingSystem_ (Position current_ring_system) |
| Constructs a ringsystem, providing the atoms with relative 2D-coordinates, starting in the point of origin. More... | |
| Angle | getCFS_ (Atom const *atom, bool hi) |
| Angle | computeCFS_ (Vector3 const &input) |
| void | setCFS_ (Atom *atom, Angle cfs, bool high) |
| void | pushCFS_ (Atom *atom) |
| Angle | getBackupCFS_ (Atom const *, bool hi) |
| void | computeCoreCFS_ (RingAnalyser::Ring &ring, bool clockwise) |
| Angle | computeAngularSeparation_ (Atom *seed) |
| Angle | computeAngularDemand_ (Atom *seed) |
| std::vector< Atom * > | sequenceSubstituents_ (Atom *seed) |
| void | computeShelleyPriorities_ () |
| void | buildRegularPolygon_ (RingAnalyser::Ring &ring, Position first_anchor_index, bool clockwise) |
| void | buildOpenPolygon_ (RingAnalyser::Ring &ring, Position first_anchor_index, Position second_anchor_index) |
| void | attachCore_ (Position current_ring, std::vector< RingAnalyser::Ring > ¤t_system, float x_start) |
| construct the core-ring as a regular polygon More... | |
| void | attachTemplate_ (Position current_ring, std::vector< RingAnalyser::Ring > ¤t_system) |
| attach a ring template to a (partially) constructed ringsystem (no functionality yet) More... | |
| void | attachFused_ (Position current_ring, std::vector< RingAnalyser::Ring > ¤t_system) |
| attach a fused ring to a (partially) constructed ringsystem More... | |
| void | attachBridged_ (Position current_ring, std::vector< RingAnalyser::Ring > ¤t_system) |
| attach a bridged ring to a (partially) constructed ringsystem More... | |
| void | attachSpiro_ (Position current_ring, std::vector< RingAnalyser::Ring > ¤t_system) |
| attach a spiro ring to a (partially) constructed ringsystem More... | |
| void | computeAdjacencyMatrix_ (std::vector< Atom * > &chain, std::vector< bool > &result) |
| Compute adjacency matrix of the given atoms. More... | |
| void | treatChains_ () |
| cluster and arrange all chains in the system More... | |
| void | smoothCFSAngle_ (Atom *seed) |
| void | placeSubstituent_ (Atom *seed, Atom *head, Atom *next) |
| void | depositPFU_ (Atom *seed_atom, Atom *next_neighbour) |
| void | checkOverlap_ (Atom *atom) |
| bool | ringIsClockwise_ (const RingAnalyser::Ring &ring, Index start_index=0) const |
| void | assembleSD_ () |
| void | findFloydWarshallPath_ (std::vector< int > &path, std::vector< Index > &next, Size remaining_atoms, Position i, Position j, std::list< Index > &output) |
Static Protected Member Functions | |
| static bool | compareChains_ (const vector< Atom * > &x, const vector< Atom * > &y) |
| Comparator for chains of atoms. More... | |
Protected Attributes | |
| RingAnalyser | ring_analyser_ |
| The ring analyser containing all information about ring systems. More... | |
| std::list< std::list< Atom * > > | chains_ |
| all chains More... | |
| std::priority_queue< Atom *, std::vector< Atom * > , AtomComparator > | redraw_queue_ |
| our redraw queue More... | |
| System * | system_ |
| the system we are working on More... | |
Structure Diagram Generation.
This class provides methods for analysis of the input.
Definition at line 33 of file sdGenerator.h.
Properties, used to describe atoms and their status.
| Enumerator | |
|---|---|
| FIRST_SDGENERATOR_PROPERTY | |
| IN_RING | |
| CORE_CHAIN | |
| DEPOSITED | |
| FXAS | |
| EQAS | |
| HEAD | |
| EDGE | |
| ASSEMBLED | |
| ZIG | |
| ZAG | |
| INITIALIZED_HEAD_CFS | |
| LAST_SDGENERATOR_PROPERTY | |
Definition at line 40 of file sdGenerator.h.
| BALL::SDGenerator::SDGenerator | ( | bool | show_hydrogens = false | ) |
Default-Constructor
|
virtual |
Destructor
|
protected |
Assemble the final structure diagram
|
protected |
attach a bridged ring to a (partially) constructed ringsystem
| current_ring | the index of the ring to attach |
| current_system | the index of the ring system |
|
protected |
construct the core-ring as a regular polygon
| current_ring | the index of the ring to attach |
| current_system | the ring system |
| x_start | the ring is created in (x_start, 0, 0) |
|
protected |
attach a fused ring to a (partially) constructed ringsystem
| current_ring | the index of the ring to attach |
| current_system | the index of the ring system |
|
protected |
attach a spiro ring to a (partially) constructed ringsystem
| current_ring | the index of the ring to attach |
| current_system | the index of the ring system |
|
protected |
attach a ring template to a (partially) constructed ringsystem (no functionality yet)
| current_ring | the index of the ring to attach |
| current_system | the ring system |
|
protected |
Build an open polygon for a ring with two fixed points.
|
protected |
Build a regular polygon for a ring with two fixed points.
|
protected |
| void BALL::SDGenerator::clear | ( | ) |
Clear all internal data structures.
|
staticprotected |
Comparator for chains of atoms.
|
protected |
Compute adjacency matrix of the given atoms.
|
protected |
|
protected |
Compute the Shelley priority values for each atom
|
protected |
Constructs a ringsystem, providing the atoms with relative 2D-coordinates, starting in the point of origin.
| current_ring_system | consecutive numbering of the molecule's ringsystems |
|
protected |
| void BALL::SDGenerator::generateSD | ( | System & | molecule_sys | ) |
Generates a structure Diagram from the input System.
| molecule_sys |
|
protected |
Distinguishes between ring-atoms and core-chain-atoms, removes all H-Atoms from the System.
| molecule_sys |
|
protected |
|
protected |
| void BALL::SDGenerator::setDefaultOptions | ( | ) |
Resets the options to default values.
|
protected |
|
protected |
cluster and arrange all chains in the system
|
protected |
all chains
Definition at line 264 of file sdGenerator.h.
| Options BALL::SDGenerator::options |
options
Definition at line 101 of file sdGenerator.h.
|
protected |
our redraw queue
Definition at line 267 of file sdGenerator.h.
|
protected |
The ring analyser containing all information about ring systems.
Definition at line 261 of file sdGenerator.h.
|
protected |
the system we are working on
Definition at line 270 of file sdGenerator.h.
1.8.3.1