00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef CircReinfLayer_h
00032 #define CircReinfLayer_h
00033
00034 #include <ReinfLayer.h>
00035
00036 class ReinfBar;
00037
00038 class CircReinfLayer : public ReinfLayer
00039 {
00040 public:
00041
00042 CircReinfLayer();
00043
00044 CircReinfLayer(int materialID, int numReinfBars, double reinfBarArea,
00045 const Vector ¢erPosition, double arcRadius, double
00046 initialAngle, double finalAngle);
00047
00048 CircReinfLayer(int materialID, int numReinfBars, double reinfBarArea,
00049 const Vector ¢erPosition, double radius);
00050
00051 ~CircReinfLayer();
00052
00053
00054
00055 void setNumReinfBars (int numReinfBars);
00056 void setMaterialID (int materialID);
00057 void setReinfBarDiameter (double reinfBarDiameter);
00058 void setReinfBarArea (double reinfBarArea);
00059
00060 void setCenterPosition (const Vector ¢erPosition);
00061 void setArcRadius (double arcRadius);
00062 void setInitAngle (double initialAngle);
00063 void setFinalAngle (double finalAngle);
00064
00065
00066
00067 int getNumReinfBars (void) const;
00068 int getMaterialID (void) const;
00069 double getReinfBarDiameter (void) const;
00070 double getReinfBarArea (void) const;
00071 ReinfBar *getReinfBars (void) const;
00072
00073
00074 ReinfLayer *getCopy (void) const;
00075 const Vector &getCenterPosition (void) const;
00076 double getArcRadius (void) const;
00077 double getInitAngle (void) const;
00078 double getFinalAngle (void) const;
00079
00080
00081 void Print(OPS_Stream &s, int flag =0) const;
00082 friend OPS_Stream &operator<<(OPS_Stream &s, const CircReinfLayer &CircReinfLayer);
00083
00084 protected:
00085
00086 private:
00087 int nReinfBars;
00088 int matID;
00089 double barDiam;
00090 double area;
00091 Vector centerPosit;
00092 double arcRad;
00093 double initAng;
00094 double finalAng;
00095 };
00096
00097
00098 #endif
00099
00100
00101
00102