Salome HOME
Porting on the OCCT-6.9.0
authorrnv <rnv@opencascade.com>
Wed, 8 Apr 2015 13:07:00 +0000 (16:07 +0300)
committerrnv <rnv@opencascade.com>
Wed, 8 Apr 2015 13:07:45 +0000 (16:07 +0300)
src/CurveCreator/CurveCreator_Utils.cxx
src/GEOMGUI/GEOMGUI_OCCSelector.cxx
src/OBJECT/GEOM_AISShape.cxx

index 035f0b35c5521047800ed0b1d5006b3e70cfbfd2..b8471abe8c215303f8cd5b3f57cfe880ba19c89d 100644 (file)
@@ -22,6 +22,8 @@
 #include "CurveCreator_Curve.hxx"
 #include "CurveCreator_UtilsICurve.hxx"
 
+#include <Basics_OCCTVersion.hxx>
+
 #include <GEOMUtils.hxx>
 
 #include <gp_Pln.hxx>
@@ -578,8 +580,16 @@ void CurveCreator_Utils::setSelectedPoints( Handle(AIS_InteractiveContext) theCo
 
   Handle_SelectMgr_Selection aSelection = anAISShape->Selection( AIS_Shape::SelectionMode( TopAbs_VERTEX ) );
   for( aSelection->Init(); aSelection->More(); aSelection->Next() )
-  {
+  {    
+#if OCC_VERSION_LARGE > 0x06080100
+    const SelectMgr_HSensitiveEntity aHSenEntity = aSelection->Sensitive();
+    if( aHSenEntity.IsNull() )
+      continue;
+    Handle_SelectBasics_SensitiveEntity aSenEntity = aHSenEntity->BaseSensitive();
+#else
     Handle_SelectBasics_SensitiveEntity aSenEntity = aSelection->Sensitive();
+#endif
+
     Handle_Select3D_SensitivePoint aSenPnt = Handle_Select3D_SensitivePoint::DownCast( aSenEntity );
 
     gp_Pnt anOwnerPnt = aSenPnt->Point();
index 3bd18e5503e532e2694b0964c4bd3ccbcdcf91c2..efb4dcd6bea45f89f2aa715ca5fb49a8b421fec7 100644 (file)
@@ -25,6 +25,8 @@
 //
 #include "GEOMGUI_OCCSelector.h"
 
+#include <Basics_OCCTVersion.hxx>
+
 #include <LightApp_DataSubOwner.h>
 
 #include <OCCViewer_ViewModel.h>
@@ -176,7 +178,15 @@ static void getEntityOwners( const Handle(AIS_InteractiveObject)& theObj,
     Handle(SelectMgr_Selection) sel = theObj->Selection( m );
 
     for ( sel->Init(); sel->More(); sel->Next() ) {
+#if OCC_VERSION_LARGE > 0x06080100
+      const SelectMgr_HSensitiveEntity aHSenEntity = sel->Sensitive();
+      if( aHSenEntity.IsNull() )
+        continue;
+
+      Handle(SelectBasics_SensitiveEntity) entity = aHSenEntity->BaseSensitive();
+#else
       Handle(SelectBasics_SensitiveEntity) entity = sel->Sensitive();
+#endif
       if ( entity.IsNull() )
         continue;
 
index 52285710dc2cb11bcc365dc4f63df27be9c77505..5415d5373d355dc4429a5323c72ae101f9b81aac 100644 (file)
@@ -108,10 +108,17 @@ static void getEntityOwners( const Handle(AIS_InteractiveObject)& theObj,
     Handle(SelectMgr_Selection) sel = theObj->Selection( m );
 
     for ( sel->Init(); sel->More(); sel->Next() ) {
+#if OCC_VERSION_LARGE > 0x06080100
+      const SelectMgr_HSensitiveEntity aHSenEntity = sel->Sensitive();
+      if( aHSenEntity.IsNull() )
+        continue;
+
+      Handle(SelectBasics_SensitiveEntity) entity = aHSenEntity->BaseSensitive();
+#else
       Handle(SelectBasics_SensitiveEntity) entity = sel->Sensitive();
+#endif
       if ( entity.IsNull() )
         continue;
-
       Handle(SelectMgr_EntityOwner) owner =
         Handle(SelectMgr_EntityOwner)::DownCast(entity->OwnerId());
       if ( !owner.IsNull() )