Ejemplo n.º 1
0
bool    ObjectRenderer::Configure(const pXmlTree tree){

    bDrawObject         = true;
    bUseDefaultColor    = false;
    bUseTransparency    = false;
    SET_COLOR4(mDefaultColor, 0.7,0.7,0.7,1.0);

    bDrawCom            = false;
    SET_COLOR4(mComColor, 1.0,1.0,0.0,1.0);

    bDrawRef            = true;
    mRefSize 			= 0.04;

    if(tree!=NULL){
        pXmlTree stree;
        float *array;

        mRefSize = tree->Get("RefSize",0.0f);
        bDrawRef = (mRefSize>0.0001);

        if((stree = tree->Find("Com"))!=NULL){
                 if(stree->GetArray("Color",&array)==3){   COPY_COLOR3(mComColor,array);}
            else if(stree->GetArray("Color",&array)==4){   COPY_COLOR4(mComColor,array);}
            else                                        {  SET_COLOR4 (mComColor,1,1,0,1);}
            bDrawCom = true;
        }else{
            bDrawCom = false;
        }

        if((stree = tree->Find("Color"))!=NULL){
                 if(tree->GetArray("Color",&array)==3){   COPY_COLOR3(mDefaultColor,array);}
            else if(tree->GetArray("Color",&array)==4){   COPY_COLOR4(mDefaultColor,array);}
            else                                       {  SET_COLOR4 (mDefaultColor,0.7,0.7,0.7,1);}
            bUseDefaultColor = true;
        }else{
            bUseDefaultColor = false;
        }
        bUseTransparency = tree->Get("CurrTransparency",false);

    }
    return true;
}