- bool isSelectedVertex = false;
-
- //ASL: std::vector<TopoDS_Vertex> aVetexVec;
- for ( AIS_ListIteratorOfListOfInteractive it( aDisplayedList ); it.More(); it.Next() )
- {
- Handle(AIS_InteractiveObject) anAIS = it.Value();
- if ( anAIS.IsNull() )
- continue;
- Handle(AIS_Shape) anAISShape = Handle(AIS_Shape)::DownCast( anAIS );
- if ( anAISShape.IsNull() )
- continue;
-
-
- /*ASL: const TopoDS_Shape& aShape = anAISShape->Shape();
- TopExp_Explorer aExpV( aShape, TopAbs_VERTEX);
- for ( ; aExpV.More(); aExpV.Next() )
- {
- const TopoDS_Vertex& aVertex = TopoDS::Vertex( aExpV.Current() );
- aVetexVec.push_back( aVertex );
- }*/
-
-
- //ASL: we convert list of point indices to list of points coordinates
- int aSize = thePoints.size();
- std::vector<gp_Pnt> aPntsToSelect( aSize );
-
- CurveCreator_ICurve::SectionToPointList::const_iterator
- aPIt = thePoints.begin(), aPLast = thePoints.end();
- CurveCreator_ICurve::SectionToPoint aSToPoint;
- for( int i=0; aPIt != aPLast; aPIt++, i++ )
- {
- gp_Pnt aPntToSelect;
- CurveCreator_UtilsICurve::getPoint( myCurve, aPIt->first, aPIt->second, aPntToSelect );
- aPntsToSelect[i] = aPntToSelect;
- }
-
-
- //ASL: we switch off automatic highlight to improve performance of selection
- ic->SetAutomaticHilight( Standard_False );