Commit graph

185 commits

Author SHA1 Message Date
Adrian Mariano
c135de46d3 add join_prism 2022-03-28 20:52:24 -04:00
Adrian Mariano
26855429d8 move color_this and recolor into color.scad
doc tweaks for rounding
2022-03-27 19:23:47 -04:00
Adrian Mariano
6b02a595a2 add exponential dist, IDENT constant
doc fixes
2022-03-25 23:35:07 -04:00
Adrian Mariano
7d6a2b593f Force N parameters to n in most places 2022-03-13 21:40:55 -04:00
Adrian Mariano
8861464dbb doc fixes 2022-03-07 19:43:12 -05:00
Adrian Mariano
600175f205 rework rounding docs, change "length=" to "width=" for chamfers. 2022-01-19 21:11:34 -05:00
Adrian Mariano
43ae4efe5c rework docs 2022-01-19 19:35:02 -05:00
Adrian Mariano
6fdb591ac0 changed "chamfer" to "length"
added figures for circle and chamfer
2022-01-18 23:11:22 -05:00
Adrian Mariano
d81eb6d0e0 change "flat" to "chamfer". 2 move examples 2022-01-17 22:34:50 -05:00
Adrian Mariano
40c4079be5 A couple more examples 2022-01-17 11:21:42 -05:00
Adrian Mariano
a4c3717e49 round_corners: added "flat" option for chamfers, added examples
for chamfer and two pass examples of chamfer/rounding
2022-01-17 09:39:52 -05:00
Adrian Mariano
c93f2041dc doc tweaks
fix interface to bezier_curve()
2022-01-09 09:55:26 -05:00
Adrian Mariano
b1ed2d0c6c bezier surface reorg, removed triangular bezier patches 2022-01-09 01:27:15 -05:00
Adrian Mariano
f5d0854549 debug function rename
attachment function reorder
add axes to egg examples
2022-01-08 23:08:34 -05:00
Adrian Mariano
d8aa4ced71 misc doc fixes and organization
beziers reorg
arc bug fix for endpoint=false and N=undef
2022-01-07 14:23:01 -05:00
Adrian Mariano
70afd85c18 fix smooth_path and path_to_bezier to handle 1-regions 2022-01-04 23:11:34 -05:00
Adrian Mariano
fe9a9a5d01 Change to allow roundings that fully occupy segment with deduplicate 2022-01-02 18:04:24 -05:00
Adrian Mariano
ff1ff2d2b6 Report as error case where roundings exactly cover a segment 2022-01-02 17:30:01 -05:00
Revar Desmera
59bf523908 Lots of docs tweaks for openscad-docsgen v2 2021-12-13 15:48:30 -08:00
Adrian Mariano
477dd55781 remove polygon_shift, hide noncollinear_triple
modify glued circle to not produce duplicate points
2021-11-11 18:50:26 -05:00
Adrian Mariano
69e8491659 doc tweaks
vnf_merge split
2021-11-11 08:45:30 -05:00
Adrian Mariano
052200433b Make most path functions accept singleton regions
Replace check_and_fix_path with force_path
2021-10-29 19:29:51 -04:00
Adrian Mariano
a75a368dd5 Move linear algebra to linalg.scad
columns->column because the multiindex case is handled by submatrix
and also it never occurs in the code.
2021-10-26 16:45:14 -04:00
Adrian Mariano
76272d9d9a add region centroid capability and consolidate into one centroid
function for polygons, regions and VNFs.
Fix bug with anchors for linear_sweep (due to centerpoint issues)
Fix intersection anchors for vnfs when anchor vector intersects
in a path instead of a single point.
2021-10-20 22:44:55 -04:00
Adrian Mariano
2d205a2568 subarray -> columns 2021-10-15 22:39:10 -04:00
Adrian Mariano
acb65b3298 allow count to take a list as input
vnf_wireframe does not draw unreferenced vertices
some error checking
2021-10-14 18:29:52 -04:00
Adrian Mariano
afe75d0e3f add starts to threaded rod/nut
remove vnf_add_face(s)
add vnf_from_polygon
2021-10-05 18:23:20 -04:00
Adrian Mariano
0093d10993 use projection before calling is_path_simple in rouinded_prism
rewrite vnf_bend so it doesn't rely on pseudo 3d polygon self-intersection
2021-10-05 16:14:36 -04:00
Adrian Mariano
2f895cb8d1 hiding some infrastructure, added is_path_simple() 2021-09-22 14:59:18 -04:00
Garth Minette
0260d92187 Correction for _path_cut_points() rename. 2021-09-19 20:08:38 -07:00
Adrian Mariano
d957f556d6 bug fixes 2021-09-15 20:03:15 -04:00
Adrian Mariano
d78eb5213e Add "is" to geometry.scad predicates 2021-09-15 19:01:34 -04:00
Adrian Mariano
2494de9368 reordering and moving for improved docs
removed xxrot and xxflip
2021-09-11 18:48:23 -04:00
Adrian Mariano
14ae1795bb fix permutation docs
consolidate "line/segment/ray" functions to just "line" with bounded option
add RAY, LINE and SEGMENT constants
2021-09-09 18:32:58 -04:00
Adrian Mariano
15297a8b19 Change offset() to respect $fn/$fs.
Remove maxstep parameter from offset.
Modify offset_sweep and offset_stroke to no longer use offset_maxstep
or maxstep.
Added a bit of error checking to those two functions so if you pass in
the wrong end treatment it gives a less cryptic type of error
Fixed arc() so it returns 2 points when you request 2 points (instead
of 3)
Fixed teardrop to properly ceil() its segs value.
2021-08-31 18:13:15 -04:00
Adrian Mariano
3e670bb4c6 doc fix 2021-07-27 21:13:02 -04:00
Adrian Mariano
1cca11ab28 Removed unnecessary requirement for splinesteps>=3, added some error
checks on splinesteps, added example of using splinesteps=1 to chamfer
in rounded_prism.

Added rot_resample, rot_inverse.
2021-07-04 11:25:54 -04:00
Garth Minette
5a355434ce Tweaks for docs usage lines. 2021-06-26 20:59:33 -07:00
Adrian Mariano
493ef62826 normalized project_plane and lift_plane to match other transform
functions.
2021-04-21 22:49:06 -04:00
Adrian Mariano
dea5949df8 Fix face orientation bugs in vnf_vertex_array, rounded_prism,
bezier_patch_degenerate.  Added reverse option to count().
2021-04-12 20:15:01 -04:00
Adrian Mariano
d4d5794ef2 fixed sum to handle larger input
added all_equal
added vnf_tri_array as public
added bezier_patch_degenerate as public
2021-04-11 22:29:25 -04:00
Garth Minette
2225257f09 Tweaks suggested by @adrianVmariano. 2021-04-08 17:27:43 -07:00
Garth Minette
8bd3ef8a74 Removed range(), rangex(). Added count(). 2021-04-07 20:57:45 -07:00
Adrian Mariano
dd13967049 Cleanup of path_resample, add tests for round_corners, fix
bezier_curve and arc to always return n points for either endpoint
setting.
2021-04-02 16:59:29 -04:00
Garth Minette
0b17bf5930 Brought slice() in line with select() indexing, without wrapping. Replaced a lot of select() and slice() calls with last(), list_head(), and list_tail() calls. 2021-03-30 00:46:59 -07:00
Garth Minette
d7cb503ffc Replace most trivial uses of slice() with faster list_head() and list_tail() 2021-03-25 00:23:36 -07:00
Adrian Mariano
f90e89c761 rewrote check_and_fix_path. Old version was broken/undef errors
added regions_equal (but probably not best version)
removed debug echo from roundinglscad
assert on invalid arc() radius inpu
new "fast_distance" method for skin()
tweaked skin() docs
support regions for path_sweep
2021-03-12 18:40:24 -05:00
Adrian Mariano
b90f51dbc4 doc tweaks 2021-03-08 17:08:06 -05:00
Revar Desmera
e7e523bcf7
Merge branch 'master' into revarbat_dev 2021-03-06 02:37:00 -08:00
Garth Minette
3682f7b27c Added dashed_stroke(). path_cut() -> path_cut_points(). 2021-03-06 02:26:39 -08:00
Adrian Mariano
f736ef98f7 same_shape bugfix (fails if b==undef)
check for collinear points in round_corners plus other fixes
fix path_cut to work correctly when closed==true, and change it to
fail with error when cut is too long instead of returning undef.
Add path_cut_segs.
2021-03-05 16:35:41 -05:00
Revar Desmera
799686b7ca
Merge pull request #427 from adrianVmariano/master 2021-02-20 12:46:54 -08:00
Adrian Mariano
852eed292d doc fixes and bug fixes for undef 2021-02-20 11:45:10 -05:00
Revar Desmera
ef4402c183
Merge branch 'master' into revarbat_dev 2021-02-19 19:59:59 -08:00
Garth Minette
6cfbc538fc Re-work to use openscad_docsgen package. 2021-02-19 19:56:43 -08:00
Adrian Mariano
576b3ab457 remove debug echo 2021-02-18 16:19:45 -05:00
Kelvie Wong
2454511e5a rounding: Fix uncommented rounded_star example
Otherwise when you include this a star will appear out of nowhere :)
2021-01-30 19:45:25 -08:00
Garth Minette
a13a09db8d Docs cleanup for common.scad 2021-01-28 16:59:46 -08:00
Adrian Mariano
3790783cdc Rename zip to hstack and associated changes. 2021-01-24 10:29:34 -05:00
Adrian Mariano
9dfdc1c622 Fix bug in offset_sweep where rounded ends always have 50 points
regardless of $fn/$fa/$fs.
2021-01-16 21:53:08 -05:00
Adrian Mariano
ac0293ef74 Fixed debug_polygon bug. Tweaked error reporting for round_corners
and added new examples.
2021-01-15 21:08:22 -05:00
Adrian Mariano
caac76e23e doc updates 2021-01-14 22:39:14 -05:00
Adrian Mariano
cb4cebe0b9 Fixed bug with collinear points in round_corners.
Allow use of "joint" option with circle method in round_corners.
2021-01-14 18:34:10 -05:00
Adrian Mariano
1614c235e1 fixed arc point count 2021-01-05 23:37:00 -05:00
Adrian Mariano
d097be435b Add bezier endpoint, tweak _bezcorners to properly produce that
endpoint.  doc tweak for polyhedra.
2021-01-05 23:29:10 -05:00
Adrian Mariano
b39fb5d588 Merge remote-tracking branch 'upstream/master' 2021-01-05 06:25:50 -05:00
Revar Desmera
2860de17cc
Merge pull request #364 from revarbat/revarbat_dev
Improved docs gen script
2021-01-05 02:37:53 -08:00
Garth Minette
f9aa81e178 Improved docs gen script for Returns:, Custom:, Includes:, Topics:, and positional/named args spits. 2021-01-05 01:20:01 -08:00
Adrian Mariano
34e660cb78 Update docs to show positional args, added defaults to rounded_prism,
added support for "radius" to bent_cutout_mask.  (It was documented
but not supported.)
2021-01-04 22:56:28 -05:00
Adrian Mariano
af243699c9 Added function form usage message to offset_sweep and added
no_function and no_module calls as needed.
2021-01-03 12:55:15 -05:00
Adrian Mariano
e0ac4d0c1b Fixed bugs in list_set, list_remove, list_insert that were revealed by
adding degenerate case tests.  List_set was broken for minlen
nonzero (no tests).  Added seed to shuffle.  Fixed bounds check error
in rounded_prism.
2020-12-31 09:32:47 -05:00
Adrian Mariano
ce8bc6f818 Fix offset_sweep for change to scale() and to handle undefs in the RC 2020-12-12 22:37:35 -05:00
Garth Minette
e4f2497863 Changes all references to polyline to path. 2020-11-16 17:50:08 -08:00
Adrian Mariano
e50a577094 Added path_join() function, fixed degenerate case issue in path_cut 2020-09-23 22:00:17 -04:00
Adrian Mariano
fd637ec56d removed echo 2020-09-14 17:31:07 -04:00
Adrian Mariano
4ba8670a55 parameter passing bug fix for offset_sweep 2020-09-14 16:48:42 -04:00
Adrian Mariano
2eb0ce0348 added os_mask to rounding and tweaked error messages in transpose 2020-08-28 23:16:11 -04:00
RonaldoCMP
fb8d49f8cc Restore updating calls to geometry 2020-08-25 12:28:15 +01:00
RonaldoCMP
9611bc54ec Merge branch 'master' of https://github.com/RonaldoCMP/BOSL2 2020-08-20 22:41:00 +01:00
RonaldoCMP
26ff57491e
Merge branch 'master' into master 2020-08-18 23:10:57 +01:00
RonaldoCMP
5fab080f8e Revert "Revert "Merge remote-tracking branch 'upstream/revarbat_dev'""
This reverts commit f4a8138b37.
2020-08-18 11:04:56 +01:00
RonaldoCMP
f4a8138b37 Revert "Merge remote-tracking branch 'upstream/revarbat_dev'"
This reverts commit ee80b1d08f, reversing
changes made to 2b12659d00.
2020-08-18 11:01:42 +01:00
RonaldoCMP
ee80b1d08f Merge remote-tracking branch 'upstream/revarbat_dev' 2020-08-18 10:59:53 +01:00
Adrian Mariano
2ff93f34cd Added attachment support to all modules, and bug fixed rounded_prism
(problem introduced by error checking in det2), and fixed broken
example in rounding.
2020-08-17 18:43:58 -04:00
RonaldoCMP
b4e26c035c Changes to noncollinear_triple 2020-08-16 23:34:31 +01:00
Garth Minette
b5d465cf1e docs_gen.py now shows more docs errors. 2020-07-27 15:15:34 -07:00
Adrian Mariano
806a0cf2b5 Various doc fixes 2020-07-19 11:48:31 -04:00
Adrian Mariano
2beacdbbed Fixed example that was uncommented. And various doc typos 2020-07-06 22:04:25 -04:00
Adrian Mariano
5083452f1f moved $fn inside round_corners calls 2020-06-20 12:48:25 -04:00
Adrian Mariano
7982929897 Moved $fn into round_corners calls instead of polygon calls. 2020-06-19 16:50:47 -04:00
Adrian Mariano
bab69faf13 Fixed bug which produced too few segments in round_corners with
circular rounding.  Corrected $fn values for various examples.
2020-06-19 16:35:14 -04:00
Revar Desmera
fe4927cfb6 Bugfixes for rounding examples. 2020-06-18 19:21:55 -07:00
Adrian Mariano
7aab27266f Added polynomial root finding and complex math to math.scad. Changed
path_to_bezier to new algorithm (which uses polynomial roots).  And
updated path_smooth to use the new code.

Also removed extra (?) include<skin.scad> and
include<strings.scad> from rounding.scad and
removed the common $fn=36 that was forced on all the examples.  (May
break something...we'll look at the examples and see.)  I added $fn=36
to some examples.
2020-06-18 17:50:25 -04:00
Revar Desmera
53c1e25395 Standardize indention on spaces, not tabs. 2020-05-29 19:04:34 -07:00
Revar Desmera
4fc24ef939 Fix some rounding docs formatting and examples. 2020-05-22 18:18:37 -07:00
Adrian Mariano
0256f582e5 Changed interface to round_corners.
Modified rounded_prism to work with updated beziers and to use
triangular sampling of degenerate patches.
2020-05-21 16:47:12 -04:00
Revar Desmera
94a5943d24 Fixed rounding examples. 2020-05-19 21:56:09 -07:00
Adrian Mariano
2652be5783 Added bent_cutout_mask 2020-05-19 16:43:33 -04:00
Adrian Mariano
9bef2d6818 fixed broken example 2020-04-21 22:20:25 -04:00
Adrian Mariano
5339062f76 Added checks for input collinearity and global top and bottom self-intersection. 2020-04-02 21:51:54 -04:00