OpenStructure
Public Member Functions | Protected Member Functions | Friends
ICSEditor Class Reference

#include <ics_editor.hh>

Inherits EditorBase.

Public Member Functions

 ~ICSEditor ()
 ICSEditor (const ICSEditor &rhs)
ICSEditoroperator= (const ICSEditor &rhs)
void SetBondLength (const BondHandle &bond, Real length)
bool SetAngle (const AtomHandle &atom_a, const AtomHandle &atom_b, const AtomHandle &atom_c, Real angle)
void SetTorsionAngle (TorsionHandle torsion, Real angle)
void RotateTorsionAngle (TorsionHandle torsion, Real delta)
void RotateTorsionAngle (const AtomHandle &atom_a, const AtomHandle &atom_b, const AtomHandle &atom_c, const AtomHandle &atom_d, Real angle)
void SetTorsionAngle (const AtomHandle &atom_a, const AtomHandle &atom_b, const AtomHandle &atom_c, const AtomHandle &atom_d, Real angle)
void UpdateXCS ()
- Public Member Functions inherited from EditorBase
ChainHandle InsertChain (const String &chain_name)
BondHandle Connect (const AtomHandle &first, const AtomHandle &second)
BondHandle Connect (const AtomHandle &first, const AtomHandle &second, unsigned char bond_order)
BondHandle Connect (const AtomHandle &first, const AtomHandle &second, Real len, Real theta, Real phi)
BondHandle Connect (const AtomHandle &first, const AtomHandle &second, Real len, Real theta, Real phi, unsigned char bond_order)
void RenameChain (ChainHandle chain, const String &new_name)
void DeleteAllAtoms (ResidueHandle res)
void DeleteAtom (const AtomHandle &atom)
TorsionHandle AddTorsion (const String &name, const AtomHandle &a1, const AtomHandle &a2, const AtomHandle &a3, const AtomHandle &a4)
void DeleteChain (const ChainHandle &chain)
void DeleteResidue (const ResidueHandle &residue_handle)
void ReorderResidues (const ChainHandle &chain)
void ReorderAllResidues ()
EditMode GetMode () const
void RenameAtom (AtomHandle atom, const String &new_name)
ResidueHandle AppendResidue (ChainHandle chain, const ResidueKey &k)
ResidueHandle AppendResidue (ChainHandle chain, const ResidueKey &k, const ResNum &num)
ResidueHandle InsertResidueBefore (ChainHandle chain, int index, const ResNum &num, const ResidueKey &k)
ResidueHandle InsertResidueAfter (ChainHandle chain, int index, const ResNum &num, const ResidueKey &k)
AtomHandle InsertAtom (ResidueHandle residue, const String &name, const geom::Vec3 &pos, const String &ele="", Real occupancy=1.0, Real b_factor=0.0, bool is_hetatm=false)
AtomHandle InsertAltAtom (ResidueHandle residue, const String &name, const String &alt_group, const geom::Vec3 &pos, const String &ele="")
void AddAltAtomPos (const String &group, const AtomHandle &atom, const geom::Vec3 &position)

Protected Member Functions

 ICSEditor (const EntityHandle &ent, EditMode mode)
void Update ()
- Protected Member Functions inherited from EditorBase
 EditorBase (const EntityHandle &ent, EditMode mode)
void UpdateTrace ()

Friends

class EntityHandle

Additional Inherited Members

- Protected Attributes inherited from EditorBase
EntityHandle ent_
EditMode mode_

Detailed Description

editor for internal molecule coordinates

See also:
Entity Editors, Roll Helix Example

Definition at line 34 of file ics_editor.hh.


Constructor & Destructor Documentation

~ICSEditor ( )
ICSEditor ( const EntityHandle ent,
EditMode  mode 
)
protected
ICSEditor ( const ICSEditor rhs)

Member Function Documentation

ICSEditor& operator= ( const ICSEditor rhs)
void RotateTorsionAngle ( TorsionHandle  torsion,
Real  delta 
)

rotate torsion angle

void RotateTorsionAngle ( const AtomHandle atom_a,
const AtomHandle atom_b,
const AtomHandle atom_c,
const AtomHandle atom_d,
Real  angle 
)
bool SetAngle ( const AtomHandle atom_a,
const AtomHandle atom_b,
const AtomHandle atom_c,
Real  angle 
)

Set angle of vectors formed by a12 and a13 to the given value.

The angle is adjusted in such a way that the plane given by the 3 atom positions is kept invariant (the vectors are rotated around the plane normal).

Setting the angle requires the 3 atoms to be connected with bond. If they are not, the method will fail. The method is solely based on the internal coordinate system.

void SetBondLength ( const BondHandle bond,
Real  length 
)

set the lengh of the bond, ie the distance of the second atom from the first

Calling BondHandle::SetLength will bring the external coordinate system out of sync. It will not be updated until EntityHandle::UpdateICS() is called.

See also:
EntityHandle::UpdateICS
void SetTorsionAngle ( TorsionHandle  torsion,
Real  angle 
)

set absolute torsion angle

All connectors at the third atom (A3) will be adjusted accordingly. If you only want to adjust the bond between A3 and A4, and leave the other bonds untouched, use the SetDihedralAngle() function

See also:
RotateTorsionAngle
void SetTorsionAngle ( const AtomHandle atom_a,
const AtomHandle atom_b,
const AtomHandle atom_c,
const AtomHandle atom_d,
Real  angle 
)
void Update ( )
protected
void UpdateXCS ( )

immediately update external coordinate system


Friends And Related Function Documentation

friend class EntityHandle
friend

Definition at line 36 of file ics_editor.hh.


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