-// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2013 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
OCCViewer_ViewPort3d::OCCViewer_ViewPort3d( QWidget* parent, const Handle( V3d_Viewer)& viewer, V3d_TypeOfView type )
: OCCViewer_ViewPort( parent ),
myScale( 1.0 ),
- myDegenerated( true ),
- myAnimate( false ),
myBusy( true ),
myIsAdvancedZoomingEnabled( false )
{
myPerspView = new V3d_PerspectiveView( viewer );
myActiveView = myPerspView;
}
- if ( myDegenerated )
- activeView()->SetDegenerateModeOn();
setBackground( Qtx::BackgroundData( Qt::black ) ); // set default background
}
*/
OCCViewer_ViewPort3d::~OCCViewer_ViewPort3d()
{
+ emit vpClosed();
Handle(V3d_View) aView = activeView();
if (!aView.IsNull())
aView->Remove();
view->SetBackgroundColor( oldView->BackgroundColor() );
}
- if ( myDegenerated )
- view->SetDegenerateModeOn();
- else
- view->SetDegenerateModeOff();
-
view->View()->Activate();
activeView() = view;
return oldView;
#endif
}
-/*!
- Set animation mode
- \param theDegenerated - degenerated mode
-*/
-void OCCViewer_ViewPort3d::setAnimationMode(bool theDegenerated)
-{
- if ( !activeView().IsNull() ) {
- myAnimate = theDegenerated;
- activeView()->SetAnimationMode(true, theDegenerated);
- }
-}
-
/*!
Updates the active viewport. [ virtual public ]
*/
const gp_Pnt& theSelectedPoint )
{
if ( !activeView().IsNull() ) {
- myDegenerated = activeView()->DegenerateModeIsOn();
- activeView()->SetDegenerateModeOn();
- if (myAnimate) activeView()->SetAnimationModeOn();
-
//double gx, gy, gz;
//double gx = activeView()->gx;
//activeView()->Gravity(gx,gy,gz);
void OCCViewer_ViewPort3d::endRotation()
{
if ( !activeView().IsNull() ) {
- if (myAnimate) activeView()->SetAnimationModeOff();
- if ( !myDegenerated )
- activeView()->SetDegenerateModeOff();
activeView()->ZFitAll(1.);
activeView()->SetZSize(0.);
activeView()->Update();
if ( view.IsNull() )
return false;
- int hwnd = (int)winId();
- if ( !hwnd )
- return false;
-
- /* set this widget as the drawing window */
- short lo = (short)hwnd;
- short hi = (short)( hwnd >> 16 );
-
- attachWindow( view, OCCViewer_VService::CreateWindow( view, (int)hi, (int)lo, Xw_WQ_SAMEQUALITY ) );
+ attachWindow( view, OCCViewer_VService::CreateWindow( view, winId() ) );
myWindow = view->Window();
return !myWindow.IsNull();