AvogadroLibs 1.97.0
Public Member Functions | List of all members
CoordinateBlockGenerator Class Reference

The CoordinateBlockGenerator class creates an aligned, formatted block of atomic coordinates. More...

#include <coordinateblockgenerator.h>

Public Member Functions

 CoordinateBlockGenerator ()
 
void setMolecule (const Molecule *mol)
 
const Moleculemolecule () const
 
void setSpecification (const std::string &spec)
 
std::string specification () const
 
std::string generateCoordinateBlock ()
 
enum  DistanceUnit {
  Angstrom = 0 ,
  Bohr
}
 
void setDistanceUnit (DistanceUnit unit)
 
DistanceUnit distanceUnit () const
 

Detailed Description

<avogadro/core/coordinateblockgenerator.h>

See the setSpecification() documentation for details on specifying the block format.

Member Enumeration Documentation

◆ DistanceUnit

Distance unit used in the output.

Constructor & Destructor Documentation

◆ CoordinateBlockGenerator()

Construct the default CoordinateBlockGenerator with an empty specification and Angstrom distance units.

Member Function Documentation

◆ setSpecification()

void setSpecification ( const std::string &  spec)
 The specification of the block format.
 The characters in the specification string indicate the information needed
 about each atom in the coordinate block.
 - @c #: Atom index (one-based index)
 - @c Z: Atomic number (e.g. "6" for carbon)
 - @c G: GAMESS-styled Atomic number (e.g. "6.0" for carbon)
 - @c S: Element symbol (e.g. "C" for carbon)
 - @c N: Element name (e.g. "Carbon")
 - @c x: X cartesian coordinate
 - @c y: Y cartesian coordinate
 - @c z: Z cartesian coordinate
 - @c a: 'a' lattice coordinate (unit cell required)
 - @c b: 'b' lattice coordinate (unit cell required)
 - @c c: 'c' lattice coordinate (unit cell required)
 - @c 0: A literal "0". Useful for optimization flags.
 - @c 1: A literal "1". Useful for optimization flags.
 - @c _: A space character. Useful for alignment.

 For example, the specification string
__SZxyz110

will be replaced by a molecule-specific block of text similar to the following:

C 6 1.126214 0.765886 0.000000 1 1 0
C 6 0.819345 -0.564955 0.000000 1 1 0
C 6 -0.598383 -0.795127 0.000000 1 1 0
C 6 -1.310706 0.370165 0.000000 1 1 0
S 16 -0.285330 1.757144 0.000000 1 1 0
H 1 2.130424 1.185837 0.000000 1 1 0
H 1 1.548377 -1.375303 0.000000 1 1 0
H 1 -1.033768 -1.794407 0.000000 1 1 0
H 1 -2.396173 0.450760 0.000000 1 1 0

◆ setDistanceUnit()

void setDistanceUnit ( DistanceUnit  unit)

Distance unit used in the output.

◆ distanceUnit()

DistanceUnit distanceUnit ( ) const

Distance unit used in the output.

◆ generateCoordinateBlock()

std::string generateCoordinateBlock ( )

Generate and return the coordinate block.


The documentation for this class was generated from the following file: