| 399 | } |
| 400 | |
| 401 | mitk::DataNode::Pointer QmitkBoundingObjectWidget::GetAllBoundingObjects() |
| 402 | { |
| 403 | mitk::DataNode::Pointer boundingObjectGroupNode = mitk::DataNode::New(); |
| 404 | mitk::BoundingObjectGroup::Pointer boundingObjectGroup = mitk::BoundingObjectGroup::New(); |
| 405 | boundingObjectGroup->SetCSGMode(mitk::BoundingObjectGroup::Union); |
| 406 | |
| 407 | mitk::NodePredicateProperty::Pointer prop = |
| 408 | mitk::NodePredicateProperty::New("bounding object", mitk::BoolProperty::New(true)); |
| 409 | mitk::DataStorage::SetOfObjects::ConstPointer allBO = m_DataStorage->GetSubset(prop); |
| 410 | |
| 411 | for (mitk::DataStorage::SetOfObjects::const_iterator it = allBO->begin(); it != allBO->end(); ++it) |
| 412 | { |
| 413 | mitk::DataNode::Pointer node = *it; |
| 414 | mitk::BoundingObject::Pointer boundingObject = dynamic_cast<mitk::BoundingObject *>(node->GetData()); |
| 415 | if (boundingObject) |
| 416 | boundingObjectGroup->AddBoundingObject(boundingObject); |
| 417 | } |
| 418 | |
| 419 | boundingObjectGroupNode->SetData(boundingObjectGroup); |
| 420 | |
| 421 | if (boundingObjectGroup->GetCount() > 0) |
| 422 | return boundingObjectGroupNode; |
| 423 | |
| 424 | return nullptr; |
| 425 | } |
| 426 | |
| 427 | mitk::DataNode::Pointer QmitkBoundingObjectWidget::GetSelectedBoundingObjectNode() |
| 428 | { |