1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-01-17 22:28:16 +01:00
dotSCAD/docs/lib2x-ptf_circle.md

42 lines
1.0 KiB
Markdown
Raw Normal View History

2020-03-26 17:33:35 +08:00
# ptf_circle
Transform a point inside a rectangle to a point inside a circle. You can use it to create something such as a [noisy circle maze](https://github.com/JustinSDK/dotSCAD/blob/master/examples/maze/noisy_circle_maze.scad).
![ptf_circle](images/lib2x-ptf_circle-1.JPG)
2020-03-27 20:06:19 +08:00
**Since:** 2.3
2020-03-26 17:33:35 +08:00
## Parameters
- `size` : 2 value array `[x, y]`, rectangle with dimensions `x` and `y`.
- `point` : The point to be transformed.
## Examples
use <hull_polyline3d.scad>;
use <ptf/ptf_circle.scad>;
size = [10, 10];
rows = [
for(y = [0:size[1]])
[for(x = [0:size[0]]) [x, y]]
];
columns = [
for(x = [0:size[0]])
[for(y = [0:size[1]]) [x, y]]
];
for(line = rows) {
2020-04-09 14:54:37 +08:00
transformed = [for(p = line) ptf_circle(size, p)];
hull_polyline3d(transformed, thickness = .1);
2020-03-26 17:33:35 +08:00
}
for(line = columns) {
2020-04-09 14:54:37 +08:00
transformed = [for(p = line) ptf_circle(size, p)];
hull_polyline3d(transformed, thickness = .1);
2020-03-26 17:33:35 +08:00
}
![ptf_circle](images/lib2x-ptf_circle-2.JPG)