-
Hello, Lately I've stumbled upon an issue I haven't yet found a workaround for and I'd like to know if this issue is related to my environment or if this is something inherent to the way build123d and opencascade operate. As described in #805 I am trying to add fillets to the extrusion of an SVG path and this currently fails with this kind of message: Traceback (most recent call last):
File "/models/./blob.py", line 20, in <module>
fillet(blob.edges().group_by(Axis.Z)[-1], radius=1)
File "/opt/build123d/lib/python3.12/site-packages/build123d/operations_generic.py", line 426, in fillet
new_part = target.fillet(radius, list(object_list))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/build123d/lib/python3.12/site-packages/build123d/topology.py", line 991, in fillet
fillet_builder.Add(radius, native_edge)
OCP.gp.gp_VectorWithNullMagnitude: I have tried with different SVG paths, fillet/chamfer radius, edge selections, it doesn't seem to help. So has anybody stumbled upon this |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 7 replies
-
If you create for instance a 2cm chamfer on 4cm wide face, the produced face will be 0 cm wide and OCP doesn't like that. You can check if it works with smaller chamfer. Sometimes I use an epsilon variable to avoid this problem: EPSILON = 0.01
# ...
box = _.chamfer(box.edges()[0], chamfer_size - EPSILON) |
Beta Was this translation helpful? Give feedback.
-
As you can see working with SVG files can be quite difficult. Is there a limitation to the build123d line drawing capabilities that is causing you to go to SVG? |
Beta Was this translation helpful? Give feedback.
Try https://build123d.readthedocs.io/en/latest/import_export.html#importers.import_svg_as_buildline_code. It will generate the first draft of the code that you can edit to remove the weirdness.