Commit graph

745 commits

Author SHA1 Message Date
Garth Minette
8c2d06344f Added center=, anchor=, spin=, and orient= to function linear_sweep() 2020-10-19 22:51:35 -07:00
Garth Minette
41ab991c15 Fixed bad spheroid() regression. 2020-10-15 19:21:36 -07:00
Garth Minette
2bf6c34564 Fixed spheroid() orig and aligned styles. 2020-10-15 19:14:14 -07:00
Garth Minette
4fc03b18e6 Added mate_teeth= and apex named anchor to bevel_gear() 2020-10-14 15:37:56 -07:00
Garth Minette
775e0c4c48 Fixed bevel_gear() so that complementary gears will mesh. 2020-10-13 22:32:20 -07:00
Garth Minette
a53c77f83e Fix for #295 2020-10-09 10:31:56 -07:00
Garth Minette
8451f23b7c Fix trapezoid example. 2020-10-07 23:03:09 -07:00
Garth Minette
29ed649740 Added angle= and shift= to trapezoid() 2020-10-07 22:50:05 -07:00
Garth Minette
a36eec5297 Added align_tip/align_side to regular_ngon()/star(). 2020-10-07 16:53:52 -07:00
Garth Minette
b22c5a0cfe Bugfixes for looping helpers. 2020-10-06 18:48:39 -07:00
Garth Minette
8b922f7a15 Fixed Looping Helpers docs formatting. 2020-10-06 13:48:14 -07:00
Garth Minette
0cd34406a3 Documented looping helpers. 2020-10-06 01:41:39 -07:00
Garth Minette
4633422272 Fixed involute gear examples and docs. 2020-10-04 23:10:32 -07:00
Garth Minette
74de24bbce Speed optimizations for incompletely rounded cuboid()s. 2020-10-04 21:07:16 -07:00
Garth Minette
38873d8ef9 Fixed a bunch of docs errors with Usage headers. 2020-10-03 20:29:35 -07:00
Garth Minette
16ee49e8b2 Fixed a bunch of undef math warnings with dev snapshot OpenSCAD builds. 2020-10-03 19:50:29 -07:00
Garth Minette
e3ccf482fa Make list functions make more sense with strings. 2020-09-28 19:12:07 -07:00
Garth Minette
cc29e07d8f Enable list-of-matrix use of vmul(). 2020-09-28 17:35:05 -07:00
Garth Minette
23bcc1b806 Removed sum_of_squares() as it's redundant with sqr(vector) 2020-09-28 16:56:18 -07:00
Garth Minette
37ae0cbba0 Simplify sqr(x) to x*x 2020-09-28 16:52:17 -07:00
Garth Minette
a730887366 Fixed line_of(n=1,...), improved docs. 2020-09-28 00:25:40 -07:00
Garth Minette
1435100e37 Implemented Issue #262 2020-09-25 00:31:42 -07:00
Garth Minette
f193871a34 Implement fix for issue #174. 2020-09-25 00:01:45 -07:00
Garth Minette
4f88775ef9 Changed circle_point_tangents() to return just a list of 2D tangent points. 2020-09-24 17:09:06 -07:00
Garth Minette
45dbfe6524 Added regressions for torx_drive.scad 2020-09-24 15:59:25 -07:00
Garth Minette
c400843cb2 Added regressions for vnf_centroid() and vnf_volume() 2020-09-23 19:38:22 -07:00
Garth Minette
eb969bba7e hull, quaternion, and edges regressions. 2020-09-22 20:33:50 -07:00
Garth Minette
e86af33f52 Fixed xcyl() and ycyl() anchoring and attachments. 2020-09-22 00:24:39 -07:00
Garth Minette
5bfd3bee4d Added axis= to attachable() and reorient(). 2020-09-22 00:22:48 -07:00
Garth Minette
4f3baccec7 Added corner_edges() 2020-09-22 00:21:12 -07:00
Garth Minette
197167225d Added bounding_cube() and minkowski_difference() 2020-09-13 21:50:39 -07:00
Garth Minette
b2121fbfb3 Added all_nonzero(). Added is_vector(all_nonzero=). 2020-09-07 23:10:39 -07:00
Garth Minette
a9b8f5618a Fix for Issue #263 2020-09-06 17:15:08 -07:00
Garth Minette
8331d8e803 Cheat Sheet ordering tweak. 2020-09-01 01:23:01 -07:00
Garth Minette
cb36b5d94f Bugfixes for cheat sheet generation. 2020-09-01 00:54:27 -07:00
Garth Minette
38a4c12032 Cheat Sheet generation script bugfixes. 2020-08-31 18:03:48 -07:00
Garth Minette
7c42c7f5e3 Added libfile names to index. 2020-08-31 17:31:55 -07:00
Garth Minette
5d2c45bba0 Merge branch 'master' of github.com:revarbat/BOSL2 into revarbat_dev 2020-08-28 19:19:04 -07:00
Garth Minette
e1b0985afc Fixed broken line-plane intersections. Attachment enhanced vnf_polyhedron(). 2020-08-28 19:07:10 -07:00
Garth Minette
7051f8ef19 Fixed cheatsheet index link. 2020-08-28 00:06:28 -07:00
Garth Minette
e344de4aa4 Added cheat-sheet generation script. 2020-08-27 22:29:11 -07:00
Adrian Mariano
c1782f1113 added no_children checks, and attachable to vnf_polyhedron 2020-08-27 19:25:41 -04:00
Garth Minette
dba5aab918 Implement Issue #2. Added diameter alternates for most radius options. 2020-08-26 20:39:45 -07:00
Garth Minette
b679ea52dc Add is_zero(), is_positive(), is_negative(), is_nonpositive(), is_nonnegative(). 2020-08-26 18:02:16 -07:00
Garth Minette
90e02ad7a4 Fix for #243. Added better docs and asserts to rot() 2020-08-26 15:59:35 -07:00
Garth Minette
5e981fb4a7 Added tests for path3d() and path4d() with fille= 2020-08-18 19:25:05 -07:00
Garth Minette
ee86544a81 Added excess= argument to most mask modules. 2020-08-18 19:09:26 -07:00
Garth Minette
7daa16f238 Fixed VNF attachment normal vector. 2020-08-17 18:11:49 -07:00
Garth Minette
25841bda73 Fixed attachable() anchors for vnf's with extent=false. 2020-08-16 23:10:43 -07:00
Garth Minette
c465a5b746 cuboid() with negative chamfer had mispositioned anti-chamfers. 2020-08-16 23:09:59 -07:00
Garth Minette
e56f953c1c Fixed calls to vmul() with heteerogenous vector sizes. 2020-08-02 23:23:50 -07:00
Garth Minette
6064dcbed0 Fix list_remove() for null index list. 2020-07-29 22:39:17 -07:00
Garth Minette
aa0e77b1f4 Minor fixes for PR #216 2020-07-29 21:58:12 -07:00
Garth Minette
b5d465cf1e docs_gen.py now shows more docs errors. 2020-07-27 15:15:34 -07:00
Garth Minette
6798083a11 Added shape_compare() 2020-07-21 16:54:59 -07:00
Garth Minette
4a37a5dc8e Added zero=undef/true/false arg to is_vector. Bugfix for vector_axis() 2020-07-21 16:15:02 -07:00
Garth Minette
ae1a6d8d61 Rewrote line_closest_point() and segment_closest_point() to support 3D. Added ray_closest_point(). 2020-07-19 23:07:49 -07:00
Garth Minette
375f1f2e3b Bugfix for new unit() in affine_frame_map() 2020-07-19 23:05:54 -07:00
Garth Minette
87c8adef65 Bad use of unit() in debug_polyhedron() 2020-07-19 06:24:16 -07:00
Garth Minette
14e013cd13 Bugfix for unit() changes in attachment 2020-07-19 05:49:05 -07:00
Garth Minette
598ae04ba5 Tighten image comparison requirements. 2020-07-19 05:39:49 -07:00
Garth Minette
0be0708c2b Changed unit(dflt=) to unit(error=) 2020-07-11 23:23:12 -07:00
Garth Minette
dde616dad5 unit() now asserts error for zero-length vector unless dflt= arg is given. 2020-07-10 00:03:55 -07:00
Garth Minette
34e16dc0ca Fixed skin regression. 2020-07-07 21:21:05 -07:00
Garth Minette
30d2f5ae8c Don't error out action when no file changes to commit. 2020-07-07 00:54:39 -07:00
Garth Minette
65cdecaf54 Tweak github action triggers. 2020-07-07 00:32:50 -07:00
Garth Minette
d8d5321c26 Added docsgen github action. 2020-07-07 00:08:42 -07:00
Garth Minette
feba482396 Optimizations for is_vector(), is_matrix(). Added is_finite(). 2020-07-06 18:28:35 -07:00
Garth Minette
efa76fe9f5 Added cp= to attachable. Added "origin" standard named anchor. 2020-07-06 17:07:20 -07:00
Garth Minette
78ecbbd9c5 Added regression for centroid() 2020-07-06 16:15:32 -07:00
Garth Minette
e319bf934f Added CONTRIBUTING.md 2020-07-06 15:19:03 -07:00
Garth Minette
8b6e07326f Added regressions for linear_bearings.scad and shapes.scad 2020-07-04 21:42:39 -07:00
Garth Minette
f60ef80eaa Added regressions for is_matrix(), matrix_inverse() 2020-07-04 00:38:40 -07:00
Garth Minette
3ec34ce9f1 Added regresstions for cube(), cylinder(), and sphere() 2020-07-04 00:14:25 -07:00
Garth Minette
8985837b63 Added regression for debug.scad 2020-07-03 18:00:37 -07:00
Garth Minette
a718b66026 Added regressions for missing common.scad functions. 2020-07-03 17:42:08 -07:00
Garth Minette
ed0a3e3e7b Added regressions for set functions and force_list() 2020-07-03 15:23:03 -07:00
Garth Minette
4ebe89661a Enhanced force_list() with n= and fill= 2020-07-03 15:22:21 -07:00
Garth Minette
7045f436a1 Fixed inverted endcap1 in stroke() 2020-07-01 00:59:32 -07:00
Garth Minette
74723f32f5 Added regressions for shapes2d.scad 2020-06-30 17:19:09 -07:00
Garth Minette
7f5257fefb Allow running single test scripts. 2020-06-30 17:18:33 -07:00
Garth Minette
62b54e4ef3 Fixed typo in subdivide_path() docs. 2020-06-24 23:32:59 -07:00
Revar Desmera
a3207af6ab Added a bunch of regressions for shapes2d.scad 2020-06-24 22:33:41 -07:00
Revar Desmera
38b45544ee Fixed octahedral triangulated spheroid(). 2020-06-23 04:40:36 -07:00
Revar Desmera
70b72dd3ac Added octa style for spheroid(). 2020-06-23 00:38:31 -07:00
Revar Desmera
1a7bfb687f Added mutator.scad mutators. 2020-06-22 22:34:36 -07:00
Revar Desmera
794741f824 Added regression for skew() 2020-06-21 19:46:22 -07:00
Revar Desmera
bebb993125 Added regressions for transforms.scad 2020-06-21 01:30:49 -07:00
Revar Desmera
012c8d555d Added regressions for vfloor() and vceil() 2020-06-20 21:42:22 -07:00
Revar Desmera
0c612f40f6 Added regression for Q_Cumulative() 2020-06-20 21:31:38 -07:00
Revar Desmera
20dfaac113 Bugfix for #182. Added assert_equal() and assert_approx() for regression helpers. 2020-06-20 19:51:58 -07:00
Revar Desmera
1f7e1f5d0d Make CI run on PRs. 2020-06-19 23:46:21 -07:00
Revar Desmera
c86f01cba1 Don't need to install wget in CI. 2020-06-19 23:28:30 -07:00
Revar Desmera
fdcd7453b3 Regression fails should fail CI. 2020-06-19 23:25:59 -07:00
Revar Desmera
4cfd38e24f Regression test CI fix. 2020-06-19 23:18:04 -07:00
Revar Desmera
f727a9c3f1 Add regression run to CI. 2020-06-19 23:00:40 -07:00
Revar Desmera
1cd153d588 Fix OPENSCADPATH for checkdocs action. 2020-06-19 20:22:56 -07:00
Revar Desmera
93c5237d1d Debugging checkdocs action. 2020-06-19 20:12:13 -07:00
Revar Desmera
e9ca2bff0d Add OPENSCADPATH to github actions. 2020-06-19 20:07:52 -07:00
Revar Desmera
45f46c6e43 Go back to using latest Ubuntu in github actions. 2020-06-19 19:57:11 -07:00
Revar Desmera
f2af703240 Fix mktemp error in github actions. 2020-06-19 19:55:14 -07:00
Revar Desmera
fa277d1fd3 Try using appimage in github actions. 2020-06-19 19:41:06 -07:00
Revar Desmera
1d8e2ddcbc Using snap apps in github actions is unreliable. 2020-06-19 18:57:53 -07:00
Revar Desmera
33c8751f4a Make python scripts refer more generically to python3 instead of python3.7 2020-06-19 18:27:34 -07:00
Revar Desmera
540f691056 libtiff5 fix for checkdocs workflow. 2020-06-19 18:17:37 -07:00
Revar Desmera
e57d560fa2 Install Pillow for python checkdocs workflow. 2020-06-19 18:10:47 -07:00
Revar Desmera
71adc3e2ef checkdocs workflow bugfix. 2020-06-19 18:03:51 -07:00
Revar Desmera
eecb539080 Adding checkdocs workflow. 2020-06-19 16:51:28 -07:00
Revar Desmera
f2d26b6513 Try action runner with Ubuntu 16.04 2020-06-18 19:54:37 -07:00
Revar Desmera
fe4927cfb6 Bugfixes for rounding examples. 2020-06-18 19:21:55 -07:00
Revar Desmera
5b39cefe7b Fixed skin() regression. 2020-06-15 01:29:23 -07:00
Revar Desmera
e3b64888a8 Added regressions for strings.scad. 2020-06-15 01:25:35 -07:00
Revar Desmera
6ec3ce1556 Bugfix for suffix() when len is longer than the string length. 2020-06-15 01:24:57 -07:00
Revar Desmera
e2c0d6dc98 Bugfix for fmt_int() found by creating regressions. 2020-06-14 23:53:10 -07:00
Revar Desmera
761421a148 Made func_coverace.py more robust. 2020-06-14 20:54:16 -07:00
Revar Desmera
ef13137657 Fix for issue #180. 3D stroke works again. 2020-06-14 18:32:59 -07:00
Revar Desmera
314c40bd65 Fixed indentation in screws.scad 2020-06-11 21:40:52 -07:00
Revar Desmera
620a536dbc Fix stroke() for 1 point paths. 2020-06-10 00:03:48 -07:00
Revar Desmera
53c1e25395 Standardize indention on spaces, not tabs. 2020-05-29 19:04:34 -07:00
Revar Desmera
3388cff335 More tweaks to screw() example 7. 2020-05-25 19:07:51 -07:00
Revar Desmera
a53e1f3915 Made screw() example 7 clearer. 2020-05-25 17:31:29 -07:00
Revar Desmera
5c485018f3 GitHub's markdown processor has bugs. 2020-05-25 17:14:00 -07:00
Revar Desmera
0fd909d457 Github Wiki does not like angle brackets. 2020-05-25 16:52:40 -07:00
Revar Desmera
88699c12af More screws.scad docs formatting. 2020-05-25 16:41:41 -07:00
Revar Desmera
02789c91d9 Fix lone period bug in docs parser. 2020-05-25 15:34:15 -07:00
Revar Desmera
6168c8bb6b Fix table formatting in screws.scad 2020-05-25 15:13:31 -07:00
Revar Desmera
fe2d59a875 Getting screws.scad in docs. 2020-05-24 22:31:36 -07:00
Revar Desmera
f3127d96a2 Formatting tweaks. 2020-05-24 01:03:37 -07:00
Revar Desmera
9c2cf53b2d Renamed find_circle_tangents() to circle_point_tangents() 2020-05-23 19:22:44 -07:00
Revar Desmera
719a80c5d0 Tweak docs gen to allow a lone period on a line to break a paragraph. 2020-05-23 19:17:32 -07:00
Revar Desmera
86e4e3d892 Fixed stale ref to rounded_prismoid() 2020-05-23 17:57:48 -07:00
Revar Desmera
4fc24ef939 Fix some rounding docs formatting and examples. 2020-05-22 18:18:37 -07:00
Revar Desmera
f3c69eb673 Styles orig and aligned were swapped for sphere() module. 2020-05-22 00:55:08 -07:00
Revar Desmera
c2b3bb7792 Fixes for rect_tube() examples. 2020-05-22 00:40:23 -07:00
Revar Desmera
587812b001 Fixed buggy prismoid() examples. 2020-05-22 00:27:52 -07:00
Revar Desmera
f812254ad7 Merged rounded_prismoid() into prismoid(). 2020-05-22 00:14:41 -07:00
Revar Desmera
4f622a16b8 Corrected incorrect default in attachable() docs. 2020-05-22 00:00:15 -07:00
Revar Desmera
94a5943d24 Fixed rounding examples. 2020-05-19 21:56:09 -07:00
Revar Desmera
d20caf7d59 Fixed structs.scad docs formatting. Fixed bug in is_struct(). 2020-05-19 17:28:02 -07:00
Revar Desmera
892e98e773 Added chamfers and rounding to rect_tube() 2020-05-19 01:40:29 -07:00
Revar Desmera
4fab4f56c3 Added rect_tube(). 2020-05-18 22:57:50 -07:00
Revar Desmera
4a643b57e8 Fix for #160 2020-05-18 21:51:25 -07:00
Revar Desmera
fdc49bea02 Fixed vnf_bend() examples. 2020-05-18 02:02:24 -07:00
Revar Desmera
476967db6d vnf_bend_around_y_axis() to vnf_bend(), with support for X, Y, and Z axes. 2020-05-18 01:51:26 -07:00
Revar Desmera
b1ae85e65c Bugfix for split_polygons_at_each_z() 2020-05-18 01:49:46 -07:00
Revar Desmera
42e064c2ac Quantization tweak to cylindrical_extrude(). 2020-05-17 21:33:06 -07:00
Revar Desmera
8a64ae7a9c Tweaked cylindrical_extrude() to make sure wedges union. 2020-05-16 01:14:44 -07:00
Revar Desmera
780211a357 Added cylindrical_extrude(). 2020-05-15 13:59:27 -07:00
Revar Desmera
32e0f26fd8 Added vnf_bend_around_y_axis(). 2020-05-14 05:14:23 -07:00
Revar Desmera
a5fb810738 Refactored various bezier routines to use fast bezier point generation. 2020-05-13 01:09:11 -07:00
Revar Desmera
2a90eb01de Added bez_deriv(), bezier_tangent(), bezier_curvature(). 2020-05-10 00:41:07 -07:00
Revar Desmera
2675fb4129 Fixed old refs to edges() in shapes.scad and masks.scad 2020-05-07 22:14:24 -07:00
Revar Desmera
ac773cea20 Added "tipN" named anchors to Ngons. Added "tipN", "midptN", and "cornerN" named anchors to star(). 2020-05-07 17:11:35 -07:00
Revar Desmera
b03e97cb9b Added an example for maxking by attachment to ogee mask. 2020-05-06 17:32:03 -07:00
Revar Desmera
ef7acd1c10 Added "sideN" named anchors for Ngons. 2020-05-06 17:17:45 -07:00
Revar Desmera
33c8d80432 Made spheroid(style=) examples clearer. 2020-05-06 01:51:55 -07:00
Revar Desmera
dfa348a50c Fixed some sphere shape examples in basic shapes tutorial. 2020-05-06 01:46:35 -07:00
Revar Desmera
c03570ce3b Enhanced oval() to allow actual oval shapes. 2020-05-06 01:36:06 -07:00
Revar Desmera
c8394494bb Minor tweaks to basic shapes tutorial. 2020-05-05 19:39:29 -07:00
Revar Desmera
be3dd53132 Bugfix for oval() not properly using circum args. 2020-05-05 15:27:25 -07:00
Revar Desmera
ca1d46d641 Fixed basic shapes tutorial images for 2D. 2020-05-05 15:11:08 -07:00
Revar Desmera
feb1e21c9b Fixed tutorial refs to circle() when we wanted oval() instead. 2020-05-05 15:01:28 -07:00
Revar Desmera
196ca2c055 Typo fix in triangle_area() 2020-05-03 19:11:08 -07:00
Revar Desmera
96e17c17e0 Fixed example generation for a few functions in geometry.scad. 2020-04-29 23:01:00 -07:00
Revar Desmera
182688cf02 Implemented solution for issue #159 2020-04-29 22:45:41 -07:00
Revar Desmera
e32735296c Various bugfixes found by docs regen. 2020-04-26 04:29:21 -07:00
Revar Desmera
2834e8bc56 Add example image fixes for paths.scad 2020-04-26 01:16:20 -07:00
Revar Desmera
1e3f18f695 Bugfix for rounding_angled_edge_mask() with r1/r2=0 2020-04-26 00:55:36 -07:00
Revar Desmera
22f8d65991 Example image bugfixes. 2020-04-25 14:44:41 -07:00
Revar Desmera
ff96db86d2 Removed overrides for square() and circle() builtin modules. 2020-04-25 04:00:16 -07:00
Revar Desmera
1b6ebd3761 Fixed Ngon rounding size distortion. 2020-04-23 04:36:51 -07:00
Revar Desmera
7acc14b708 Fixed docs formatting issue with primitives.scad. 2020-04-23 03:57:29 -07:00
Revar Desmera
df09e3867c Fixed degenerate polygons in sphere. 2020-04-23 03:53:55 -07:00
Revar Desmera
c7e5056741 Fixed reversed faces. 2020-04-23 03:18:28 -07:00
Revar Desmera
97e67384c1 Primitives bugfix. 2020-04-23 03:06:17 -07:00
Revar Desmera
d8b0528d0d Fixed cube(), cylinder(), and sphere() primitives to not quantize their sizes. 2020-04-23 02:35:50 -07:00
Revar Desmera
8a1b511df7 Added extra error checking to various bezier routines. 2020-04-19 15:13:23 -07:00
Revar Desmera
ef5d5a15be Bugfix for spiral_sweep(). polyline needed to be converted to 3D. 2020-04-19 14:17:37 -07:00
Revar Desmera
1ecd2e798d Fixed attachable() spec for arced_slot() 2020-04-18 18:42:58 -07:00
Revar Desmera
1c06298f10 Enhanced find_circle_2tangents() 2020-04-18 18:38:22 -07:00
Revar Desmera
7ebb83a81d Improved quality of in 3D. 2020-04-14 19:16:24 -07:00
Revar Desmera
22e512b287 Fixed assert that broke stroke() for endcap paths. 2020-04-13 19:10:00 -07:00
Revar Desmera
9f630018f1 Standardized polygon path orientation: CW from X+ 2020-04-13 18:52:11 -07:00
Revar Desmera
0346b8a266 Removed leftover p= args from attachable() refactoring. 2020-04-13 16:53:50 -07:00
Revar Desmera
e2b02ba6a5 Added face_profile() 2020-04-11 22:49:50 -07:00
Revar Desmera
ddca297bba Better error checking in bezier routines. 2020-04-11 14:10:07 -07:00
Revar Desmera
82aaa28471 Added teardrop_corner_mask(), corner_profile() 2020-04-11 01:22:04 -07:00
Revar Desmera
38b4912da3 Added mask2d_teardrop() 2020-04-10 20:32:44 -07:00
Revar Desmera
2fcca7f45d Corrected minor flaws in cuboid() roundover formation. 2020-04-10 15:53:47 -07:00
Revar Desmera
0cdc94cc0a cuboid() was slightly too large with rounding. 2020-04-10 14:28:08 -07:00
Revar Desmera
5b7830f8f2 Fixes lack of passing children to attachable() in rotate_extrude_bezier() 2020-04-10 12:59:09 -07:00
Revar Desmera
e8087f7ba4 Added debug.scad to std.scad 2020-04-10 12:52:37 -07:00
Revar Desmera
1cab868d8a Chamferred is spelled chamfered. 2020-04-06 18:53:12 -07:00
Revar Desmera
503c0495d3 Added assert to catch triangulation of self-crossing face perimeters. 2020-04-06 18:46:12 -07:00
Revar Desmera
ea20f59c44 Fix collinear() for cases when a==b. 2020-04-02 18:26:46 -07:00
Revar Desmera
975185e262 Bugfix and optimization for find_noncollinear_points(). Optimized points_are_collinear() 2020-04-02 18:15:43 -07:00
Revar Desmera
0524194391 Optimizations for decompose_path() 2020-04-01 01:36:48 -07:00
Revar Desmera
fb3475abef Various VNF optimizations. 2020-03-31 03:27:07 -07:00
Revar Desmera
abf1a78290 Bugfix for set_union() when b contains duplicate items. 2020-03-31 03:09:04 -07:00
Revar Desmera
258e162f98 Optimized vnf_add_face() and vnf_add_faces() 2020-03-30 23:09:56 -07:00
Revar Desmera
1e2995fcf7 Added set_union(), set_difference(), set_intersection(). 2020-03-30 23:09:20 -07:00
Revar Desmera
2b2012d1d1 Speed optimizations to triangulate_faces() 2020-03-30 16:52:08 -07:00
Revar Desmera
857e7a94fb Updated tutorial image gen script. 2020-03-30 14:48:29 -07:00
Revar Desmera
5c8f6e8e6f Updated Distributors tutorial. 2020-03-30 14:47:50 -07:00
Revar Desmera
f2decb3873 Bugfix for vec3 spin values. 2020-03-30 14:46:30 -07:00
Revar Desmera
b22cd9e1d8 vec3 spin values failed assert. 2020-03-29 23:44:22 -07:00
Revar Desmera
0a741b36d1 Bugfix for involute gears #148 2020-03-29 20:56:42 -07:00
Revar Desmera
618d0557ca Added a few demos. 2020-03-28 20:51:06 -07:00
Revar Desmera
5769ef1036 Removed BOSL2/ from includes. 2020-03-28 20:50:04 -07:00
Revar Desmera
2937055c08 Fixed reversed bezier patches 2020-03-28 19:30:57 -07:00
Revar Desmera
f504a98d65 Added vimtags to bosl1compat.scad 2020-03-28 15:12:28 -07:00
Revar Desmera
e06ea582fb Refactor trace_bezier_patches() to calculate vertices only once. 2020-03-28 15:02:14 -07:00
Revar Desmera
5e4889652b Added showdots= and showpatch= to trace_bezier_patch(). 2020-03-27 20:43:54 -07:00
Revar Desmera
88a4557012 Added and for various bezier patch calls. 2020-03-27 19:21:45 -07:00
Revar Desmera
30c54725fc Enabled region use with grid2d() 2020-03-27 15:38:20 -07:00
Revar Desmera
eaddb81e7c Cleaned up grid2d() complex example. 2020-03-25 20:14:33 -07:00
Revar Desmera
38d7e0dad6 Typo fix in grid2d docs 2020-03-25 19:52:46 -07:00
Revar Desmera
6b4fb3184c Multiple bugfixes for and argument re-arrangement. Added vfloor() and vceil(). 2020-03-25 19:50:38 -07:00
Revar Desmera
7292250162 Fixes assert in scale() 2020-03-25 15:31:07 -07:00
Revar Desmera
d4e56a9099 Basics.md -> Transforms.md 2020-03-25 15:24:54 -07:00
Revar Desmera
8cd0168f27 Added asserts to select() 2020-03-25 15:05:27 -07:00
Revar Desmera
a102663b1a Fixed Basits tutorial mirror example images. 2020-03-25 01:37:01 -07:00
Revar Desmera
7640627300 Added Basics tutorial 2020-03-24 23:16:16 -07:00
Revar Desmera
b0b436eb63 Renamed spread() to line_of(). Renamed [xyz]spread() to [xyz]copies() 2020-03-24 19:11:05 -07:00
Revar Desmera
971c1e795f Renamed place_copies() to move_copies() 2020-03-24 18:31:22 -07:00
Revar Desmera
6183e6d0d2 Added deduplicate_indexed() 2020-03-24 14:51:37 -07:00
Revar Desmera
b0ebc77aba Deduplicate face vertices before triangulation. 2020-03-24 13:33:38 -07:00
Revar Desmera
07d47f4ffc Tweaked tutorial script to better display scripts. 2020-03-24 00:18:33 -07:00
Revar Desmera
a3c917bfe9 Initial script to generate tutorial images. 2020-03-24 00:02:24 -07:00
Revar Desmera
cb42c0d9aa Fixed incorrect usage docs for square() 2020-03-22 22:57:08 -07:00
Revar Desmera
e296c3137e Enable mirror() to work on patches. 2020-03-22 05:41:58 -07:00
Revar Desmera
00f69ba95b Removed translate_points(), scale_points(), rotate_points2d() and rotate_points3d() 2020-03-22 05:11:19 -07:00
Revar Desmera
d52c10f03b Improved approx() to handle matrices. 2020-03-22 02:41:47 -07:00
Revar Desmera
bd407bbfbd Bugfix for initial vertex adding to VNF via vnf_add_face() 2020-03-22 01:42:14 -07:00
Revar Desmera
c78eade2f2 Added initial Fractal Tree demo tutorial. Still need to gen images. 2020-03-22 01:14:26 -07:00
Revar Desmera
b2a2c00604 Fixed issue where would return true for a 2x2 matrix or an N=1 patch. 2020-03-22 01:12:51 -07:00
Revar Desmera
e550909726 Added some affine matrix generation optimizations. 2020-03-22 01:11:06 -07:00
Revar Desmera
b8e5171e3d Bugfix in hull() due to change in first_noncollinear() 2020-03-21 15:16:31 -07:00
Revar Desmera
e635755528 Added vsqr(), vnf_centroid(), and vnf_volume() 2020-03-20 22:15:41 -07:00
Revar Desmera
9f3cf44f91 Optimized bezier_patch() 2020-03-20 14:27:11 -07:00
Revar Desmera
f65228f0af Remove casual quantizing from vnf_add_faces() 2020-03-20 13:54:38 -07:00
Revar Desmera
7cba0b60f9 Fixed regression test for function namechange. 2020-03-20 13:53:47 -07:00
Revar Desmera
c38b7ee8e1 Fixed \*rot_copies() when rots is given a range. 2020-03-19 20:32:07 -07:00
Revar Desmera
392b063a0b Added vnf_quantize(), and zero-area face checks to vnf_validate() 2020-03-19 14:06:11 -07:00
Revar Desmera
1df6dcff2b Made polygon_area() work with 3D polygons as well. 2020-03-19 14:04:40 -07:00
Revar Desmera
05827785f5 Fixed turtle() docs truncation issue. 2020-03-17 20:03:36 -07:00
Revar Desmera
b0a57dab7d Tweaked math.scad code formatting. 2020-03-17 19:55:07 -07:00
Revar Desmera
4cf033762f Added face intersection tests to vnf_validate() 2020-03-17 01:16:08 -07:00
Revar Desmera
c52101e0a0 Removed debug echo from skin() 2020-03-17 01:14:26 -07:00
Revar Desmera
3ac23e15e6 Added median() 2020-03-17 01:13:47 -07:00
Revar Desmera
412dd9e260 plane_intersection() bugfix. plane_line_intersection() and polygon_line_intersection() can now detect on-plane intersections. 2020-03-17 01:12:51 -07:00
Revar Desmera
9257c74236 Lightened vnt_validate polyhedron ghost. 2020-03-16 03:01:07 -07:00
Revar Desmera
39d44cb709 Improved vnf_validate() 2020-03-16 02:57:03 -07:00
Revar Desmera
3ac0be39c2 Fixed examples in vnf_vertex_array() 2020-03-15 11:54:11 -07:00
Revar Desmera
265db9fe5d Removed affine2d_apply() and affine3d_apply() 2020-03-15 11:50:41 -07:00
Revar Desmera
93cdbf091d Added size argument to vnf_validate() 2020-03-15 11:20:59 -07:00
Revar Desmera
a4ecbebfe6 Added vnf_compact() and vnf_validate() 2020-03-15 04:25:37 -07:00
Revar Desmera
1d63556121 Apparently, "foo && let(expr) bar" is no longer allowed. 2020-03-14 20:20:32 -07:00
Revar Desmera
c001c6d8ae Bugfix in xflip(), yflip(), zflip(), and mirror() functions. 2020-03-14 15:06:12 -07:00
Revar Desmera
608bde9077 Formatting fix for str_format() docs. 2020-03-14 04:26:38 -07:00
Revar Desmera
8879b7a4d9 Added str_format(), echofmt(), is_letter(), is_digit(), is_hexdigit(), is_upper(), is_lower(), fmt_fixed(). Renamed fmti() to fmt_int(), and fmtf() to fmt_float(). 2020-03-14 04:23:33 -07:00
Revar Desmera
602e850d24 Added points_are_collinear(). Renamed pointslist_is_coplanar() to points_are_coplanar() 2020-03-13 21:48:31 -07:00
Revar Desmera
c1e3f5d60a Added strings.scad to std.scad 2020-03-13 20:07:24 -07:00
Revar Desmera
efa75eaf5a Added pointslist_is_coplanar(). Added coplanar check to plane_from_pointslist(). 2020-03-13 18:45:46 -07:00
Revar Desmera
4b5e0835cc Added region_faces() and linear_sweep(). 2020-03-11 22:26:43 -07:00
Revar Desmera
579714a9f7 Minor stroke() bugfix for duplicate start or endpoints. 2020-03-11 22:21:26 -07:00
Revar Desmera
2cf0ce47d9 Minimized area of subpaths assembled during boolean geometry. 2020-03-11 22:14:16 -07:00
Revar Desmera
5f37eddc1b Fixed . 2020-03-10 00:17:40 -07:00
Revar Desmera
f5cb79ab7a Bugfix for named attachment anchors. 2020-03-09 21:29:22 -07:00
Revar Desmera
97663dd6a3 Fixed fractal_tree.scad for attachable() refactoring. 2020-03-09 21:16:26 -07:00
Revar Desmera
ab6f59867e Fix attachable(). Again. For real this time. 2020-03-09 21:15:04 -07:00
Revar Desmera
7e69100a53 Rolled back bugfix for hiding grandchildren of hidden child. 2020-03-09 19:35:46 -07:00
Revar Desmera
8d3ea6b727 Fixed alignment error with square() when rounding is used. 2020-03-09 19:13:13 -07:00
Revar Desmera
2551f19939 Added EMPTY_VNF 2020-03-09 18:36:22 -07:00
Revar Desmera
1d10c15d57 Bugfix for trace_polyline() example. 2020-03-09 14:25:32 -07:00
Revar Desmera
95e97a81ad Fixed errors in ruler(). Moved trace_polyline() to debug.scad. 2020-03-09 14:21:11 -07:00
Revar Desmera
5c83313203 Minor stroke() bugfix. 2020-03-09 01:04:46 -07:00
Revar Desmera
d5aac19ef8 Enabled use of stroke() for 3D paths. 2020-03-08 21:22:40 -07:00
Revar Desmera
126f2acd15 Extraneous include removed from beziers.scad. 2020-03-08 21:21:48 -07:00
Revar Desmera
ff4c3146e8 Improved asserts in attachable(). 2020-03-07 22:26:39 -08:00
Revar Desmera
9b9e0bcec8 Fixed error in smooth_path() example formatting. 2020-03-07 16:36:26 -08:00
Revar Desmera
47c9560d5f Corrected docs about the equation of a plane used in plane functions. 2020-03-07 16:08:42 -08:00
Revar Desmera
b048570f7a Bugfix for bezier_segment_length() for unusual bezier curves. 2020-03-06 17:28:58 -08:00
Revar Desmera
6ec5013835 Reworked attachable() internals, and provided geometry only function equivalent called reorient(). 2020-03-06 15:32:53 -08:00
Revar Desmera
863398eb24 Tweak to force example regen. 2020-03-05 03:56:35 -08:00
Revar Desmera
4aee7133d3 Fixed sweep() example formatting. 2020-03-05 03:40:47 -08:00
Revar Desmera
2aaa7006e7 Attempt to fix errors with union(), difference(), intersection() with infinitesimally misaligned paths. 2020-03-05 03:30:18 -08:00
Revar Desmera
6433ebaa82 Fix fmti() for very large numbers around 1e15 2020-03-05 03:28:41 -08:00
Revar Desmera
39fc4bffb5 fmtf() assert was in wrong place. 2020-03-05 02:11:43 -08:00
Revar Desmera
05405564b4 Typo fix. 2020-03-05 02:08:50 -08:00
Revar Desmera
9b87420c12 Fixed bug in fmtf() 2020-03-05 02:07:35 -08:00
Revar Desmera
19ed457e38 Regressions for repeat() fixed. 2020-03-04 20:29:17 -08:00
Revar Desmera
9c350feb11 Make square() have compatable positional parameters with built-in. 2020-03-04 20:19:21 -08:00
Revar Desmera
ee30513644 Bugfix for rot 2020-03-03 19:17:14 -08:00
Revar Desmera
12d3a46a12 Bugfix for tube() 2020-03-02 22:13:01 -08:00
Revar Desmera
e83835403d Removed incorrect refs to anchor, spin, orient in grid2d() 2020-03-02 21:56:56 -08:00
Revar Desmera
19e6ec8093 Fix coords.scad regressions. 2020-03-02 21:48:54 -08:00
Revar Desmera
6de4efabe4 Removed invalid files for docs gen. 2020-03-02 21:31:35 -08:00
Revar Desmera
0f78d3bdc6 Removed accidental redundant is_consistent() implementation. 2020-03-02 21:26:59 -08:00
Revar Desmera
da7190ccbb Added is_consistent() 2020-03-02 20:23:44 -08:00
Revar Desmera
07bfcd6a57 Renamed normalize() to unit() 2020-03-02 19:30:20 -08:00
Revar Desmera
af0e285781 Added is_list_of(). Improved is_path() and is_vector() tests. 2020-03-02 13:47:43 -08:00
Revar Desmera
7ea33cc724 Added asserts for regular_ngon(). 2020-03-02 12:57:24 -08:00
Revar Desmera
8a29e9e86b Fixed matrix form of rot(from,to,a) 2020-03-02 12:42:29 -08:00
Revar Desmera
c6ec9c8820 Moved path functions from geometry.scad to paths.scad 2020-03-01 16:12:51 -08:00
Revar Desmera
28114b49b5 Cleaned up code formatting in math.scad. 2020-03-01 15:42:12 -08:00
Revar Desmera
fd3d812f7e More docs example image bugfixes. 2020-02-29 19:17:52 -08:00
Revar Desmera
46a322f935 Docs example image bugfixes. 2020-02-29 19:16:43 -08:00
Revar Desmera
373a119be8 Example bugfixes. 2020-02-29 15:30:55 -08:00
Revar Desmera
6651e1be42 Renamed orient_and_anchor() to attachable() and refactored arguments and internals. 2020-02-29 13:16:15 -08:00
Revar Desmera
c8e5103db8 Incorrect cols arg in vnf_vertex_array() docs. 2020-02-28 21:42:22 -08:00
Revar Desmera
da4f822eca Added split_nested_region() 2020-02-28 21:39:58 -08:00
Revar Desmera
7e0512e5f9 Bugfix for polygon_line_intersection() for failing to find intersection. 2020-02-28 21:37:16 -08:00
Revar Desmera
3c3318de63 Removed orient_and_anchor() use in distributors. 2020-02-28 21:36:10 -08:00
Revar Desmera
2f8787dac5 Added get_anchor() 2020-02-28 21:34:58 -08:00
Revar Desmera
f838e8a1e2 Bugfix for variable error in unique() 2020-02-28 21:32:57 -08:00
Revar Desmera
25fe326d2a Made quaternion docs somewhat clearer. 2020-02-15 17:13:33 -08:00
Revar Desmera
fa84fffa94 Tighten down requirements for image compare in docs generation. 2020-02-15 16:53:29 -08:00
Revar Desmera
51e7f514a4 Added Qrot_copies(), enabled range for Q_Slerp(). Improved example images. 2020-02-15 16:49:02 -08:00
Revar Desmera
393f9e2639 Q_Slerp() cleanup. 2020-02-14 23:06:01 -08:00
Revar Desmera
fe5d7baa0b Update README.md files. 2020-02-13 22:25:41 -08:00
Revar Desmera
0f7c7956d1 Tweaked skin() examples. 2020-02-13 21:58:46 -08:00
Revar Desmera
3500f01e8f Merge master. 2020-02-13 18:06:15 -08:00
Revar Desmera
c533dfe315 Adjusted skin() docs and example images. 2020-02-13 18:03:19 -08:00
Revar Desmera
a3d9c9bdba Added corner_mask() 2020-02-13 00:30:37 -08:00
Revar Desmera
d765450cc3 Added corners(), CORNER_OFFSETS 2020-02-12 17:11:40 -08:00
Revar Desmera
9736ec48f5 Added edge_profile(), edge_mask(), and various 2D mask shapes. 2020-02-11 20:11:59 -08:00
Revar Desmera
af82c1ffc7 Fixed rounding masks for r1=0. 2020-02-11 20:10:41 -08:00
Revar Desmera
019961aef7 Added dflt= arg to sum(), defaulting to 0. 2020-02-08 21:54:39 -08:00
Revar Desmera
a78973187a Simplified is_nan() 2020-02-07 01:58:45 -08:00
Revar Desmera
ba032e2f4d Added NAN, INF, and is_nan(). 2020-02-06 22:51:16 -08:00
Revar Desmera
28f07a997f Tweaked uniform skin method. 2020-02-02 19:33:09 -08:00
Revar Desmera
f16de52e4a Fixed docs formatting in round_corners() 2020-02-01 22:01:33 -08:00
Revar Desmera
f5803a696a Fixed spelling of Asymmetric 2020-01-31 23:32:34 -08:00
Revar Desmera
06ca151bc8 Fixed bezier patch example. 2020-01-31 23:09:04 -08:00
Revar Desmera
855aa0cf36 Re-organized region.scad docs. 2020-01-31 21:35:04 -08:00
Revar Desmera
ef0c92cfa5 Docs formatting fix in place_copies() 2020-01-31 18:58:17 -08:00
Revar Desmera
f49dfa8a9e Split distributors and mutators out of transforms.scad 2020-01-31 17:03:41 -08:00
Revar Desmera
7a92ffdbaf Reorganized functions in paths.scad 2020-01-31 16:37:27 -08:00
Revar Desmera
90daf37a53 Added polygon_is_convex() 2020-01-30 21:18:39 -08:00
Revar Desmera
c1bc74b643 Removed forced endcap triangulation from skin(). 2020-01-30 16:52:47 -08:00
Revar Desmera
62b0f95b44 Removed unused code from skin() 2020-01-30 16:35:30 -08:00
Revar Desmera
39f27fb1d9 Weaned skin() off of slow vnf_faces() 2020-01-30 15:36:39 -08:00
Revar Desmera
8da60800c9 Consolidated path code into paths.scad 2020-01-30 14:00:10 -08:00
Revar Desmera
674f276362 Added method="convex" to skin() 2020-01-29 19:40:02 -08:00
Revar Desmera
00bbdedd47 Tweak to rounded_prismoid() to use new square() with rounding. 2020-01-29 18:04:29 -08:00
Revar Desmera
555f1a9ab3 Bugfix for stroke() with scalar width. 2020-01-29 01:31:05 -08:00
Revar Desmera
e8aa0a068a square() can now mix and match chamfers and roundings per corner. 2020-01-29 01:09:39 -08:00
Revar Desmera
b074259054 Added variable line widths along path to stroke() 2020-01-28 19:15:23 -08:00
Revar Desmera
cee46b1721 Added path_pos_from_start(), path_pos_from_end(), path_trim_start(), path_trim_end() 2020-01-28 19:13:56 -08:00