21 void insertUserRectsByCoord(std::vector<Poly>& acceptedPoly, std::vector<IntPoints> &intpts,
struct Stats &pstats, std::vector<Point> &triplePoints) {
23 std::cout <<
"\n" <<
nRectByCoord <<
" User Rectangles By Coordinates Defined\n\n";
35 int polyVertIdx = i*12;
38 for (
int j = 0; j < 4; j++) {
84 newPoly.
normal[0] = xProd1[0];
85 newPoly.
normal[1] = xProd1[1];
86 newPoly.
normal[2] = xProd1[2];
115 std::cout <<
"\nUser Rectangle (defined by coordinates) " << i+1 <<
" was rejected for being outside the defined domain.\n";
123 if(rejectCode == 0) {
139 std::cout <<
"\nUser Defined Rectangular Fracture (Defined By Coordinates) " << (i+1) <<
" Accepted\n";
140 acceptedPoly.push_back(newPoly);
146 std::cout <<
"\nRejected User Defined Rectangular Fracture (Defined By Coordinates) " << i+1 <<
"\n";
T magnitude(T x, T y, T z)
double getArea(struct Poly &poly)
struct RejectionReasons rejectionReasons
unsigned long long int outside
std::vector< unsigned int > rejectsPerAttempt
void insertUserRectsByCoord(std::vector< Poly > &acceptedPoly, std::vector< IntPoints > &intpts, struct Stats &pstats, std::vector< Point > &triplePoints)
void createBoundingBox(struct Poly &newPoly)
bool domainTruncation(Poly &newPoly, double *domainSize)
int intersectionChecking(struct Poly &newPoly, std::vector< Poly > &acceptedPoly, std::vector< IntPoints > &intPtsList, struct Stats &pstats, std::vector< Point > &triplePoints)
void printRejectReason(int rejectCode, struct Poly newPoly)
T * crossProduct(const T *v1, const T *v2)
unsigned int acceptedPolyCount
unsigned long long int rejectedPolyCount