From 63939d2f86fd2bddbf1ddc4c3f0157e032118c23 Mon Sep 17 00:00:00 2001 From: ika Date: Thu, 4 Apr 2019 16:07:05 +0300 Subject: [PATCH] 0030630: Visualization - wrong visualization of shape with mirrored transformation Solids with mirror location are displayed, according to their normals. --- src/StdPrs/StdPrs_ShadedShape.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/StdPrs/StdPrs_ShadedShape.cxx b/src/StdPrs/StdPrs_ShadedShape.cxx index 60c41a1286..996c3840c8 100644 --- a/src/StdPrs/StdPrs_ShadedShape.cxx +++ b/src/StdPrs/StdPrs_ShadedShape.cxx @@ -208,7 +208,7 @@ namespace aPoint = aNodes (aNodeIter); const Standard_Integer anId = 3 * (aNodeIter - aNodes.Lower()); gp_Dir aNorm (aNormArr[anId + 0], aNormArr[anId + 1], aNormArr[anId + 2]); - if (aFace.Orientation() == TopAbs_REVERSED) + if ((aFace.Orientation() == TopAbs_REVERSED) ^ isMirrored) { aNorm.Reverse(); } @@ -237,7 +237,7 @@ namespace Standard_Integer anIndex[3]; for (Standard_Integer aTriIter = 1; aTriIter <= aT->NbTriangles(); ++aTriIter) { - if ((aFace.Orientation() == TopAbs_REVERSED) ^ isMirrored) + if ((aFace.Orientation() == TopAbs_REVERSED)) { aTriangles (aTriIter).Get (anIndex[0], anIndex[2], anIndex[1]); } -- 2.39.5