forceModel.h

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // $Id: forceModel.h,v 1.5.18.1 2007/03/25 21:26:06 oliver Exp $
00005 //
00006 
00007 #ifndef BALL_VIEW_MODELS_FORCEMODEL_H
00008 #define BALL_VIEW_MODELS_FORCEMODEL_H
00009 
00010 #ifndef BALL_VIEW_MODELS_MODELPROCESSOR_H
00011 # include <BALL/VIEW/MODELS/modelProcessor.h>
00012 #endif
00013 
00014 namespace BALL
00015 {
00016   namespace VIEW
00017   {
00018 
00025     class BALL_VIEW_EXPORT ForceModel: public ModelProcessor
00026     {
00027       public:
00028 
00029       BALL_CREATE(ForceModel)
00030 
00031       
00034 
00037       ForceModel();
00038 
00041       ForceModel(const ForceModel& add_line_model);
00042 
00045       virtual ~ForceModel();
00046 
00048       void setScaling(float value)
00049         { scaling_ = value;}
00050 
00052       void setMaxLength(float value)
00053         { max_length_ = value;}
00054 
00056       float getScaling() const
00057         { return scaling_;}
00058 
00060       float getMaxLength() const
00061         { return max_length_;}
00062 
00064       void setBaseSize(float size) { base_size_ = size;}
00065 
00067       float getBaseSize() const { return base_size_;}
00068 
00070       void setOffset(float off) { offset_ = off;}
00071 
00073       float getOffset() const { return offset_;}
00074 
00076 
00079 
00093       virtual Processor::Result operator() (Composite& composite);
00094             
00096 
00097       protected:
00098 
00099       float scaling_;
00100       float max_length_;
00101       float base_size_;
00102       float offset_;
00103     };
00104 
00105   } // namespace VIEW
00106 } // namspace BALL
00107 
00108 #endif // BALL_VIEW_MODELS_FORCEMODEL_H