THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 03/12/2004 at 11:53, xxxxxxxx wrote:
Cinema 4D Version: 9
Platform: Windows ;
Language(s) : C++ ;
I have a problem with a plug that get like a argument a external spline.
The plugin is a standard deformer that use the spline as link to deform object.
When i modify spline points or global matrix , the plugin don't refresh.
ps. sorry for english, i hope that someone understand what i mean.
On 05/12/2004 at 03:54, xxxxxxxx wrote:
you have to overload the CheckDirty function. More info in the SDK docs.
On 05/12/2004 at 04:00, xxxxxxxx wrote:
in SDK i see:
You can overload this function to check for a change in a deformer object manually. This example will make your deformer update every frame.
Can i overload this function to see if a spline is change?
On 05/12/2004 at 04:09, xxxxxxxx wrote:
yes, you could use GetDirty() to check if the checksum changed.
On 05/12/2004 at 04:35, xxxxxxxx wrote:
THANSK! IT WORK!
On 05/12/2004 at 05:26, xxxxxxxx wrote:
good luck with your plugin.
On 05/12/2004 at 05:40, xxxxxxxx wrote:
Thanks, but there are some little things that i must verify.
With old scene this seem not work, with a fresh scene it's working.
Maybe that i wrong.
void PathDeformer::CheckDirty(PluginObject* op, BaseDocument* doc)
BaseContainer *data = op->GetDataInstance();
if (spline->IsDirty(DIRTY_DATA) )
else GePrint ("damn!");
what do you think?
On 05/12/2004 at 06:01, xxxxxxxx wrote:
I wouldn´t do it with isDirty but with GetDirty()!
Create a private member in your object class, sth like:
then use something like (pseudo-code) :
ULONG dirty_bit = spline->GetDirty(DIRTY_DATA|DIRTY_MATRIX);
s_dirty = dirty_bit;
/*Or DIRTY_DATA depending on when your deformer updates*/
On 05/12/2004 at 06:23, xxxxxxxx wrote:
Ok, now it work... it will work, must test