OpenStructure
Public Member Functions
CoordGroupHandle Class Reference

#include <coord_group.hh>

Public Member Functions

 CoordGroupHandle ()
 
 CoordGroupHandle (CoordSourcePtr source)
 
EntityHandle GetEntity () const
 
uint GetAtomCount () const
 
uint GetFrameCount () const
 
float GetDelta () const
 
void SetDelta (float d)
 
float GetStartTime () const
 
void SetStartTime (float t)
 
void SetFramePositions (uint frame, const geom::Vec3List &clist)
 
void SetFrameCellSize (uint frame, const geom::Vec3 &size)
 
geom::Vec3List GetFramePositions (uint frame)
 
void CopyFrame (uint frame)
 
void Capture ()
 
void CaptureInto (int pos)
 
void Capture (uint frame)
 
void AddFrame (const geom::Vec3List &clist)
 
void AddFrame (const geom::Vec3List &clist, const geom::Vec3 &cell_size, const geom::Vec3 &cell_angles)
 
void AddFrames (const CoordGroupHandle &cg)
 
void SetAtomPos (uint frame, AtomHandle atom, const geom::Vec3 &pos)
 
geom::Vec3 GetAtomPos (uint frame, AtomHandle atom) const
 
bool IsValid () const
 
 operator bool () const
 
AtomHandleList GetAtomList () const
 
CoordFramePtr GetFrame (uint frame) const
 
CoordFrame GetFrame2 (uint frame)
 
CoordGroupHandle Filter (const EntityView &selected, int first=0, int last=-1, int stride=1) const
 
void ApplyTransform (const geom::Transform &tf)
 

Detailed Description

coordinate group, for trajectories and such

Definition at line 39 of file coord_group.hh.

Constructor & Destructor Documentation

◆ CoordGroupHandle() [1/2]

create empty, invalid handle

◆ CoordGroupHandle() [2/2]

used internally

Member Function Documentation

◆ AddFrame() [1/2]

void AddFrame ( const geom::Vec3List clist)

add frame

◆ AddFrame() [2/2]

void AddFrame ( const geom::Vec3List clist,
const geom::Vec3 cell_size,
const geom::Vec3 cell_angles 
)

◆ AddFrames()

void AddFrames ( const CoordGroupHandle cg)

◆ ApplyTransform()

void ApplyTransform ( const geom::Transform tf)

apply in-place transform to each coordinate in each frame

◆ Capture() [1/2]

void Capture ( )

store current atom positions in new frame

◆ Capture() [2/2]

void Capture ( uint  frame)

store current atom positions in given frame (must exist)

◆ CaptureInto()

void CaptureInto ( int  pos)

◆ CopyFrame()

void CopyFrame ( uint  frame)

copy atom positions of given frame to stored atoms in entity

◆ Filter()

CoordGroupHandle Filter ( const EntityView selected,
int  first = 0,
int  last = -1,
int  stride = 1 
) const

return a filtered coord group, containing only the atoms in the view

◆ GetAtomCount()

uint GetAtomCount ( ) const

number of atoms per frame

◆ GetAtomList()

AtomHandleList GetAtomList ( ) const

◆ GetAtomPos()

geom::Vec3 GetAtomPos ( uint  frame,
AtomHandle  atom 
) const

retrieve an indidivial atom position in the given frame

◆ GetDelta()

float GetDelta ( ) const

time in ps between frames, default 0.0

◆ GetEntity()

EntityHandle GetEntity ( ) const

return trajectories entity handle

◆ GetFrame()

CoordFramePtr GetFrame ( uint  frame) const

◆ GetFrame2()

CoordFrame GetFrame2 ( uint  frame)

◆ GetFrameCount()

uint GetFrameCount ( ) const

number of frames

◆ GetFramePositions()

geom::Vec3List GetFramePositions ( uint  frame)

get the positions of all the atoms in the given frame

◆ GetStartTime()

float GetStartTime ( ) const

start time in ps, default 0.0

◆ IsValid()

bool IsValid ( ) const

check for handle validity

◆ operator bool()

operator bool ( ) const

whether the handle is valid

◆ SetAtomPos()

void SetAtomPos ( uint  frame,
AtomHandle  atom,
const geom::Vec3 pos 
)

set an indidivial atom position in the given frame

◆ SetDelta()

void SetDelta ( float  d)

set time between each frame in ps

◆ SetFrameCellSize()

void SetFrameCellSize ( uint  frame,
const geom::Vec3 size 
)

set cell size for the given frame

◆ SetFramePositions()

void SetFramePositions ( uint  frame,
const geom::Vec3List clist 
)

assign positions to the given frame - order and count must match initial atomlist

◆ SetStartTime()

void SetStartTime ( float  t)

set start time in ps


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