0025229: Cappings have gray tint if setting color with vclipplane command
authorisz <isz@opencascade.com>
Thu, 18 Sep 2014 11:19:16 +0000 (15:19 +0400)
committerbugmaster <bugmaster@opencascade.com>
Thu, 18 Sep 2014 11:20:09 +0000 (15:20 +0400)
    -Now in ViewerTest_ViewerCommands's method VClipPlane() Graphic3d_TypeOfMaterial::SetAmbientColor() and
     Graphic3d_TypeOfMaterial::SetDiffuseColor() are used instead of
     Graphic3d_TypeOfMaterial::SetColor()
    -New test case added: tests\bugs\vis\bug25229

-Formatting

src/ViewerTest/ViewerTest_ViewerCommands.cxx
tests/bugs/vis/bug25229 [new file with mode: 0644]

index 000e20e..30c0542 100644 (file)
@@ -5451,7 +5451,9 @@ static int VClipPlane (Draw_Interpretor& theDi, Standard_Integer theArgsNb, cons
         Standard_Real aBlu = atof (theArgVec [7]);
 
         Graphic3d_MaterialAspect aMat = aClipPlane->CappingMaterial();
-        aMat.SetColor (Quantity_Color (aRed, aGrn, aBlu, Quantity_TOC_RGB));
+        Quantity_Color aColor (aRed, aGrn, aBlu, Quantity_TOC_RGB);
+        aMat.SetAmbientColor (aColor);
+        aMat.SetDiffuseColor (aColor);
         aClipPlane->SetCappingMaterial (aMat);
       }
       else if (aCappingArg == "texname") // texture name
diff --git a/tests/bugs/vis/bug25229 b/tests/bugs/vis/bug25229
new file mode 100644 (file)
index 0000000..4a83904
--- /dev/null
@@ -0,0 +1,27 @@
+puts "============"
+puts "CR25229"
+puts "============"
+puts ""
+#######################################################################
+#  Cappings have gray tint if setting color with vclipplane command.
+#######################################################################\r
+box b 100 100 100\r
+vinit\r
+vsetdispmode 1\r
+vdisplay b\r
+vclipplane create pln1\r
+vclipplane change pln1 equation 0 0 -1 20\r
+vclipplane set pln1 object b\r
+vclipplane change pln1 capping on\r
+vclipplane change pln1 capping color 1.0 1.0 1.0\r
+vtop
+vfit
+
+set x_coord 100
+set y_coord 100
+checkcolor $x_coord $y_coord 1 1 1
+if { $stat != 1 } {
+   puts "Error : Capping color is broken."
+}
+
+set only_screen 1