mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-01-29 11:58:39 +01:00
add doc
This commit is contained in:
parent
cc44be68e1
commit
3e374e5398
@ -210,6 +210,9 @@ See [examples](examples).
|
||||
- [util/sum](https://openhome.cc/eGossip/OpenSCAD/lib2x-sum.html)
|
||||
- [util/zip](https://openhome.cc/eGossip/OpenSCAD/lib2x-zip.html)
|
||||
|
||||
### Turtle
|
||||
- [turtle/footprints2](https://openhome.cc/eGossip/OpenSCAD/lib2x-footprints2.html)
|
||||
|
||||
----
|
||||
|
||||
## Bugs and Feedback
|
||||
|
54
docs/lib2x-footprints2.md
Normal file
54
docs/lib2x-footprints2.md
Normal file
@ -0,0 +1,54 @@
|
||||
# footprints2
|
||||
|
||||
Drive a turtle with `["forward", length]` or `["turn", angle]`. This function is intended to use a turtle to imitate freehand drawing.
|
||||
|
||||
**Since:** 2.4
|
||||
|
||||
## Parameters
|
||||
|
||||
- `cmds` : A list of `["forward", length]`s and `["turn", angle]`s.
|
||||
- `start` : Set the start point of the turtle.
|
||||
|
||||
## Examples
|
||||
|
||||
use <polyline2d.scad>;
|
||||
use <turtle/footprints2.scad>;
|
||||
|
||||
function arc_cmds(radius, angle, steps) =
|
||||
let(
|
||||
fa = angle / steps,
|
||||
ta = fa / 2,
|
||||
leng = sin(ta) * radius * 2
|
||||
)
|
||||
concat(
|
||||
[["turn", ta]],
|
||||
[
|
||||
for(i = [0:steps - 2])
|
||||
each [["forward", leng], ["turn", fa]]
|
||||
],
|
||||
[["forward", leng], ["turn", ta]]
|
||||
);
|
||||
|
||||
poly = footprints2(
|
||||
concat(
|
||||
[
|
||||
["forward", 10],
|
||||
["turn", 90],
|
||||
["forward", 10]
|
||||
],
|
||||
arc_cmds(5, 180, 12),
|
||||
[
|
||||
["turn", -90],
|
||||
["forward", 10],
|
||||
["turn", 90],
|
||||
["forward", 10],
|
||||
["turn", 90],
|
||||
["forward", 10]
|
||||
]
|
||||
)
|
||||
);
|
||||
|
||||
polyline2d(poly, width = 1);
|
||||
|
||||
![t3d](images/lib2x-footprints2-1.JPG)
|
||||
|
@ -1,51 +1,16 @@
|
||||
use <turtle2d.scad>;
|
||||
/**
|
||||
* footprints2.scad
|
||||
*
|
||||
* @copyright Justin Lin, 2020
|
||||
* @license https://opensource.org/licenses/lgpl-3.0.html
|
||||
*
|
||||
* @see https://openhome.cc/eGossip/OpenSCAD/lib2x-footprints2.html
|
||||
*
|
||||
**/
|
||||
|
||||
use <_impl/_footprints2.scad>;
|
||||
use <turtle2d.scad>;
|
||||
|
||||
/*
|
||||
cmds: "turn", "forward"
|
||||
|
||||
demo code
|
||||
```
|
||||
use <turtle/footprints2.scad>;
|
||||
use <hull_polyline2d.scad>;
|
||||
|
||||
function arc_cmds(radius, angle, steps) =
|
||||
let(
|
||||
fa = angle / steps,
|
||||
ta = fa / 2,
|
||||
leng = sin(ta) * radius * 2
|
||||
)
|
||||
concat(
|
||||
[["turn", ta]],
|
||||
[
|
||||
for(i = [0:steps - 2])
|
||||
each [["forward", leng], ["turn", fa]]
|
||||
],
|
||||
[["forward", leng], ["turn", ta]]
|
||||
);
|
||||
|
||||
poly = footprints2(
|
||||
concat(
|
||||
[
|
||||
["forward", 10],
|
||||
["turn", 90],
|
||||
["forward", 10]
|
||||
],
|
||||
arc_cmds(5, 180, 12),
|
||||
[
|
||||
["turn", -90],
|
||||
["forward", 10],
|
||||
["turn", 90],
|
||||
["forward", 10],
|
||||
["turn", 90],
|
||||
["forward", 10]
|
||||
]
|
||||
)
|
||||
);
|
||||
|
||||
hull_polyline2d(poly, width = 1);
|
||||
```
|
||||
*/
|
||||
function footprints2(cmds, start = [0, 0]) =
|
||||
let(
|
||||
t = turtle2d("create", start[0], start[1], 0),
|
||||
|
Loading…
x
Reference in New Issue
Block a user