本文整理汇总了C++中sceneplug::ScenePath::end方法的典型用法代码示例。如果您正苦于以下问题:C++ ScenePath::end方法的具体用法?C++ ScenePath::end怎么用?C++ ScenePath::end使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sceneplug::ScenePath
的用法示例。
在下文中一共展示了ScenePath::end方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: pathFromSelectionId
bool pathFromSelectionId( GLuint selectionId, ScenePlug::ScenePath &path ) const
{
path.clear();
const bool result = pathFromSelectionIdWalk( selectionId, path );
std::reverse( path.begin(), path.end() );
return result;
}
示例2: pathToString
void ScenePlug::pathToString( const ScenePlug::ScenePath &path, std::string &s )
{
if( !path.size() )
{
s = "/";
}
else
{
s.clear();
for( ScenePlug::ScenePath::const_iterator it = path.begin(), eIt = path.end(); it != eIt; it++ )
{
s += "/" + it->string();
}
}
}
示例3: pathScope
bool GafferScene::SceneAlgo::exists( const ScenePlug *scene, const ScenePlug::ScenePath &path )
{
ScenePlug::PathScope pathScope( Context::current() );
ScenePlug::ScenePath p; p.reserve( path.size() );
for( ScenePlug::ScenePath::const_iterator it = path.begin(), eIt = path.end(); it != eIt; ++it )
{
pathScope.setPath( p );
ConstInternedStringVectorDataPtr childNamesData = scene->childNamesPlug()->getValue();
const vector<InternedString> &childNames = childNamesData->readable();
if( find( childNames.begin(), childNames.end(), *it ) == childNames.end() )
{
return false;
}
p.push_back( *it );
}
return true;
}
示例4: exists
bool GafferScene::exists( const ScenePlug *scene, const ScenePlug::ScenePath &path )
{
ContextPtr context = new Context( *Context::current(), Context::Borrowed );
Context::Scope scopedContext( context.get() );
ScenePlug::ScenePath p; p.reserve( path.size() );
for( ScenePlug::ScenePath::const_iterator it = path.begin(), eIt = path.end(); it != eIt; ++it )
{
context->set( ScenePlug::scenePathContextName, p );
ConstInternedStringVectorDataPtr childNamesData = scene->childNamesPlug()->getValue();
const vector<InternedString> &childNames = childNamesData->readable();
if( find( childNames.begin(), childNames.end(), *it ) == childNames.end() )
{
return false;
}
p.push_back( *it );
}
return true;
}
示例5: visible
bool GafferScene::visible( const ScenePlug *scene, const ScenePlug::ScenePath &path )
{
ContextPtr context = new Context( *Context::current(), Context::Borrowed );
Context::Scope scopedContext( context.get() );
ScenePlug::ScenePath p; p.reserve( path.size() );
for( ScenePlug::ScenePath::const_iterator it = path.begin(), eIt = path.end(); it != eIt; ++it )
{
p.push_back( *it );
context->set( ScenePlug::scenePathContextName, p );
ConstCompoundObjectPtr attributes = scene->attributesPlug()->getValue();
const BoolData *visibilityData = attributes->member<BoolData>( "scene:visible" );
if( visibilityData && !visibilityData->readable() )
{
return false;
}
}
return true;
}