mirror of
https://github.com/revarbat/BOSL2.git
synced 2025-03-13 19:29:44 +01:00
Merge pull request #1140 from RAMilewski/master
Syntags: shapes2d, masks2d, masks3d, partitions
This commit is contained in:
commit
c1ef6b2f24
@ -16,6 +16,7 @@
|
||||
|
||||
// Function&Module: mask2d_roundover()
|
||||
// Synopsis: Creates a 2D beading mask shape useful for rounding 90° edges.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable, Masks (2D)
|
||||
// See Also: corner_profile(), edge_profile(), face_profile(), fillet()
|
||||
// Usage: As module
|
||||
@ -80,6 +81,7 @@ function mask2d_roundover(r, inset=0, excess=0.01, d, anchor=CENTER,spin=0) =
|
||||
|
||||
// Function&Module: mask2d_cove()
|
||||
// Synopsis: Creates a 2D cove (quarter-round) mask shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable, Masks (2D)
|
||||
// See Also: corner_profile(), edge_profile(), face_profile()
|
||||
// Usage: As module
|
||||
@ -144,6 +146,7 @@ function mask2d_cove(r, inset=0, excess=0.01, d, anchor=CENTER,spin=0) =
|
||||
|
||||
// Function&Module: mask2d_chamfer()
|
||||
// Synopsis: Produces a 2D chamfer mask shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable, Masks (2D)
|
||||
// See Also: corner_profile(), edge_profile(), face_profile()
|
||||
// Usage: As Module
|
||||
@ -223,6 +226,7 @@ function mask2d_chamfer(edge, angle=45, inset=0, excess=0.01, x, y, anchor=CENTE
|
||||
|
||||
// Function&Module: mask2d_rabbet()
|
||||
// Synopsis: Creates a rabbet mask shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable, Masks (2D)
|
||||
// See Also: corner_profile(), edge_profile(), face_profile()
|
||||
// Usage: As Module
|
||||
@ -281,6 +285,7 @@ function mask2d_rabbet(size, excess=0.01, anchor=CENTER,spin=0) =
|
||||
|
||||
// Function&Module: mask2d_dovetail()
|
||||
// Synopsis: Creates a 2D dovetail mask shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Masks (2D), Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: corner_profile(), edge_profile(), face_profile()
|
||||
// Usage: As Module
|
||||
@ -359,6 +364,7 @@ function mask2d_dovetail(edge, angle=30, inset=0, shelf=0, excess=0.01, x, y, an
|
||||
|
||||
// Function&Module: mask2d_teardrop()
|
||||
// Synopsis: Creates a 2D teardrop mask shape with a controllable maximum angle from vertical.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable, Masks (2D), FDM Optimized
|
||||
// See Also: corner_profile(), edge_profile(), face_profile()
|
||||
// Usage: As Module
|
||||
@ -423,6 +429,7 @@ module mask2d_teardrop(r, angle=45, excess=0.01, d, anchor=CENTER, spin=0) {
|
||||
|
||||
// Function&Module: mask2d_ogee()
|
||||
// Synopsis: Creates a 2D ogee mask shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable, Masks (2D)
|
||||
// See Also: corner_profile(), edge_profile(), face_profile()
|
||||
// Usage: As Module
|
||||
|
11
masks3d.scad
11
masks3d.scad
@ -15,6 +15,7 @@
|
||||
|
||||
// Module: chamfer_edge_mask()
|
||||
// Synopsis: Creates a shape to chamfer a 90° edge.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Chamfers, Shapes (3D)
|
||||
// See Also: chamfer_corner_mask()
|
||||
// Usage:
|
||||
@ -56,6 +57,7 @@ module chamfer_edge_mask(l, chamfer=1, excess=0.1, h, length, height, anchor=CEN
|
||||
|
||||
// Module: chamfer_corner_mask()
|
||||
// Synopsis: Creates a shape to chamfer a 90° corner.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Chamfers, Shapes (3D)
|
||||
// See Also: chamfer_edge_mask()
|
||||
// Usage:
|
||||
@ -94,6 +96,7 @@ module chamfer_corner_mask(chamfer=1, anchor=CENTER, spin=0, orient=UP) {
|
||||
|
||||
// Module: chamfer_cylinder_mask()
|
||||
// Synopsis: Creates a shape to chamfer the end of a cylinder.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Chamfers, Cylinders
|
||||
// Usage:
|
||||
// chamfer_cylinder_mask(r|d=, chamfer, [ang], [from_end]) [ATTACHMENTS];
|
||||
@ -158,6 +161,7 @@ module chamfer_cylinder_mask(r, chamfer, d, ang=45, from_end=false, anchor=CENTE
|
||||
|
||||
// Module: rounding_edge_mask()
|
||||
// Synopsis: Creates a shape to round a 90° edge.
|
||||
// SynTags: Geom
|
||||
// Topics: Masks, Rounding, Shapes (3D)
|
||||
// See Also: rounding_angled_edge_mask(), rounding_corner_mask(), rounding_angled_corner_mask()
|
||||
// Usage:
|
||||
@ -237,6 +241,7 @@ module rounding_edge_mask(l, r, r1, r2, d, d1, d2, excess=0.1, anchor=CENTER, sp
|
||||
|
||||
// Module: rounding_corner_mask()
|
||||
// Synopsis: Creates a shape to round 90° corners.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Rounding, Shapes (3D)
|
||||
// See Also: rounding_angled_corner_mask(), rounding_edge_mask(), rounding_angled_edge_mask()
|
||||
// Usage:
|
||||
@ -290,6 +295,7 @@ module rounding_corner_mask(r, d, style="octa", excess=0.1, anchor=CENTER, spin=
|
||||
|
||||
// Module: rounding_angled_edge_mask()
|
||||
// Synopsis: Creates a shape to round edges of any angle.
|
||||
// SynTags: Geom
|
||||
// Topics: Masks, Rounding
|
||||
// See Also: rounding_angled_corner_mask(), rounding_edge_mask(), rounding_corner_mask()
|
||||
// Usage:
|
||||
@ -359,6 +365,7 @@ module rounding_angled_edge_mask(h, r, r1, r2, d, d1, d2, ang=90, anchor=CENTER,
|
||||
|
||||
// Module: rounding_angled_corner_mask()
|
||||
// Synopsis: Creates a shape to round the corner of an arbitrary angle.
|
||||
// SynTags: Geom
|
||||
// Topics: Masks, Rounding, Shapes (3D)
|
||||
// See Also: rounding_angled_edge_mask(), rounding_corner_mask(), rounding_edge_mask()
|
||||
// Usage:
|
||||
@ -410,6 +417,7 @@ module rounding_angled_corner_mask(r, ang=90, d, anchor=CENTER, spin=0, orient=U
|
||||
|
||||
// Module: rounding_cylinder_mask()
|
||||
// Synopsis: Creates a shape to round the end of a cylinder.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Rounding, Cylinders
|
||||
// See Also: rounding_hole_mask()
|
||||
// Usage:
|
||||
@ -461,6 +469,7 @@ module rounding_cylinder_mask(r, rounding, d, anchor=CENTER, spin=0, orient=UP)
|
||||
|
||||
// Module: rounding_hole_mask()
|
||||
// Synopsis: Creates a shape to round the edge of a round hole.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Rounding
|
||||
// See Also: rounding_cylinder_mask()
|
||||
// Usage:
|
||||
@ -513,6 +522,7 @@ module rounding_hole_mask(r, rounding, excess=0.1, d, anchor=CENTER, spin=0, ori
|
||||
|
||||
// Module: teardrop_edge_mask()
|
||||
// Synopsis: Creates a shape to round a 90° edge but limit the angle of overhang.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Rounding, Shapes (3D), FDM Optimized
|
||||
// See Also: teardrop_corner_mask()
|
||||
// Usage:
|
||||
@ -555,6 +565,7 @@ module teardrop_edge_mask(l, r, angle=45, excess=0.1, d, anchor=CTR, spin=0, ori
|
||||
|
||||
// Module: teardrop_corner_mask()
|
||||
// Synopsis: Creates a shape to round a 90° corner but limit the angle of overhang.
|
||||
// SynTags: Geom
|
||||
// Topics: Masking, Rounding, Shapes (3D), FDM Optimized
|
||||
// See Also: teardrop_edge_mask()
|
||||
// Usage:
|
||||
|
@ -13,6 +13,7 @@
|
||||
|
||||
// Function&Module: half_of()
|
||||
// Synopsis: Masks half of an object at a cut plane.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: back_half(), front_half(), left_half(), right_half(), top_half(), bottom_half()
|
||||
//
|
||||
@ -122,6 +123,7 @@ function half_of(p, v=UP, cp) =
|
||||
|
||||
// Function&Module: left_half()
|
||||
// Synopsis: Masks the right half of an object along the Y-Z plane, leaving the left half.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: back_half(), front_half(), right_half(), top_half(), bottom_half(), half_of()
|
||||
//
|
||||
@ -167,6 +169,7 @@ function left_half(p,x=0) = half_of(p, LEFT, [x,0,0]);
|
||||
|
||||
|
||||
// Function&Module: right_half()
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Synopsis: Masks the left half of an object along the Y-Z plane, leaving the right half.
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: back_half(), front_half(), left_half(), top_half(), bottom_half(), half_of()
|
||||
@ -212,6 +215,7 @@ function right_half(p,x=0) = half_of(p, RIGHT, [x,0,0]);
|
||||
|
||||
// Function&Module: front_half()
|
||||
// Synopsis: Masks the back half of an object along the X-Z plane, leaving the front half.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: back_half(), left_half(), right_half(), top_half(), bottom_half(), half_of()
|
||||
//
|
||||
@ -257,6 +261,7 @@ function front_half(p,y=0) = half_of(p, FRONT, [0,y,0]);
|
||||
|
||||
// Function&Module: back_half()
|
||||
// Synopsis: Masks the front half of an object along the X-Z plane, leaving the back half.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: front_half(), left_half(), right_half(), top_half(), bottom_half(), half_of()
|
||||
//
|
||||
@ -302,6 +307,7 @@ function back_half(p,y=0) = half_of(p, BACK, [0,y,0]);
|
||||
|
||||
// Function&Module: bottom_half()
|
||||
// Synopsis: Masks the top half of an object along the X-Y plane, leaving the bottom half.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: back_half(), front_half(), left_half(), right_half(), top_half(), half_of()
|
||||
//
|
||||
@ -339,6 +345,7 @@ function bottom_half(p,z=0) = half_of(p,BOTTOM,[0,0,z]);
|
||||
|
||||
// Function&Module: top_half()
|
||||
// Synopsis: Masks the bottom half of an object along the X-Y plane, leaving the top half.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking
|
||||
// See Also: back_half(), front_half(), left_half(), right_half(), bottom_half(), half_of()
|
||||
//
|
||||
@ -420,6 +427,7 @@ function _partition_cutpath(l, h, cutsize, cutpath, gap) =
|
||||
|
||||
// Module: partition_mask()
|
||||
// Synopsis: Creates a mask to remove half an object with the remaining half suitable for reassembly.
|
||||
// SynTags: Geom
|
||||
// Topics: Partitions, Masking, Paths
|
||||
// See Also: partition_cut_mask(), partition()
|
||||
// Usage:
|
||||
@ -473,6 +481,7 @@ module partition_mask(l=100, w=100, h=100, cutsize=10, cutpath="jigsaw", gap=0,
|
||||
|
||||
// Module: partition_cut_mask()
|
||||
// Synopsis: Creates a mask to cut an object into two subparts that can be reassembled.
|
||||
// SynTags: Geom
|
||||
// Topics: Partitions, Masking, Paths
|
||||
// See Also: partition_mask(), partition()
|
||||
// Usage:
|
||||
@ -518,7 +527,8 @@ module partition_cut_mask(l=100, h=100, cutsize=10, cutpath="jigsaw", gap=0, anc
|
||||
|
||||
|
||||
// Module: partition()
|
||||
// Synopsis: Cuts an object in two with matched joining edges, then separates the parts .
|
||||
// Synopsis: Cuts an object in two with matched joining edges, then separates the parts.
|
||||
// SynTags: Geom, VNF, Path, Region
|
||||
// Topics: Partitions, Masking, Paths
|
||||
// See Also: partition_cut_mask(), partition_mask()
|
||||
// Usage:
|
||||
|
@ -22,6 +22,7 @@ use <builtins.scad>
|
||||
|
||||
// Function&Module: square()
|
||||
// Synopsis: Creates a 2D square or rectangle.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Path Generators (2D)
|
||||
// See Also: rect()
|
||||
// Usage: As a Module
|
||||
@ -73,6 +74,7 @@ module square(size=1, center, anchor, spin) {
|
||||
|
||||
// Function&Module: rect()
|
||||
// Synopsis: Creates a 2d rectangle with optional corner rounding.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: square()
|
||||
// Usage: As Module
|
||||
@ -211,6 +213,7 @@ function rect(size=1, rounding=0, chamfer=0, atype="box", anchor=CENTER, spin=0,
|
||||
|
||||
// Function&Module: circle()
|
||||
// Synopsis: Creates the approximation of a circle.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Path Generators (2D)
|
||||
// See Also: ellipse(), circle_2tangents(), circle_3points()
|
||||
// Usage: As a Module
|
||||
@ -315,6 +318,7 @@ module circle(r, d, points, corner, anchor=CENTER, spin=0) {
|
||||
|
||||
// Function&Module: ellipse()
|
||||
// Synopsis: Creates the approximation of an ellipse or a circle.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), circle_2tangents(), circle_3points()
|
||||
// Usage: As a Module
|
||||
@ -499,6 +503,7 @@ function ellipse(r, d, realign=false, circum=false, uniform=false, anchor=CENTER
|
||||
|
||||
// Function&Module: regular_ngon()
|
||||
// Synopsis: Creates a regular N-sided polygon.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: debug_polygon(), circle(), pentagon(), hexagon(), octagon(), ellipse(), star()
|
||||
// Usage:
|
||||
@ -639,6 +644,7 @@ module regular_ngon(n=6, r, d, or, od, ir, id, side, rounding=0, realign=false,
|
||||
|
||||
// Function&Module: pentagon()
|
||||
// Synopsis: Creates a regular pentagon.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), regular_ngon(), hexagon(), octagon(), ellipse(), star()
|
||||
// Usage:
|
||||
@ -698,6 +704,7 @@ module pentagon(r, d, or, od, ir, id, side, rounding=0, realign=false, align_tip
|
||||
|
||||
// Function&Module: hexagon()
|
||||
// Synopsis: Creates a regular hexagon.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), regular_ngon(), pentagon(), octagon(), ellipse(), star()
|
||||
// Usage: As Module
|
||||
@ -758,6 +765,7 @@ module hexagon(r, d, or, od, ir, id, side, rounding=0, realign=false, align_tip,
|
||||
|
||||
// Function&Module: octagon()
|
||||
// Synopsis: Creates a regular octagon.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), regular_ngon(), pentagon(), hexagon(), ellipse(), star()
|
||||
// Usage: As Module
|
||||
@ -817,6 +825,7 @@ module octagon(r, d, or, od, ir, id, side, rounding=0, realign=false, align_tip,
|
||||
|
||||
// Function&Module: right_triangle()
|
||||
// Synopsis: Creates a right triangle.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: square(), rect(), regular_ngon(), pentagon(), hexagon(), octagon(), star()
|
||||
// Usage: As Module
|
||||
@ -824,7 +833,8 @@ module octagon(r, d, or, od, ir, id, side, rounding=0, realign=false, align_tip,
|
||||
// Usage: As Function
|
||||
// path = right_triangle(size, [center], ...);
|
||||
// Description:
|
||||
// Creates a right triangle with the Hypotenuse in the X+Y+ quadrant.
|
||||
// When called as a module, creates a right triangle with the Hypotenuse in the X+Y+ quadrant.
|
||||
// When called as a function, returns a 2D path for a right triangle with the Hypotenuse in the X+Y+ quadrant.
|
||||
// Arguments:
|
||||
// size = The width and length of the right triangle, given as a scalar or an XY vector.
|
||||
// center = If true, forces `anchor=CENTER`. If false, forces `anchor=[-1,-1]`. Default: undef (use `anchor=`)
|
||||
@ -876,6 +886,7 @@ module right_triangle(size=[1,1], center, anchor, spin=0) {
|
||||
|
||||
// Function&Module: trapezoid()
|
||||
// Synopsis: Creates a trapezoid with parallel top and bottom sides.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: rect(), square()
|
||||
// Usage: As Module
|
||||
@ -1085,6 +1096,7 @@ module trapezoid(h, w1, w2, ang, shift, chamfer=0, rounding=0, flip=false, ancho
|
||||
|
||||
// Function&Module: star()
|
||||
// Synopsis: Creates a star-shaped polygon or returns a star-shaped region.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), ellipse(), regular_ngon()
|
||||
// Usage: As Module
|
||||
@ -1253,6 +1265,7 @@ function _path_add_jitter(path, dist=1/512, closed=true) =
|
||||
|
||||
// Module: jittered_poly()
|
||||
// Synopsis: Creates a polygon with extra points for smoother twisted extrusions.
|
||||
// SynTags: Geom
|
||||
// Topics: Extrusions
|
||||
// See Also: subdivide_path()
|
||||
// Usage:
|
||||
@ -1281,16 +1294,18 @@ module jittered_poly(path, dist=1/512) {
|
||||
|
||||
// Function&Module: teardrop2d()
|
||||
// Synopsis: Creates a 2D teardrop shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: teardrop(), onion()
|
||||
// Description:
|
||||
// Makes a 2D teardrop shape. Useful for extruding into 3D printable holes as it limits overhang to 45 degrees. Uses "intersect" style anchoring.
|
||||
// When called as a module, makes a 2D teardrop shape. Useful for extruding into 3D printable holes as it limits overhang to 45 degrees. Uses "intersect" style anchoring.
|
||||
// The cap_h parameter truncates the top of the teardrop. If cap_h is taller than the untruncated form then
|
||||
// the result will be the full, untruncated shape. The segments of the bottom section of the teardrop are
|
||||
// calculated to be the same as a circle or cylinder when rotated 90 degrees. (Note that this agreement is poor when `$fn=6` or `$fn=7`.
|
||||
// If `$fn` is a multiple of four then the teardrop will reach its extremes on all four axes. The circum option
|
||||
// produces a teardrop that circumscribes the circle; in this case set `realign=true` to get a teardrop that meets its internal extremes
|
||||
// on the axes.
|
||||
// When called as a function, returns a 2D path to for a teardrop shape.
|
||||
//
|
||||
// Usage: As Module
|
||||
// teardrop2d(r/d=, [ang], [cap_h]) [ATTACHMENTS];
|
||||
@ -1379,6 +1394,7 @@ function teardrop2d(r, ang=45, cap_h, d, circum=false, realign=false, anchor=CEN
|
||||
|
||||
// Function&Module: egg()
|
||||
// Synopsis: Creates an egg-shaped 2d object.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), ellipse(), glued_circles()
|
||||
// Usage: As Module
|
||||
@ -1386,11 +1402,12 @@ function teardrop2d(r, ang=45, cap_h, d, circum=false, realign=false, anchor=CEN
|
||||
// Usage: As Function
|
||||
// path = egg(length, r1|d1=, r2|d2=, R|D=);
|
||||
// Description:
|
||||
// Constructs an egg-shaped object by connecting two circles with convex arcs that are tangent to the circles.
|
||||
// When called as a module, constructs an egg-shaped object by connecting two circles with convex arcs that are tangent to the circles.
|
||||
// You specify the length of the egg, the radii of the two circles, and the desired arc radius.
|
||||
// Note that because the side radius, R, is often much larger than the end radii, you may get better
|
||||
// results using `$fs` and `$fa` to control the number of semgments rather than using `$fn`.
|
||||
// This shape may be useful for creating a cam.
|
||||
// This shape may be useful for creating a cam.
|
||||
// When called as a function, returns a 2D path for an egg-shaped object.
|
||||
// Arguments:
|
||||
// length = length of the egg
|
||||
// r1 = radius of the left-hand circle
|
||||
@ -1467,6 +1484,7 @@ module egg(length,r1,r2,R,d1,d2,D,anchor=CENTER, spin=0)
|
||||
|
||||
// Function&Module: glued_circles()
|
||||
// Synopsis: Creates a shape of two circles joined by a curved waist.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), ellipse(), egg()
|
||||
// Usage: As Module
|
||||
@ -1536,6 +1554,7 @@ function _superformula(theta,m1,m2,n1,n2=1,n3=1,a=1,b=1) =
|
||||
|
||||
// Function&Module: supershape()
|
||||
// Synopsis: Creates a 2D [Superformula](https://en.wikipedia.org/wiki/Superformula) shape.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: circle(), ellipse()
|
||||
// Usage: As Module
|
||||
@ -1618,6 +1637,7 @@ module supershape(step=0.5,n,m1=4,m2=undef,n1,n2=undef,n3=undef,a=1,b=undef, r=u
|
||||
|
||||
// Function&Module: reuleaux_polygon()
|
||||
// Synopsis: Creates a constant-width shape that is not circular.
|
||||
// SynTags: Geom, Path
|
||||
// Topics: Shapes (2D), Paths (2D), Path Generators, Attachable
|
||||
// See Also: regular_ngon(), pentagon(), hexagon(), octagon()
|
||||
// Usage: As Module
|
||||
@ -1625,7 +1645,8 @@ module supershape(step=0.5,n,m1=4,m2=undef,n1,n2=undef,n3=undef,a=1,b=undef, r=u
|
||||
// Usage: As Function
|
||||
// path = reuleaux_polygon(n, r|d=, ...);
|
||||
// Description:
|
||||
// Creates a 2D Reuleaux Polygon; a constant width shape that is not circular. Uses "intersect" type anchoring.
|
||||
// When called as a module, reates a 2D Reuleaux Polygon; a constant width shape that is not circular. Uses "intersect" type anchoring.
|
||||
// When called as a function, returns a 2D path for a Reulaux Polygon.
|
||||
// Arguments:
|
||||
// n = Number of "sides" to the Reuleaux Polygon. Must be an odd positive number. Default: 3
|
||||
// r = Radius of the shape. Scale shape to fit in a circle of radius r.
|
||||
@ -1687,6 +1708,7 @@ function reuleaux_polygon(n=3, r, d, anchor=CENTER, spin=0) =
|
||||
|
||||
// Module: text()
|
||||
// Synopsis: Creates an attachable block of text.
|
||||
// SynTags: Geom
|
||||
// Topics: Attachments, Text
|
||||
// See Also: text3d(), attachable()
|
||||
// Usage:
|
||||
@ -1799,6 +1821,7 @@ module text(text, size=10, font="Helvetica", halign, valign, spacing=1.0, direct
|
||||
|
||||
// Module: round2d()
|
||||
// Synopsis: Rounds the corners of 2d objects.
|
||||
// SynTags: Geom
|
||||
// Topics: Rounding
|
||||
// See Also: shell2d(), round3d(), minkowski_difference()
|
||||
// Usage:
|
||||
@ -1831,6 +1854,7 @@ module round2d(r, or, ir)
|
||||
|
||||
// Module: shell2d()
|
||||
// Synopsis: Creates a shell from 2D children.
|
||||
// SynTags: Geom
|
||||
// Topics: Shell
|
||||
// See Also: round2d(), round3d(), minkowski_difference()
|
||||
// Usage:
|
||||
|
Loading…
x
Reference in New Issue
Block a user