Commit graph

2361 commits

Author SHA1 Message Date
Jonathan Wagenet
c384df21c7 Intersect: dissolve Wire, Shell after intersection, no need to process 0d, 1d separately 2025-11-14 13:31:40 -05:00
Jonathan Wagenet
68f6ef2125 Convert intersect to use _bool_op and split Wire after intersect 2025-11-14 13:26:17 -05:00
Jonathan Wagenet
3877fd5876 Ignore orderless Shapes in _bool_op 2025-11-14 12:58:46 -05:00
Jonathan Wagenet
b049e6a8ce Merge branch 'dev' into intersections-2d (fix import conflict) 2025-10-29 13:49:49 -04:00
Jonathan Wagenet
3713574519 Remove xfail notes from issue tests 2025-10-29 13:02:31 -04:00
Jonathan Wagenet
5d7b098379 Correct mode == Mode.INTERSECT to iterate intersections instead of pass all in to_intersect
Shape.intersect(A, B) through BRepAlgoAPI_Common appears to treat tool as a single object such that intersection is Shape ^ (A + B). The updated intersect methods treat this intersection as Shape ^ A ^ B. The intersections in this change need to be interated to accomadate.
2025-10-29 00:16:02 -04:00
Jonathan Wagenet
069b691964 Conform Shape.intersect to None | ShapeList 2025-10-28 23:56:29 -04:00
Jonathan Wagenet
315605f485 Correct area/volume calculations from intersect with new return type of ShapeList 2025-10-28 23:45:29 -04:00
Jonathan Wagenet
c13ef47cef Correct ex26 by revolving 180 and removing mirror which creates invalid shape 2025-10-28 23:33:29 -04:00
Jonathan Wagenet
a7b554001f Add intersect method to Compound, similar to 2d and 3d 2025-10-24 22:37:28 -04:00
Jonathan Wagenet
cfd4546585 Add Compound tests 2025-10-24 22:36:56 -04:00
gumyr
696e99c889 Improving Face creation - fix inner Wires
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-24 18:34:11 -04:00
gumyr
70310ddd4a Shortened and removed CQ reference
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-23 14:34:11 -04:00
gumyr
3942c32804 Merge branch 'dev' of https://github.com/gumyr/build123d into dev 2025-10-23 13:51:01 -04:00
gumyr
a649fab27c Improving attribution 2025-10-23 13:50:50 -04:00
jdegenstein
72e89b7b1d
Merge pull request #1097 from jdegenstein/deprecate_arcs
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
Deprecate some Arcs (e.g. ArcArcTangentArc)
2025-10-21 12:40:50 -05:00
jdegenstein
b509ef5761
Merge branch 'dev' into deprecate_arcs 2025-10-21 12:31:27 -05:00
Jonathan Wagenet
fb324adced Add 2d and 3d multi to_intersect cases, exception cases 2025-10-21 12:57:03 -04:00
jdegenstein
86624f576d
Merge pull request #1111 from jdegenstein/rtd_tab_title
.readthedocs.yaml -> fix tab title version on dev version builds
2025-10-21 10:12:43 -05:00
jdegenstein
96ce15a1e1
.readthedocs.yaml -> fix tab title version on dev version builds 2025-10-21 09:49:24 -05:00
gumyr
453f676882 Adding points to trim
Some checks are pending
benchmarks / benchmarks (macos-14, 3.12) (push) Waiting to run
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Waiting to run
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Waiting to run
benchmarks / benchmarks (windows-latest, 3.12) (push) Waiting to run
Upload coverage reports to Codecov / run (push) Waiting to run
pylint / lint (3.10) (push) Waiting to run
Run type checker / typecheck (3.10) (push) Waiting to run
Run type checker / typecheck (3.13) (push) Waiting to run
Wheel building and publishing / Build wheel on ubuntu-latest (push) Waiting to run
Wheel building and publishing / upload_pypi (push) Blocked by required conditions
tests / tests (macos-14, 3.10) (push) Waiting to run
tests / tests (macos-14, 3.13) (push) Waiting to run
tests / tests (macos-15-intel, 3.10) (push) Waiting to run
tests / tests (macos-15-intel, 3.13) (push) Waiting to run
tests / tests (ubuntu-latest, 3.10) (push) Waiting to run
tests / tests (ubuntu-latest, 3.13) (push) Waiting to run
tests / tests (windows-latest, 3.10) (push) Waiting to run
tests / tests (windows-latest, 3.13) (push) Waiting to run
2025-10-20 18:50:14 -04:00
Jonathan Wagenet
c7bf48c80c Add intersect methods to Mixin2D and Mixin3D
These methods are very similar using a branching structure to pick intersection method.
2025-10-20 17:59:19 -04:00
gumyr
d66e22655e Adding missing spitfile file
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-19 15:37:32 -04:00
gumyr
4a32cedcd2 Updating surface modeling docs 2025-10-19 15:31:47 -04:00
gumyr
283767f69d Cached color lookups 2025-10-19 11:29:21 -04:00
Jonathan Wagenet
99da8912df Add 2d and 3d intersection tests 2025-10-17 11:45:11 -04:00
gumyr
52b2883fca Merge branch 'dev' into tangents
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-17 11:28:51 -04:00
gumyr
1368513956 make_constrained_lines working 2025-10-17 11:15:08 -04:00
Roger Maitland
0862ac4fe6
Merge pull request #1106 from gongfan99/gordon_surface_intersect
fix: gradient error in gordon surface intersect
2025-10-17 09:19:19 -04:00
Fan Gong
b097455505 fix: single point only allowed at start and end
modified:   pyproject.toml
	modified:   src/build123d/topology/two_d.py
	modified:   tests/test_direct_api/test_face.py
2025-10-16 22:25:14 -04:00
Fan Gong
bd03fcbdb4 fix: remove minor artifact
modified:   tests/test_direct_api/test_face.py
2025-10-13 11:53:37 -04:00
Fan Gong
acfe5fde8a fix: no need to check wrapped for Vector class
modified:   src/build123d/topology/two_d.py
2025-10-13 11:44:02 -04:00
Fan Gong
02d7be83b1 feat: allow a single point to be used as either a profile or a guide
modified:   pyproject.toml
	modified:   src/build123d/topology/two_d.py
	modified:   tests/test_direct_api/test_face.py
2025-10-13 11:19:21 -04:00
Fan Gong
198dab0ab4 fix: gradient error in gordon surface intersect
modified:   pyproject.toml
2025-10-11 17:04:46 -04:00
gumyr
32c1322370 99% coverage on constrained lines
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-09 11:37:24 -04:00
gumyr
a12961cfff Merge branch 'dev' into tangents 2025-10-08 09:51:17 -04:00
gumyr
c4ccfb141f Adding missing test
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-06 13:46:23 -04:00
gumyr
f67cc12c34 Adding Airfoil 1D object 2025-10-06 13:42:46 -04:00
Roger Maitland
d905bddc3c
Merge pull request #1101 from gongfan99/gordon_surface
Some checks are pending
benchmarks / benchmarks (macos-14, 3.12) (push) Waiting to run
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Waiting to run
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Waiting to run
benchmarks / benchmarks (windows-latest, 3.12) (push) Waiting to run
Upload coverage reports to Codecov / run (push) Waiting to run
pylint / lint (3.10) (push) Waiting to run
Run type checker / typecheck (3.10) (push) Waiting to run
Run type checker / typecheck (3.13) (push) Waiting to run
Wheel building and publishing / Build wheel on ubuntu-latest (push) Waiting to run
Wheel building and publishing / upload_pypi (push) Blocked by required conditions
tests / tests (macos-14, 3.10) (push) Waiting to run
tests / tests (macos-14, 3.13) (push) Waiting to run
tests / tests (macos-15-intel, 3.10) (push) Waiting to run
tests / tests (macos-15-intel, 3.13) (push) Waiting to run
tests / tests (ubuntu-latest, 3.10) (push) Waiting to run
tests / tests (ubuntu-latest, 3.13) (push) Waiting to run
tests / tests (windows-latest, 3.10) (push) Waiting to run
tests / tests (windows-latest, 3.13) (push) Waiting to run
fix: make_gordon_surface supports all edge types
2025-10-05 18:33:53 -04:00
Fan Gong
a00ae674ae fix: make_gordon_surface supports all edge types
fix: upgrade ocp_gordon to make intersect stable
	modified:   pyproject.toml
	modified:   src/build123d/topology/two_d.py
	modified:   tests/test_direct_api/test_face.py
2025-10-05 08:14:25 -04:00
Roger Maitland
0ca0598907
Merge pull request #1099 from gongfan99/gordon_surface
Some checks failed
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (macos-15-intel, 3.10) (push) Has been cancelled
tests / tests (macos-15-intel, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
feat: add Gordon surface implementation and test
2025-10-03 10:28:31 -04:00
Fan Gong
3bd4b39b0a fix: minor adjust to test_make_gordon_surface
modified:   tests/test_direct_api/test_face.py
2025-10-02 22:37:39 -04:00
Fan Gong
b3cec27cfb fix: add test for ValueError for gordon surface
modified:   tests/test_direct_api/test_face.py
2025-10-02 22:32:41 -04:00
Fan Gong
925d12ff7c fix: change function name to make_gordon_surface
fix: change the test name accordingly
fix: corrected the type error for Edge.wrapped
fix: change min version of ocp_gordon to 0.1.12
	modified:   pyproject.toml
	modified:   src/build123d/topology/two_d.py
	modified:   tests/test_direct_api/test_face.py
2025-10-02 21:01:28 -04:00
jdegenstein
1af4b0c312
Merge pull request #1100 from jdegenstein/mac15-intel
Some checks are pending
benchmarks / benchmarks (macos-14, 3.12) (push) Waiting to run
benchmarks / benchmarks (macos-15-intel, 3.12) (push) Waiting to run
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Waiting to run
benchmarks / benchmarks (windows-latest, 3.12) (push) Waiting to run
Upload coverage reports to Codecov / run (push) Waiting to run
pylint / lint (3.10) (push) Waiting to run
Run type checker / typecheck (3.10) (push) Waiting to run
Run type checker / typecheck (3.13) (push) Waiting to run
Wheel building and publishing / Build wheel on ubuntu-latest (push) Waiting to run
Wheel building and publishing / upload_pypi (push) Blocked by required conditions
tests / tests (macos-14, 3.10) (push) Waiting to run
tests / tests (macos-14, 3.13) (push) Waiting to run
tests / tests (macos-15-intel, 3.10) (push) Waiting to run
tests / tests (macos-15-intel, 3.13) (push) Waiting to run
tests / tests (ubuntu-latest, 3.10) (push) Waiting to run
tests / tests (ubuntu-latest, 3.13) (push) Waiting to run
tests / tests (windows-latest, 3.10) (push) Waiting to run
tests / tests (windows-latest, 3.13) (push) Waiting to run
Move from macos-13 (x86_64) to macos-15-intel (also x86_64) for relevant workflows
2025-10-02 16:52:51 -05:00
jdegenstein
bde1ee08a9
benchmark.yml -> macos-15-intel 2025-10-02 12:16:51 -05:00
jdegenstein
9a7c9493d3
test.yml -> move to macos-15-intel 2025-10-02 12:16:29 -05:00
Fan Gong
64267ab3f7 feat: add Gordon surface implementation and test
modified:   pyproject.toml
	modified:   src/build123d/topology/two_d.py
	modified:   tests/test_direct_api/test_face.py
2025-10-01 22:10:19 -04:00
gumyr
6ac2e67a2e Fixed typing problems
Some checks failed
benchmarks / benchmarks (macos-13, 3.12) (push) Has been cancelled
benchmarks / benchmarks (macos-14, 3.12) (push) Has been cancelled
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Has been cancelled
benchmarks / benchmarks (windows-latest, 3.12) (push) Has been cancelled
Upload coverage reports to Codecov / run (push) Has been cancelled
pylint / lint (3.10) (push) Has been cancelled
Run type checker / typecheck (3.10) (push) Has been cancelled
Run type checker / typecheck (3.13) (push) Has been cancelled
Wheel building and publishing / Build wheel on ubuntu-latest (push) Has been cancelled
tests / tests (macos-13, 3.10) (push) Has been cancelled
tests / tests (macos-13, 3.13) (push) Has been cancelled
tests / tests (macos-14, 3.10) (push) Has been cancelled
tests / tests (macos-14, 3.13) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.10) (push) Has been cancelled
tests / tests (ubuntu-latest, 3.13) (push) Has been cancelled
tests / tests (windows-latest, 3.10) (push) Has been cancelled
tests / tests (windows-latest, 3.13) (push) Has been cancelled
Wheel building and publishing / upload_pypi (push) Has been cancelled
2025-10-01 19:13:51 -04:00
gumyr
59a6e3623f Fixing docstring & angle calculation
Some checks are pending
benchmarks / benchmarks (macos-13, 3.12) (push) Waiting to run
benchmarks / benchmarks (macos-14, 3.12) (push) Waiting to run
benchmarks / benchmarks (ubuntu-latest, 3.12) (push) Waiting to run
benchmarks / benchmarks (windows-latest, 3.12) (push) Waiting to run
Upload coverage reports to Codecov / run (push) Waiting to run
pylint / lint (3.10) (push) Waiting to run
Run type checker / typecheck (3.10) (push) Waiting to run
Run type checker / typecheck (3.13) (push) Waiting to run
Wheel building and publishing / Build wheel on ubuntu-latest (push) Waiting to run
Wheel building and publishing / upload_pypi (push) Blocked by required conditions
tests / tests (macos-13, 3.10) (push) Waiting to run
tests / tests (macos-13, 3.13) (push) Waiting to run
tests / tests (macos-14, 3.10) (push) Waiting to run
tests / tests (macos-14, 3.13) (push) Waiting to run
tests / tests (ubuntu-latest, 3.10) (push) Waiting to run
tests / tests (ubuntu-latest, 3.13) (push) Waiting to run
tests / tests (windows-latest, 3.10) (push) Waiting to run
tests / tests (windows-latest, 3.13) (push) Waiting to run
2025-10-01 11:55:42 -04:00