Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 20/09/2008 at 13:52, xxxxxxxx wrote:
User Information: Cinema 4D Version: 10.5 Platform: Windows ; Language(s) : C++ ;
--------- Hi all, here my new, hope no stupid, question i need to read all parameter of an lighr objectm o know some object like this don't store settings in container , and to work on this side i must to use ->GetParameter..... is there a way to read in sequence all light description? or have anyone some experience on this? i'm serching something like a recursive workaround in description.
Thanks Franz
On 21/09/2008 at 08:11, xxxxxxxx wrote:
nothing anyone ? Franz
On 22/09/2008 at 03:51, xxxxxxxx wrote:
You could browse through the whole objects description, something like this:
> \> Bool MenuTest::Execute(BaseDocument \*doc) \> { \> StopAllThreads(); \> \> BaseObject \*op = doc->GetActiveObject(); \> if(!op) return TRUE; \> \> AutoAlloc<Description> desc; \> if(!desc) return FALSE; \> \> if(!op->GetDescription(desc, 0)) return FALSE; \> \> void \*bh = NULL; \> \> bh = desc->BrowseInit(); \> if(!bh) return FALSE; \> \> const BaseContainer \*bc = NULL; \> DescID id, groupid; \> GeData data; \> \> while(desc->GetNext(bh, &bc;, id, groupid)) \> { \> const BaseContainer \*dbc = desc->GetParameterI(id,NULL); \> if(dbc) GePrint("Name: "+dbc->GetString(DESC_NAME)); \> \> if(op->GetParameter(id, data, 0)) \> { \> //data is the description data \> GePrint("Type: "+LongToString(data.GetType())); \> } \> } \> \> desc->BrowseFree(bh); \> \> return TRUE; \> } \>
\> Bool MenuTest::Execute(BaseDocument \*doc) \> { \> StopAllThreads(); \> \> BaseObject \*op = doc->GetActiveObject(); \> if(!op) return TRUE; \> \> AutoAlloc<Description> desc; \> if(!desc) return FALSE; \> \> if(!op->GetDescription(desc, 0)) return FALSE; \> \> void \*bh = NULL; \> \> bh = desc->BrowseInit(); \> if(!bh) return FALSE; \> \> const BaseContainer \*bc = NULL; \> DescID id, groupid; \> GeData data; \> \> while(desc->GetNext(bh, &bc;, id, groupid)) \> { \> const BaseContainer \*dbc = desc->GetParameterI(id,NULL); \> if(dbc) GePrint("Name: "+dbc->GetString(DESC_NAME)); \> \> if(op->GetParameter(id, data, 0)) \> { \> //data is the description data \> GePrint("Type: "+LongToString(data.GetType())); \> } \> } \> \> desc->BrowseFree(bh); \> \> return TRUE; \> } \>
cheers, Matthias
On 25/09/2008 at 06:43, xxxxxxxx wrote:
hello Matthias, sorry fo late reply ,thank you very muth now i understand. Best Franz