当前位置: 首页>>代码示例>>C++>>正文


C++ UsdStagePtr::GetPrimAtPath方法代码示例

本文整理汇总了C++中UsdStagePtr::GetPrimAtPath方法的典型用法代码示例。如果您正苦于以下问题:C++ UsdStagePtr::GetPrimAtPath方法的具体用法?C++ UsdStagePtr::GetPrimAtPath怎么用?C++ UsdStagePtr::GetPrimAtPath使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在UsdStagePtr的用法示例。


在下文中一共展示了UsdStagePtr::GetPrimAtPath方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: bool

bool GusdXformWrapper::
initUsdPrim(const UsdStagePtr& stage,
            const SdfPath& path,
            bool asOverride)
{
    bool newPrim = true;
    if( asOverride ) {
        UsdPrim existing = stage->GetPrimAtPath( path );
        if( existing ) {
            // Note that we are creating a Xformable rather than a Xform. 
            // If we are writing an overlay and the ROP sees a geometry packed prim,
            // we want to write just the xform. In that case we can use a xform
            // wrapper to write the xform on any prim type.
            m_usdXformForWrite = UsdGeomXformable(stage->OverridePrim( path ));
            newPrim = false;
        }
        else {
            m_usdXformForWrite = UsdGeomXform::Define( stage, path );

            // Make sure our ancestors have proper types.
            UsdPrim p = m_usdXformForWrite.GetPrim().GetParent();
            while( p && p.GetTypeName().IsEmpty() ) {
                UsdGeomXform::Define( stage, p.GetPath() );
                p = p.GetParent();
            } 
        }
    }
    else {
        m_usdXformForWrite = UsdGeomXform::Define( stage, path );
    }
    if( !m_usdXformForWrite || !m_usdXformForWrite.GetPrim().IsValid() ) {
        TF_WARN( "Unable to create %s xform '%s'.", newPrim ? "new" : "override", path.GetText() );
    }
    return bool(m_usdXformForWrite);
}
开发者ID:mplanck,项目名称:USD,代码行数:35,代码来源:xformWrapper.cpp

示例2: bool

bool GusdScopeWrapper::
initUsdPrim(const UsdStagePtr& stage,
            const SdfPath& path,
            bool asOverride)
{
    bool newPrim = true;
    if( asOverride ) {
        UsdPrim existing = stage->GetPrimAtPath( path );
        if( existing ) {
            // Note that we are creating a Xformable rather than a Xform. 
            // If we are writing an overlay and the ROP sees a geometry packed prim,
            // we want to write just the xform. In that case we can use a xform
            // wrapper to write the xform on any prim type.
            m_usdScopeForWrite = UsdGeomScope(stage->OverridePrim( path ));
            newPrim = false;
        }
        else {
            m_usdScopeForWrite = UsdGeomScope::Define( stage, path );   
        }
    }
    else {
        m_usdScopeForWrite = UsdGeomScope::Define( stage, path );
    }
    if( !m_usdScopeForWrite || !m_usdScopeForWrite.GetPrim().IsValid() ) {
        TF_WARN( "Unable to create %s scope '%s'.", newPrim ? "new" : "override", path.GetText() );
    }
    return bool(m_usdScopeForWrite);
}
开发者ID:JT-a,项目名称:USD,代码行数:28,代码来源:scopeWrapper.cpp

示例3: UsdSchemaExamplesSimple

/* static */
UsdSchemaExamplesSimple
UsdSchemaExamplesSimple::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (not stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdSchemaExamplesSimple();
    }
    return UsdSchemaExamplesSimple(stage->GetPrimAtPath(path));
}
开发者ID:400dama,项目名称:USD,代码行数:10,代码来源:simple.cpp

示例4: UsdContrivedDerived

/* static */
UsdContrivedDerived
UsdContrivedDerived::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdContrivedDerived();
    }
    return UsdContrivedDerived(stage->GetPrimAtPath(path));
}
开发者ID:JT-a,项目名称:USD,代码行数:10,代码来源:ns_derived.cpp

示例5: UsdSkelRoot

/* static */
UsdSkelRoot
UsdSkelRoot::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdSkelRoot();
    }
    return UsdSkelRoot(stage->GetPrimAtPath(path));
}
开发者ID:lvxejay,项目名称:USD,代码行数:10,代码来源:root.cpp

示例6: UsdShadeShader

/* static */
UsdShadeShader
UsdShadeShader::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdShadeShader();
    }
    return UsdShadeShader(stage->GetPrimAtPath(path));
}
开发者ID:JT-a,项目名称:USD,代码行数:10,代码来源:shader.cpp

示例7: UsdRiLightPortalAPI

/* static */
UsdRiLightPortalAPI
UsdRiLightPortalAPI::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdRiLightPortalAPI();
    }
    return UsdRiLightPortalAPI(stage->GetPrimAtPath(path));
}
开发者ID:JT-a,项目名称:USD,代码行数:10,代码来源:lightPortalAPI.cpp

示例8: UsdGeomXformable

/* static */
UsdGeomXformable
UsdGeomXformable::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (not stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdGeomXformable();
    }
    return UsdGeomXformable(stage->GetPrimAtPath(path));
}
开发者ID:ZeroCrunch,项目名称:USD,代码行数:10,代码来源:xformable.cpp

示例9: UsdGeomPointBased

/* static */
UsdGeomPointBased
UsdGeomPointBased::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (not stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdGeomPointBased();
    }
    return UsdGeomPointBased(stage->GetPrimAtPath(path));
}
开发者ID:400dama,项目名称:USD,代码行数:10,代码来源:pointBased.cpp

示例10: UsdContrivedEmptyMultipleApplyAPI

/* static */
UsdContrivedEmptyMultipleApplyAPI
UsdContrivedEmptyMultipleApplyAPI::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdContrivedEmptyMultipleApplyAPI();
    }
    return UsdContrivedEmptyMultipleApplyAPI(stage->GetPrimAtPath(path));
}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:10,代码来源:ns_emptyMultipleApply.cpp

示例11: UsdGeomSphere

/* static */
UsdGeomSphere
UsdGeomSphere::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdGeomSphere();
    }
    return UsdGeomSphere(stage->GetPrimAtPath(path));
}
开发者ID:JT-a,项目名称:USD,代码行数:10,代码来源:sphere.cpp

示例12: UsdGeomNurbsCurves

/* static */
UsdGeomNurbsCurves
UsdGeomNurbsCurves::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdGeomNurbsCurves();
    }
    return UsdGeomNurbsCurves(stage->GetPrimAtPath(path));
}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:10,代码来源:nurbsCurves.cpp

示例13: UsdHydraPrimvar

/* static */
UsdHydraPrimvar
UsdHydraPrimvar::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (not stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdHydraPrimvar();
    }
    return UsdHydraPrimvar(stage->GetPrimAtPath(path));
}
开发者ID:400dama,项目名称:USD,代码行数:10,代码来源:primvar.cpp

示例14: UsdUISceneGraphPrimAPI

/* static */
UsdUISceneGraphPrimAPI
UsdUISceneGraphPrimAPI::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdUISceneGraphPrimAPI();
    }
    return UsdUISceneGraphPrimAPI(stage->GetPrimAtPath(path));
}
开发者ID:lvxejay,项目名称:USD,代码行数:10,代码来源:sceneGraphPrimAPI.cpp

示例15: UsdGeomXformCommonAPI

/* static */
UsdGeomXformCommonAPI
UsdGeomXformCommonAPI::Get(const UsdStagePtr &stage, const SdfPath &path)
{
    if (!stage) {
        TF_CODING_ERROR("Invalid stage");
        return UsdGeomXformCommonAPI();
    }

    UsdGeomXformable xformable(stage->GetPrimAtPath(path));

    return UsdGeomXformCommonAPI(xformable);
}
开发者ID:JT-a,项目名称:USD,代码行数:13,代码来源:xformCommonAPI.cpp


注:本文中的UsdStagePtr::GetPrimAtPath方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。