-// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
#include "QtxAction.h"
#include "QtxIntSpinBox.h"
-#include <Basics_OCCTVersion.hxx>
+#include <Graphic3d_GraduatedTrihedron.hxx>
#include <QCheckBox>
#include <QGroupBox>
*/
void OCCViewer_CubeAxesDlg::ApplyData( const Handle(V3d_View)& theView )
{
-#if OCC_VERSION_LARGE > 0x06030009 // available only with OCC-6.3-sp10 and higher version
if( theView.IsNull() )
return;
if( myIsVisible->isChecked() )
{
OCCViewer_AxisWidget::AxisData anAxisData[3];
- for( int i = 0; i < 3; i++ )
+ for( int i = 0; i < 3; i++ ) {
if( OCCViewer_AxisWidget* anAxisWidget = dynamic_cast<OCCViewer_AxisWidget*>( myAxes[ i ] ) )
anAxisWidget->GetData( anAxisData[i] );
+ }
// A gap used offset of axis names' offset
// (this hard-coded value will be removed when the
// font support will be introduced in OCC-6.4)
int aGap = 20;
- theView->GraduatedTrihedronDisplay(
- anAxisData[0].Name.toLatin1().constData(),
- anAxisData[1].Name.toLatin1().constData(),
- anAxisData[2].Name.toLatin1().constData(),
- anAxisData[0].DrawName,
- anAxisData[1].DrawName,
- anAxisData[2].DrawName,
- anAxisData[0].DrawValues,
- anAxisData[1].DrawValues,
- anAxisData[2].DrawValues,
- Standard_True, // draw grid
- Standard_False, // draw axes
- anAxisData[0].NbValues - 1,
- anAxisData[1].NbValues - 1,
- anAxisData[2].NbValues - 1,
- anAxisData[0].Offset,
- anAxisData[1].Offset,
- anAxisData[2].Offset,
- anAxisData[0].Offset + aGap, // see above
- anAxisData[1].Offset + aGap, // see above
- anAxisData[2].Offset + aGap, // see above
- anAxisData[0].DrawTickmarks,
- anAxisData[1].DrawTickmarks,
- anAxisData[2].DrawTickmarks,
- anAxisData[0].TickmarkLength,
- anAxisData[1].TickmarkLength,
- anAxisData[2].TickmarkLength,
- Quantity_NOC_WHITE, // grid color
- Quantity_Color( anAxisData[0].NameColor.redF(),
- anAxisData[0].NameColor.greenF(),
- anAxisData[0].NameColor.blueF(),
- Quantity_TOC_RGB ),
- Quantity_Color( anAxisData[1].NameColor.redF(),
- anAxisData[1].NameColor.greenF(),
- anAxisData[1].NameColor.blueF(),
- Quantity_TOC_RGB ),
- Quantity_Color( anAxisData[2].NameColor.redF(),
- anAxisData[2].NameColor.greenF(),
- anAxisData[2].NameColor.blueF(),
- Quantity_TOC_RGB ),
- Quantity_Color( anAxisData[0].Color.redF(),
- anAxisData[0].Color.greenF(),
- anAxisData[0].Color.blueF(),
- Quantity_TOC_RGB ),
- Quantity_Color( anAxisData[1].Color.redF(),
- anAxisData[1].Color.greenF(),
- anAxisData[1].Color.blueF(),
- Quantity_TOC_RGB ),
- Quantity_Color( anAxisData[2].Color.redF(),
- anAxisData[2].Color.greenF(),
- anAxisData[2].Color.blueF(),
- Quantity_TOC_RGB ) );
+ Graphic3d_GraduatedTrihedron gt;
+ // main params
+ gt.SetDrawGrid(Standard_True); // to draw grid
+ gt.SetDrawAxes(Standard_True); // to draw axes
+ gt.SetGridColor(Quantity_NOC_WHITE); // grid color
+ // axes params
+ for ( int i = 0; i < 3; i++ ) {
+ Graphic3d_AxisAspect& aspect = gt.ChangeAxisAspect(i);
+ aspect.SetName(anAxisData[i].Name.toUtf8().constData());
+ aspect.SetDrawName(anAxisData[i].DrawName);
+ aspect.SetDrawValues(anAxisData[i].DrawValues);
+ aspect.SetDrawTickmarks(anAxisData[i].DrawTickmarks);
+ aspect.SetNameColor(Quantity_Color(anAxisData[i].NameColor.redF(),
+ anAxisData[i].NameColor.greenF(),
+ anAxisData[i].NameColor.blueF(),
+ Quantity_TOC_RGB));
+ aspect.SetColor(Quantity_Color(anAxisData[i].Color.redF(),
+ anAxisData[i].Color.greenF(),
+ anAxisData[i].Color.blueF(),
+ Quantity_TOC_RGB));
+ aspect.SetTickmarksNumber(anAxisData[i].NbValues-1);
+ aspect.SetTickmarksLength(anAxisData[i].TickmarkLength);
+ aspect.SetValuesOffset(anAxisData[i].Offset);
+ aspect.SetNameOffset(anAxisData[i].Offset + aGap); // see above
+ }
+ // draw trihedron
+ theView->GraduatedTrihedronDisplay(gt);
}
else
theView->GraduatedTrihedronErase();
theView->Redraw();
-#endif
}