From 7ba82e02791adac7442d0986a2d7fdf7a8e134b7 Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Fri, 4 Oct 2019 09:26:28 +0800 Subject: [PATCH] update doc --- docs/images/lib-crystal_ball-1.JPG | Bin 26252 -> 32583 bytes docs/lib-crystal_ball.md | 43 +++++++++++++++-------------- 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/docs/images/lib-crystal_ball-1.JPG b/docs/images/lib-crystal_ball-1.JPG index 27bca0f6605a7ea2c865d7f5c6a410ebef0e3352..ce4665479ec57c8b166d40d6f2dd8add6d588706 100644 GIT binary patch literal 32583 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 diff --git a/docs/lib-crystal_ball.md b/docs/lib-crystal_ball.md index 220bf651..c9b3f4fe 100644 --- a/docs/lib-crystal_ball.md +++ b/docs/lib-crystal_ball.md @@ -9,6 +9,7 @@ Uses spherical coordinate system to create a crystal ball. - `radius` : The radial distance r. - `theta` : The azimuthal angle. It defaults to 360. It also accepts a 2 element vector. The first element of the vector is the beginning angle in degrees, and the second element is the ending angle. - `phi` : The polar angle. It defaults to 180. It also accepts a 2 element vector. The first element of the vector is the beginning angle in degrees, and the second element is the ending angle. +- `thickness` : The thickness of the ball. **Since:** 2.1. - `$fa`, `$fs`, `$fn` : Check [the circle module](https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Using_the_2D_Subsystem#circle) or [the sphere module](https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids#sphere) for more details. The final fragments will be a multiple of 4 to fit edges. ## Examples @@ -18,29 +19,31 @@ Uses spherical coordinate system to create a crystal ball. include ; include ; include ; - + crystal_ball(radius = 6); - + translate([12, 0, 0]) - crystal_ball( - radius = 6, - theta = 270, - $fn = 12 - ); - + crystal_ball( + radius = 6, + theta = 270, + thickness = 1, + $fn = 12 + ); + translate([24, 0, 0]) - crystal_ball( - radius = 6, - theta = 270, - phi = 90, - $fn = 12 - ); - + crystal_ball( + radius = 6, + theta = 270, + phi = 90, + $fn = 12 + ); + translate([36, 0, 0]) - crystal_ball( - radius = 6, - theta = [-30, 270], - phi = [30, 60] - ); + crystal_ball( + radius = 6, + theta = [-30, 270], + phi = [30, 60], + thickness = 2 + ); ![crystal_ball](images/lib-crystal_ball-1.JPG)