python plugins ObjectData how can use the doc ?

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

On 03/01/2011 at 02:05, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   12 
Platform:   Windows  ;   
Language(s) :       PYTHON  ;

---------
Hi everyone this my first post i try use in plugins.ObjectData i want take the doc becuase i want take the time frame in this example  `` i know this dosen't work correct ``class MyMain(plugins.ObjectData) :
 def GetVirtualObjects(self, op, hh) :
   **doc=documents.GetActiveDocument()** # <- maybe need change this ? Time=doc.GetTime() Frame=Time.GetFrame(doc.GetFps()) print Frame if Frame==0:return c4d.Ocube ``   if Frame==10:return c4d.Ocone
`   if Frame==20:r:return c4d.OSphere
return None

the problem is here ``doc=documents.GetActiveDocument() dosen't work correct in render
  i think i need something like this to use **ObjectData. AddToExecution( _self_ , _op_ , _list_ ) ObjectData.Execute`( self , op , doc , bt , priority , flags )**
here i have doc 🙂

but i don't know how to use this

any idea ?

Thank you

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

On 03/01/2011 at 04:05, xxxxxxxx wrote:

Hi and Welcome to PluginCafe.com. Please try this:

doc=op.GetDocument()

Cheers, Sebastian

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

On 03/01/2011 at 04:28, xxxxxxxx wrote:

Thank you Very Much Sebastian now understand what i did wrong
doc=op.GetDocument()  ->  so this Returns the document where the object is stored in .
and work fine now  !

Thank you again !!!!

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

On 03/01/2011 at 04:38, xxxxxxxx wrote:

Just want to add that GetActiveDocument returns only the opened editable document. The renderer, except viewport rendering, uses a clone of this document. This is why GetActiveDocument will return the wrong document during rendering.

cheers,
Matthias

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

On 03/01/2011 at 05:03, xxxxxxxx wrote:

Hi just i want to ask something i found now
whe i use

doc1=documents.GetActiveDocument()
  doc2=op.GetDocument()
  print doc1.GetFps()
  print doc2.GetFps()

the doc1 work fine but if i use doc2 like op.GetDocument() say error

i do something wrong ?
i use in

def Init(self, op) :
 because i want to install my vaules and one is c4d.BaseTime

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

On 03/01/2011 at 15:52, xxxxxxxx wrote:

In Init(..) the object is not in the document yet.

obj=c4d.BaseObject(YOUR_PLUGIN_ID) #internal call of the constructor and Init(..) afterwards
doc.InsertObject(obj) #here op is connected with the doc

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

On 04/01/2011 at 01:55, xxxxxxxx wrote:

ok thank you very much for clear this 😉