Commit Graph

1629 Commits

Author SHA1 Message Date
8e23195a34 Implement close for wires 2021-03-31 19:17:20 +02:00
df550f071a Merge pull request #704 from CadQuery/assy-selectors-fix
Use expression grammar for assy selectors
2021-03-29 07:02:00 -04:00
650b2fff7c Update cadquery/cq.py
Co-authored-by: Marcus Boyd <mwb@geosol.com.au>
2021-03-29 08:19:30 +02:00
179b964514 Update tests/test_assembly.py
Co-authored-by: Marcus Boyd <mwb@geosol.com.au>
2021-03-29 08:08:28 +02:00
2c8a8520ee added tests for Shape.split 2021-03-29 10:45:18 +10:30
6615c2a495 black fix 2021-03-29 09:29:01 +10:30
7fe44b02c7 Test Edge.close 2021-03-29 07:02:49 +10:30
55ba8ca5eb Test Workplane.split error when no side kept 2021-03-29 07:00:43 +10:30
82136e4ee7 Another black fix 2021-03-28 12:48:35 +02:00
58a61812c6 Black fix 2021-03-28 12:22:33 +02:00
c72f0838e0 Check if complex selectors works with assy 2021-03-28 12:07:08 +02:00
e9453557f8 Use _expression_grammar 2021-03-27 23:36:14 +01:00
cd3f1c823e Make parametricSurface domain square 2021-03-26 08:41:06 +01:00
64b7048ee1 Rework Workplane.split to support arbitrary shapes 2021-03-25 18:19:36 +01:00
5af6171058 Added cq.Shape.split 2021-03-24 19:30:17 +01:00
c0aaa485f7 Implement Workplane.splineApprox 2021-03-23 18:37:02 +01:00
e82c7c3a9f Implement Edge.close 2021-03-23 08:42:04 +01:00
68dba0ad89 Extend coverage 2021-03-22 19:36:23 +01:00
6d3c9e51a7 Merge pull request #699 from CadQuery/typeselector-docstring-fix
Update the typeselector docstring
2021-03-21 20:12:18 -04:00
1d3fc576cb typo fix 2021-03-21 20:34:51 +01:00
6097d453ad Add paramatricSurface to the docs 2021-03-21 18:47:10 +01:00
8c15d18514 Implement parametricSurface 2021-03-21 18:44:31 +01:00
e8fc71bb4f Update the typeselector docstring 2021-03-21 14:53:28 +01:00
50bada403f Added tests for Face.makeSplineApprox 2021-03-19 22:32:38 +01:00
86fe2f37b7 First version of Face.makeSplineApprox 2021-03-19 17:57:14 +01:00
54831144a2 test for makeSplineApprox 2021-03-18 19:50:05 +01:00
bb32f93c63 Merge pull request #696 from CadQuery/marcus7070/kill-appveyor-3.6
Drop Python 3.6 and add 3.8 to AppVeyor
2021-03-18 06:43:58 -04:00
ab1427d47c Merge pull request #695 from fedorkotov/master
Docstring and error message fixes
2021-03-18 06:42:46 -04:00
cd1be11b39 Expose min/max degree and adjust tol 2021-03-18 08:59:30 +01:00
6544e665b2 Rolled back invalid spellchecker correction unioned ->unironed 2021-03-18 10:50:25 +03:00
e73c6be51c Adjust travis too 2021-03-18 08:11:25 +01:00
94bb9ccfd2 Remove appveyor Python 3.9
It's not in the image yet
2021-03-18 12:16:04 +10:30
2a6994c492 Use appveyor 2019 image for Conda Python >=3.8 2021-03-18 11:52:44 +10:30
e1b08c5416 Drop Python 3.6 and add 3.8 & 3.9 to AppVeyor 2021-03-18 11:12:03 +10:30
37880359c8 Docstring and error message fixes 2021-03-18 00:05:21 +03:00
ff4a708a57 Use the approx spline in parametricCurve 2021-03-17 18:45:34 +01:00
44bdc42a01 Remove the periodic input 2021-03-17 18:21:28 +01:00
9fb4f4a20b Initial implementation of MakeSplineApprox 2021-03-17 08:55:30 +01:00
d5ce1321ca Added AreaNthSelector (#688)
* Added AreaNthSelector

Added AreaNthSelector that is useful for nested features selection. Especially to select one of coplanar nested wires for subsequent extrusion, cutting or filleting.

* LengthNthSelector

* Explicitly marked _NthSelector class and _NthSelector.key(..) method as abstract using standard abc package

* AreaNthSelector ignores "bad" Wires

AreaNthSelector.key raises ValueError if temporary face creation fails for a wire for any reason (non-planar, non-closed). That causes _NthSelector that it inherits to ignore such wires. Done so for consistency with RadiusNthSelector that ignores anything it can not get radius from.

Co-authored-by: Marcus Boyd <mwb@geosol.com.au>
2021-03-17 14:14:37 +10:30
731122e5b0 Start building CQ for py3.9 (#672)
* Try building for py3.9

* Naming and whitespace fix

* Syntax fix

* Try newer conda build

* Start using 18.04 and get rid of py3.6
2021-03-16 22:16:21 +01:00
af815669d3 Issue templates (#687)
* Issue templates

* Require full conda list

Co-authored-by: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>
2021-03-16 22:15:52 +01:00
a9e867061a Doc fix
Fixed two broken links in the OCCT bottle example.
2021-03-15 16:52:30 +10:30
a54de640ff Improve Inheriting Workplane Fluent Methods (#677)
* Return Instances of the Type of self from Fluent Methods

* Updated `Workplane.workplane()`, `Workplane.copyWorkplane()`, `Workplane.newObject()` to return instances of a type that's based on the input parameters (such as `self`).
* Updated type hints to reflect that return types of fluent methods depend on the type of method arguments.
* Added a unit test to verify fluent methods in a derived class return instances of the derived class.

* Fix Workpane MyPy Errors

* Fixed type hints in `sweep()` and `_selectObjects()`.

* Fix `test_cadquery.py` Formatting

* Ran `black` on `test_cadquery.py`.

* Renamed `TypeVar` `WorkplaneT` to `T`

* Renamed `WorkplaneT` to `T` in `cq.py`.

* Reformat with Black

* Re-formatted `cq.py` with `black`.

* Re-format with the Right Version of Black (19.10b0)

* Re-formatted `cq.py` with `black` 19.10b0.
2021-03-12 07:34:54 +01:00
5542816447 2D fillet chamfer (#683)
* Implement 2D chamfers and fillets

* Implement 2D chamfer/fillet tests

Co-authored-by: Marcus Boyd <mwb@geosol.com.au>
2021-03-12 07:05:56 +10:30
f0308ce3f0 Merge pull request #678 from marcus7070/getPending
popPendingEdges and Wires
2021-03-10 05:43:25 -05:00
ceea71d7f3 Merge pull request #679 from marcus7070/deprecate-findFace
Deprecate Workplane.findFace
2021-03-10 05:42:00 -05:00
d7e7812c4c Merge branch 'master' into getPending 2021-03-10 08:54:27 +01:00
48deb19b68 Initial implementation of CompSolid 2021-03-10 13:14:38 +10:30
156b7a20fd Deprecate Workplane.findFace 2021-03-08 15:40:48 +10:30
7be6070534 Use popPending methods 2021-03-08 14:22:47 +10:30