// $Header$
#include "GeometryGUI_Swig.hxx"
-#include "SALOMEGUI_Swig.hxx"
#include "GeometryGUI.h"
+#include "SUIT_Desktop.h"
#include "SUIT_Session.h"
#include "SalomeApp_Application.h"
#include "SalomeApp_Study.h"
-#include "SalomeApp_ImportOperation.h"
+//#include "SalomeApp_ImportOperation.h"
-#include "OB_Browser.h"
+// temporary commented
+//#include "OB_Browser.h"
#include "OCCViewer_ViewWindow.h"
#include "OCCViewer_ViewManager.h"
#include "GEOM_Actor.h"
#include "GEOM_Client.hxx"
#include "GEOM_AISShape.hxx"
-#include "GEOM_AssemblyBuilder.h"
+//#include "GEOM_AssemblyBuilder.h"
#include "GEOM_InteractiveObject.hxx"
#include "GEOM_Displayer.h"
#include "SALOME_Event.hxx"
-#include "utilities.h"
-
-#include "SALOMEDSClient.hxx"
+//#include "utilities.h"
// OCCT Includes
#include <TopAbs.hxx>
#include <AIS_ListOfInteractive.hxx>
#include <AIS_ListIteratorOfListOfInteractive.hxx>
#include <AIS_Drawer.hxx>
+#include <BRepTools.hxx>
// IDL Headers
#include <SALOMEconfig.h>
if (!father)
return;
if (!father->ComponentIOR(aFatherIOR)) {
- aStudyBuilder->LoadWith(father, SalomeApp_Application::orb()->object_to_string(Geom));
+ CORBA::String_var objStr = SalomeApp_Application::orb()->object_to_string(Geom);
+ aStudyBuilder->LoadWith(father, objStr.in());
father->ComponentIOR(aFatherIOR);
}
ProcessVoidEvent(new TEventFitAll());
}
+void GEOM_Swig::UpdateViewer()
+{
+ class TEventUpdateViewer: public SALOME_Event
+ {
+ public:
+ TEventUpdateViewer() {}
+ virtual void Execute() {
+ SUIT_Application* app = SUIT_Session::session()->activeApplication();
+ if (!app) return;
+ SalomeApp_Study* ActiveStudy = dynamic_cast<SalomeApp_Study*>(app->activeStudy());
+ if (!ActiveStudy) return;
+
+ GEOM_Displayer(ActiveStudy).UpdateViewer();
+ }
+ };
+
+ ProcessVoidEvent(new TEventUpdateViewer());
+}
+
int GEOM_Swig::getIndexTopology(const char* SubIOR, const char* IOR)
{
GEOM::GEOM_Gen_var aGeomGen = GeometryGUI::GetGeomGen();
ite.Value()->SetColor(CSFColor);
if (ite.Value()->IsKind(STANDARD_TYPE(GEOM_AISShape)))
Handle(GEOM_AISShape)::DownCast(ite.Value())->SetShadingColor(CSFColor);
- ite.Value()->Redisplay(Standard_True);
+ ic->Redisplay(ite.Value(), true, true);
if (myUpdateViewer)
occViewer->update();
break;
if ((!aObj.IsNull()) && aObj->hasEntry() && aObj->isSame(anIO)) {
Handle(AIS_Shape) aShape = Handle(AIS_Shape)::DownCast(it.Value());
if (!aShape.IsNull()) {
- Handle(AIS_Drawer) aDrawer = aShape->Attributes();
- if (aDrawer.IsNull())
- aDrawer = new AIS_Drawer();
- aDrawer->SetDeviationCoefficient(myParam);
- aShape->SetAttributes(aDrawer);
- aContext->Redisplay(aShape, true, true);
- aContext->UpdateCurrentViewer();
+ TopoDS_Shape aSh = aShape->Shape();
+ if (!aSh.IsNull())
+ BRepTools::Clean(aSh);
+
+ aShape->SetOwnDeviationCoefficient( myParam );
+ aShape->SetOwnHLRDeviationAngle( 1.57 );
+ aContext->Redisplay(aShape);
return;
}
}