Skip to content

Commit 1e6da26

Browse files
jacobrkerstetterpre-commit-ci[bot]pyansys-ci-bot
authored
fix: change find split edges default (#2361)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: pyansys-ci-bot <[email protected]>
1 parent 248d376 commit 1e6da26

File tree

4 files changed

+35
-9
lines changed

4 files changed

+35
-9
lines changed

doc/changelog.d/2361.fixed.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Change find split edges default

src/ansys/geometry/core/_grpc/_services/v0/repair_tools.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,12 +65,21 @@ def find_split_edges(self, **kwargs) -> dict: # noqa: D102
6565
# Create the request - assumes all inputs are valid and of the proper type
6666
request = FindSplitEdgesRequest(
6767
bodies_or_faces=kwargs["bodies_or_faces"],
68-
angle=DoubleValue(value=float(from_measurement_to_server_angle(kwargs["angle"]))),
69-
distance=DoubleValue(
70-
value=float(from_measurement_to_server_length(kwargs["distance"]))
68+
angle=(
69+
DoubleValue(value=float(from_measurement_to_server_angle(kwargs["angle"])))
70+
if kwargs["angle"] is not None
71+
else None
72+
),
73+
distance=(
74+
DoubleValue(value=float(from_measurement_to_server_length(kwargs["distance"])))
75+
if kwargs["distance"] is not None
76+
else None
7177
),
7278
)
7379

80+
print("distance:", request.distance)
81+
print("angle:", request.angle)
82+
7483
# Call the gRPC service
7584
response = self.stub.FindSplitEdges(request)
7685

src/ansys/geometry/core/tools/repair_tools.py

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,8 @@ def __init__(self, grpc_client: GrpcClient, modeler: "Modeler", _internal_use: b
9999
def find_split_edges(
100100
self,
101101
bodies: list["Body"],
102-
angle: Angle | pint.Quantity | Real = 0.0,
103-
length: Distance | pint.Quantity | Real = 0.0,
102+
angle: Angle | pint.Quantity | Real = None,
103+
length: Distance | pint.Quantity | Real = None,
104104
) -> list[SplitEdgeProblemAreas]:
105105
"""Find split edges in the given list of bodies.
106106
@@ -112,9 +112,9 @@ def find_split_edges(
112112
bodies : list[Body]
113113
List of bodies that split edges are investigated on.
114114
angle : Angle | ~pint.Quantity | Real
115-
The maximum angle between edges.
115+
The maximum angle between edges. By default, None.
116116
length : Distance | ~pint.Quantity | Real
117-
The maximum length of the edges.
117+
The maximum length of the edges. By default, None.
118118
119119
Returns
120120
-------
@@ -127,9 +127,17 @@ def find_split_edges(
127127
body_ids = [body.id for body in bodies]
128128

129129
# Convert the measurement objects
130-
angle = angle if isinstance(angle, Angle) else Angle(angle)
131-
length = length if isinstance(length, Distance) else Distance(length)
130+
angle = angle if isinstance(angle, Angle) else Angle(angle) if angle is not None else None
131+
length = (
132+
length
133+
if isinstance(length, Distance)
134+
else Distance(length)
135+
if length is not None
136+
else None
137+
)
132138

139+
print("angle:", angle)
140+
print("length:", length)
133141
response = self._grpc_client.services.repair_tools.find_split_edges(
134142
bodies_or_faces=body_ids, angle=angle, distance=length
135143
)

tests/integration/test_repair_tools.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,14 @@ def test_find_split_edges(modeler: Modeler):
4848
problem_areas = modeler.repair_tools.find_split_edges(design.bodies, 25, 150)
4949
assert len(problem_areas) == 3
5050

51+
# Try with default values
52+
problem_areas = modeler.repair_tools.find_split_edges(design.bodies)
53+
assert len(problem_areas) == 3
54+
55+
# Try with values that yield no results
56+
problem_areas = modeler.repair_tools.find_split_edges(design.bodies, 0, 0)
57+
assert len(problem_areas) == 0
58+
5159

5260
def test_find_split_edge_id(modeler: Modeler):
5361
"""Test whether problem area has the id."""

0 commit comments

Comments
 (0)