37 #ifndef EGS_POLYGON_SHAPE_
38 #define EGS_POLYGON_SHAPE_
46 #ifdef BUILD_POLYGON_SHAPE_DLL
47 #define EGS_POLYGON_SHAPE_EXPORT __declspec(dllexport)
49 #define EGS_POLYGON_SHAPE_EXPORT __declspec(dllimport)
51 #define EGS_POLYGON_SHAPE_LOCAL
55 #ifdef HAVE_VISIBILITY
56 #define EGS_POLYGON_SHAPE_EXPORT __attribute__ ((visibility ("default")))
57 #define EGS_POLYGON_SHAPE_LOCAL __attribute__ ((visibility ("hidden")))
59 #define EGS_POLYGON_SHAPE_EXPORT
60 #define EGS_POLYGON_SHAPE_LOCAL
87 yo + ay*eta_a + by*eta_b,
93 EGS_Float xo, yo, ax, ay, bx, by;
125 for (
int j=0; j<n-2; j++) {
133 int j = table->sampleBin(rndm);
134 return triangle[j]->getPoint(rndm);
EGS_AliasTable class header file.
A class for sampling random values from a given probability distribution using the alias table techni...
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.
EGS_Float getUniform()
Returns a random number uniformly distributed between zero (inclusive) and 1 (exclusive).