Commit Graph

93 Commits

Author SHA1 Message Date
8d2c0b90c2 Black 19.10 fix 2021-02-18 11:02:55 +10:30
ff0b123889 Test periodic splines with parameters 2021-02-18 10:38:49 +10:30
6f5f0cc984 Validate Edge.makeSpline parameters for periodic splines 2021-02-18 10:38:36 +10:30
b5e4aa940f Validate Edge.makeSpline parameters input 2021-02-18 07:20:40 +10:30
9efe66c482 Fix Unit Test after Rename of spline() Parameter tolerance to tol
* Fixed the `testSplineTangentMagnitudeBelowToleranceThrows` unit test. It was failing since `spline()`'s parameter `tolerance` seems to have been renamed to `tol`.
2021-02-17 14:02:27 -05:00
bec5036d34 Additional test for spline 2021-02-17 18:04:29 +01:00
172ae85c01 Put Spline scale Parameter Tests Cases Together
* Moved the tests cases, so they're next to each other.
* Added a comment about the relationship between the two test cases.
2021-02-17 06:06:34 -05:00
59c7283dbc Reformat Code with black 19.10b
* Reformatted the code with `black` 19.10b. This is the version that's used by the Travis continuous integration check. The default version of `black` that comes with Conda is 20.8b1, which produces different formatting.

<environment.yml> should be updated to require the specific version of `black` used to check code before it's merged.
2021-02-14 18:40:39 -05:00
1caae595ed Add Support for Specifying Arbitrary Tangents, etc. to spline()
* Added support for specifying the tangents at arbitrary interpolation
points when interpolating a B-spline curve with `Workplane.spline()`.

* Added support for specifying whether the tangents should be
automatically scaled. (I.e., only use the tangent vector directions,
rather than their magnitudes.)

* Added support for specifying the value of the curve function
parameter at the interpolation points.

* Added support for specifying the interpolator's tolerance value.

Q: _There are a number of whitespace, and other formatting changes
introduced by `black`. Is there a specific list of parameters that you
use when running code formatting?_
2021-02-14 06:33:24 -05:00
0d96f63e94 Merge pull request #569 from RubenRubens/boolean
Boolean operation syntactic sugar
2021-02-12 12:04:57 -05:00
4f820109ed + operator test 2021-02-11 08:23:50 +01:00
b6beba7cb1 Centered option (#617)
* Added 2d centered option to rect

* Added single bool center option to box

* Add single bool center option to sphere

* Added single bool center option to wedge

* Added 2d centered option to rarray

* Black fix

* Centered docstrings

Change all docstrings for centered options to be consistent and more
clear

* Docstring fixes

* Fix type hint on wedge method
2021-02-10 18:02:43 +01:00
be851aa98b Added tests for wedge centering 2021-02-01 20:51:27 +10:30
490f2720e6 fix .rect calls in tests 2021-01-30 21:39:03 +10:30
3348c18889 cutThruAll fix for non-planar faces (#604)
* reworked cutThruAll to support non-planar faces

* Added test
2021-01-26 08:49:15 +01:00
583a46b78e Use __or__ & __and__ 2021-01-16 10:58:51 +01:00
33286c2a60 Add syntactic sugar for boolean operations 2021-01-07 15:42:24 +01:00
ac585b4ff1 Add glue option to combine() (#535)
* Update cq.py

Add glue option to combine()

* Update test_cadquery.py

Add test of glue=True to combine()

* Update test_cadquery.py

update testcombine()

* Update cq.py

Reformat combine()

* Reformat Black

* Update test_cadquery.py

Added tol=None to testCombine()

* Update test_cadquery.py

Correct testCombine()

* Update test_cadquery.py

* Update test_cadquery.py

* Update test_cadquery.py

Black formatting

* Update test_cadquery.py
2020-12-11 08:56:06 +01:00
a03648c842 Change to ProjectedOrigin (#532)
* Change to ProjectedOrigin

* Fix most tests

* Fix remaining tests

* Fix example building

* Update selector docs

* Fix the bottle+formatting changes

* Renamed centered to xycentered

* Ignore utils for coverage calculation
2020-12-08 18:32:57 +01:00
cf275b0ec0 Constraints docs [WIP] (#524)
* Initial version of the constraints docs

* Adding the assy section

* apireference cleanup

* Include cutouts

* Roadmap cleanup

* _query cleanup

* Black fix

* Add RadiusNthSelector again

* Typo fix

* Paste error fix

* Show detailed selector docs

* Another typo fix

* Mention other constrain overload

* Added test for end()
2020-11-30 13:41:34 +01:00
b22436c59e Implement tag based constraint definition (#514)
* Refactor tags

* Use pyparsing for query parsing and implement tags

* Black and mypy fixes

* Allow "_" in names and tags

* Added tests

* Fixed constrain with tag test

* Better docstring for _query

* Typo fix
2020-11-24 17:46:21 +01:00
28d6089527 Expose mode for sweep operations. (#496)
* Expose mode for sweep operations

* Additional sweep functionality

* Fix sweep in cq

* Expose the new sweep args in Workplane

* fixed aux spine handling

* sweep test with a fixed normal

* Test aux spine sweep

* Added more tests

* Reformat sweep docs
2020-11-10 16:51:11 +01:00
65f9608f54 Implement locations() for Wires (#475)
* Implement locations() for Wires

* Fix errors

* Test for locations on a wire

* Refactored Mixin1D

* Mypy fixes and more refactoring

* black fix

* Moved _geomAdaptor to concrete classes

* Add positionAt

* Added positions()

* positions() and positionAt() test

* Better tests

* Extended tangentAt and added docstrings

* Test for tangentAt

* Fixed defects

* Doc fix attempt

* Use autoclass on Mixins

* specify full name in sphinx
2020-10-30 22:31:51 +01:00
cac5cf92f1 Create a child workplane on a vertex (#480)
* add parent face detection to workplane()

* Update cq.py

* add nonetype check and tests

* fixed test formatting

* mypy fix attempt

Co-authored-by: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>
2020-10-15 21:10:49 +02:00
3a50edd27d Merge pull request #453 from cactrot/fontPath
Font path
2020-10-14 11:42:33 -04:00
292a0d8d0a Merge pull request #440 from CadQuery/assembly
Assembly support
2020-10-01 06:48:06 -04:00
32f25f7164 rarray: bound spacings to greater than 0 (#454)
* rarray: bound spacings to greater than 0
This addresses Issue 451

* Fix a typo. (#452)

* Fix a typo.

* Pin black version in travis

Co-authored-by: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>

* rarray: bound spacings to greater than 0
This addresses Issue 451

* Added test for rarray error handling

Co-authored-by: Kevin Menard <kevin@nirvdrum.com>
Co-authored-by: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>
2020-09-27 17:05:04 +02:00
a1bb80741c Update test_cadquery.py
Check for non-existent file instead of trying to use it and possibly segfaulting.
2020-09-26 07:26:38 -04:00
26de7bc9c2 Update test_cadquery.py
Changed directory to point to test data.
2020-09-24 13:29:59 -04:00
00a1329c2e Update test_cadquery.py
Perhaps the call to os.path.join will allow the tests to run.
2020-09-22 21:48:26 -04:00
8dd1038226 Update test_cadquery.py
Try pulling a valid path from elsewhere in the file.
2020-09-22 17:25:20 -04:00
31d4a4f79a Update test_cadquery.py
Try just the current directory.
2020-09-22 17:08:16 -04:00
f934f45bf7 Update test_cadquery.py
Trying Unix style path.
2020-09-22 16:49:21 -04:00
6b2df42ed6 Update test_cadquery.py
Add test for "text" using fontPath keyword argument.
2020-09-22 16:36:58 -04:00
f914815019 Fixed normal test 2020-09-11 23:54:23 +02:00
dd863bdbc5 Added test for normal 2020-09-11 20:25:48 +02:00
8efb8ac338 Expose intersection joint type for shell 2020-07-24 08:41:13 +02:00
66ea7b859f Formatting and test 2020-07-23 19:55:14 +02:00
a8707cecc0 Implement locationAt (#404)
* Initial implementation of locationAt

* Added tests
2020-07-15 08:57:50 +02:00
8fc0e2173e Added test for consolidateWires 2020-07-10 18:49:13 +02:00
6990e9523a Initial offset2D implementation. 2020-07-10 17:54:56 +02:00
cf791f5fe6 Extended tests for polarArray 2020-07-09 18:26:09 +02:00
48c75cff3c Local rotation + test fixes 2020-07-09 18:16:17 +02:00
2b653887fe Implemented fully closed shelling (#394) 2020-07-08 22:11:24 +02:00
9808ccea9b Type annotations for shapes (#391)
* Started annotating shapes

* shapes pass mypy check

* Mypy completely green on CQ

* Safer downcast

* Added additonal test
2020-07-06 22:35:47 +02:00
cf860a961c Do not add plane center to objects 2020-06-23 18:18:33 +02:00
9dc94d35f2 Added tests for move(d) and locate(d) 2020-06-22 22:36:43 +02:00
191d78d558 Test fixes 2020-06-17 21:04:54 +02:00
7f333cd81a Added test for fuzzy bool op 2020-06-05 17:26:37 +02:00
db4dba44ee Test the compound fuse path 2020-06-05 17:13:13 +02:00