37 #ifndef EGS_RECTANGLE_
38 #define EGS_RECTANGLE_
45 #ifdef BUILD_RECTANGLE_DLL
46 #define EGS_RECTANGLE_EXPORT __declspec(dllexport)
48 #define EGS_RECTANGLE_EXPORT __declspec(dllimport)
50 #define EGS_RECTANGLE_LOCAL
54 #ifdef HAVE_VISIBILITY
55 #define EGS_RECTANGLE_EXPORT __attribute__ ((visibility ("default")))
56 #define EGS_RECTANGLE_LOCAL __attribute__ ((visibility ("hidden")))
58 #define EGS_RECTANGLE_EXPORT
59 #define EGS_RECTANGLE_LOCAL
120 EGS_Float xmin, xmax, ymin, ymax, dx, dy;
135 EGS_Float Ymax, EGS_Float Xmin_i, EGS_Float Xmax_i, EGS_Float Ymin_i,
138 bool isValid()
const {
147 return r[j]->getPoint(rndm);
EGS_SurfaceShape(const string &Name="", EGS_ObjectFactory *f=0)
Construct a surface shape named Name.
A class representing 3D vectors.
virtual EGS_Vector getPoint(EGS_RandomGenerator *rndm)
Sample and return a random 3D vector.
Base random number generator class. All random number generators should be derived from this class...
EGS_RandomGenerator class header file.
EGS_BaseShape and shape classes header file.
A "rectangular ring".
EGS_Float getUniform()
Returns a random number uniformly distributed between zero (inclusive) and 1 (exclusive).