You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Following #5488 it seems that some features of AEDT started to fail when updating some AEDT object properties.
For example, previously it was possible to update the motor steel type of an Rmxprt instance with rmxprt.rotor["Steel Type"] = "steel_1008". While I feel like this was a "side effect" of the exception handling in
, it was still allowing users to write user friendly changes.
This is no longer working as the recent changes no longer trigger the exception and lead to executing aedt_object.SetPropValue("Steel Type", "steel_1008"). While this call returns True, it doesn't update the object correctly as calling aedt_object.GetPropValue("Steel Type") returns ['Not Assigned']. A workaround fixing that is to update the code to rmxprt.rotor["Steel Type"] = ["Material:=", "steel_1008"] which is not really great from a user point of view.
My question is thus, would it make sense to add some lines of code to handle such behavior ? Ofc, we need to figure out which other properties might be affected and if this behavior also applies to AEDT 25.1
Another thing I wanted to mentioned is how properties are accessed from some objects. Using the rotor as an illustration, one has to call rmxprt.rotor.properties.properties to get the properties in a dictionary format while rmxprt.rotor.properties returns a BinaryTreeNode. What about updating the code to directly returning the BinaryTreeNode properties instead of leaving that extra task to the user ?
Description of the current limitations
Following #5488 it seems that some features of AEDT started to fail when updating some AEDT object properties.
For example, previously it was possible to update the motor steel type of an Rmxprt instance with
rmxprt.rotor["Steel Type"] = "steel_1008"
. While I feel like this was a "side effect" of the exception handling inpyaedt/src/ansys/aedt/core/modeler/cad/elements_3d.py
Line 1430 in 84a7b79
This is no longer working as the recent changes no longer trigger the exception and lead to executing
aedt_object.SetPropValue("Steel Type", "steel_1008")
. While this call returnsTrue
, it doesn't update the object correctly as callingaedt_object.GetPropValue("Steel Type")
returns['Not Assigned']
. A workaround fixing that is to update the code tormxprt.rotor["Steel Type"] = ["Material:=", "steel_1008"]
which is not really great from a user point of view.My question is thus, would it make sense to add some lines of code to handle such behavior ? Ofc, we need to figure out which other properties might be affected and if this behavior also applies to AEDT 25.1
Another thing I wanted to mentioned is how properties are accessed from some objects. Using the
rotor
as an illustration, one has to callrmxprt.rotor.properties.properties
to get the properties in a dictionary format whilermxprt.rotor.properties
returns aBinaryTreeNode
. What about updating the code to directly returning theBinaryTreeNode
properties instead of leaving that extra task to the user ?Pinging @maxcapodi78 @Samuelopez-ansys @gmalinve for visibility
Code sample expected
NTBD
Useful links and references
No response
The text was updated successfully, but these errors were encountered: