當前位置: 首頁>>代碼示例>>C++>>正文


C++ ALEMBIC_ABC_SAFE_CALL_END函數代碼示例

本文整理匯總了C++中ALEMBIC_ABC_SAFE_CALL_END函數的典型用法代碼示例。如果您正苦於以下問題:C++ ALEMBIC_ABC_SAFE_CALL_END函數的具體用法?C++ ALEMBIC_ABC_SAFE_CALL_END怎麽用?C++ ALEMBIC_ABC_SAFE_CALL_END使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了ALEMBIC_ABC_SAFE_CALL_END函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C++代碼示例。

示例1: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
Abc::OCompoundProperty OMaterialSchema::getShaderParameters(
        const std::string & iTarget,
        const std::string & iShaderType )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "OMaterialSchema::getShaderParameters" );

    Util::validateName( iTarget, "target" );
    Util::validateName( iShaderType, "shaderType" );

    std::string propertyName = Util::buildTargetName(
        iTarget, iShaderType, "params" );

    Data::NodeMap::iterator i = m_data->nodes.find( propertyName );

    if ( i != m_data->nodes.end() )
    {
        return i->second.params;
    }

    Data::Node n;
    n.params = Abc::OCompoundProperty( this->getPtr(), propertyName );

    m_data->nodes[propertyName] = n;

    return n.params;
    ALEMBIC_ABC_SAFE_CALL_END();

    return Abc::OCompoundProperty();
}
開發者ID:AndyHuang7601,項目名稱:EpicGames-UnrealEngine,代碼行數:30,代碼來源:OMaterial.cpp

示例2: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
MeshTopologyVariance ISubDSchema::getTopologyVariance() const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "ISubDSchema::getTopologyVariance()" );

    if ( m_faceIndicesProperty.isConstant() && m_faceCountsProperty.isConstant() )
    {
        if ( m_positionsProperty.isConstant() )
        {
            return kConstantTopology;
        }
        else
        {
            return kHomogenousTopology;
        }
    }
    else
    {
        return kHeterogenousTopology;
    }

    ALEMBIC_ABC_SAFE_CALL_END();

    // Not all error handlers throw
    return kConstantTopology;
}
開發者ID:jonntd,項目名稱:ExocortexCrate,代碼行數:26,代碼來源:ISubD.cpp

示例3: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void OPolyMeshSchema::setTimeSampling( uint32_t iIndex )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN(
        "OPolyMeshSchema::setTimeSampling( uint32_t )" );

    m_positionsProperty.setTimeSampling( iIndex );
    m_indicesProperty.setTimeSampling( iIndex );
    m_countsProperty.setTimeSampling( iIndex );
    m_selfBoundsProperty.setTimeSampling( iIndex );

    if ( m_velocitiesProperty )
    {
        m_velocitiesProperty.setTimeSampling( iIndex );
    }

    if ( m_uvsParam )
    {
        m_uvsParam.setTimeSampling( iIndex );
    }

    if ( m_normalsParam )
    {
        m_normalsParam.setTimeSampling( iIndex );
    }

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:AWhetter,項目名稱:alembic,代碼行數:28,代碼來源:OPolyMesh.cpp

示例4: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
IFaceSet
IPolyMeshSchema::getFaceSet ( const std::string &iFaceSetName )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "IPolyMeshSchema::getFaceSet()" );
    boost::mutex::scoped_lock l(m_faceSetsMutex);
    if (!m_faceSetsLoaded)
    {
        loadFaceSetNames();
    }

    ABCA_ASSERT( m_faceSets.find (iFaceSetName) != m_faceSets.end (),
        "The requested FaceSet name can't be found in PolyMesh.");

    if (!m_faceSets [iFaceSetName])
    {
        // We haven't yet loaded the faceSet, so create/load it
        m_faceSets [iFaceSetName] = IFaceSet ( this->getParent().getObject(),
                                               iFaceSetName );
    }

    return m_faceSets [iFaceSetName];

    ALEMBIC_ABC_SAFE_CALL_END();

    IFaceSet emptyFaceSet;
    return emptyFaceSet;
}
開發者ID:EgoIncarnate,項目名稱:appleseed,代碼行數:28,代碼來源:IPolyMesh.cpp

示例5: ALEMBIC_ABC_SAFE_CALL_BEGIN

Abc::OStringArrayProperty
OCollectionsSchema::createCollection( const std::string &iName,
    const Abc::Argument &iArg0,
    const Abc::Argument &iArg1,
    const Abc::Argument &iArg2 )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "OCollectionsSchema::createCollection" );

    Abc::OStringArrayProperty prop = getCollection( iName );

    if ( prop.valid() )
        return prop;

    prop = Abc::OStringArrayProperty( this->getPtr(), iName,
                                      iArg0, iArg1, iArg2 );

    if ( prop.valid() )
    {
        m_collections.push_back( prop );

        return prop;
    }

    ALEMBIC_ABC_SAFE_CALL_END();

    return Abc::OStringArrayProperty();
}
開發者ID:AWhetter,項目名稱:alembic,代碼行數:27,代碼來源:OCollections.cpp

示例6: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void ICurvesSchema::get( ICurvesSchema::Sample &oSample,
                         const Abc::ISampleSelector &iSS ) const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "ICurvesSchema::get()" );

    if ( ! valid() ) { return; }

    m_positionsProperty.get( oSample.m_positions, iSS );
    m_nVerticesProperty.get( oSample.m_nVertices, iSS );

    Alembic::Util::uint8_t basisAndType[4];
    m_basisAndTypeProperty.get( basisAndType, iSS );

    oSample.m_type = static_cast<CurveType>( basisAndType[0] );
    oSample.m_wrap = static_cast<CurvePeriodicity>( basisAndType[1] );
    oSample.m_basis = static_cast<BasisType>( basisAndType[2] );
    // we ignore basisAndType[3] since it is the same as basisAndType[2]

    if ( m_selfBoundsProperty )
    {
        m_selfBoundsProperty.get( oSample.m_selfBounds, iSS );
    }

    if ( m_velocitiesProperty && m_velocitiesProperty.getNumSamples() > 0 )
    {
        m_velocitiesProperty.get( oSample.m_velocities, iSS );
    }

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:aovi,項目名稱:UnrealEngine4,代碼行數:31,代碼來源:ICurves.cpp

示例7: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
MeshTopologyVariance INuPatchSchema::getTopologyVariance() const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "INuPatch::getTopologyVariance()" );

    bool pointsConstant = m_positionsProperty.isConstant() &&
        ( !m_positionWeightsProperty ||
           m_positionWeightsProperty.isConstant() );

    bool uvConstant = ( m_uOrderProperty.isConstant() &&
         m_vOrderProperty.isConstant() && m_uKnotProperty.isConstant() &&
         m_vKnotProperty.isConstant() );

    // check for constant topology.
    // if the surface has trim curves, we must also check those of topology
    // variance.
    if ( pointsConstant && uvConstant )
    {
        if ( this -> hasTrimCurve() )
        {
            if ( this -> trimCurveTopologyIsConstant() )
            {
                return kConstantTopology;
            }
            else if ( this -> trimCurveTopologyIsHomogenous() )
            {
                return kHomogenousTopology;
            }
            else
            {
                return kHeterogenousTopology;
            }
        }

        return kConstantTopology;
    }
    // points are animated
    else if ( uvConstant )
    {

        if ( this -> hasTrimCurve() )
        {
            if ( this -> trimCurveTopologyIsHomogenous() )
            {
                return kHomogenousTopology;
            }
            else
            {
                return kHeterogenousTopology;
            }
        }

        return kHomogenousTopology;
    }


    ALEMBIC_ABC_SAFE_CALL_END();

    return kHeterogenousTopology;
}
開發者ID:BlackGinger,項目名稱:ExocortexCrate,代碼行數:60,代碼來源:INuPatch.cpp

示例8: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void OLightSchema::setFromPrevious()
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "OLightSchema::setFromPrevious" );

    if ( m_cameraSchema )
        m_cameraSchema.setFromPrevious();

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:AndyHuang7601,項目名稱:EpicGames-UnrealEngine,代碼行數:10,代碼來源:OLight.cpp

示例9: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void OCameraSchema::setTimeSampling( uint32_t iIndex )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN(
        "OCameraSchema::setTimeSampling( uint32_t )" );

    m_coreProperties.setTimeSampling( iIndex );

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:BlackGinger,項目名稱:ExocortexCrate,代碼行數:10,代碼來源:OCamera.cpp

示例10: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void IFaceSetSchema::get( IFaceSetSchema::Sample &oSample,
                       const Abc::ISampleSelector &iSS ) const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "IFaceSetSchema::get()" );

    m_facesProperty.get( oSample.m_faces, iSS );

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:BlackGinger,項目名稱:ExocortexCrate,代碼行數:10,代碼來源:IFaceSet.cpp

示例11: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void ISubDSchema::get( ISubDSchema::Sample &oSample,
                       const Abc::ISampleSelector &iSS )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "ISubDSchema::get()" );

    m_positionsProperty.get( oSample.m_positions, iSS );
    m_faceIndicesProperty.get( oSample.m_faceIndices, iSS );
    m_faceCountsProperty.get( oSample.m_faceCounts, iSS );

    m_faceVaryingInterpolateBoundaryProperty.get(
        oSample.m_faceVaryingInterpolateBoundary, iSS );
    m_faceVaryingPropagateCornersProperty.get(
        oSample.m_faceVaryingPropagateCorners, iSS );
    m_interpolateBoundaryProperty.get( oSample.m_interpolateBoundary, iSS );

    m_selfBoundsProperty.get( oSample.m_selfBounds, iSS );

    if ( m_creaseIndicesProperty )
    {
        m_creaseIndicesProperty.get( oSample.m_creaseIndices, iSS );
    }

    if ( m_creaseLengthsProperty )
    {
        m_creaseLengthsProperty.get( oSample.m_creaseLengths, iSS );
    }

    if ( m_creaseSharpnessesProperty )
    {
        m_creaseSharpnessesProperty.get( oSample.m_creaseSharpnesses, iSS );
    }

    if ( m_cornerIndicesProperty )
    {
        m_cornerIndicesProperty.get( oSample.m_cornerIndices, iSS );
    }

    if ( m_cornerSharpnessesProperty )
    {
        m_cornerSharpnessesProperty.get( oSample.m_cornerSharpnesses, iSS );
    }

    if ( m_holesProperty )
    {
        m_holesProperty.get( oSample.m_holes, iSS );
    }

    m_subdSchemeProperty.get( oSample.m_subdScheme, iSS );

    if ( m_childBoundsProperty && m_childBoundsProperty.getNumSamples() > 0 )
    {
        m_childBoundsProperty.get( oSample.m_childBounds, iSS );
    }

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:oyaGG,項目名稱:helgemathee-alembic-softimage,代碼行數:57,代碼來源:ISubD.cpp

示例12: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void IScalarProperty::get( void *oSamp, const ISampleSelector &iSS ) const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "IScalarProperty::get()" );

    AbcA::index_t index = iSS.getIndex( m_property->getTimeSampling(),
                                        m_property->getNumSamples() );
    m_property->getSample( index, oSamp );

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:BlackGinger,項目名稱:ExocortexCrate,代碼行數:11,代碼來源:IScalarProperty.cpp

示例13: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
void OFaceSetSchema::setTimeSampling( uint32_t iTimeSamplingID )
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN(
        "OFaceSetSchema::setTimeSampling( uint32_t iTimeSamplingID )" );

    m_facesProperty.setTimeSampling( iTimeSamplingID );
    m_selfBoundsProperty.setTimeSampling( iTimeSamplingID );

    ALEMBIC_ABC_SAFE_CALL_END();
}
開發者ID:BlackGinger,項目名稱:ExocortexCrate,代碼行數:11,代碼來源:OFaceSet.cpp

示例14: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
size_t ICompoundProperty::getNumProperties() const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "ICompoundProperty::getNumProperties()" );

    return m_property->getNumProperties();

    ALEMBIC_ABC_SAFE_CALL_END();

    // Not all error handlers throw, have a default.
    return 0;
}
開發者ID:AndyHuang7601,項目名稱:EpicGames-UnrealEngine,代碼行數:12,代碼來源:ICompoundProperty.cpp

示例15: ALEMBIC_ABC_SAFE_CALL_BEGIN

//-*****************************************************************************
AbcA::TimeSamplingPtr IArrayProperty::getTimeSampling() const
{
    ALEMBIC_ABC_SAFE_CALL_BEGIN( "IArrayProperty::getTimeSampling()" );

    return m_property->getTimeSampling();

    ALEMBIC_ABC_SAFE_CALL_END();

    // Not all error handlers throw, so return a default.
    return AbcA::TimeSamplingPtr();
}
開發者ID:oyaGG,項目名稱:helgemathee-alembic-softimage,代碼行數:12,代碼來源:IArrayProperty.cpp


注:本文中的ALEMBIC_ABC_SAFE_CALL_END函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。