diff options
-rwxr-xr-x | source/blender/freestyle/intern/application/Controller.cpp | 6 | ||||
-rwxr-xr-x | source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp | 15 |
2 files changed, 16 insertions, 5 deletions
diff --git a/source/blender/freestyle/intern/application/Controller.cpp b/source/blender/freestyle/intern/application/Controller.cpp index ad48b30d744..c0e05ba09f4 100755 --- a/source/blender/freestyle/intern/application/Controller.cpp +++ b/source/blender/freestyle/intern/application/Controller.cpp @@ -97,6 +97,7 @@ Controller::Controller() _ProgressBar = new ProgressBar; _SceneNumFaces = 0; _minEdgeSize = DBL_MAX; + _EPSILON = 1e-6; _bboxDiag = 0; _ViewMap = 0; @@ -210,13 +211,8 @@ int Controller::LoadMesh(Render *re, SceneRenderLayer* srl) if(loader.minEdgeSize() < _minEdgeSize) { _minEdgeSize = loader.minEdgeSize(); - _EPSILON = _minEdgeSize*1e-6; - if(_EPSILON < DBL_MIN) - _EPSILON = 0.0; } - cout << "Epsilon computed : " << _EPSILON << endl; - // DEBUG // ScenePrettyPrinter spp; // blenderScene->accept(spp); diff --git a/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp b/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp index 157478c3a5e..96635517747 100755 --- a/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp +++ b/source/blender/freestyle/intern/view_map/ViewMapBuilder.cpp @@ -976,6 +976,21 @@ void ViewMapBuilder::ComputeSweepLineIntersections(ViewMap *ioViewMap, real epsi if((Tb < -epsilon) || (Tb > 1+epsilon)) cerr << "Warning: 3D intersection out of range for edge " << fB->vertexA()->getId() << " - " << fB->vertexB()->getId() << endl; +#if 0 + if((Ta < -epsilon) || (Ta > 1+epsilon) || (Tb < -epsilon) || (Tb > 1+epsilon)) { + printf("ta %.12e\n", ta); + printf("tb %.12e\n", tb); + printf("a1 %e, %e -- b1 %e, %e\n", a1[0], a1[1], b1[0], b1[1]); + printf("a2 %e, %e -- b2 %e, %e\n", a2[0], a2[1], b2[0], b2[1]); + if((Ta < -epsilon) || (Ta > 1+epsilon)) + printf("Ta %.12e\n", Ta); + if((Tb < -epsilon) || (Tb > 1+epsilon)) + printf("Tb %.12e\n", Tb); + printf("A1 %e, %e, %e -- B1 %e, %e, %e\n", A1[0], A1[1], A1[2], B1[0], B1[1], B1[2]); + printf("A2 %e, %e, %e -- B2 %e, %e, %e\n", A2[0], A2[1], A2[2], B2[0], B2[1], B2[2]); + } +#endif + TVertex * tvertex = ioViewMap->CreateTVertex(Vec3r(A1 + Ta*(A2-A1)), Vec3r(a1 + ta*(a2-a1)), fA, Vec3r(B1 + Tb*(B2-B1)), Vec3r(b1 + tb*(b2-b1)), fB, id); |