MeshLib
 
Loading...
Searching...
No Matches
MRObjectsAccess.h File Reference
#include "MRObject.h"
#include "MRObjectsAccess.hpp"

Go to the source code of this file.

Namespaces

namespace  MR
 

Functions

bool MR::objectHasSelectableChildren (const MR::Object &object)
 
enum class  MR::ObjectSelectivityType { MR::ObjectSelectivityType::Selectable , MR::ObjectSelectivityType::Selected , MR::ObjectSelectivityType::Any }
 
template<typename ObjectT = Object>
std::shared_ptr< ObjectT > MR::asSelectivityType (std::shared_ptr< Object > obj, const ObjectSelectivityType &type)
 if input object is of given type then returns another pointer on it
 
template<typename ObjectT = Object>
std::vector< std::shared_ptr< ObjectT > > MR::getAllObjectsInTree (Object *root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable)
 
template<typename ObjectT = Object>
std::vector< std::shared_ptr< ObjectT > > MR::getAllObjectsInTree (Object &root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable)
 
template<typename ObjectT = Object>
std::vector< std::shared_ptr< ObjectT > > MR::getTopmostVisibleObjects (Object *root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable)
 Returns all topmost visible objects of given type (if an object is returned, its children are not) excluding root.
 
template<typename ObjectT = Object>
std::vector< std::shared_ptr< ObjectT > > MR::getTopmostVisibleObjects (Object &root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable)
 
template<typename ObjectT = Object>
std::shared_ptr< ObjectT > MR::getDepthFirstObject (Object *root, const ObjectSelectivityType &type)
 return first object of given type in depth-first traverse order excluding root
 
template<typename ObjectT = Object>
std::shared_ptr< ObjectT > MR::getDepthFirstObject (Object &root, const ObjectSelectivityType &type)