1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-10 18:51:21 +03:00

0023539: QASelect and QAShiftSelect commands

Replaced QAMoveTo, QASelect and QAShiftSelect draw commands with vmoveto and vselect
Moved vselect and vmoveto draw commands to ViewerTest_ViewerCommands.cxx
Replaced  QAMoveTo and QASelect in test cases. Corrected returned error case result in vselect and vmoveto.
Added commands in ViewerTest_ViewerCommands from QADraw. Edited tests.
QACommands in tests were replaced with ViewerTest commands.
QAxwd command was removed from QADraw. Edited command wzoom and commands from ViewerTest.
Help for ViewerTest commands was edited
Small corrections. Added test cases for polygonal selection.
Small correction of test cases
This commit is contained in:
aba 2013-01-18 14:22:14 +04:00
parent 5ae15e0ef7
commit 4754e16481
89 changed files with 984 additions and 1638 deletions

View File

@ -136,69 +136,94 @@ static Standard_Integer zoom(Draw_Interpretor& , Standard_Integer n, const char*
//purpose : //purpose :
//======================================================================= //=======================================================================
static Standard_Integer wzoom(Draw_Interpretor& di, Standard_Integer, const char**) static Standard_Integer wzoom(Draw_Interpretor& di, Standard_Integer argc, const char** argv)
{ {
Standard_Integer id1,X1,Y1,b; Standard_Integer id,X,Y,W,H,X1,Y1,X2,Y2,b;
Standard_Integer X2,Y2; Standard_Real dX1,dY1,dX2,dY2,zx,zy;
Standard_Real dX1,dY1,dX2,dY2; if(argc != 1 && argc != 6)
di << "Pick first corner"<<"\n"; {
dout.Select(id1,X1,Y1,b); di<<"Usage : " << argv[0] << " [view-id X1 Y1 X2 Y2]\n";
return 1;
}
if(argc == 1)
{
di << "Pick first corner"<<"\n";
dout.Select(id,X1,Y1,b);
gp_Trsf T; gp_Trsf T;
gp_Pnt P0(0,0,0); gp_Pnt P0(0,0,0);
dout.GetTrsf(id1,T); dout.GetTrsf(id,T);
T.Invert(); T.Invert();
P0.Transform(T); P0.Transform(T);
Standard_Real z = dout.Zoom(id1); Standard_Real z = dout.Zoom(id);
dX1=X1; dY1=Y1; dX1=X1; dY1=Y1;
dX1-=P0.X(); dY1-=P0.Y(); dX1-=P0.X(); dY1-=P0.Y();
dX1/=z; dY1/=z; dX1/=z; dY1/=z;
if (b != 1) return 0;
if (id1 < 0) return 0;
Draw_Display d = dout.MakeDisplay(id1);
d.SetColor(Draw_blanc);
d.SetMode(10);
Standard_Real dOX2 = dX1;
Standard_Real dOY2 = dY1;
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dOY2));
d.Draw(gp_Pnt2d(dX1,dOY2),gp_Pnt2d(dOX2,dOY2));
d.Draw(gp_Pnt2d(dOX2,dOY2),gp_Pnt2d(dOX2,dY1));
d.Draw(gp_Pnt2d(dOX2,dY1),gp_Pnt2d(dX1,dY1));
d.Flush();
Standard_Real zx,zy;
Standard_Integer X,Y,W,H;
dout.GetPosSize(id1,X,Y,W,H);
di << "Pick second corner"<<"\n";
b = 0;
while (b == 0) {
dout.Select(id1,X2,Y2,b,Standard_False);
dX2=X2; dY2=Y2;
dX2-=P0.X(); dY2-=P0.Y();
dX2/=z; dY2/=z;
if (b != 1) return 0;
if (id < 0) return 0;
Draw_Display d = dout.MakeDisplay(id);
d.SetColor(Draw_blanc);
d.SetMode(10);
Standard_Real dOX2 = dX1;
Standard_Real dOY2 = dY1;
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dOY2)); d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dOY2));
d.Draw(gp_Pnt2d(dX1,dOY2),gp_Pnt2d(dOX2,dOY2)); d.Draw(gp_Pnt2d(dX1,dOY2),gp_Pnt2d(dOX2,dOY2));
d.Draw(gp_Pnt2d(dOX2,dOY2),gp_Pnt2d(dOX2,dY1)); d.Draw(gp_Pnt2d(dOX2,dOY2),gp_Pnt2d(dOX2,dY1));
d.Draw(gp_Pnt2d(dOX2,dY1),gp_Pnt2d(dX1,dY1)); d.Draw(gp_Pnt2d(dOX2,dY1),gp_Pnt2d(dX1,dY1));
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dY2));
d.Draw(gp_Pnt2d(dX1,dY2),gp_Pnt2d(dX2,dY2));
d.Draw(gp_Pnt2d(dX2,dY2),gp_Pnt2d(dX2,dY1));
d.Draw(gp_Pnt2d(dX2,dY1),gp_Pnt2d(dX1,dY1));
d.Flush(); d.Flush();
dOX2 = dX2; dout.GetPosSize(id,X,Y,W,H);
dOY2 = dY2; di << "Pick second corner"<<"\n";
b = 0;
while (b == 0) {
dout.Select(id,X2,Y2,b,Standard_False);
dX2=X2; dY2=Y2;
dX2-=P0.X(); dY2-=P0.Y();
dX2/=z; dY2/=z;
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dOY2));
d.Draw(gp_Pnt2d(dX1,dOY2),gp_Pnt2d(dOX2,dOY2));
d.Draw(gp_Pnt2d(dOX2,dOY2),gp_Pnt2d(dOX2,dY1));
d.Draw(gp_Pnt2d(dOX2,dY1),gp_Pnt2d(dX1,dY1));
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dY2));
d.Draw(gp_Pnt2d(dX1,dY2),gp_Pnt2d(dX2,dY2));
d.Draw(gp_Pnt2d(dX2,dY2),gp_Pnt2d(dX2,dY1));
d.Draw(gp_Pnt2d(dX2,dY1),gp_Pnt2d(dX1,dY1));
d.Flush();
dOX2 = dX2;
dOY2 = dY2;
}
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dOY2));
d.Draw(gp_Pnt2d(dX1,dOY2),gp_Pnt2d(dOX2,dOY2));
d.Draw(gp_Pnt2d(dOX2,dOY2),gp_Pnt2d(dOX2,dY1));
d.Draw(gp_Pnt2d(dOX2,dY1),gp_Pnt2d(dX1,dY1));
d.Flush();
if (b != 1) return 0;
d.SetMode(0);
}
else
{
id = atoi(argv[1]);
if ((id < 0) || (id >= MAXVIEW))
{
cout << "Incorrect view-id, must be in 0.."<<MAXVIEW-1<<endl;
return 1;
}
if (!dout.HasView(id))
{
cout <<"View "<<id<<" does not exist."<<endl;
return 1;
}
X1 = atoi (argv [2]);
Y1 = atoi (argv [3]);
X2 = atoi (argv [4]);
Y2 = atoi (argv [5]);
dout.GetPosSize(id,X,Y,W,H);
} }
d.Draw(gp_Pnt2d(dX1,dY1),gp_Pnt2d(dX1,dOY2));
d.Draw(gp_Pnt2d(dX1,dOY2),gp_Pnt2d(dOX2,dOY2));
d.Draw(gp_Pnt2d(dOX2,dOY2),gp_Pnt2d(dOX2,dY1));
d.Draw(gp_Pnt2d(dOX2,dY1),gp_Pnt2d(dX1,dY1));
d.Flush();
if (b != 1) return 0;
if ((X1 == X2) || (Y1 == Y2)) return 0; if ((X1 == X2) || (Y1 == Y2)) return 0;
zx = (Standard_Real) Abs(X2-X1) / (Standard_Real) W; zx = (Standard_Real) Abs(X2-X1) / (Standard_Real) W;
zy = (Standard_Real) Abs(Y2-Y1) / (Standard_Real) H; zy = (Standard_Real) Abs(Y2-Y1) / (Standard_Real) H;
if (zy > zx) zx = zy; if (zy > zx) zx = zy;
@ -207,11 +232,10 @@ static Standard_Integer wzoom(Draw_Interpretor& di, Standard_Integer, const char
if (Y2 > Y1) Y1 = Y2; if (Y2 > Y1) Y1 = Y2;
X1 = (Standard_Integer ) (X1*zx); X1 = (Standard_Integer ) (X1*zx);
Y1 = (Standard_Integer ) (Y1*zx); Y1 = (Standard_Integer ) (Y1*zx);
d.SetMode(0); dout.SetZoom(id,zx*dout.Zoom(id));
dout.SetZoom(id1,zx*dout.Zoom(id1)); dout.SetPan(id,-X1,-Y1);
dout.SetPan(id1,-X1,-Y1); dout.RepaintView(id);
dout.RepaintView(id1); SetTitle(id);
SetTitle(id1);
return 0; return 0;
} }
@ -947,8 +971,11 @@ void Draw::GraphicCommands(Draw_Interpretor& theCommands)
__FILE__,zoom,g); __FILE__,zoom,g);
theCommands.Add("2dzoom","2dzoom [view-id] z, or zoom2d z for all 2d views", theCommands.Add("2dzoom","2dzoom [view-id] z, or zoom2d z for all 2d views",
__FILE__,zoom,g); __FILE__,zoom,g);
theCommands.Add("wzoom","zoom on a window", theCommands.Add("wzoom","wzoom [view-id X1 Y1 X2 Y2]\n"
__FILE__,wzoom,g); "- fits the contents of a given rectangle into a view window.\n"
"- The view window and rectangle corners are specified through the arguments\n"
"- or selected interactively by the user if no arguments are given",
__FILE__,wzoom,g);
theCommands.Add("view","view view-id type X(0) Y(0) W(500) H(500)", theCommands.Add("view","view view-id type X(0) Y(0) W(500) H(500)",
__FILE__,view,g); __FILE__,view,g);
theCommands.Add("delete","delete [view-id]", theCommands.Add("delete","delete [view-id]",

File diff suppressed because it is too large Load Diff

View File

@ -29,6 +29,7 @@ uses
Draw, Draw,
TCollection, TCollection,
TColStd, TColStd,
TColgp,
TopAbs, TopAbs,
TopTools, TopTools,
TopoDS, TopoDS,

View File

@ -560,7 +560,8 @@ void ViewerTest::StandardModeActivation(const Standard_Integer mode )
case 4: cmode = "Face"; break; case 4: cmode = "Face"; break;
case 5: cmode = "Shell"; break; case 5: cmode = "Shell"; break;
case 6: cmode = "Solid"; break; case 6: cmode = "Solid"; break;
case 7: cmode = "Compound"; break; case 7: cmode = "Compsolid"; break;
case 8: cmode = "Compound"; break;
} }
if(theactivatedmodes.Contains(mode)) if(theactivatedmodes.Contains(mode))
@ -578,128 +579,6 @@ void ViewerTest::StandardModeActivation(const Standard_Integer mode )
} }
} }
//==============================================================================
//function : SelectFromContext
//purpose : pick / select an object from the last MoveTo() on a
// ButtonPress event
//==============================================================================
Handle(AIS_InteractiveObject) Select(Standard_Integer argc,
const char** argv,
Standard_Boolean shift,
Standard_Boolean pick )
{
Handle(AIS_InteractiveObject) ret;
Handle (ViewerTest_EventManager) EM = ViewerTest::CurrentEventManager();
if ( shift ) {
EM->ShiftSelect();
}
else {
EM->Select();
}
const Handle(AIS_InteractiveContext) aContext = EM->Context();
if ( !aContext->HasOpenedContext() ) {
aContext->InitCurrent();
while ( aContext->MoreCurrent() ) {
Handle(AIS_InteractiveObject) aisPickedShape =
Handle(AIS_InteractiveObject)::DownCast(aContext->Current());
//JR/Hp
const char *name = (GetMapOfAIS().IsBound1(aisPickedShape))?
// const char *name = (GetMapOfAIS().IsBound1(aisPickedShape))?
GetMapOfAIS().Find1(aisPickedShape).ToCString() :
"????";
Handle(AIS_Shape) TheRealSh = Handle(AIS_Shape)::DownCast(aisPickedShape);
if(!TheRealSh.IsNull()){
cout << "Current is " << name
<< " (" << GetTypeNameFromShape(TheRealSh->Shape())
<< ")" << endl;
}
ret = aisPickedShape;
if(!TheRealSh.IsNull()){
if ( pick && argc > 4 ) {
DBRep::Set(argv[4], TheRealSh->Shape());
}
}
aContext->NextCurrent();
}
}
else {
// A LocalContext is opened, the use xxxxSelected()
// to select an object and its SubShape
aContext->InitSelected();
while ( aContext->MoreSelected() ) {
if ( !aContext->HasSelectedShape() ) {
}
else {
TopoDS_Shape PickedShape = aContext->SelectedShape();
if ( pick && argc > 5 ) {
DBRep::Set(argv[5], PickedShape);
}
}
if ( aContext->Interactive().IsNull() ) {
cout << "??? (No InteractiveObject selected)" << endl;
}
else {
Handle(AIS_InteractiveObject) aisPicked =
Handle(AIS_InteractiveObject)::DownCast(aContext->Interactive());
ret = aisPicked;
Handle(AIS_Shape) aisPickedShape = Handle(AIS_Shape)::DownCast(aisPicked);
// Get back its name
//JR/Hp
const char *name = ( GetMapOfAIS().IsBound1(aisPicked) )?
// const char *name = ( GetMapOfAIS().IsBound1(aisPicked) )?
GetMapOfAIS().Find1(aisPicked).ToCString() :
"????";
if(!aisPickedShape.IsNull()){
if ( pick && argc > 4 ) {
// Create a draw variable to store the wohole shape
// for vpick command
DBRep::Set(argv[4], aisPickedShape->Shape());
}
cout << name << " (" << GetTypeNameFromShape(aisPickedShape->Shape())
<< ")" << endl ;
}
}
// Goto the next selected object
aContext->NextSelected();
}
}
return ret;
}
//==============================================================================
//function : DetectedFromContext
//purpose : hilight dynamicaly an object from the last MoveTo() on a
// MouseMove event
//==============================================================================
Handle(AIS_InteractiveObject) DetectedFromContext(
Handle(AIS_InteractiveContext) aContext )
{
Handle(AIS_InteractiveObject) ret;
if ( aContext->HasDetected() ) {
if ( !aContext->HasDetectedShape() ) {
//No SubShape selected
}
else {
// Get the detected SubShape
TopoDS_Shape PickedShape = aContext->DetectedShape();
}
if ( !aContext->DetectedInteractive().IsNull() ) {
Handle(AIS_InteractiveObject) aisPickedShape =
Handle(AIS_InteractiveObject)::DownCast(aContext->DetectedInteractive());
ret = aisPickedShape;
}
}
return ret;
}
//============================================================================== //==============================================================================
//function : VDispAreas,VDispSensitive,... //function : VDispAreas,VDispSensitive,...
//purpose : Redraw the view //purpose : Redraw the view

View File

@ -26,8 +26,8 @@ class EventManager from ViewerTest inherits TShared from MMgt
uses uses
View from V3d, View from V3d,
InteractiveContext from AIS InteractiveContext from AIS,
Array1OfPnt2d from TColgp
is is
Create (aView: View from V3d; Create (aView: View from V3d;
@ -44,6 +44,10 @@ is
Select(me:mutable;xmin,ymin,xmax,ymax:Integer) is virtual; Select(me:mutable;xmin,ymin,xmax,ymax:Integer) is virtual;
ShiftSelect(me:mutable;xmin,ymin,xmax,ymax:Integer) is virtual; ShiftSelect(me:mutable;xmin,ymin,xmax,ymax:Integer) is virtual;
Select(me:mutable;thePolyline:Array1OfPnt2d from TColgp) is virtual;
ShiftSelect(me:mutable;thePolyline:Array1OfPnt2d from TColgp) is virtual;
Context(me) returns InteractiveContext from AIS; Context(me) returns InteractiveContext from AIS;
---C++: inline ---C++: inline

View File

@ -118,3 +118,47 @@ void ViewerTest_EventManager::ShiftSelect()
if (!aView.IsNull()) if (!aView.IsNull())
aView->Select(myX, myY, Standard_True); aView->Select(myX, myY, Standard_True);
} }
//=======================================================================
//function : Select
//purpose : Selection with polyline
//=======================================================================
void ViewerTest_EventManager::Select(const TColgp_Array1OfPnt2d& thePolyline)
{
if(!myCtx.IsNull() && !myView.IsNull())
myCtx->Select(thePolyline,myView);
const Handle(NIS_View) aView = Handle(NIS_View)::DownCast(myView);
if (!aView.IsNull())
{
NCollection_List<gp_XY> aPolylist;
for(Standard_Integer anIter = thePolyline.Lower();anIter <= thePolyline.Upper();++anIter)
{
aPolylist.Append(gp_XY(thePolyline.Value(anIter).X(),
thePolyline.Value(anIter).Y()));
}
aView->Select(aPolylist);
}
}
//=======================================================================
//function : ShiftSelect
//purpose : Selection with polyline without erasing of current selection
//=======================================================================
void ViewerTest_EventManager::ShiftSelect(const TColgp_Array1OfPnt2d& thePolyline)
{
if(!myCtx.IsNull() && !myView.IsNull())
myCtx->ShiftSelect(thePolyline,myView);
const Handle(NIS_View) aView = Handle(NIS_View)::DownCast(myView);
if (!aView.IsNull())
{
NCollection_List<gp_XY> aPolylist;
for(Standard_Integer anIter = thePolyline.Lower();anIter <= thePolyline.Upper();++anIter)
{
aPolylist.Append(gp_XY(thePolyline.Value(anIter).X(),
thePolyline.Value(anIter).Y()));
}
aView->Select(aPolylist, Standard_True);
}
}

View File

@ -34,6 +34,7 @@
#include <Graphic3d_ExportFormat.hxx> #include <Graphic3d_ExportFormat.hxx>
#include <ViewerTest.hxx> #include <ViewerTest.hxx>
#include <ViewerTest_EventManager.hxx> #include <ViewerTest_EventManager.hxx>
#include <ViewerTest_DoubleMapOfInteractiveAndName.hxx>
#include <Visual3d_View.hxx> #include <Visual3d_View.hxx>
#include <Visual3d_ViewManager.hxx> #include <Visual3d_ViewManager.hxx>
#include <V3d_LayerMgr.hxx> #include <V3d_LayerMgr.hxx>
@ -48,6 +49,8 @@
#include <Image_AlienPixMap.hxx> #include <Image_AlienPixMap.hxx>
#include <OSD_Timer.hxx> #include <OSD_Timer.hxx>
#include <TColStd_SequenceOfInteger.hxx> #include <TColStd_SequenceOfInteger.hxx>
#include <TColStd_HSequenceOfReal.hxx>
#include <TColgp_Array1OfPnt2d.hxx>
#include <Visual3d_LayerItem.hxx> #include <Visual3d_LayerItem.hxx>
#include <V3d_LayerMgr.hxx> #include <V3d_LayerMgr.hxx>
#include <V3d_LayerMgrPointer.hxx> #include <V3d_LayerMgrPointer.hxx>
@ -94,6 +97,7 @@ Standard_IMPORT Standard_Boolean Draw_VirtualWindows;
Standard_EXPORT int ViewerMainLoop(Standard_Integer , const char** argv); Standard_EXPORT int ViewerMainLoop(Standard_Integer , const char** argv);
extern const Handle(NIS_InteractiveContext)& TheNISContext(); extern const Handle(NIS_InteractiveContext)& TheNISContext();
extern ViewerTest_DoubleMapOfInteractiveAndName& GetMapOfAIS();
#if defined(_WIN32) || defined(__WIN32__) #if defined(_WIN32) || defined(__WIN32__)
static Handle(Graphic3d_WNTGraphicDevice)& GetG3dDevice(){ static Handle(Graphic3d_WNTGraphicDevice)& GetG3dDevice(){
@ -3097,6 +3101,526 @@ static int VDiffImage (Draw_Interpretor& theDI, Standard_Integer theArgNb, const
return 0; return 0;
} }
//=======================================================================
//function : VSelect
//purpose : Emulates different types of selection by mouse:
// 1) single click selection
// 2) selection with rectangle having corners at pixel positions (x1,y1) and (x2,y2)
// 3) selection with polygon having corners at
// pixel positions (x1,y1),...,(xn,yn)
// 4) any of these selections with shift button pressed
//=======================================================================
static Standard_Integer VSelect (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if(argc < 3)
{
di << "Usage : " << argv[0] << " x1 y1 [x2 y2 [... xn yn]] [shift_selection = 1|0]" << "\n";
return 1;
}
Handle(AIS_InteractiveContext) myAIScontext = ViewerTest::GetAISContext();
if(myAIScontext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
const Standard_Boolean isShiftSelection = (argc>3 && !(argc%2) && (atoi(argv[argc-1])==1));
Handle(ViewerTest_EventManager) aCurrentEventManager = ViewerTest::CurrentEventManager();
aCurrentEventManager->MoveTo(atoi(argv[1]),atoi(argv[2]));
if(argc <= 4)
{
if(isShiftSelection)
aCurrentEventManager->ShiftSelect();
else
aCurrentEventManager->Select();
}
else if(argc <= 6)
{
if(isShiftSelection)
aCurrentEventManager->ShiftSelect(atoi(argv[1]),atoi(argv[2]),atoi(argv[3]),atoi(argv[4]));
else
aCurrentEventManager->Select(atoi(argv[1]),atoi(argv[2]),atoi(argv[3]),atoi(argv[4]));
}
else
{
Standard_Integer anUpper = 0;
if(isShiftSelection)
anUpper = (argc-1)/2;
else
anUpper = argc/2;
TColgp_Array1OfPnt2d aPolyline(1,anUpper);
for(Standard_Integer i=1;i<=anUpper;++i)
aPolyline.SetValue(i,gp_Pnt2d(atoi(argv[2*i-1]),atoi(argv[2*i])));
if(isShiftSelection)
aCurrentEventManager->ShiftSelect(aPolyline);
else
aCurrentEventManager->Select(aPolyline);
}
return 0;
}
//=======================================================================
//function : VMoveTo
//purpose : Emulates cursor movement to defined pixel position
//=======================================================================
static Standard_Integer VMoveTo (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if(argc != 3)
{
di << "Usage : " << argv[0] << " x y" << "\n";
return 1;
}
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
ViewerTest::CurrentEventManager()->MoveTo(atoi(argv[1]),atoi(argv[2]));
return 0;
}
//=======================================================================
//function : VViewParams
//purpose : Gets or sets AIS View characteristics
//=======================================================================
static Standard_Integer VViewParams (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if ( argc != 1 && argc != 13)
{
di << "Usage : " << argv[0] << "\n";
return 1;
}
Handle (V3d_View) anAISView = ViewerTest::CurrentView ();
if ( anAISView.IsNull () )
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
if(argc==1){
Quantity_Factor anAISViewScale = anAISView -> V3d_View::Scale ();
Standard_Real anAISViewCenterCoordinateX = 0.0;
Standard_Real anAISViewCenterCoordinateY = 0.0;
anAISView -> V3d_View::Center (anAISViewCenterCoordinateX, anAISViewCenterCoordinateY);
Standard_Real anAISViewProjX = 0.0;
Standard_Real anAISViewProjY = 0.0;
Standard_Real anAISViewProjZ = 0.0;
anAISView -> V3d_View::Proj (anAISViewProjX, anAISViewProjY, anAISViewProjZ);
Standard_Real anAISViewUpX = 0.0;
Standard_Real anAISViewUpY = 0.0;
Standard_Real anAISViewUpZ = 0.0;
anAISView -> V3d_View::Up (anAISViewUpX, anAISViewUpY, anAISViewUpZ);
Standard_Real anAISViewAtX = 0.0;
Standard_Real anAISViewAtY = 0.0;
Standard_Real anAISViewAtZ = 0.0;
anAISView -> V3d_View::At (anAISViewAtX, anAISViewAtY, anAISViewAtZ);
di << "Scale of current view: " << anAISViewScale << "\n";
di << "Center on X : "<< anAISViewCenterCoordinateX << "; on Y: " << anAISViewCenterCoordinateY << "\n";
di << "Proj on X : " << anAISViewProjX << "; on Y: " << anAISViewProjY << "; on Z: " << anAISViewProjZ << "\n";
di << "Up on X : " << anAISViewUpX << "; on Y: " << anAISViewUpY << "; on Z: " << anAISViewUpZ << "\n";
di << "At on X : " << anAISViewAtX << "; on Y: " << anAISViewAtY << "; on Z: " << anAISViewAtZ << "\n";
}
else
{
Quantity_Factor anAISViewScale = atof (argv [1]);
Standard_Real anAISViewCenterCoordinateX = atof (argv [2]);
Standard_Real anAISViewCenterCoordinateY = atof (argv [3]);
Standard_Real anAISViewProjX = atof (argv [4]);
Standard_Real anAISViewProjY = atof (argv [5]);
Standard_Real anAISViewProjZ = atof (argv [6]);
Standard_Real anAISViewUpX = atof (argv [7]);
Standard_Real anAISViewUpY = atof (argv [8]);
Standard_Real anAISViewUpZ = atof (argv [9]);
Standard_Real anAISViewAtX = atof (argv [10]);
Standard_Real anAISViewAtY = atof (argv [11]);
Standard_Real anAISViewAtZ = atof (argv [12]);
anAISView -> V3d_View::SetScale (anAISViewScale);
anAISView -> V3d_View::SetCenter (anAISViewCenterCoordinateX, anAISViewCenterCoordinateY);
anAISView -> V3d_View::SetAt (anAISViewAtX, anAISViewAtY, anAISViewAtZ);
anAISView -> V3d_View::SetProj (anAISViewProjX, anAISViewProjY, anAISViewProjZ);
anAISView -> V3d_View::SetUp (anAISViewUpX, anAISViewUpY, anAISViewUpZ);
}
return 0;
}
//=======================================================================
//function : VChangeSelected
//purpose : Adds the shape to selection or remove one from it
//=======================================================================
static Standard_Integer VChangeSelected (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if(argc != 2)
{
di<<"Usage : " << argv[0] << " shape \n";
return 1;
}
//get AIS_Shape:
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
ViewerTest_DoubleMapOfInteractiveAndName& aMap = GetMapOfAIS();
TCollection_AsciiString aName(argv[1]);
Handle(AIS_InteractiveObject) anAISObject;
if(!aMap.IsBound2(aName))
{
di<<"Use 'vdisplay' before";
return 1;
}
else
{
anAISObject = Handle(AIS_InteractiveObject)::DownCast(aMap.Find2(aName));
if(anAISObject.IsNull()){
di<<"No interactive object \n";
return 1;
}
if(aContext->HasOpenedContext())
{
aContext->AddOrRemoveSelected(anAISObject);
}
else
{
aContext->AddOrRemoveCurrentObject(anAISObject);
}
}
return 0;
}
//=======================================================================
//function : VZClipping
//purpose : Gets or sets ZClipping mode, width and depth
//=======================================================================
static Standard_Integer VZClipping (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if(argc>4)
{
di << "Usage : " << argv[0] << " [mode] [depth width]" << "\n"
<<"mode = OFF|BACK|FRONT|SLICE depth = [0..1] width = [0..1]" << "\n";
return -1;
}
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
Handle(V3d_View) aView = ViewerTest::CurrentView();
V3d_TypeOfZclipping aZClippingMode;
if(argc==1)
{
TCollection_AsciiString aZClippingModeString;
Quantity_Length aDepth, aWidth;
aZClippingMode = aView->ZClipping(aDepth, aWidth);
switch (aZClippingMode)
{
case V3d_OFF:
aZClippingModeString.Copy("OFF");
break;
case V3d_BACK:
aZClippingModeString.Copy("BACK");
break;
case V3d_FRONT:
aZClippingModeString.Copy("FRONT");
break;
case V3d_SLICE:
aZClippingModeString.Copy("SLICE");
break;
default:
aZClippingModeString.Copy(TCollection_AsciiString(aZClippingMode));
break;
}
di << "ZClippingMode = " << aZClippingModeString.ToCString() << "\n"
<< "ZClipping depth = " << aDepth << "\n"
<< "ZClipping width = " << aWidth << "\n";
}
else
{
if(argc !=3)
{
Standard_Integer aStatus = 0;
if ( strcmp (argv [1], "OFF") == 0 ) {
aStatus = 1;
aZClippingMode = V3d_OFF;
}
if ( strcmp (argv [1], "BACK") == 0 ) {
aStatus = 1;
aZClippingMode = V3d_BACK;
}
if ( strcmp (argv [1], "FRONT") == 0 ) {
aStatus = 1;
aZClippingMode = V3d_FRONT;
}
if ( strcmp (argv [1], "SLICE") == 0 ) {
aStatus = 1;
aZClippingMode = V3d_SLICE;
}
if (aStatus != 1)
{
di << "Bad mode; Usage : " << argv[0] << " [mode] [depth width]" << "\n"
<< "mode = OFF|BACK|FRONT|SLICE depth = [0..1] width = [0..1]" << "\n";
return 1;
}
aView->SetZClippingType(aZClippingMode);
}
if(argc >2)
{
Quantity_Length aDepth = 0., aWidth = 1.;
if(argc == 3)
{
aDepth = atof(argv[1]);
aWidth = atof(argv[2]);
}
else if(argc == 4)
{
aDepth = atof(argv[2]);
aWidth = atof(argv[3]);
}
if(aDepth<0. || aDepth>1.)
{
di << "Bad depth; Usage : " << argv[0] << " [mode] [depth width]" << "\n"
<< "mode = OFF|BACK|FRONT|SLICE depth = [0..1] width = [0..1]" << "\n";
return 1;
}
if(aWidth<0. || aWidth>1.)
{
di << "Bad width; Usage : " << argv[0] << " [mode] [depth width]" << "\n"
<< "mode = OFF|BACK|FRONT|SLICE depth = [0..1] width = [0..1]" << "\n";
return 1;
}
aView->SetZClippingDepth(aDepth);
aView->SetZClippingWidth(aWidth);
}
aView->Redraw();
}
return 0;
}
//=======================================================================
//function : VNbSelected
//purpose : Returns number of selected objects
//=======================================================================
static Standard_Integer VNbSelected (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if(argc != 1)
{
di << "Usage : " << argv[0] << "\n";
return 1;
}
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
di << aContext->NbSelected() << "\n";
return 0;
}
//=======================================================================
//function : VAntialiasing
//purpose : Switches altialiasing on or off
//=======================================================================
static Standard_Integer VAntialiasing (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if(argc > 2)
{
di << "Usage : " << argv[0] << " [1|0]" << "\n";
return 1;
}
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
Handle(V3d_View) aView = ViewerTest::CurrentView();
if((argc == 2) && (atof(argv[1]) == 0))
aView->SetAntialiasingOff();
else
aView->SetAntialiasingOn();
aView->Update();
return 0;
}
//=======================================================================
//function : VPurgeDisplay
//purpose : Switches altialiasing on or off
//=======================================================================
static Standard_Integer VPurgeDisplay (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
if (argc > 2)
{
di << "Usage : " << argv[0] << " [CollectorToo = 0|1]" << "\n";
return 1;
}
Standard_Boolean isCollectorToo = Standard_False;
if (argc == 2)
{
isCollectorToo = (atoi(argv [1]) != 0);
}
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if (aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
aContext->CloseAllContexts(Standard_False);
di << aContext->PurgeDisplay(isCollectorToo) << "\n";
return 0;
}
//=======================================================================
//function : VSetViewSize
//purpose :
//=======================================================================
static Standard_Integer VSetViewSize (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
if(argc != 2)
{
di<<"Usage : " << argv[0] << " Size\n";
return 1;
}
Standard_Real aSize = atof(argv[1]);
if (aSize <= 0.)
{
di<<"Bad Size value : " << aSize << "\n";
return 1;
}
Handle(V3d_View) aView = ViewerTest::CurrentView();
aView->SetSize(aSize);
return 0;
}
//=======================================================================
//function : VMoveView
//purpose :
//=======================================================================
static Standard_Integer VMoveView (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
if(argc < 4 || argc > 5)
{
di<<"Usage : " << argv[0] << " Dx Dy Dz [Start = 1|0]\n";
return 1;
}
Standard_Real Dx = atof(argv[1]);
Standard_Real Dy = atof(argv[2]);
Standard_Real Dz = atof(argv[3]);
Standard_Boolean aStart = Standard_True;
if (argc == 5)
{
aStart = (atoi(argv[4]) > 0);
}
Handle(V3d_View) aView = ViewerTest::CurrentView();
aView->Move(Dx,Dy,Dz,aStart);
return 0;
}
//=======================================================================
//function : VTranslateView
//purpose :
//=======================================================================
static Standard_Integer VTranslateView (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull())
{
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
if(argc < 4 || argc > 5)
{
di<<"Usage : " << argv[0] << " Dx Dy Dz [Start = 1|0]\n";
return 1;
}
Standard_Real Dx = atof(argv[1]);
Standard_Real Dy = atof(argv[2]);
Standard_Real Dz = atof(argv[3]);
Standard_Boolean aStart = Standard_True;
if (argc == 5)
{
aStart = (atoi(argv[4]) > 0);
}
Handle(V3d_View) aView = ViewerTest::CurrentView();
aView->Translate(Dx,Dy,Dz,aStart);
return 0;
}
//=======================================================================
//function : VTurnView
//purpose :
//=======================================================================
static Standard_Integer VTurnView (Draw_Interpretor& di,
Standard_Integer argc,
const char ** argv)
{
Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
if(aContext.IsNull()) {
di << "use 'vinit' command before " << argv[0] << "\n";
return 1;
}
if(argc < 4 || argc > 5){
di<<"Usage : " << argv[0] << " Ax Ay Az [Start = 1|0]\n";
return 1;
}
Standard_Real Ax = atof(argv[1]);
Standard_Real Ay = atof(argv[2]);
Standard_Real Az = atof(argv[3]);
Standard_Boolean aStart = Standard_True;
if (argc == 5)
{
aStart = (atoi(argv[4]) > 0);
}
Handle(V3d_View) aView = ViewerTest::CurrentView();
aView->Turn(Ax,Ay,Az,aStart);
return 0;
}
//======================================================================= //=======================================================================
//function : ViewerCommands //function : ViewerCommands
//purpose : //purpose :
@ -3230,4 +3754,50 @@ void ViewerTest::ViewerCommands(Draw_Interpretor& theCommands)
theCommands.Add("diffimage", theCommands.Add("diffimage",
"diffimage : diffimage imageFile1 imageFile2 toleranceOfColor(0..1) blackWhite(1|0) borderFilter(1|0) [diffImageFile]", "diffimage : diffimage imageFile1 imageFile2 toleranceOfColor(0..1) blackWhite(1|0) borderFilter(1|0) [diffImageFile]",
__FILE__, VDiffImage, group); __FILE__, VDiffImage, group);
theCommands.Add ("vselect",
"vselect x1 y1 [x2 y2 [x3 y3 ... xn yn]] [shift_selection = 0|1]\n"
"- emulates different types of selection:\n"
"- 1) single click selection\n"
"- 2) selection with rectangle having corners at pixel positions (x1,y1) and (x2,y2)\n"
"- 3) selection with polygon having corners in pixel positions (x1,y1), (x2,y2),...,(xn,yn)\n"
"- 4) any of these selections with shift button pressed",
__FILE__, VSelect, group);
theCommands.Add ("vmoveto",
"vmoveto x y"
"- emulates cursor movement to pixel postion (x,y)",
__FILE__, VMoveTo, group);
theCommands.Add("vviewparams",
"vviewparams [scale center_X center_Y proj_X proj_Y proj_Z up_X up_Y up_Z at_X at_Y at_Z]"
"- gets or sets current view characteristics",
__FILE__,VViewParams, group);
theCommands.Add("vchangeselected",
"vchangeselected shape"
"- adds to shape to selection or remove one from it",
__FILE__, VChangeSelected, group);
theCommands.Add("vzclipping",
"vzclipping [mode] [depth width]\n"
"- mode = OFF|BACK|FRONT|SLICE depth = [0..1] width = [0..1]\n"
"- gets or sets ZClipping mode, width and depth",
__FILE__,VZClipping,group);
theCommands.Add ("vnbselected",
"vnbselected", __FILE__, VNbSelected, group);
theCommands.Add("vantialiasing",
"vantialiasing 1|0",
__FILE__,VAntialiasing,group);
theCommands.Add ("vpurgedisplay",
"vpurgedisplay [CollectorToo = 0|1]"
"- removes structures which don't belong to objects displayed in neutral point",
__FILE__, VPurgeDisplay, group);
theCommands.Add("vsetviewsize",
"vsetviewsize size",
__FILE__,VSetViewSize,group);
theCommands.Add("vmoveview",
"vmoveview Dx Dy Dz [Start = 1|0]",
__FILE__,VMoveView,group);
theCommands.Add("vtranslateview",
"vtranslateview Dx Dy Dz [Start = 1|0)]",
__FILE__,VTranslateView,group);
theCommands.Add("vturnview",
"vturnview Ax Ay Az [Start = 1|0]",
__FILE__,VTurnView,group);
} }

View File

@ -25,8 +25,7 @@ if { ${stat} != 1 } {
puts "Error : Shading is missing in 3D Viewer" puts "Error : Shading is missing in 3D Viewer"
} }
QASelect 220 170 vselect 220 170
QASelect 220 170
set square 92.9029 set square 92.9029
set only_screen 1 set only_screen 1

View File

@ -24,8 +24,6 @@ vdisplay result
vfit vfit
vsetdispmode result 1 vsetdispmode result 1
QAUpdateLights
set x_coord 116 set x_coord 116
set y_coord 252 set y_coord 252

View File

@ -20,7 +20,6 @@ vinit
vdisplay result vdisplay result
vsetdispmode 1 vsetdispmode 1
vfit vfit
QAUpdateLights
checkcolor $x_coord $y_coord 0.77 0.54 0.09 checkcolor $x_coord $y_coord 0.77 0.54 0.09

View File

@ -40,13 +40,11 @@ if { ${status} == 0} {
vsetdispmode 1 vsetdispmode 1
vdisplay result vdisplay result
QASetViewCharac ${scale} ${center_X} ${center_Y} \ vviewparams ${scale} ${center_X} ${center_Y} \
${proj_X} ${proj_Y} ${proj_Z} \ ${proj_X} ${proj_Y} ${proj_Z} \
${up_X} ${up_Y} ${up_Z} \ ${up_X} ${up_Y} ${up_Z} \
${at_X} ${at_Y} ${at_Z} ${at_X} ${at_Y} ${at_Z}
QAUpdateLights
checkcolor $x_coord $y_coord 0.98 0.72 0.13 checkcolor $x_coord $y_coord 0.98 0.72 0.13
if { ${stat} != 1 } { if { ${stat} != 1 } {

View File

@ -18,7 +18,7 @@ vinit
vdisplay result vdisplay result
vsetdispmode result 1 vsetdispmode result 1
QASetViewCharac 5.1346924 95.358439 -4.910448 0.23495967 -0.302 0.923899 -0.7304302 0.5722587 0.372815 9.550874 -7.55706 -28.83166 vviewparams 5.1346924 95.358439 -4.910448 0.23495967 -0.302 0.923899 -0.7304302 0.5722587 0.372815 9.550874 -7.55706 -28.83166
isos result 0 isos result 0
triangles result triangles result

View File

@ -20,7 +20,7 @@ checkshape gasSolid_
vinit vinit
vdisplay wallSolid_ vdisplay wallSolid_
vdisplay gasSolid_ vdisplay gasSolid_
QAvzfit vzfit
explode wallSolid_ w explode wallSolid_ w

View File

@ -12,7 +12,6 @@ puts "========================="
vinit vinit
BUC60547 f BUC60547 f
vfit vfit
QAUpdateLights
set x_coord 290 set x_coord 290
set y_coord 33 set y_coord 33

View File

@ -17,9 +17,7 @@ puts "=================================="
vinit vinit
BUC60574 BUC60574
QASelect 220 210 vselect 220 210
QASelect 220 210
QAUpdateLights
puts "" puts ""
set x_coord 205 set x_coord 205

View File

@ -14,8 +14,7 @@ vinit
vdisplay result vdisplay result
vfit vfit
vsetdispmode 1 vsetdispmode 1
QASelect 180 180 vselect 180 180
QASelect 180 180
vsetcolor result CYAN3 vsetcolor result CYAN3
set x_coord 120 set x_coord 120

View File

@ -9,8 +9,7 @@ box b 10 30 50
compound b c compound b c
vinit vinit
BUC60614 c BUC60614 c
QAMoveTo 200 200 vmoveto 200 200
QAMoveTo 200 200
vfit vfit
set only_screen 1 set only_screen 1

View File

@ -14,8 +14,7 @@ puts "================"
vinit vinit
BUC60632 0 100 BUC60632 0 100
vfit vfit
QAMoveTo 313 254 vmoveto 313 254
QAMoveTo 313 254
puts "Highlighting by 'Move To' command in wireframe mode" puts "Highlighting by 'Move To' command in wireframe mode"
set x_coord 315 set x_coord 315

View File

@ -14,8 +14,7 @@ puts "================"
vinit vinit
BUC60632 1 100 BUC60632 1 100
vfit vfit
QAMoveTo 313 254 vmoveto 313 254
QAMoveTo 313 254
puts "Highlighting by 'Move To' command in shading mode" puts "Highlighting by 'Move To' command in shading mode"
set x_coord 315 set x_coord 315

View File

@ -18,9 +18,7 @@ wire w_1 e_1 e_2 e_3 e_4
mkplane r w_1 mkplane r w_1
vdisplay r vdisplay r
vfit vfit
QASelect 120 21 vselect 120 21
QASelect 120 21
QAUpdateLights
puts "WARNING : The rectangular MUST be highlighted !" puts "WARNING : The rectangular MUST be highlighted !"
puts "" puts ""

View File

@ -21,7 +21,6 @@ BUC60738
vfit vfit
vsetdispmode 1 vsetdispmode 1
QAUpdateLights
set x_coord 261 set x_coord 261
set y_coord 314 set y_coord 314

View File

@ -18,7 +18,6 @@ vsettransparency c 0.5
set x_coord 154 set x_coord 154
set y_coord 257 set y_coord 257
QAUpdateLights
checkcolor $x_coord $y_coord 0.6 0.4 0.07 checkcolor $x_coord $y_coord 0.6 0.4 0.07

View File

@ -6,7 +6,6 @@ puts ""
vinit vinit
BUC60814 BUC60814
vfit vfit
QAUpdateLights
set x_coord 131 set x_coord 131
set y_coord 352 set y_coord 352

View File

@ -7,10 +7,7 @@ pcylinder c 100 300
vinit vinit
BUC60876 c BUC60876 c
vfit vfit
QAMoveTo 200 200 vmoveto 200 200
QAMoveTo 200 200
QAUpdateLights
set x_coord 200 set x_coord 200
set y_coord 200 set y_coord 200

View File

@ -12,7 +12,6 @@ vinit
BUC60920 BUC60920
vfit vfit
QAUpdateLights
set x_coord 315 set x_coord 315
set y_coord 210 set y_coord 210

View File

@ -22,25 +22,22 @@ set y_coord 260
meshdispmode m 2 meshdispmode m 2
puts "\nMesh displayed in shading mode" puts "\nMesh displayed in shading mode"
QAUpdateLights
checkcolor $x_coord $y_coord 0 0 0.36 checkcolor $x_coord $y_coord 0 0 0.36
meshselmode m 8 meshselmode m 8
puts "\nSelection of elements is activated" puts "\nSelection of elements is activated"
QAShiftSelect $x_coord $y_coord vselect $x_coord $y_coord 1
###QAShiftSelect $x_coord $y_coord ###vselect $x_coord $y_coord 1
meshhidesel m meshhidesel m
puts "\nSelected elemement is hidden" puts "\nSelected elemement is hidden"
QAUpdateLights
checkcolor $x_coord $y_coord 0 0 0.36 checkcolor $x_coord $y_coord 0 0 0.36
nodalcolor_id m nodalcolor_id m
puts "\nDisplay nodal color presentation" puts "\nDisplay nodal color presentation"
QAUpdateLights
checkcolor $x_coord $y_coord 0.46 0.12 0.37 checkcolor $x_coord $y_coord 0.46 0.12 0.37
set only_screen 1 set only_screen 1

View File

@ -15,15 +15,12 @@ meshfromstl m [locate_data_file OMF6391_box.stl]
set x_coord 210 set x_coord 210
set y_coord 280 set y_coord 280
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
checkcolor $x_coord $y_coord 0 0 0 checkcolor $x_coord $y_coord 0 0 0
mesh_edge_width m 20 mesh_edge_width m 20
puts "\nSet big mesh edge width" puts "\nSet big mesh edge width"
QAUpdateLights
checkcolor $x_coord $y_coord 1 1 1 checkcolor $x_coord $y_coord 1 1 1

View File

@ -19,8 +19,7 @@ set RED_R1 0
set GREEN_R1 0 set GREEN_R1 0
set BLUE_R1 0 set BLUE_R1 0
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
meshdispmode m 3 meshdispmode m 3
puts "\nSet shrinked display mode\n" puts "\nSet shrinked display mode\n"

View File

@ -17,7 +17,6 @@ vinit
vdisplay result vdisplay result
vfit vfit
vsetdispmode result 1 vsetdispmode result 1
QAUpdateLights
checkcolor $x_coord $y_coord 0.77 0.54 0.9 checkcolor $x_coord $y_coord 0.77 0.54 0.9

21
tests/bugs/vis/bug113 Normal file → Executable file
View File

@ -32,38 +32,31 @@ vdisplay b_1
vdisplay b_2 vdisplay b_2
vfit vfit
QAUpdateLights
# Check face color # Check face color
checkcolor ${X_01} ${Y_01} 0 1 0 checkcolor ${X_01} ${Y_01} 0 1 0
checkcolor ${X_02} ${Y_02} 0 1 0 checkcolor ${X_02} ${Y_02} 0 1 0
# Select faces # Select faces
QAAddOrRemoveSelected b_1 vchangeselected b_1
QAAddOrRemoveSelected b_2 vchangeselected b_2
# Check face color # Check face color
QAUpdateLights
checkcolor ${X_01} ${Y_01} 0.8 0.8 0.8 checkcolor ${X_01} ${Y_01} 0.8 0.8 0.8
QAUpdateLights
checkcolor ${X_02} ${Y_02} 0.8 0.8 0.8 checkcolor ${X_02} ${Y_02} 0.8 0.8 0.8
# Hilight face # Hilight face
QAMoveTo ${X_01} ${Y_01} vmoveto ${X_01} ${Y_01}
QAMoveTo ${X_01} ${Y_01}
# Check face color # Check face color
QAUpdateLights vselect 10 10
QASelect 10 10 vmoveto ${X_01} ${Y_01}
QAMoveTo ${X_01} ${Y_01}
checkcolor ${X_01} ${Y_01} 0 1 1 checkcolor ${X_01} ${Y_01} 0 1 1
QAUpdateLights vmoveto ${X_02} ${Y_02}
QAMoveTo ${X_02} ${Y_02}
checkcolor ${X_02} ${Y_02} 0 1 1 checkcolor ${X_02} ${Y_02} 0 1 1
# Rotation # Rotation
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
set only_screen 1 set only_screen 1

View File

@ -13,12 +13,10 @@ vinit
vdisplay b vdisplay b
vfit vfit
vscale 1 1 1 vscale 1 1 1
QAUpdateLights
set x1 [list 165 340 70] set x1 [list 165 340 70]
set y1 [list 384 283 79] set y1 [list 384 283 79]
QAUpdateLights
puts "" puts ""
for {set i 0} {$i < 3} {incr i} { for {set i 0} {$i < 3} {incr i} {
set x_coord [lindex ${x1} $i] set x_coord [lindex ${x1} $i]
@ -29,12 +27,10 @@ for {set i 0} {$i < 3} {incr i} {
vscale 0.5 1.5 0.7 vscale 0.5 1.5 0.7
vfit vfit
QAUpdateLights
set x2 [list 80 390 25] set x2 [list 80 390 25]
set y2 [list 390 218 167] set y2 [list 390 218 167]
QAUpdateLights
puts "" puts ""
for {set i 0} {$i < 3} {incr i} { for {set i 0} {$i < 3} {incr i} {
set x_coord [lindex ${x2} $i] set x_coord [lindex ${x2} $i]

5
tests/bugs/vis/bug1174 Normal file → Executable file
View File

@ -32,7 +32,7 @@ set at_X -27.258
set at_Y 30.2321 set at_Y 30.2321
set at_Z -9.0201 set at_Z -9.0201
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
set x_GREEN 300 set x_GREEN 300
set y_GREEN 180 set y_GREEN 180
@ -40,8 +40,6 @@ set y_GREEN 180
set x_BLUE 180 set x_BLUE 180
set y_BLUE 250 set y_BLUE 250
QAUpdateLights
set ColorList1 [QAGetPixelColor ${x_GREEN} ${y_GREEN}] set ColorList1 [QAGetPixelColor ${x_GREEN} ${y_GREEN}]
regexp {RED +: +([-0-9.+eE]+)} $ColorList1 full RED_1 regexp {RED +: +([-0-9.+eE]+)} $ColorList1 full RED_1
regexp {GREEN +: +([-0-9.+eE]+)} $ColorList1 full GREEN_1 regexp {GREEN +: +([-0-9.+eE]+)} $ColorList1 full GREEN_1
@ -71,4 +69,3 @@ if {${IsGreen} == 1 && ${IsBlue} == 1} {
} }
set only_screen 1 set only_screen 1

1
tests/bugs/vis/bug1188 Normal file → Executable file
View File

@ -11,7 +11,6 @@ vinit
OCC1188 [locate_data_file OCC1188.gif] OCC1188 [locate_data_file OCC1188.gif]
QAUpdateLights
checkcolor $x $y 0.99 0.99 0.99 checkcolor $x $y 0.99 0.99 0.99
if { ${stat} != 1} { if { ${stat} != 1} {
puts "OCC1188: Error" puts "OCC1188: Error"

View File

@ -10,8 +10,7 @@ set y_coord 171
vinit vinit
OCC128 OCC128
QASetViewCharac 4.9487928 89.23589 4.1505 0.7329295 0.59461397 0.33052679 -0.536849 0.2071041 0.81786 71.971878 -17.250309 33.509651 vviewparams 4.9487928 89.23589 4.1505 0.7329295 0.59461397 0.33052679 -0.536849 0.2071041 0.81786 71.971878 -17.250309 33.509651
QAUpdateLights
checkcolor $x_coord $y_coord 0.43 0.48 0.54 checkcolor $x_coord $y_coord 0.43 0.48 0.54

View File

@ -33,10 +33,7 @@ OCC137 1
set x_coord 105 set x_coord 105
set y_coord 100 set y_coord 100
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
checkcolor $x_coord $y_coord 0 1 1 checkcolor $x_coord $y_coord 0 1 1

5
tests/bugs/vis/bug137_10 Normal file → Executable file
View File

@ -25,10 +25,9 @@ vdisplay a
vfit vfit
vsetdispmode 1 vsetdispmode 1
QASetChoiceMode FACE ON vselmode FACE ON
set x 170 set x 170
set y 80 set y 80
QASelect $x $y vselect $x $y
QASelect $x $y
set only_screen 1 set only_screen 1

5
tests/bugs/vis/bug137_11 Normal file → Executable file
View File

@ -25,10 +25,9 @@ vdisplay a
vfit vfit
vsetdispmode 1 vsetdispmode 1
QASetChoiceMode FACE ON vselmode FACE ON
set x 170 set x 170
set y 80 set y 80
QASelect $x $y vselect $x $y
QASelect $x $y
set only_screen 1 set only_screen 1

View File

@ -37,10 +37,7 @@ OCC137 1
set x_coord 105 set x_coord 105
set y_coord 100 set y_coord 100
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
checkcolor $x_coord $y_coord 0 1 1 checkcolor $x_coord $y_coord 0 1 1

View File

@ -37,9 +37,7 @@ vselmode 4 1
set x_coord 105 set x_coord 105
set y_coord 100 set y_coord 100
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
checkcolor $x_coord $y_coord 0 1 1 checkcolor $x_coord $y_coord 0 1 1

View File

@ -38,9 +38,7 @@ OCC137_z
set x_coord 105 set x_coord 105
set y_coord 350 set y_coord 350
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
set x_coord 105 set x_coord 105
set y_coord 340 set y_coord 340
@ -49,7 +47,7 @@ checkcolor $x_coord $y_coord 0 1 1
set x_coord 105 set x_coord 105
set y_coord 340 set y_coord 340
QASetViewCharac 60.6309 7.07107 4.08248 0.592163 -0.60038 -0.537482 0.369921 -0.390032 0.843228 -3.28175 3.38875 3.0464 vviewparams 60.6309 7.07107 4.08248 0.592163 -0.60038 -0.537482 0.369921 -0.390032 0.843228 -3.28175 3.38875 3.0464
checkcolor $x_coord $y_coord 0.78 0.54 0.09 checkcolor $x_coord $y_coord 0.78 0.54 0.09

View File

@ -38,16 +38,14 @@ vselmode 4 1
set x_coord 105 set x_coord 105
set y_coord 350 set y_coord 350
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
set x_coord 105 set x_coord 105
set y_coord 340 set y_coord 340
checkcolor $x_coord $y_coord 0 1 1 checkcolor $x_coord $y_coord 0 1 1
QASetViewCharac 60.6309 7.07107 4.08248 0.592163 -0.60038 -0.537482 0.369921 -0.390032 0.843228 -3.28175 3.38875 3.0464 vviewparams 60.6309 7.07107 4.08248 0.592163 -0.60038 -0.537482 0.369921 -0.390032 0.843228 -3.28175 3.38875 3.0464
set x_coord 105 set x_coord 105
set y_coord 340 set y_coord 340

5
tests/bugs/vis/bug137_9 Normal file → Executable file
View File

@ -22,10 +22,9 @@ vdisplay a
vfit vfit
vsetdispmode 1 vsetdispmode 1
QASetChoiceMode FACE ON vselmode FACE ON
set x 170 set x 170
set y 80 set y 80
QASelect $x $y vselect $x $y
QASelect $x $y
set only_screen 1 set only_screen 1

View File

@ -20,8 +20,6 @@ vsetdispmode result 1
set x_coord 175 set x_coord 175
set y_coord 195 set y_coord 195
QAUpdateLights
checkcolor $x_coord $y_coord 1 0.75 0.15 checkcolor $x_coord $y_coord 1 0.75 0.15
if { $stat != 1 } { if { $stat != 1 } {
@ -31,8 +29,6 @@ if { $stat != 1 } {
######################################################## ########################################################
vsetmaterial result COPPER vsetmaterial result COPPER
QAUpdateLights
checkcolor $x_coord $y_coord 0.77 0.32 0.23 checkcolor $x_coord $y_coord 0.77 0.32 0.23
if { $stat != 1 } { if { $stat != 1 } {

View File

@ -24,7 +24,6 @@ regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1
vsetmaterial result ALUMINIUM vsetmaterial result ALUMINIUM
QAUpdateLights
set color2 [QAGetPixelColor 175 195] set color2 [QAGetPixelColor 175 195]
regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2 regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2
regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2 regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2

View File

@ -26,7 +26,6 @@ regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1
######################################################## ########################################################
vsettransparency result 0.5 vsettransparency result 0.5
QAUpdateLights
set color2 [QAGetPixelColor 175 195] set color2 [QAGetPixelColor 175 195]
regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2 regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2
regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2 regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2

View File

@ -17,7 +17,6 @@ set x_coord 235
set y_coord 214 set y_coord 214
vsetdispmode result 1 vsetdispmode result 1
QAUpdateLights
checkcolor $x_coord $y_coord 0.78 0.55 0.9 checkcolor $x_coord $y_coord 0.78 0.55 0.9
@ -27,8 +26,6 @@ if { $stat != 1 } {
vsetdispmode result 0 vsetdispmode result 0
QAUpdateLights
checkcolor $x_coord $y_coord 0 1 0 checkcolor $x_coord $y_coord 0 1 0
if { $stat != 1 } { if { $stat != 1 } {

2
tests/bugs/vis/bug2066 Normal file → Executable file
View File

@ -14,7 +14,7 @@ vfit
verase b verase b
set CollectorToo 1 set CollectorToo 1
if [catch {QAPurgeDisplay $CollectorToo} result] { if [catch {vpurgedisplay $CollectorToo} result] {
puts "Faulty OCC2066" puts "Faulty OCC2066"
} else { } else {
puts "OK OCC2066" puts "OK OCC2066"

View File

@ -23,7 +23,7 @@ set at_X -5.88607025146484
set at_Y 28.6973209381104 set at_Y 28.6973209381104
set at_Z -12.5332689285278 set at_Z -12.5332689285278
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
set x_coord 229 set x_coord 229
set y_coord 94 set y_coord 94

View File

@ -25,15 +25,13 @@ set at_Z -0.0881031528115273
set x_coord 388 set x_coord 388
set y_coord 28 set y_coord 28
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
OCC218 trihedron1 b_1 X Y OCC218 trihedron1 b_1 X Y
QAUpdateLights
checkcolor $x_coord $y_coord 0 0 0 checkcolor $x_coord $y_coord 0 0 0
OCC218 trihedron1 b_1 my___axis___1 my___axis2 OCC218 trihedron1 b_1 my___axis___1 my___axis2
QAUpdateLights
checkcolor $x_coord $y_coord 0.85 0.85 0 checkcolor $x_coord $y_coord 0.85 0.85 0

2
tests/bugs/vis/bug223 Normal file → Executable file
View File

@ -28,7 +28,6 @@ vsetcolor face GREEN1
vsetdispmode cylinder 1 vsetdispmode cylinder 1
vsetcolor cylinder RED1 vsetcolor cylinder RED1
QAUpdateLights
set ColorList [QAGetPixelColor $Start_X $Start_Y] set ColorList [QAGetPixelColor $Start_X $Start_Y]
regexp {RED +: +([-0-9.+eE]+)} $ColorList full R_START_POINT regexp {RED +: +([-0-9.+eE]+)} $ColorList full R_START_POINT
regexp {GREEN +: +([-0-9.+eE]+)} $ColorList full G_START_POINT regexp {GREEN +: +([-0-9.+eE]+)} $ColorList full G_START_POINT
@ -38,7 +37,6 @@ puts "R_START_POINT=$R_START_POINT ; G_START_POINT=$G_START_POINT ; B_START_
set IsGood 1 set IsGood 1
for {set count 0} {${count} <= 11} {incr count 1} { for {set count 0} {${count} <= 11} {incr count 1} {
QAUpdateLights
checkcolor $Start_X $Start_Y $R_START_POINT $G_START_POINT $B_START_POINT checkcolor $Start_X $Start_Y $R_START_POINT $G_START_POINT $B_START_POINT
if {$stat != 1} { if {$stat != 1} {
set IsGood 0 set IsGood 0

View File

@ -47,8 +47,7 @@ catch {QAGetPixelColor $x6 $y6 $Yellow_R $Yellow_G $Yellow_B} result16
# Move a mouse # Move a mouse
puts "Move a mouse" puts "Move a mouse"
QAMoveTo $x2 $y2 vmoveto $x2 $y2
QAMoveTo $x2 $y2
# Second box of first CompSolid is selected # Second box of first CompSolid is selected
puts "Second box of first CompSolid is selected" puts "Second box of first CompSolid is selected"
@ -62,7 +61,6 @@ if { [array get env os_type] != "" } {
set os $env(os_type) set os $env(os_type)
} }
if { [string compare $os "windows"] != 0 } { if { [string compare $os "windows"] != 0 } {
QAUpdateLights
catch {QAGetPixelColor $x2 $y2 $Cyan_R $Cyan_G $Cyan_B} result31 catch {QAGetPixelColor $x2 $y2 $Cyan_R $Cyan_G $Cyan_B} result31
} }

28
tests/bugs/vis/bug23539_1 Normal file
View File

@ -0,0 +1,28 @@
puts "============"
puts "CR23539"
puts "============"
puts ""
######################################################
# Test case for polygonal selection
######################################################
box b 10 10 10
vinit
vdisplay b
vfit
vselmode 2 1
vselect 1 1 1 407 407 407 407 1
set NbSelected1 [vnbselected]
if { ${NbSelected1} != 12 } {
puts "Error : Bad number of selected edges after polygonal selection of all edges"
}
vselect 10 10 10 20 20 20 20 10
set NbSelected2 [vnbselected]
if { ${NbSelected2} != 0 } {
puts "Error : Bad number of selected edges after polyginal selection of empty space"
}
set only_screen 1

31
tests/bugs/vis/bug23539_2 Normal file
View File

@ -0,0 +1,31 @@
puts "============"
puts "CR23539"
puts "============"
puts ""
#############################
## Test case for polygonal shift selection
#############################
box a 10 10 10
box b 50 50 50 10 10 10
vinit
vdisplay a b
vfit
vselmode 2 1
vselect 0 0
vselect 60 300
vselect 300 200 300 60 400 60 407 150 1
set NbSelected1 [vnbselected]
if { ${NbSelected1} != 13 } {
puts "Error : Polygonal shift selection doesn't work properly"
}
vselect 350 120 1
set NbSelected1 [vnbselected]
if { ${NbSelected1} != 12 } {
puts "Error : (case 2)"
}
set only_screen 1

View File

@ -24,7 +24,7 @@ set at_X 0
set at_Y 0 set at_Y 0
set at_Z 0 set at_Z 0
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
set x_coord 36 set x_coord 36
set y_coord 201 set y_coord 201
@ -32,5 +32,3 @@ set y_coord 201
checkcolor $x_coord $y_coord 0.6 0.6 0.6 checkcolor $x_coord $y_coord 0.6 0.6 0.6
set only_screen 1 set only_screen 1

6
tests/bugs/vis/bug270_1 Normal file → Executable file
View File

@ -12,16 +12,14 @@ vsetdispmode 1
set x1 172 set x1 172
set y1 223 set y1 223
QAUpdateLights
checkcolor ${x1} ${y1} 1 0 0 checkcolor ${x1} ${y1} 1 0 0
QASetZClippingMode FRONT vzclipping FRONT
set ZClippingMode [lindex [QAGetZClippingMode] 2] set ZClippingMode [lindex [vzclipping] 2]
if {${ZClippingMode} != "FRONT"} { if {${ZClippingMode} != "FRONT"} {
puts "OCC270: Error (ZClippingMode != FRONT)" puts "OCC270: Error (ZClippingMode != FRONT)"
} }
QAUpdateLights
checkcolor ${x1} ${y1} 1 0 0 checkcolor ${x1} ${y1} 1 0 0
vfit vfit

6
tests/bugs/vis/bug270_2 Normal file → Executable file
View File

@ -12,16 +12,14 @@ vsetdispmode 0
set x1 172 set x1 172
set y1 223 set y1 223
QAUpdateLights
checkcolor ${x1} ${y1} 1 0 0 checkcolor ${x1} ${y1} 1 0 0
QASetZClippingMode FRONT vzclipping FRONT
set ZClippingMode [lindex [QAGetZClippingMode] 2] set ZClippingMode [lindex [vzclipping] 2]
if {${ZClippingMode} != "FRONT"} { if {${ZClippingMode} != "FRONT"} {
puts "OCC270: Error (ZClippingMode != FRONT)" puts "OCC270: Error (ZClippingMode != FRONT)"
} }
QAUpdateLights
checkcolor ${x1} ${y1} 1 0 0 checkcolor ${x1} ${y1} 1 0 0
vfit vfit

View File

@ -21,10 +21,7 @@ checkcolor $x_coord $y_coord 1 1 0
# Move a mouse # Move a mouse
puts "Move a mouse" puts "Move a mouse"
QAMoveTo $x_coord $y_coord vmoveto $x_coord $y_coord
QAMoveTo $x_coord $y_coord
QAUpdateLights
# There is a selection # There is a selection
puts "There is a selection" puts "There is a selection"

View File

@ -14,14 +14,12 @@ set x_coord 10
set y_coord 240 set y_coord 240
puts "Before View->FitAll()" puts "Before View->FitAll()"
QAUpdateLights
checkcolor $x_coord $y_coord 0 0 0 checkcolor $x_coord $y_coord 0 0 0
vfit vfit
puts "After View->FitAll()" puts "After View->FitAll()"
QAUpdateLights
checkcolor $x_coord $y_coord 0.78 0.55 0.9 checkcolor $x_coord $y_coord 0.78 0.55 0.9

2
tests/bugs/vis/bug281_1 Normal file → Executable file
View File

@ -21,7 +21,7 @@ set at_X 0
set at_Y 0 set at_Y 0
set at_Z 0 set at_Z 0
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
OCC281 ${x} ${y} ${TypeOfMarker} OCC281 ${x} ${y} ${TypeOfMarker}
OCC281 ${x} ${y} ${TypeOfMarker} OCC281 ${x} ${y} ${TypeOfMarker}

View File

@ -37,7 +37,7 @@ set at_X 8.22575855255127
set at_Y -2.95449280738831 set at_Y -2.95449280738831
set at_Z 3.08669567108154 set at_Z 3.08669567108154
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
set info [trinfo result] set info [trinfo result]
regexp { +([-0-9.+eE]+) +triangles} $info full tri regexp { +([-0-9.+eE]+) +triangles} $info full tri

1
tests/bugs/vis/bug349 Normal file → Executable file
View File

@ -86,7 +86,6 @@ set y12 284
# #
# #
QAUpdateLights
checkcolor ${x1} ${y1} 1 1 0 checkcolor ${x1} ${y1} 1 1 0
checkcolor ${x2} ${y2} 1 1 0 checkcolor ${x2} ${y2} 1 1 0
checkcolor ${x3} ${y3} 1 1 0 checkcolor ${x3} ${y3} 1 1 0

3
tests/bugs/vis/bug362 Normal file → Executable file
View File

@ -6,5 +6,4 @@ puts "========"
smallview smallview
box b 10 10 10 box b 10 10 10
sphere s -30 -30 -30 20 sphere s -30 -30 -30 20
QAwzoom 1 -86 -72 -13 10 wzoom 1 -86 -72 -13 10

View File

@ -15,8 +15,6 @@ vfit
set x_coord 31 set x_coord 31
set y_coord 304 set y_coord 304
QAUpdateLights
checkcolor $x_coord $y_coord 0 0 0 checkcolor $x_coord $y_coord 0 0 0
set only_screen 1 set only_screen 1

7
tests/bugs/vis/bug544 Normal file → Executable file
View File

@ -29,7 +29,7 @@ set at_X 241.985
set at_Y 329.911 set at_Y 329.911
set at_Z 390.356 set at_Z 390.356
QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} vviewparams ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z}
set x1 300 set x1 300
set y1 70 set y1 70
@ -40,11 +40,8 @@ set y2 110
set x3 220 set x3 220
set y3 110 set y3 110
QAMoveTo ${x1} ${y1} vmoveto ${x1} ${y1}
QAMoveTo ${x1} ${y1}
QAUpdateLights
checkcolor $x3 $y3 0.04 0.04 0.5 checkcolor $x3 $y3 0.04 0.04 0.5
set only_screen 1 set only_screen 1

View File

@ -11,7 +11,6 @@ vfit
vsetdispmode result 1 vsetdispmode result 1
vsettransparency result .5 vsettransparency result .5
QAUpdateLights
set x_coord 250 set x_coord 250
set y_coord 115 set y_coord 115

View File

@ -22,9 +22,7 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190 vselect 250 190
QASelect 250 190
QAUpdateLights
set x_coord 335 set x_coord 335
set y_coord 331 set y_coord 331
@ -35,8 +33,7 @@ if {$stat != 1} {
puts "Error : The right face is NOT Selected by Select command." puts "Error : The right face is NOT Selected by Select command."
} }
QAShiftSelect 180 350 vselect 180 350 1
QAUpdateLights
set x_coord 101 set x_coord 101
set y_coord 347 set y_coord 347

View File

@ -23,11 +23,9 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190 vselect 250 190
QASelect 250 190 vselect 180 350 1
QAShiftSelect 180 350 vmoveto 250 190
QAMoveTo 250 190
QAUpdateLights
set x_coord 335 set x_coord 335
set y_coord 331 set y_coord 331

View File

@ -26,12 +26,10 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190 vselect 250 190
QASelect 250 190 vselect 180 350 1
QAShiftSelect 180 350 vmoveto 250 190
QAMoveTo 250 190 vmoveto 180 350
QAMoveTo 180 350
QAUpdateLights
set x_coord 101 set x_coord 101
set y_coord 347 set y_coord 347

View File

@ -25,14 +25,12 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190
QASelect 250 190 vselect 250 190
QAShiftSelect 180 350 vselect 180 350 1
QAMoveTo 250 190 vmoveto 250 190
QAMoveTo 180 350 vmoveto 180 350
QASelect 390 390 vselect 390 390
QAUpdateLights
set x_coord 335 set x_coord 335
set y_coord 331 set y_coord 331

View File

@ -25,14 +25,13 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190
QASelect 250 190 vselect 250 190
QAShiftSelect 180 350 vselect 180 350 1
QAMoveTo 250 190 vmoveto 250 190
QAMoveTo 180 350 vmoveto 180 350
QASelect 390 390 vselect 390 390
QAShiftSelect 250 190 vselect 250 190 1
QAUpdateLights
set x_coord 335 set x_coord 335
set y_coord 331 set y_coord 331
@ -43,8 +42,7 @@ if {$stat != 1} {
puts "Error : The right face is NOT Selected by Shift Select command" puts "Error : The right face is NOT Selected by Shift Select command"
} }
QAShiftSelect 180 350 vselect 180 350 1
QAUpdateLights
set x_coord 101 set x_coord 101
set y_coord 347 set y_coord 347

View File

@ -26,16 +26,14 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190 vselect 250 190
QASelect 250 190 vselect 180 350 1
QAShiftSelect 180 350 vmoveto 250 190
QAMoveTo 250 190 vmoveto 180 350
QAMoveTo 180 350 vselect 390 390
QASelect 390 390 vselect 250 190 1
QAShiftSelect 250 190 vselect 180 350 1
QAShiftSelect 180 350 vmoveto 250 190
QAMoveTo 250 190
QAUpdateLights
set x_coord 335 set x_coord 335
set y_coord 331 set y_coord 331

View File

@ -27,16 +27,15 @@ checkshape result
BUC60569 result BUC60569 result
vfit vfit
QAMoveTo 250 190 vselect 250 190
QASelect 250 190 vselect 180 350 1
QAShiftSelect 180 350 vmoveto 250 190
QAMoveTo 250 190 vmoveto 180 350
QAMoveTo 180 350 vselect 390 390
QASelect 390 390 vselect 250 190 1
QAShiftSelect 250 190 vselect 180 350 1
QAShiftSelect 180 350 vmoveto 250 190
QAMoveTo 250 190 vmoveto 180 350
QAMoveTo 180 350
set x_coord 335 set x_coord 335
set y_coord 331 set y_coord 331

2
tests/bugs/vis/bug60 Normal file → Executable file
View File

@ -12,7 +12,6 @@ vfit
set x_coord 83 set x_coord 83
set y_coord 337 set y_coord 337
QAUpdateLights
checkcolor $x_coord $y_coord 1 1 0 checkcolor $x_coord $y_coord 1 1 0
set xmin 1 set xmin 1
@ -28,7 +27,6 @@ set Selection_R 0.8
set Selection_G 0.8 set Selection_G 0.8
set Selection_B 0.8 set Selection_B 0.8
QAUpdateLights
checkcolor $x_coord $y_coord 0.8 0.8 0.8 checkcolor $x_coord $y_coord 0.8 0.8 0.8
set only_screen 1 set only_screen 1

2
tests/bugs/vis/bug61 Normal file → Executable file
View File

@ -10,7 +10,6 @@ vtrihedron trihedron
set x_coord 205 set x_coord 205
set y_coord 205 set y_coord 205
QAUpdateLights
checkcolor $x_coord $y_coord 0.43 0.48 0.54 checkcolor $x_coord $y_coord 0.43 0.48 0.54
set xmin 1 set xmin 1
@ -22,7 +21,6 @@ set ymax 205
OCC60 ${xmin} ${ymin} ${xmax} ${ymax} OCC60 ${xmin} ${ymin} ${xmax} ${ymax}
OCC60 ${xmin} ${ymin} ${xmax} ${ymax} OCC60 ${xmin} ${ymin} ${xmax} ${ymax}
QAUpdateLights
checkcolor $x_coord $y_coord 0.8 0.8 0.8 checkcolor $x_coord $y_coord 0.8 0.8 0.8
set only_screen 1 set only_screen 1

View File

@ -29,7 +29,6 @@ vinit
vsetdispmode 1 vsetdispmode 1
vdisplay r vdisplay r
vfit vfit
QAUpdateLights
set x_coord 270 set x_coord 270
set y_coord 230 set y_coord 230
@ -37,7 +36,6 @@ set y_coord 230
checkcolor $x_coord $y_coord 0.78 0.55 0.09 checkcolor $x_coord $y_coord 0.78 0.55 0.09
vsettransparency r 0.5 vsettransparency r 0.5
QAUpdateLights
checkcolor $x_coord $y_coord 0.8 0.56 0.1 checkcolor $x_coord $y_coord 0.8 0.56 0.1

View File

@ -11,8 +11,7 @@ vinit
vtrihedron tri vtrihedron tri
vtri_orig tri vtri_orig tri
QAMoveTo 205 205 vmoveto 205 205
QAUpdateLights
checkcolor $x_coord $y_coord 0 1 1 checkcolor $x_coord $y_coord 0 1 1

View File

@ -14,9 +14,9 @@ meshfromstl result [locate_data_file OCC6652.stl]
meshdispmode result 3 meshdispmode result 3
meshselmode result 8 meshselmode result 8
QASelectRectangle 5 5 400 400 vselect 5 5 400 400
if {[QANbSelected] != 26966} { if {[vnbselected] != 26966} {
puts "Faulty ${BugNumber}" puts "Faulty ${BugNumber}"
} }

6
tests/bugs/vis/bug71 Normal file → Executable file
View File

@ -33,8 +33,7 @@ checkcolor ${Shape_X} ${Shape_Y} 0.78 0.54 0.09
checkcolor ${Triedron_X} ${Triedron_Y} 1 1 1 checkcolor ${Triedron_X} ${Triedron_Y} 1 1 1
# Select box # Select box
QASelect ${Shape_X} ${Shape_Y} vselect ${Shape_X} ${Shape_Y}
QASelect ${Shape_X} ${Shape_Y}
# Check box color # Check box color
checkcolor ${Shape_X} ${Shape_Y} 0.78 0.54 0.09 checkcolor ${Shape_X} ${Shape_Y} 0.78 0.54 0.09
@ -43,8 +42,7 @@ checkcolor ${Shape_X} ${Shape_Y} 0.78 0.54 0.09
checkcolor ${Triedron_X} ${Triedron_Y} 1 1 1 checkcolor ${Triedron_X} ${Triedron_Y} 1 1 1
# Select empty view # Select empty view
QASelect 1 1 vselect 1 1
QASelect 1 1
# Check box color # Check box color
checkcolor ${Shape_X} ${Shape_Y} 0.78 0.54 0.09 checkcolor ${Shape_X} ${Shape_Y} 0.78 0.54 0.09

View File

@ -15,20 +15,19 @@ box b 10 10 10
vinit vinit
vdisplay b vdisplay b
vfit vfit
QAUpdateLights
vselmode 2 1 vselmode 2 1
QASelectRectangle 1 1 407 407 vselect 1 1 407 407
set NbSelected1 [QANbSelected] set NbSelected1 [vnbselected]
if { ${NbSelected1} != 12 } { if { ${NbSelected1} != 12 } {
puts "Bad number of selected edges after rectangle selection all edges" puts "Bad number of selected edges after rectangle selection all edges"
set mistake 1 set mistake 1
} }
QASelectRectangle 10 10 20 20 vselect 10 10 20 20
set NbSelected2 [QANbSelected] set NbSelected2 [vnbselected]
if { ${NbSelected2} != 0 } { if { ${NbSelected2} != 0 } {
puts "Error : Bad number of selected edges after rectangle selection an empty space" puts "Error : Bad number of selected edges after rectangle selection an empty space"
set mistake 1 set mistake 1
@ -39,7 +38,6 @@ set x [list 125 204 283 29 111 298 379 125 204 283 125 283]
set y [list 47 100 47 200 150 150 200 250 300 250 361 361] set y [list 47 100 47 200 150 150 200 250 300 250 361 361]
QAUpdateLights
puts "" puts ""
for {set i 0} {$i < 12} {incr i} { for {set i 0} {$i < 12} {incr i} {
set x_coord [lindex ${x} $i] set x_coord [lindex ${x} $i]

View File

@ -19,18 +19,18 @@ set y1 300
set x2 350 set x2 350
set y2 120 set y2 120
QASelect 0 0 vselect 0 0
QASelect ${x1} ${y1} vselect ${x1} ${y1}
QAShiftSelect ${x2} ${y2} vselect ${x2} ${y2} 1
set NbSelected1 [QANbSelected] set NbSelected1 [vnbselected]
if { ${NbSelected1} != 2 } { if { ${NbSelected1} != 2 } {
puts "Error : (case 1)" puts "Error : (case 1)"
} }
QAShiftSelect ${x2} ${y2} vselect ${x2} ${y2} 1
set NbSelected1 [QANbSelected] set NbSelected1 [vnbselected]
if { ${NbSelected1} != 1 } { if { ${NbSelected1} != 1 } {
puts "Error : (case 2)" puts "Error : (case 2)"
} }

100
tests/bugs/vis/bug74 Normal file → Executable file
View File

@ -37,8 +37,6 @@ box b 10 10 10
vdisplay b vdisplay b
vfit vfit
QAUpdateLights
### FIRST PART ### FIRST PART
# Check Shape color # Check Shape color
@ -65,8 +63,7 @@ checkcolor ${Solid_X} ${Solid_Y} 1 1 0
### SECOND PART ### SECOND PART
# Check Shape color # Check Shape color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 0 set SetSelectMode 0
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -74,15 +71,12 @@ if { ${GetSelectMode} != ${SetSelectMode} } {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Shape_X} ${Shape_Y} vmoveto ${Shape_X} ${Shape_Y}
QAMoveTo ${Shape_X} ${Shape_Y}
QAUpdateLights
checkcolor ${Shape_X} ${Shape_Y} 0 1 1 checkcolor ${Shape_X} ${Shape_Y} 0 1 1
# Check Vertex color # Check Vertex color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 1 set SetSelectMode 1
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -90,15 +84,12 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Vertex_X} ${Vertex_Y} vmoveto ${Vertex_X} ${Vertex_Y}
QAMoveTo ${Vertex_X} ${Vertex_Y}
QAUpdateLights
checkcolor ${Vertex_X} ${Vertex_Y} 0 1 1 checkcolor ${Vertex_X} ${Vertex_Y} 0 1 1
# Check Edge color # Check Edge color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 2 set SetSelectMode 2
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -106,15 +97,12 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Edge_X} ${Edge_Y} vmoveto ${Edge_X} ${Edge_Y}
QAMoveTo ${Edge_X} ${Edge_Y}
QAUpdateLights
checkcolor ${Edge_X} ${Edge_Y} 0 1 1 checkcolor ${Edge_X} ${Edge_Y} 0 1 1
# Check Wire color # Check Wire color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 3 set SetSelectMode 3
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -122,15 +110,12 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Wire_X} ${Wire_Y} vmoveto ${Wire_X} ${Wire_Y}
QAMoveTo ${Wire_X} ${Wire_Y}
QAUpdateLights
checkcolor ${Wire_X} ${Wire_Y} 0 1 1 checkcolor ${Wire_X} ${Wire_Y} 0 1 1
# Check Face color # Check Face color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 4 set SetSelectMode 4
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -138,15 +123,12 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Face_X} ${Face_Y} vmoveto ${Face_X} ${Face_Y}
QAMoveTo ${Face_X} ${Face_Y}
QAUpdateLights
checkcolor ${Face_X} ${Face_Y} 0 1 1 checkcolor ${Face_X} ${Face_Y} 0 1 1
# Check Shell color # Check Shell color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 5 set SetSelectMode 5
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -154,15 +136,12 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Shell_X} ${Shell_Y} vmoveto ${Shell_X} ${Shell_Y}
QAMoveTo ${Shell_X} ${Shell_Y}
QAUpdateLights
checkcolor ${Shell_X} ${Shell_Y} 0 1 1 checkcolor ${Shell_X} ${Shell_Y} 0 1 1
# Check Solid color # Check Solid color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1
set SetSelectMode 6 set SetSelectMode 6
OCC74_set b ${SetSelectMode} OCC74_set b ${SetSelectMode}
set GetSelectMode [OCC74_get b] set GetSelectMode [OCC74_get b]
@ -170,10 +149,8 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
puts "Select Mode = ${GetSelectMode}" puts "Select Mode = ${GetSelectMode}"
puts "OCC74: Get Select Mode Error " puts "OCC74: Get Select Mode Error "
} }
QAMoveTo ${Solid_X} ${Solid_Y} vmoveto ${Solid_X} ${Solid_Y}
QAMoveTo ${Solid_X} ${Solid_Y}
QAUpdateLights
checkcolor ${Solid_X} ${Solid_Y} 0 1 1 checkcolor ${Solid_X} ${Solid_Y} 0 1 1
### THIRD PART ### THIRD PART
@ -187,66 +164,45 @@ if { ${GetSelectMode} != ${SetSelectMode} } then {
} }
# Check Shape color # Check Shape color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Shape_X} ${Shape_Y}
QAMoveTo ${Shape_X} ${Shape_Y}
QAMoveTo ${Shape_X} ${Shape_Y}
QAUpdateLights
checkcolor ${Shape_X} ${Shape_Y} 1 1 0 checkcolor ${Shape_X} ${Shape_Y} 1 1 0
# Check Vertex color # Check Vertex color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Vertex_X} ${Vertex_Y}
QAMoveTo ${Vertex_X} ${Vertex_Y}
QAMoveTo ${Vertex_X} ${Vertex_Y}
QAUpdateLights
checkcolor ${Vertex_X} ${Vertex_Y} 1 1 0 checkcolor ${Vertex_X} ${Vertex_Y} 1 1 0
# Check Edge color # Check Edge color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Edge_X} ${Edge_Y}
QAMoveTo ${Edge_X} ${Edge_Y}
QAMoveTo ${Edge_X} ${Edge_Y}
QAUpdateLights
checkcolor ${Edge_X} ${Edge_Y} 1 1 0 checkcolor ${Edge_X} ${Edge_Y} 1 1 0
# Check Wire color # Check Wire color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Wire_X} ${Wire_Y}
QAMoveTo ${Wire_X} ${Wire_Y}
QAMoveTo ${Wire_X} ${Wire_Y}
QAUpdateLights
checkcolor ${Wire_X} ${Wire_Y} 1 1 0 checkcolor ${Wire_X} ${Wire_Y} 1 1 0
# Check Face color # Check Face color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Face_X} ${Face_Y}
QAMoveTo ${Face_X} ${Face_Y}
QAMoveTo ${Face_X} ${Face_Y}
QAUpdateLights
checkcolor ${Face_X} ${Face_Y} 1 1 0 checkcolor ${Face_X} ${Face_Y} 1 1 0
# Check Shell color # Check Shell color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Shell_X} ${Shell_Y}
QAMoveTo ${Shell_X} ${Shell_Y}
QAMoveTo ${Shell_X} ${Shell_Y}
QAUpdateLights
checkcolor ${Shell_X} ${Shell_Y} 1 1 0 checkcolor ${Shell_X} ${Shell_Y} 1 1 0
# Check Solid color # Check Solid color
QAMoveTo 1 1 vmoveto 1 1
QAMoveTo 1 1 vmoveto ${Solid_X} ${Solid_Y}
QAMoveTo ${Solid_X} ${Solid_Y}
QAMoveTo ${Solid_X} ${Solid_Y}
QAUpdateLights
checkcolor ${Solid_X} ${Solid_Y} 1 1 0 checkcolor ${Solid_X} ${Solid_Y} 1 1 0
set only_screen 1 set only_screen 1

View File

@ -46,8 +46,6 @@ AISDisplay D 0:1:4
set x_coord 273 set x_coord 273
set y_coord 115 set y_coord 115
QAUpdateLights
checkcolor $x_coord $y_coord 0.78 0.55 0.9 checkcolor $x_coord $y_coord 0.78 0.55 0.9
set only_screen 1 set only_screen 1

View File

@ -6,7 +6,6 @@ puts "=================================="
vinit vinit
GER61351 RED2 GER61351 RED2
QAUpdateLights
set x_coord 200 set x_coord 200
set y_coord 200 set y_coord 200

View File

@ -10,7 +10,6 @@ puts "=================================="
vinit vinit
GER61351 0 255 0 GER61351 0 255 0
QAUpdateLights
set x_coord 200 set x_coord 200
set y_coord 200 set y_coord 200

View File

@ -8,7 +8,6 @@ vinit
box b 10 20 30 box b 10 20 30
GER61351 b RED2 GER61351 b RED2
vfit vfit
QAUpdateLights
set x_coord 89 set x_coord 89
set y_coord 363 set y_coord 363

View File

@ -16,7 +16,6 @@ vinit
box b 30 20 10 box b 30 20 10
GER61351 b 0 0 255 GER61351 b 0 0 255
vfit vfit
QAUpdateLights
set x_coord 89 set x_coord 89
set y_coord 363 set y_coord 363

View File

@ -16,7 +16,6 @@ vinit
box b 20 10 30 box b 20 10 30
GER61351 b 0 255 255 GER61351 b 0 255 255
vfit vfit
QAUpdateLights
set x_coord 89 set x_coord 89
set y_coord 363 set y_coord 363

View File

@ -8,7 +8,6 @@ vinit
box b 20 10 30 box b 20 10 30
GER61351 b CYAN3 GER61351 b CYAN3
vfit vfit
QAUpdateLights
set x_coord 88 set x_coord 88
set y_coord 316 set y_coord 316

View File

@ -16,7 +16,7 @@ writestl a_1 ${aFile} 0
meshfromstl m1 ${aFile} meshfromstl m1 ${aFile}
meshcolors m1 elem2 1 meshcolors m1 elem2 1
QARotateV3dView 4 0 0 1 vrotate 4 0 0
vfit vfit
set x_coord 189 set x_coord 189