00001 /*************************************************************************** 00002 *cr 00003 *cr (C) Copyright 1995-2019 The Board of Trustees of the 00004 *cr University of Illinois 00005 *cr All Rights Reserved 00006 *cr 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * RCS INFORMATION: 00011 * 00012 * $RCSfile: GeometrySpring.h,v $ 00013 * $Author: johns $ $Locker: $ $State: Exp $ 00014 * $Revision: 1.15 $ $Date: 2019/01/17 21:20:59 $ 00015 * 00016 *************************************************************************** 00017 * DESCRIPTION: 00018 * 00019 * Simulates and draws a spring between two atoms in IMD. 00020 * 00021 ***************************************************************************/ 00022 #ifndef GEOMETRYSPRING_H 00023 #define GEOMETRYSPRING_H 00024 00025 #include "GeometryMol.h" 00026 00028 class GeometrySpring : public GeometryMol { 00029 private: 00030 float k; 00031 float rvec[3]; 00032 00033 public: 00035 GeometrySpring(int *, int *, MoleculeList *, CommandQueue *, float thek, 00036 Displayable *); 00037 00038 // 00039 // public virtual routines 00040 // 00041 virtual float calculate(void); 00042 virtual void create_cmd_list(); 00043 virtual void set_pick(void); 00044 00045 ~GeometrySpring(); 00046 void prepare(); 00047 }; 00048 00049 #endif 00050