How to set plastic limits of support, through C# API? [SOLVED]

Hi

How can I set plastic limits of a point support, through C#? Any examples?

Thanks

Hi @mmdn :wave:

Try to do the following :slight_smile:
The idea is to follow the .struxml file format to navigate throught the properties.

Let me know if it works for you!

// create a new one
var pointSupport = new PointSupport(Plane.XZ, Releases.Motions.RigidPoint(), Releases.Rotations.RigidPoint());
pointSupport.Group.Rigidity.PlasticLimitForces = new Releases.MotionsPlasticLimits(0, 0, 0, 0, 0, 0);
pointSupport.Group.Rigidity.PlasticLimitMoments = new Releases.RotationsPlasticLimits(0, 0, 0, 0, 0, 0);

// modify the existing one
model.Entities.Supports.PointSupport[0].Group.Rigidity.PlasticLimitForces = new Releases.MotionsPlasticLimits(0, 0, 0, 0, 0, 0);

Hi Marco

Thanks a lot! This works

I was trying to go through pointSupport.MotionsPlasticityLimits rather than pointSupport.Group.Rigidity

I have had a double check on our code and, to be fair, you are totally right.
For some reason, the Rigidity objects are only getter and it is a little bit confusing.

        public Motions Motions { get { return Group?.Rigidity?.Motions; } }
        public MotionsPlasticLimits MotionsPlasticityLimits { get { return Group?.Rigidity?.PlasticLimitForces; } }
        public Rotations Rotations { get { return Group?.Rigidity?.Rotations; } }
        public RotationsPlasticLimits RotationsPlasticityLimits { get { return Group?.Rigidity?.PlasticLimitMoments; } }

As a general rule, you can always follow the .struxml file format as a documentation to navigate through the properties. :slight_smile: