TEXTURETAG_RESTRICTION

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 27/04/2005 at 05:49, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   8.5 
Platform:   Windows  ;   
Language(s) :     C++  ;

---------
Hi,

I'm writing an exporter for our in-house engine and need to support selections. My problem is that the TEXTURETAG_RESTRICTION values of TextureTags are all empty (myRestriction.GetLength()==0) even though it's set to some proper value in C4D.

I'm using the following code to check for matching selections (found on this forum) :

  
for (LONG ti = 0; (myTextureTag = static_cast<TextureTag*>(theNode->GetTag(Ttexture, ti))); ++ti) {  
    String myRestriction = myTextureTag->GetDataInstance()->GetString(TEXTURETAG_RESTRICTION);  
    if (mySelection->GetName() == myRestriction) {  
        GePrint("Selection " + mySelection->GetName() + " uses " + myTextureTag->GetName());  
        myTextureList.push_back(myTextureTag);  
    }  
}  

Platform:
Cinema 8.5
Visual Studio .NET 2003
Windows XP SP2

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 27/04/2005 at 09:49, xxxxxxxx wrote:

Alright I solved it. The TEXTURETAG_RESTRICTION can be accessed using

  
const DescLevel myLevel(TEXTURETAG_RESTRICTION);  
const DescID myId(myLevel);  
GeData myData;  
myTextureTag->GetParameter(myId, myData, 0);  
String myRestriction = myData.GetString();