diff options
author | Brody <brody@ieee.org> | 2013-12-11 05:46:04 (GMT) |
---|---|---|
committer | Brody <brody@ieee.org> | 2013-12-11 05:46:04 (GMT) |
commit | ef92a395a8498230921fe3d5edb694c2388fdbb9 (patch) | |
tree | 1d51892f9cf9b61fdf01eac2f8e95a6e32c54a1d /src/PolySetCGALEvaluator.cc | |
parent | d7d5bea7363703c76b9787598304bfc838e893ee (diff) | |
parent | 50fb5bb135f62ed56230d8b8afd691284616b4f6 (diff) |
Merge pull request #1 from openscad/brodykenrick-master
Brodykenrick master
Diffstat (limited to 'src/PolySetCGALEvaluator.cc')
-rw-r--r-- | src/PolySetCGALEvaluator.cc | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/PolySetCGALEvaluator.cc b/src/PolySetCGALEvaluator.cc index bc9206f..599fd7f 100644 --- a/src/PolySetCGALEvaluator.cc +++ b/src/PolySetCGALEvaluator.cc @@ -457,7 +457,14 @@ PolySet *PolySetCGALEvaluator::rotateDxfData(const RotateExtrudeNode &node, DxfD { double max_x = 0; for (size_t j = 0; j < dxf.paths[i].indices.size(); j++) { - max_x = fmax(max_x, dxf.points[dxf.paths[i].indices[j]][0]); + double point_x = dxf.points[dxf.paths[i].indices[j]][0]; + if (point_x < 0) { + PRINT("ERROR: all points for rotate_extrude() must have non-negative X coordinates"); + PRINTB("[Point %d on path %d has X coordinate %f]", j % i % point_x); + delete ps; + return NULL; + } + max_x = fmax(max_x, point_x); } int fragments = get_fragments_from_r(max_x, node.fn, node.fs, node.fa); |