]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/Displayv11.C
- Protection added for null or empty input chains
[u/mrichter/AliRoot.git] / ITS / Displayv11.C
index f1e05d712b7cae0b0755065ee9c8a87eedaf843c..a1070a895d3975d1ab579189a4c6b7c28e3b3c3b 100644 (file)
@@ -1,4 +1,11 @@
 //----------------------------------------------------------------------
+
+AliITSv11GeometrySPD *gspd;
+AliITSv11GeometrySDD *gsdd;
+AliITSv11GeometrySupport *gsupp;
+AliITSv11GeometrySSD *gssd;
+//
+//----------------------------------------------------------------------
 void Displayv11(const char* filename=""){
     // Display AliITSv11 Geometry
     // Inputs:
@@ -16,15 +23,36 @@ void Displayv11(const char* filename=""){
     //
     TGeoMaterial *vacmat = new TGeoMaterial("Vacume",0,0,0);
     TGeoMedium   *vacmed = new TGeoMedium("Vacume_med",1,vacmat);
-    TGeoVolume *ALIC = mgr2->MakeBox("ALIC",vacmed,100.,100.,200.);
+    TGeoVolume *ALIC = mgr2->MakeBox("ALIC",vacmed,1000.,1000.,2000.);
     mgr2->SetTopVolume(ALIC);
+    TGeoVolume *ITS = mgr2->MakeBox("ITSV",vacmed,990.,990.,1990.);
+    TGeoVolumeAssembly *ITSspd = new TGeoVolumeAssembly("ITSspd");
+    ITS->AddNode(ITSspd,1);
+    ALIC->AddNode(ITS,1);
     //
+    /*
     AliITSv11 *its = new AliITSv11(0,3);
     its->SetDebug(ISetits(0,-1));
     its->GetSPDGeometry()->SetDebug(ISetits(0,-1));
     its->GetSupGeometry()->SetDebug(ISetits(0,-1));
     its->CreateMaterials();
     its->CreateGeometry();
+    */
+    gspd = new AliITSv11GeometrySPD(0);
+    //gsdd = new AliITSv11GeometrySDD();
+    gsupp = new AliITSv11GeometrySupport(0);
+    //gssd = new AliITSv11GeometrySSD();
+    //
+    Int_t imat=1,imed=1,ireturn=0;
+    ireturn = gspd->CreateSPDCentralMaterials(imed,imat);
+    gspd->SPDSector(ITSspd,mgr2);
+    gsupp->SPDCone(ITS,mgr2);
+    gsupp->SetDebug(0);
+    gsupp->SDDCone(ITS,mgr2);
+    //gsdd->Layer3(ITS);
+    //gsdd->Layer4(ITS);
+    gsupp->SSDCone(ITS,mgr2);
+    gsupp->ServicesCableSupport(ITS);
     //
     mgr2->CloseGeometry();
     //
@@ -39,10 +67,14 @@ void Displayv11(const char* filename=""){
     bar->AddButton("Set RayTrace off","ISetits(5,0)","Perspective off");
     bar->AddButton("Set circle/80","ISetits(1,80)","circles ~ by 80 lines");
     bar->AddButton("Display Geometry","Displayit()","Run Displayit");
-    bar->AddButton("Display SPD Ceneral Volume","EngineeringSPDLayer()",
-                   "Run EngineeringSPDLayer");
+    bar->AddButton("Display SPD Sector Volume","EngineeringSPDSector()",
+                   "Run EngineeringSPDSector");
+    bar->AddButton("Display SPD Ceneral Volume","EngineeringSPDCenter()",
+                   "Run EngineeringSPDCenter");
     bar->AddButton("Display SPD Thermal Sheald","EngineeringSPDThS()",
                    "Run EngineeringSPDThS");
+    bar->AddButton("Display SPD Sector Cross Sections","EngineeringSPDSCS()",
+                   "Run EngineeringSPDSCS");
     bar->AddButton("Display SDD Layer 3","EngineeringSDDLayer3()",
                    "Run EngineeringSDDLayer3");
     bar->AddButton("Display SDD Layer 4","EngineeringSDDLayer4()",
@@ -61,12 +93,30 @@ void Displayv11(const char* filename=""){
                    "Run EngineeringSupTrayRB24");
     bar->AddButton("Display SUP RB26 side","EngineeringSupRB26()",
                    "Run EngineeringSupRB26");
+    bar->AddButton("Save Geometry to File","ExportToFile()",
+                   "Run ExportToFile");
     bar->AddButton("Quit/Exit",".q","Exit");
     bar->Show();
     gROOT->SaveContext();
          //Displayit();
 }
 //----------------------------------------------------------------------
+void ExportToFile(){
+    // Quirry file name and write geometry to a root file.
+    // Inputs:
+    //    const char* filename output file with the display in it
+    // Outputs:
+    //    none.
+    // Retrurn:
+    //    none.
+    Char_t filename[100];
+
+    printf("Eneter File name:");
+    scanf("%s",filename);
+
+    gGeoManager->Export(filename);
+}
+//----------------------------------------------------------------------
 Int_t ISetits(Int_t t,Int_t v){
     static Int_t itsdebug=1,nsegments=80,cut=0,axis=1,perspective=0,ray=0;
 
@@ -164,7 +214,7 @@ void Displayit(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -177,7 +227,7 @@ void Displayit(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->RotateView(60.,30.);
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -191,7 +241,7 @@ void Displayit(){
     if(view3){
         view3->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view3->SetParralel();
+        if(ISetits(4,-1)==0) view3->SetParallel();
         else  view3->SetPerspective();
         view3->Top();
         if(ISetits(3,-1)!=0) view3->ShowAxis();
@@ -204,7 +254,7 @@ void Displayit(){
     if(view4){
         view4->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view4->SetParralel();
+        if(ISetits(4,-1)==0) view4->SetParallel();
         else  view4->SetPerspective();
         view4->Side();
         if(ISetits(3,-1)!=0) view4->ShowAxis();
@@ -213,8 +263,69 @@ void Displayit(){
     //
 }
 //----------------------------------------------------------------------
-void EngineeringSPDLayer(){
-    // Display SPD Layer Geometry
+void EngineeringSPDSCS(){
+    // Display SPD Carbon Fiber Sector Cross sections A and B
+    // Inputs:
+    //    none.
+    // Outputs:
+    //    none.
+    // Return:
+    //    none.
+    TPolyLine *a0,*a1,*b0,*b1;
+    TPolyMarker *p;
+    TCanvas *cSPDSCS=0;
+    Int_t i;
+    Double_t max=0.0;
+
+    a0 = new TPolyLine();
+    a1 = new TPolyLine();
+    b0 = new TPolyLine();
+    b1 = new TPolyLine();
+    p = new TPolyMarker();
+    a0->SetLineColor(1);
+    a1->SetLineColor(4);
+    b0->SetLineColor(3);
+    b0->SetLineStyle(2); // dashed
+    b1->SetLineColor(6);
+    b1->SetLineStyle(2); // dashed
+    p->SetMarkerColor(2);
+    p->SetMarkerStyle(5);
+    if(gspd->Make2DcrossSections(*a0,*a1,*b0,*b1,*p)==kFALSE) return;
+    for(i=0;i<a0->GetN();i++) {
+      if(TMath::Abs(a0->GetX()[i])>max) max = TMath::Abs(a0->GetX()[i]);
+      if(TMath::Abs(a0->GetY()[i])>max) max = TMath::Abs(a0->GetY()[i]);
+    } // end for i
+    for(i=0;i<a1->GetN();i++) {
+      if(TMath::Abs(a1->GetX()[i])>max) max = TMath::Abs(a0->GetX()[i]);
+      if(TMath::Abs(a1->GetY()[i])>max) max = TMath::Abs(a1->GetY()[i]);
+    } // end for i
+    for(i=0;i<b0->GetN();i++) {
+      if(TMath::Abs(b0->GetX()[i])>max) max = TMath::Abs(b0->GetX()[i]);
+      if(TMath::Abs(b0->GetY()[i])>max) max = TMath::Abs(b0->GetY()[i]);
+    } // end for i
+    for(i=0;i<b1->GetN();i++) {
+      if(TMath::Abs(b1->GetX()[i])>max) max = TMath::Abs(b1->GetX()[i]);
+      if(TMath::Abs(b1->GetY()[i])>max) max = TMath::Abs(b1->GetY()[i]);
+    } // end for i
+    max *= 1.05;
+    cSPDSCS = gROOT->FindObject("cSPDSCS");
+    if(cSPDSCS==0) delete cSPDSCS;
+    cSPDSCS = new TCanvas("cSPDSCS","SPD Carbon Fiber Sector Cross sections",2);
+    cSPDSCS->Range(-max,-max,max,max);
+    //cSPDSCS->RangeAxis();
+    cSPDSCS->SetFixedAspectRatio(kTRUE);
+    //
+    a0->Draw("");
+    a1->Draw("same");
+    p->Draw("same");
+    b0->Draw("same");
+    b1->Draw("same");
+    cSPDSCS->Update();
+    return;
+}
+//----------------------------------------------------------------------
+void EngineeringSPDSector(){
+    // Display SPD Sector Geometry
     // Inputs:
     //    none.
     // Outputs:
@@ -228,13 +339,16 @@ void EngineeringSPDLayer(){
     TCanvas *c4;
     if(!(c4 = (TCanvas*)gROOT->FindObject("C4")))
         c4 = new TCanvas("C4","ITS SPD Layer Geometry Side View",500,500);
-    TGeoVolume *ITS,*SPDLay=0;
+    TGeoVolume *ITS,*ITSspd,*SPDLay=0;
     TGeoNode *node;
     TArrow *arrow=new TArrow();
     //
     node = ALIC->FindNode("ITSV_1");
     ITS = node->GetVolume();
-    node = ITS->FindNode("ITSSPDSensitiveVirtualvolumeM0_1");
+    node = ITS->FindNode("ITSspd_1");
+    ITSspd = node->GetVolume();
+    node = ITSspd->FindNode("ITSSPDCarbonFiberSectorV_1");
+    //node = ITSspd->FindNode("ITSSPDTempSPDMotherVolume_1");
     SPDLay = node->GetVolume();
     //
     mgr2->SetNsegments(ISetits(1,-1));
@@ -255,7 +369,7 @@ void EngineeringSPDLayer(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -263,13 +377,13 @@ void EngineeringSPDLayer(){
     if(ISetits(5,-1)==1) SPDLay->Raytrace();
     //
     if(!(c5 = (TCanvas*)gROOT->FindObject("C5")))
-        c5 = new TCanvas("C5","ITS SPD Layer Geometry End View",500,500);
+        c5 = new TCanvas("C5","ITS SPD Sector Geometry End View",500,500);
     SPDLay->Draw();
     TView *view2 = c5->GetView();
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -278,6 +392,71 @@ void EngineeringSPDLayer(){
     //
 }
 //----------------------------------------------------------------------
+void EngineeringSPDCenter(){
+    // Display SPD Centeral Geometry
+    // Inputs:
+    //    none.
+    // Outputs:
+    //    none.
+    // Retrurn:
+    //    none.
+    Int_t irr;
+    //
+    TGeoManager *mgr2 = gGeoManager;
+    TGeoVolume *ALIC = mgr2->GetTopVolume();
+    TCanvas *c4;
+    if(!(c4 = (TCanvas*)gROOT->FindObject("C4")))
+        c4 = new TCanvas("C4","ITS SPD Layer Geometry Side View",500,500);
+    TGeoVolume *ITS,*ITSspd,*SPDLay=0;
+    TGeoNode *node;
+    TArrow *arrow=new TArrow();
+    //
+    node = ALIC->FindNode("ITSV_1");
+    ITS = node->GetVolume();
+    node = ITS->FindNode("ITSspd_1");
+    ITSspd = node->GetVolume();
+    //
+    mgr2->SetNsegments(ISetits(1,-1));
+    //
+    mgr2->SetVisLevel(6);
+    mgr2->SetVisOption(0);
+    //mgr2->CheckOverlaps(0.01);
+    //mgr2->PrintOverlaps();
+    if(ISetits(2,-1)==1){
+        TGeoShape *clip = new TGeoTubeSeg(0, 1000, 2000, 45, 90);
+        mgr2->SetClippingShape(clip);
+    } // end if
+    mgr2->SetPhiRange(DSetits(1,-1.),DSetits(0,-1.));
+    if(ISetits(2,-1)!=0) mgr2->SetPhiRange(DSetits(1,-1.),DSetits(0,-1.));
+    //
+    ITSspd->Draw();
+    TView *view1 = c4->GetView();
+    if(view1){
+        view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
+        if(irr) cout <<"error="<<irr<<endl;
+        if(ISetits(4,-1)==0) view1->SetParallel();
+        else  view1->SetPerspective();
+        view1->Front();
+        if(ISetits(3,-1)!=0) view1->ShowAxis();
+    } // end if view1
+    if(ISetits(5,-1)==1) SPDLay->Raytrace();
+    //
+    if(!(c5 = (TCanvas*)gROOT->FindObject("C5")))
+        c5 = new TCanvas("C5","ITS SPD Centeral Geometry End View",500,500);
+    ITSspd->Draw();
+    TView *view2 = c5->GetView();
+    if(view2){
+        view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
+        if(irr) cout <<"error="<<irr<<endl;
+        if(ISetits(4,-1)==0) view2->SetParallel();
+        else  view2->SetPerspective();
+        view2->Top();
+        if(ISetits(3,-1)!=0) view2->ShowAxis();
+    } // end if view2
+    if(ISetits(5,-1)==1) ITSspd->Raytrace();
+    //
+}
+//----------------------------------------------------------------------
 void EngineeringSPDThS(){
     // Display SPD Thermal Sheald Geometry
     // Inputs:
@@ -300,7 +479,7 @@ void EngineeringSPDThS(){
     //
     node = ALIC->FindNode("ITSV_1");
     ITS = node->GetVolume();
-    node = ITS->FindNode("ITSspdThermalShealdMotherM_1");
+    node = ITS->FindNode("ITSspdThermalShealdMother_1");
     SPDThS = node->GetVolume();
     //
     mgr2->SetNsegments(ISetits(1,-1));
@@ -323,7 +502,7 @@ void EngineeringSPDThS(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -337,7 +516,7 @@ void EngineeringSPDThS(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -388,7 +567,7 @@ void EngineeringSDDLayer3(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -402,7 +581,7 @@ void EngineeringSDDLayer3(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -453,7 +632,7 @@ void EngineeringSDDLayer4(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -467,7 +646,7 @@ void EngineeringSDDLayer4(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -520,7 +699,7 @@ void EngineeringSDDCone(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -534,7 +713,7 @@ void EngineeringSDDCone(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -591,7 +770,7 @@ void EngineeringSDDCylinder(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -606,7 +785,7 @@ void EngineeringSDDCylinder(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -662,7 +841,7 @@ void EngineeringSSDCone(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Top();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -676,7 +855,7 @@ void EngineeringSSDCone(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Front();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -733,7 +912,7 @@ void EngineeringSSDCylinder(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -748,7 +927,7 @@ void EngineeringSSDCylinder(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -805,7 +984,7 @@ void EngineeringSupRB24(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -819,7 +998,7 @@ void EngineeringSupRB24(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -874,7 +1053,7 @@ void EngineeringSupTrayRB24(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -891,7 +1070,7 @@ void EngineeringSupTrayRB24(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
@@ -945,7 +1124,7 @@ void EngineeringSupRB26(){
     if(view1){
         view1->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view1->SetParralel();
+        if(ISetits(4,-1)==0) view1->SetParallel();
         else  view1->SetPerspective();
         view1->Front();
         if(ISetits(3,-1)!=0) view1->ShowAxis();
@@ -959,11 +1138,11 @@ void EngineeringSupRB26(){
     if(view2){
         view2->SetView(DSetits(2,-1.),DSetits(3,-1.),DSetits(4,-1.),irr);
         if(irr) cout <<"error="<<irr<<endl;
-        if(ISetits(4,-1)==0) view2->SetParralel();
+        if(ISetits(4,-1)==0) view2->SetParallel();
         else  view2->SetPerspective();
         view2->Top();
         if(ISetits(3,-1)!=0) view2->ShowAxis();
     } // end if view2
     if(ISetits(5,-1)==1) SUPRB26->Raytrace();
     //
-}
+}
\ No newline at end of file