Ethan Rooke
056efe6961
test: export_brep works with BytesIO
2024-11-15 14:49:43 -06:00
Ethan Rooke
7b7c2e07b1
test: mesher works with pathlike objects
2024-11-15 14:49:42 -06:00
Ethan Rooke
28b82b85aa
test: importers work with all pathlike arguments
2024-11-15 14:49:42 -06:00
Ethan Rooke
f7f60f1e13
test: 2d exporters work with pathlike options
2024-11-15 14:49:41 -06:00
Ethan Rooke
30d23d8669
test: 3d exporters work with all types of paths
2024-11-15 14:49:41 -06:00
Ethan Rooke
69cdabcc72
feat: support Path objects for import / export
...
For all import / export methods make the path a `Union[Pathlike, str, bytes]`
argument to follow python conventions as outlined in pep 519
2024-11-15 14:49:40 -06:00
Ethan Rooke
8c3f8922a5
fix: avoid date.today() as default arg
...
Having a function call as a default argument causes the function to be called
once (upon declaration) which leads to confusing behavior. Instead we pass in
`None` and call `date.today()` in the function body.
2024-11-13 21:51:36 -06:00
Roger Maitland
a353d3e776
Merge pull request #771 from Jojain/dev
...
Added thicken and new split tools
2024-11-10 20:43:31 -05:00
Romain FERRU
63ca9311ce
typo
2024-11-08 22:19:06 +01:00
Romain FERRU
4fad571781
black on test file
2024-11-08 22:18:09 +01:00
Romain FERRU
80acfa3e0d
Added thicken and new split tools
2024-11-08 21:25:17 +01:00
Roger Maitland
5633c5fc8c
Merge pull request #764 from dalibor-frivaldsky/756-constructing-plane-from-planar-faces
...
Plane instantiation from planar Geom_BoundedSurface faces Issue #756
2024-11-08 15:19:20 -05:00
Roger Maitland
7ae50261ac
Merge pull request #767 from Jojain/dev
...
Added Shell.loft
2024-11-08 14:49:06 -05:00
Romain FERRU
8fd5a6775e
added > 2 vertices test
2024-11-08 20:29:20 +01:00
gumyr
60029d81d5
Attributes kept after boolean operation Issue#318
2024-11-08 14:18:52 -05:00
Romain FERRU
2a00c1e454
ran black at 88 char per line
2024-11-08 20:18:12 +01:00
Romain FERRU
e28ffb04c2
refactored loft at direct api level
2024-11-07 20:38:31 +01:00
Dalibor Frívaldský
89c29abd07
Test code simplificatoin for Issue #756
2024-11-07 17:40:51 +01:00
Dalibor Frívaldský
e588107bcb
Extended test coverage for Issue #756
2024-11-07 14:37:47 +01:00
gumyr
f3fa230c52
Enhancing Triangle Issue#765
2024-11-06 20:53:50 -05:00
gumyr
0b4b2b2b54
Improved algebra +,-,& operators Issue #752
2024-11-06 13:50:20 -05:00
gumyr
9fb163cb64
Adding Compound.first_level_shapes to extract objects
2024-11-05 11:53:51 -05:00
Dalibor Frívaldský
e3fdefd4bb
Plane instantiation from planar Geom_BoundedSurface faces Issue #756
2024-11-05 15:15:29 +01:00
gumyr
c7a8529c24
Added Face.is_planar property Issue #756
2024-11-04 14:37:22 -05:00
gumyr
5ed149925e
Updating split_by_perimeter & minor docs fixes
2024-10-28 12:01:13 -04:00
gumyr
8a91db674a
Adding split_by_perimeter Issue #751
2024-10-27 11:15:36 -04:00
gumyr
19b15f3d13
Merge branch 'dev' of https://github.com/gumyr/build123d into dev
2024-10-20 12:01:26 -04:00
gumyr
7be2eb1d97
Added Face as an option to split PR#427
2024-10-20 12:01:16 -04:00
jdegenstein
93ad244271
Merge pull request #732 from erooke/test-version
...
test: check that exporter.library is >= 2.3.1 not == 2.3.1
2024-10-15 12:49:51 -05:00
jdegenstein
e2434d7777
Merge pull request #704 from jdegenstein/numpy2
...
Upgrade build123d to numpy >=2, <3
2024-10-10 15:53:15 -05:00
Ethan Rooke
b31c9e9634
test: check that exporter.library is >= 2.3.1 not == 2.3.1
2024-10-08 22:42:37 -05:00
gumyr
b81fecd8dc
Added tuple as valid input to Color Issue #727
2024-10-07 10:13:32 -04:00
gumyr
cf1f869d7d
Added tuple as valid input to Color Issue #727
2024-10-07 10:12:56 -04:00
gumyr
f1a9c58900
Fixed split with nested Compounds Issue #698
2024-10-04 11:40:25 -04:00
gumyr
04cf1efd89
Fixed param_at_point Issues #570 & #708
2024-10-02 15:44:10 -04:00
Roger Maitland
720bee9fa0
Merge pull request #707 from alexer/fix-eq
...
Fix __eq__ and __ne__ for classes implementing them
2024-09-22 10:10:13 -04:00
Aleksi Torhamo
acbebfb017
Fix __eq__ and __ne__ for classes implementing them
...
Main issue, which concerns Vector, Location, and ShapeList:
Comparison with an object of a different type should not cause an
exception - they are simply not equal. Raising an exception in __eq__
can (and will*) break unrelated code that expects __eq__ to be well-behaved.
(* I noticed this bug when cq-editor choked on it while trying to find
a name for an object in a dictionary of local variables)
There's a second more minor issue, which concerns the rest of the classes:
When the other type in __eq__ is not supported, one should technically
return NotImplemented instead of False, to allow the other type to take
part in the comparison, in case they know about our type.
(__ne__ should also not generally be implemented as just the negation of
__eq__ because of this, but that's also a moot point because the __ne__
can just be removed - Python will automatically do the right thing based
on __eq__ here)
Technically, the __eq__ for Vector and Plane is also broken in another way:
It's not transitive.
>>> a, b, c = Vector(0), Vector(9e-6), Vector(18e-6)
>>> a == b == c
True
>>> a == c
False
They should really eg. have a separate is_close() for approximate comparison,
but this isn't fixed here, since I have no idea how many places it'd break,
for one.
2024-09-22 08:07:00 +03:00
gumyr
043629ec87
Enhanced offset to allow holes to grow outside of the Face Issue #702
2024-09-20 11:29:19 -04:00
Roger Maitland
debdf845bf
Merge pull request #695 from danieledapo/dev
...
Fix thicken normal calculation when no override is provided
2024-09-19 14:33:21 -04:00
jdegenstein
025d0727a3
test_exporters3d.py -> fix deprecation warning on regex
2024-09-19 13:23:59 -05:00
gumyr
99b378f27a
Added Compound.unwrap & Compound.len as part of fix of Issue#694
2024-09-19 14:13:50 -04:00
Daniele D'Orazio
82f3dd8011
fix normal_override overwrite in thicken
2024-09-19 09:23:01 +02:00
gumyr
88a40574a8
Added Shell.sweep Issue #622
2024-09-07 11:31:10 -04:00
Daniele D'Orazio
dfb1cee937
more position_at tests
2024-08-30 17:43:29 +02:00
Daniele D'Orazio
8527fe8664
fix location_at, position_at and tangent_at with PositionMode.LENGTH for Wire
2024-08-30 17:16:35 +02:00
jdegenstein
7f8223b50d
test_direct_api.py -> reenable test that fail(ed) on MacOS arm64
2024-08-29 13:29:06 -05:00
gumyr
347de4277d
Disabling test that fails only on Arm Macs
2024-08-29 11:57:33 -04:00
gumyr
722165dc25
Fixed Wire.trim Issue #676
2024-08-29 11:47:21 -04:00
gumyr
3d0cdcf4e1
Adding support for Windows
2024-08-21 15:41:03 -04:00
gumyr
fd4b16b529
Fixed step import of assembly Issue #671
2024-08-21 15:16:24 -04:00