- }
- }
-
- // try any visible actor of group or submesh of current mesh
- if (!isActor && aViewWindow) {
- // mesh entry
- _PTR(SObject) aSObject = SMESH::FindSObject(myMesh);
- if (aSObject) {
- CORBA::String_var meshEntry = aSObject->GetID().c_str();
- int len = strlen(meshEntry);
-
- // iterate on all actors in current view window, search for
- // any visible actor, that belongs to group or submesh of current mesh
- VTK::ActorCollectionCopy aCopy(aViewWindow->getRenderer()->GetActors());
- vtkActorCollection *aCollection = aCopy.GetActors();
- int nbItems = aCollection->GetNumberOfItems();
- for (int i=0; i<nbItems && !isActor; i++)
- {
- SMESH_Actor *anActor = dynamic_cast<SMESH_Actor*>(aCollection->GetItemAsObject(i));
- if (anActor && anActor->hasIO()) {
- Handle(SALOME_InteractiveObject) anIO = anActor->getIO();
- if (aViewWindow->isVisible(anIO)) {
- if (anIO->hasEntry() && strncmp(anIO->getEntry(), meshEntry, len) == 0) {
- myActor = anActor;
- isActor = true;
+
+ // try any visible actor of group or submesh of current mesh
+ if (aViewWindow) {
+ // mesh entry
+ _PTR(SObject) aSObject = SMESH::FindSObject(myMesh);
+ if (aSObject) {
+ CORBA::String_var meshEntry = aSObject->GetID().c_str();
+ int len = strlen(meshEntry);
+
+ // iterate on all actors in current view window, search for
+ // any visible actor, that belongs to group or submesh of current mesh
+ VTK::ActorCollectionCopy aCopy(aViewWindow->getRenderer()->GetActors());
+ vtkActorCollection *aCollection = aCopy.GetActors();
+ int nbItems = aCollection->GetNumberOfItems();
+ for (int i=0; i<nbItems && !isActor; i++)
+ {
+ SMESH_Actor *anActor = dynamic_cast<SMESH_Actor*>(aCollection->GetItemAsObject(i));
+ if (anActor && anActor->hasIO()) {
+ Handle(SALOME_InteractiveObject) anIO = anActor->getIO();
+ if (aViewWindow->isVisible(anIO)) {
+ if (anIO->hasEntry() && strncmp(anIO->getEntry(), meshEntry, len) == 0)
+ myActorsList.append(anActor);
+ }