00001
00002
00003
00004
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 }
00106 }
00107
00108 #endif // BALL_VIEW_MODELS_FORCEMODEL_H