* 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>
* added ellipse
* removed unused math imports
* added method ellipseArc and adapted method ellipse to circle
* introduced sense for ellipse building
* adapted ellipse test cases
* exclude vscode config folder
* use gp_Ax2(p, zdir, xdir) for ellipse building
* ran black against the changes
* Fix docstring of makeEllipse
Co-Authored-By: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>
* Fix return value in docstring of makeEllips
Co-Authored-By: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>
* Formatting fix
* Increase test coverage
* Formatting fixes
* Add test for makeEllipse
* Test fix
* Formatting + typo fix
Co-authored-by: Bernhard <bwalter42@gmail.com>
Co-authored-by: Adam Urbańczyk <adam-urbanczyk@users.noreply.github.com>
- This is _totally_ experimental, and I haven't done exhaustive
tests
- 88 unit tests do pass though, and I added a new import test.
- 0.12 and 0.13 seem to structure stuff a bit differently,
probably due to changes in the FreeCAD lib wrappers.
- Not tested on windows (but should work) or 0.12. Need some
help there.