SALOME_Actor *theActor,
vtkIdType theObjId)
{
- switch(theMode){
+ switch(theMode) {
case CellSelection:
return true;
case EdgeSelection:
return ( theActor->GetObjDimension( theObjId ) == 2 );
case VolumeSelection:
return ( theActor->GetObjDimension( theObjId ) == 3 );
+ case Elem0DSelection:
+ return ((theActor->GetObjDimension( theObjId ) == 0) &&
+ theActor->GetElemCell(theObjId) &&
+ (theActor->GetElemCell(theObjId)->GetCellType() == VTK_VERTEX));
+ case BallSelection:
+ return ((theActor->GetObjDimension( theObjId ) == 0) &&
+ theActor->GetElemCell(theObjId) &&
+ (theActor->GetElemCell(theObjId)->GetCellType() == VTK_POLY_VERTEX));
+
};
return false;
}
myRenderer = theRenderer;
- theRenderer->AddActor( myPreHighlightActor.GetPointer() );
- theRenderer->AddActor( myHighlightActor.GetPointer() );
+ myHighlightActor->AddToRender(theRenderer);
+ myPreHighlightActor->AddToRender(theRenderer);
theRenderer->AddActor( myOutlineActor.GetPointer() );
theRenderer->AddActor( myNameActor.GetPointer() );
}
{
Superclass::RemoveFromRender(theRenderer);
+ myHighlightActor->RemoveFromRender(theRenderer);
+ myPreHighlightActor->RemoveFromRender(theRenderer);
+
theRenderer->RemoveActor( myPreHighlightActor.GetPointer() );
theRenderer->RemoveActor( myHighlightActor.GetPointer() );
theRenderer->RemoveActor( myOutlineActor.GetPointer() );
case EdgeSelection:
case FaceSelection:
case VolumeSelection:
+ case Elem0DSelection:
+ case BallSelection:
myHighlightActor->GetProperty()->SetRepresentationToSurface();
myHighlightActor->MapCells( this, aMapIndex );
break;
case EdgeSelection:
case FaceSelection:
case VolumeSelection:
+ case Elem0DSelection:
+ case BallSelection:
{
SVTK::TPickLimiter aPickLimiter( myCellPicker, this );
myCellPicker->Pick( x, y, z, aRenderer );
case EdgeSelection:
case FaceSelection:
case VolumeSelection:
+ case Elem0DSelection:
+ case BallSelection:
{
SVTK::TPickLimiter aPickLimiter( myCellPicker, this );
myCellPicker->Pick( x, y, z, aRenderer );
case EdgeSelection:
case FaceSelection:
case VolumeSelection:
+ case Elem0DSelection:
+ case BallSelection:
{
SVTK::TPickLimiter aPickLimiter( myCellRectPicker, this );
myCellRectPicker->Pick( x1, y1, z1, x2, y2, z2, aRenderer );