0024058: Eliminate compiler warning C4702 in MSVC++ with warning level 4
[occt.git] / src / QABugs / QABugs_4.cxx
1 // Created on: 2002-03-19
2 // Created by: QA Admin
3 // Copyright (c) 2002-2012 OPEN CASCADE SAS
4 //
5 // The content of this file is subject to the Open CASCADE Technology Public
6 // License Version 6.5 (the "License"). You may not use the content of this file
7 // except in compliance with the License. Please obtain a copy of the License
8 // at http://www.opencascade.org and read it completely before using this file.
9 //
10 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
11 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
12 //
13 // The Original Code and all software distributed under the License is
14 // distributed on an "AS IS" basis, without warranty of any kind, and the
15 // Initial Developer hereby disclaims all such warranties, including without
16 // limitation, any warranties of merchantability, fitness for a particular
17 // purpose or non-infringement. Please see the License for the specific terms
18 // and conditions governing the rights and limitations under the License.
19
20
21
22 #include <QABugs.hxx>
23
24 #include <Draw_Interpretor.hxx>
25 #include <DBRep.hxx>
26 #include <DrawTrSurf.hxx>
27 #include <AIS_InteractiveContext.hxx>
28 #include <ViewerTest.hxx>
29 #include <AIS_Shape.hxx>
30 #include <TopoDS_Shape.hxx>
31
32 #include <BRepPrimAPI_MakeSphere.hxx>
33 #include <Graphic3d_AspectFillArea3d.hxx>
34 #include <AIS_Drawer.hxx>
35 #include <Prs3d_ShadingAspect.hxx>
36
37 //#include <AcisData_AcisModel.hxx>
38 #include <TopTools_HSequenceOfShape.hxx>
39
40 #include <tcl.h>
41
42 static Standard_Integer BUC60738 (Draw_Interpretor& di, Standard_Integer /*argc*/, const char ** argv)
43 {
44   
45   Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
46   if(aContext.IsNull()) { 
47     di << "use 'vinit' command before " << argv[0] << "\n";
48     return -1;
49   }
50   
51   TopoDS_Shape theSphere = BRepPrimAPI_MakeSphere(gp_Pnt(-40,0,0),20).Shape();
52   Handle_AIS_Shape theAISShape = new AIS_Shape(theSphere);
53
54   //display mode = Shading
55   theAISShape->SetDisplayMode(1);
56
57   //get the drawer
58   Handle_AIS_Drawer theDrawer = theAISShape->Attributes();
59   Handle_Prs3d_ShadingAspect theShadingAspect = theDrawer->ShadingAspect();
60   Handle_Graphic3d_AspectFillArea3d theAspectFillArea3d = theShadingAspect->Aspect();
61
62   //allow to display the edges
63   theAspectFillArea3d->SetEdgeOn();
64   //set the style to Dash
65
66   //but the style is not set to dash : it is always solid
67   theAspectFillArea3d->SetEdgeLineType (Aspect_TOL_DASH); 
68   theAspectFillArea3d->SetEdgeColor(Quantity_Color(Quantity_NOC_GREEN)); 
69   theAspectFillArea3d->SetInteriorStyle(Aspect_IS_EMPTY);
70   theShadingAspect->SetAspect(theAspectFillArea3d);
71   theDrawer->SetShadingAspect(theShadingAspect);
72   theAISShape->SetAttributes(theDrawer);
73
74   aContext->Display(theAISShape);  
75   
76   return 0;
77 }
78
79 void QABugs::Commands_4(Draw_Interpretor& theCommands) {
80   const char *group = "QABugs";
81
82   theCommands.Add("BUC60738","BUC60738",__FILE__,BUC60738,group);
83
84   return;
85 }