mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-17 12:10:47 +02:00
delete doc
This commit is contained in:
Binary file not shown.
Before Width: | Height: | Size: 77 KiB |
Binary file not shown.
Before Width: | Height: | Size: 58 KiB |
Binary file not shown.
Before Width: | Height: | Size: 50 KiB |
Binary file not shown.
Before Width: | Height: | Size: 54 KiB |
@@ -1,44 +0,0 @@
|
|||||||
# voronoi2d
|
|
||||||
|
|
||||||
Create a [Voronoi diagram](https://en.wikipedia.org/wiki/Voronoi_diagram). The initial region for each cell is calculated automatically from the given points by the following code:
|
|
||||||
|
|
||||||
xs = [for(p = points) p[0]];
|
|
||||||
ys = [for(p = points) abs(p[1])];
|
|
||||||
region_size = max([(max(xs) - min(xs) / 2), (max(ys) - min(ys)) / 2]);
|
|
||||||
|
|
||||||
**Since:** 1.3
|
|
||||||
|
|
||||||
## Parameters
|
|
||||||
|
|
||||||
- `points` : Points for each cell.
|
|
||||||
- `spacing` : Distance between cells. Default to 1.
|
|
||||||
- `r`, `delta`, `chamfer` : The outlines of each cell can be moved outward or inward. These parameters have the same effect as [`offset`](https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Transformations#offset).
|
|
||||||
- `region_type` : The initial shape for each cell can be `"square"` or `"circle"`. Default to `"square"`.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
use <voronoi2d.scad>;
|
|
||||||
|
|
||||||
points = [for(i = [0:50]) rands(-20, 20, 2)];
|
|
||||||
|
|
||||||
voronoi2d(points);
|
|
||||||
translate([60, 0, 0])
|
|
||||||
voronoi2d(points, region_type = "circle");
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
use <voronoi2d.scad>;
|
|
||||||
use <hollow_out.scad>;
|
|
||||||
|
|
||||||
xs = rands(0, 40, 50);
|
|
||||||
ys = rands(0, 20, 50);
|
|
||||||
|
|
||||||
points = [for(i = [0:len(xs) - 1]) [xs[i], ys[i]]];
|
|
||||||
|
|
||||||
difference() {
|
|
||||||
square([40, 20]);
|
|
||||||
voronoi2d(points);
|
|
||||||
}
|
|
||||||
hollow_out(shell_thickness = 1) square([40, 20]);
|
|
||||||
|
|
||||||

|
|
@@ -1,60 +0,0 @@
|
|||||||
# voronoi3d
|
|
||||||
|
|
||||||
Create a 3D version of [Voronoi diagram](https://en.wikipedia.org/wiki/Voronoi_diagram). The initial space for each cell is calculated automatically from the given points by the following code:
|
|
||||||
|
|
||||||
xs = [for(p = points) p[0]];
|
|
||||||
ys = [for(p = points) abs(p[1])];
|
|
||||||
zs = [for(p = points) abs(p[2])];
|
|
||||||
space_size = max([(max(xs) - min(xs) / 2), (max(ys) - min(ys)) / 2, (max(zs) - min(zs)) / 2]);
|
|
||||||
// cube([space_size, space_size * 2, space_size * 2]);
|
|
||||||
|
|
||||||
The preview or rendering of 3D Voronoi is slow. If you want to use this module, render and export the 3D Voronoi model first. Then, `import` the model to do what you want.
|
|
||||||
|
|
||||||
**Since:** 1.3.
|
|
||||||
|
|
||||||
## Parameters
|
|
||||||
|
|
||||||
- `points` : Points for each cell.
|
|
||||||
- `spacing` : Distance between cells. Default to 1.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
use <voronoi3d.scad>;
|
|
||||||
|
|
||||||
r = 30;
|
|
||||||
|
|
||||||
zas = rands(0, 359, 12);
|
|
||||||
yas = rands(0, 179, 12);
|
|
||||||
|
|
||||||
points = [
|
|
||||||
for(i = [0:len(zas) - 1])
|
|
||||||
[
|
|
||||||
r * cos(yas[i]) * cos(zas[i]),
|
|
||||||
r * cos(yas[i]) * sin(zas[i]),
|
|
||||||
r * sin(yas[i])
|
|
||||||
]
|
|
||||||
];
|
|
||||||
|
|
||||||
#for(pt = points) {
|
|
||||||
translate(pt) cube(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
intersection() {
|
|
||||||
sphere(r);
|
|
||||||
voronoi3d(points);
|
|
||||||
}
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
If you render, export and save the previous model as `voronoi3d.stl`, the following code will generate a Voronoi sphere.
|
|
||||||
|
|
||||||
r = 30;
|
|
||||||
thickness = 2;
|
|
||||||
|
|
||||||
difference() {
|
|
||||||
sphere(r);
|
|
||||||
scale(1.01) import("voronoi3d.stl");
|
|
||||||
sphere(r - thickness);
|
|
||||||
}
|
|
||||||
|
|
||||||

|
|
Reference in New Issue
Block a user