IsDirty and GetDirty

On 04/07/2014 at 02:57, xxxxxxxx wrote:

I like to check using a plugin or a script, whether the object has changed.
IsDirty is not giving me any information, so I use GetDirty and check whether that value has changed.
That is ok when in Model mode, but when in Polygon mode, the value returned by GetDirty is not changed when I move a polygon?
DIRTY_MATRIX and the others are all returning the same value.

How to check whether a polygon has moved, scaled or rotated?

import c4d
from c4d import gui
  
def main() :
    obj = doc.SearchObject("Cube")
    print "--- IsDirty ---"
    print "Get DIRTY_MATRIX", obj.GetDirty(c4d.DIRTY_MATRIX) 
    print "Get DIRTY_SELECT: ", obj.GetDirty(c4d.DIRTY_SELECT)
    print "Get DIRTY_CACHE: ", obj.GetDirty(c4d.DIRTY_CACHE)
    print "Get DIRTY_CHILDREN: ", obj.GetDirty(c4d.DIRTY_CHILDREN)   
    
if __name__=='__main__':
    main()
  

On 04/07/2014 at 04:54, xxxxxxxx wrote:

IsDirty() should be used for Generator plugins only.
You know there is another one, DIRTYFLAGS_DATA, right? This one is changed
when the polygons or points changed of an object.

Best,
-Niklas