RESOLVED - Python not updated wn/ starting in perform

Hello,

Could be related to the Python optimization happening with the new build:

  • when starting a file in perform mode, it appears that some of the python expressions related to the UI / position are not executed fully - or in a correct order ? -.
  • some of those expressions, when related to some other comp, are with wrong values.
  • doing a force cook updates the position and the values are now the one expected.

You will find an attached TOE to illustrate the problem and screenshots explaining what to look for.

Hope it helps !
Thank you for your time !





TestPythonOnPerform.toe (7.44 KB)

Thanks,
We’re having a look.

The issue is that the layout engine is detecting recursive evaluations in some of your expressions.

Namely, the panel X, Y, W, H parameters are referencing their own final sizes (me.x, me.y, me.width, me.height).
These latter values are not necessarily one-to-one with the parameter values, but can use several different inputs in their final calculation, leading to the recursion issues.

Instead of me.height, you can safely use me.par.h for example, if that is your intention.

Overall though, you should consider using the built in panel layout options, such as aligning children with margins, and avoiding the need for hand-tailored expressions altogether.

This will avoid the recursion errors you are seeing, and provide much speedier interaction.

Please let us know if that helps address these issues.

Cheers,
Rob.

Hi Rob,

Thanks for the answer.

I did, in the end, solved the whole thing by using the built in panel layout options. Works great ! Was not sure on why the python expressions were not working though, so posted it thinking it could be a bug.

Sorry if it took some of your time, and thanks for clarifying things.

Have a good day,
Michel

You were right to post.
The layout engine should ultimately be refined to work around these near self-referencing functions without issue.

Cheers,
Rob.