From 604a764a6fdc5f0fb2dc523ca48dbe4450dfc308 Mon Sep 17 00:00:00 2001 From: marioalexis Date: Mon, 30 Dec 2024 17:56:55 -0300 Subject: [PATCH] Fem: Use property constraints on mesh netgen object --- src/Mod/Fem/femobjects/mesh_netgen.py | 70 +++++++++++++-------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/src/Mod/Fem/femobjects/mesh_netgen.py b/src/Mod/Fem/femobjects/mesh_netgen.py index 9d7048a4d9..ec9f5e9067 100644 --- a/src/Mod/Fem/femobjects/mesh_netgen.py +++ b/src/Mod/Fem/femobjects/mesh_netgen.py @@ -77,11 +77,11 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="OptimizationSteps3d", group="Mesh Parameters", doc="Number of 3d optimization steps", - value=3, + value={"value": 3, "min": 0}, ) ) prop.append( @@ -98,11 +98,11 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="OptimizationSteps2d", group="Mesh Parameters", doc="Number of 2d optimization steps", - value=3, + value={"value": 3, "min": 0}, ) ) prop.append( @@ -134,20 +134,20 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="Safety", group="Mesh Parameters", doc="Radius of local environment (times h)", - value=5.0, + value={"value": 5.0, "min": 0, "step": 0.1}, ) ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="RelinnerSafety", group="Mesh Parameters", doc="Radius of active environment (times h)", - value=3.0, + value={"value": 3.0, "min": 0, "step": 0.1}, ) ) prop.append( @@ -170,11 +170,11 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="GrowthRate", group="Mesh Parameters", doc="Grading for local h", - value=0.3, + value={"value": 0.3, "min": 0, "step": 0.1}, ) ) prop.append( @@ -215,11 +215,11 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="CloseEdgeFactor", group="Mesh Parameters", doc="Factor to restrict meshing based on close edges", - value=2.0, + value={"value": 2.0, "min": 0, "step": 0.1}, ) ) prop.append( @@ -260,29 +260,29 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="CurvatureSafety", group="Mesh Parameters", doc="Safety factor for curvatures (elements per radius)", - value=2.0, + value={"value": 2.0, "min": 0, "step": 0.1}, ) ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="SegmentsPerEdge", group="Mesh Parameters", doc="Minimal number of segments per edge", - value=2.0, + value={"value": 2.0, "min": 0, "step": 0.1}, ) ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="ElementSizeWeight", group="Mesh Parameters", - doc="Weight of element size respect to element shape", - value=0.2, + doc="Weight of element size respect to element shape", + value={"value": 0.2, "min": 0, "step": 0.1}, ) ) @@ -316,47 +316,47 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="GiveUpTolerance2d", group="Mesh Parameters", doc="Give up quality class, 2d meshing", - value=200, + value={"value": 200, "min": 0}, ) ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="GiveUpTolerance", group="Mesh Parameters", doc="Give up quality class, 3d meshing", - value=10, + value={"value": 10, "min": 0}, ) ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="GiveUpToleranceOpenQuads", group="Mesh Parameters", doc="Give up quality class, for closing open quads, greater than 100 for free pyramids", - value=15, + value={"value": 15, "min": 0}, ) ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="MaxOuterSteps", group="Mesh Parameters", doc="Maximal outer steps", - value=10, + value={"value": 10, "min": 0}, ) ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="StarShapeClass", group="Mesh Parameters", doc="Class starting star-shape filling", - value=5, + value={"value": 5, "min": 0}, ) ) prop.append( @@ -370,20 +370,20 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="Sloppy", group="Mesh Parameters", doc="Quality tolerances are handled less careful", - value=10, + value={"value": 10, "min": 0}, ) ) prop.append( _PropHelper( - type="App::PropertyFloat", + type="App::PropertyFloatConstraint", name="BadElementLimit", group="Mesh Parameters", doc="Limit for max element angle (150-180)", - value=175, + value={"value": 175, "min": 0}, ) ) prop.append( @@ -424,11 +424,11 @@ class MeshNetgen(base_fempythonobject.BaseFemPythonObject): ) prop.append( _PropHelper( - type="App::PropertyInteger", + type="App::PropertyIntegerConstraint", name="ElementOrder", group="Mesh Parameters", doc="High order element curvature", - value=False, + value={"value": 1, "min": 1}, ) ) prop.append(