1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-27 00:17:27 +02:00
This commit is contained in:
Justin Lin
2020-03-27 08:59:51 +08:00
parent ce8783ce65
commit c3b26097ef
4 changed files with 42 additions and 7 deletions

View File

@@ -149,7 +149,7 @@ See [examples](examples).
- [ptf/ptf_x_twist](https://openhome.cc/eGossip/OpenSCAD/lib2x-ptf_x_twist.html)
- [ptf/ptf_y_twist](https://openhome.cc/eGossip/OpenSCAD/lib2x-ptf_y_twist.html)
- [ptf/ptf_circle](https://openhome.cc/eGossip/OpenSCAD/lib2x-ptf_circle.html)
- ptf/ptf_bend
- [ptf/ptf_bend](https://openhome.cc/eGossip/OpenSCAD/lib2x-ptf_bend.html)
- ptf/ptf_ring
- ptf/ptf_sphere
- ptf/ptf_torus

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

32
docs/lib2x-ptf_bend.md Normal file
View File

@@ -0,0 +1,32 @@
# ptf_bend
Transforms a point inside a rectangle to a point of an arc.
**Since:** 2.3.
## Parameters
- `size` : 2 value array `[x, y]`, rectangle with dimensions `x` and `y`.
- `point` : The point to be transformed.
- `radius` : The radius of the arc.
- `angle` : The central angle of the arc.
## Examples
use <pixel/px_ascii.scad>;
use <ptf/ptf_bend.scad>;
t = "dotSCAD";
size = [len(t) * 8, 8];
radius = 20;
angle = 180;
for(i = [0:len(t) - 1]) {
for(pt = px_ascii(t[i], invert = true)) {
bended = ptf_bend(size, pt + [i * 8, 0], radius, angle);
translate(bended)
sphere(0.5, $fn = 24);
}
}
![ptf_bend](images/lib2x-ptf_bend-1.JPG)

View File

@@ -1,9 +1,12 @@
/*
size: The size of the rectangle which can contain the point.
point: A point in the rectangle.
radius: The radius of the arc after being bent
angle: The central angle of the arc.
*/
/**
* ptf_bend.scad
*
* @copyright Justin Lin, 2020
* @license https://opensource.org/licenses/lgpl-3.0.html
*
* @see https://openhome.cc/eGossip/OpenSCAD/lib2x-ptf_bend.html
*
**/
function ptf_bend(size, point, radius, angle) =
let(