Can anyone suggest a robust way of enforcing a rule to be evaluated during a model update?
Using onCreate works fine for the initial Part creation, but doesn't get fired for any subsequent updates (changes to parameters etc) Fiddling with renderself sort of works but is there a better way?
There really isn't such a thing as "update" in the pure sense. What update means is usually evaluation of Root.RenderSelf. All other things that happen are based on whether rule values are demanded and have already been cached or not.
Thus, it is possible that "update" does "nothing", because nothing demanded by Root.Renderself, or anything it depends on, has changed. But, as a corollary, if you want to do something every time Root.Renderself is called, you can create an Uncached rule that Root.Renderself depends on.
If this doesn't answer your question, by all means reply with some more detail.
It sounds like the "modify" Dynamic Rule Reactors might be what you are looking for. See the ETO Help Wiki pages for Dynamic Rule Reactors (formerly "Intent events") to see if they can do what you are seeking.
Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register
Start with some of our most frequented solutions to get help installing your software.
Upgrading to a 2015 product? Make sure to check these out 1st!
Created by the community for the community, Autodesk Exchange Apps for Autodesk Inventor helps you achieve greater speed, accuracy, and automation from concept to manufacturing.