RDATA_NAME ?



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

    On 22/08/2004 at 13:55, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   8.500 
    Platform:   Windows  ;   
    Language(s) :   C.O.F.F.E.E  ;

    ---------
    Hi there,
    could anybody about the "RDATA_NAME" container id inside the RenderData class. It seems not to work in 8.5 COFFEE. Can I get the the name of those render settings witch can be reachable inside the actual document class? 
    thank you
    fuxy



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

    On 23/08/2004 at 09:29, xxxxxxxx wrote:

    In 8.5 the RenderData objects are true BaseList2D's, so in C++ you can get the name with GetName(). However, the C.O.F.F.E.E. model doesn't reflect this -- there's no such member -- so it's doesn't seem possible to get the name.



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

    On 23/08/2004 at 10:02, xxxxxxxx wrote:

    Thank you Mikael.
    Im not too happy. :(
    Let's go to C++.



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

    On 30/08/2004 at 23:19, xxxxxxxx wrote:

    Hi Mikael,
    I tried to rewrite COFFEE code in VC++, but it happened what I was affraid.
    I have no experiences in C++ an I'm a poor architect some delphi practise so I will haven't too much practise in the future (i think :) ).
    I don't know the right way to create new RenderData object and copy into a BaseContainer data from existing RenderData.
    I would like to duplicate the selected render settings. 
    You can see the different codes. the coffee codes works properly except the GetName() function, the C++ codes works properly except the duplicate BaseContainer data :)))
    the COFFEE code:

        
        
         
        
        
        
        
        var bc3;  
         var ind;  
         var i;  
         var count;  
         var render;
        
        
        
        
         var newbc = new(BaseContainer);  
         var newrender = new(RenderData);
        
        
        
        
         doc = GetActiveDocument();  
         render = doc->GetFirstRenderData();
        
        
        
        
         render->GetContainer()->CopyTo(newbc);
        
        
        
        
         newbc->SetData(RDATA_NAME,"FX created");  
         newrender->SetContainer(newbc);
        
        
        
        
         doc->InsertRenderData(newrender, NULL);
        
        
        
    

    The C++ code

        
        
        
        
         BaseContainer bc;  
         BaseContainer newbc;  
         RenderData    *rdata;  
         RenderData    *newrdata;  
         BaseDocument  *doc;
        
        
        
        
         doc = GetActiveDocument();  
         rdata = doc->GetFirstRenderData();
        
        
        
        
         name = "Copy of_" + rdata->GetName();  
         bc = rdata->GetData();  
           
         newrdata = rdata->Alloc();  
         newbc = BaseContainer();  
           
         newbc = bc();  
         newrdata->SetName(name);  
         newrdata->SetData(newbc,TRUE); 
        
        
        
        
         doc->InsertRenderData(newrdata,NULL);
        
        
        
    

    thank you.
    bye
    Fuxy



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

    On 02/09/2004 at 01:57, xxxxxxxx wrote:

    This is one way to do it:

        
        
        if (doc)  
        {  
          RenderData* rd = doc->GetFirstRenderData();  
          if (rd)  
          {  
            RenderData* newrd = static_cast<RenderData*>(rd->GetClone(0, NULL));  
            if (newrd)  
            {  
              newrd->SetName("Copy of " + rd->GetName());  
              doc->InsertRenderData(newrd, rd);  
              EventAdd();  
            }  
          }  
        }
    


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

    On 02/09/2004 at 02:16, xxxxxxxx wrote:

    Thanks a lot Mikael. It works now.

    bye
    fuxy


Log in to reply