mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-01 20:40:28 +02:00
add doc
This commit is contained in:
@@ -73,7 +73,7 @@ See [examples](examples).
|
|||||||
- [triangulate](https://openhome.cc/eGossip/OpenSCAD/lib2x-triangulate.html)
|
- [triangulate](https://openhome.cc/eGossip/OpenSCAD/lib2x-triangulate.html)
|
||||||
|
|
||||||
- 2D/3D Function
|
- 2D/3D Function
|
||||||
- [rotate_p](https://openhome.cc/eGossip/OpenSCAD/lib2x-rotate_p.html)
|
- [rotate_p](https://openhome.cc/eGossip/OpenSCAD/lib2x-rotate_p.html) (It'll be deprecated from 2.3. Use `ptf/ptf_rotate` instead.)
|
||||||
- [cross_sections](https://openhome.cc/eGossip/OpenSCAD/lib2x-cross_sections.html)
|
- [cross_sections](https://openhome.cc/eGossip/OpenSCAD/lib2x-cross_sections.html)
|
||||||
- [paths2sections](https://openhome.cc/eGossip/OpenSCAD/lib2x-paths2sections.html)
|
- [paths2sections](https://openhome.cc/eGossip/OpenSCAD/lib2x-paths2sections.html)
|
||||||
- [path_scaling_sections](https://openhome.cc/eGossip/OpenSCAD/lib2x-path_scaling_sections.html)
|
- [path_scaling_sections](https://openhome.cc/eGossip/OpenSCAD/lib2x-path_scaling_sections.html)
|
||||||
@@ -145,7 +145,7 @@ See [examples](examples).
|
|||||||
- [matrix/m_shearing](https://openhome.cc/eGossip/OpenSCAD/lib2x-m_shearing.html)
|
- [matrix/m_shearing](https://openhome.cc/eGossip/OpenSCAD/lib2x-m_shearing.html)
|
||||||
|
|
||||||
- Point Transformation (2.3 Preview)
|
- Point Transformation (2.3 Preview)
|
||||||
- ptf/ptf_rotate
|
- [ptf/ptf_rotate](https://openhome.cc/eGossip/OpenSCAD/lib2x-ptf_rotate.html)
|
||||||
- ptf/ptf_x_twist
|
- ptf/ptf_x_twist
|
||||||
- ptf/ptf_y_twist
|
- ptf/ptf_y_twist
|
||||||
- ptf/ptf_circle
|
- ptf/ptf_circle
|
||||||
@@ -153,7 +153,7 @@ See [examples](examples).
|
|||||||
- ptf/ptf_ring
|
- ptf/ptf_ring
|
||||||
- ptf/ptf_sphere
|
- ptf/ptf_sphere
|
||||||
- ptf/ptf_torus
|
- ptf/ptf_torus
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
- Turtle
|
- Turtle
|
||||||
|
67
docs/lib2x-ptf_rotate.md
Normal file
67
docs/lib2x-ptf_rotate.md
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
# ptf_rotate
|
||||||
|
|
||||||
|
Rotates a point `a` degrees around the axis of the coordinate system or an arbitrary axis. It behaves as the built-in `rotate` module
|
||||||
|
|
||||||
|
## Parameters
|
||||||
|
|
||||||
|
- `point` : A 3D point `[x, y, z]` or a 2D point `[x, y]`.
|
||||||
|
- `a` : If it's `[deg_x, deg_y, deg_z]`, the rotation is applied in the order `x`, `y`, `z`. If it's `[deg_x, deg_y]`, the rotation is applied in the order `x`, `y`. If it's`[deg_x]`, the rotation is only applied to the `x` axis. If it's an number, the rotation is only applied to the `z` axis or an arbitrary axis.
|
||||||
|
- `v`: A vector allows you to set an arbitrary axis about which the object will be rotated. When `a` is an array, the `v` argument is ignored.
|
||||||
|
|
||||||
|
**Since:** 2.3.
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
use <ptf/ptf_rotate.scad>;
|
||||||
|
|
||||||
|
point = [20, 0, 0];
|
||||||
|
a = [0, -45, 45];
|
||||||
|
|
||||||
|
hull() {
|
||||||
|
sphere(1);
|
||||||
|
translate(ptf_rotate(point, a))
|
||||||
|
rotate(a)
|
||||||
|
sphere(1);
|
||||||
|
}
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
use <ptf/ptf_rotate.scad>;
|
||||||
|
|
||||||
|
radius = 40;
|
||||||
|
step_angle = 10;
|
||||||
|
z_circles = 20;
|
||||||
|
|
||||||
|
points = [for(a = [0:step_angle:90 * z_circles])
|
||||||
|
ptf_rotate(
|
||||||
|
[radius, 0, 0],
|
||||||
|
[0, -90 + 2 * a / z_circles, a]
|
||||||
|
)
|
||||||
|
];
|
||||||
|
|
||||||
|
for(p = points) {
|
||||||
|
translate(p)
|
||||||
|
sphere(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
%sphere(radius);
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
use <ptf/ptf_rotate.scad>;
|
||||||
|
|
||||||
|
v = [10, 10, 10];
|
||||||
|
|
||||||
|
hull() {
|
||||||
|
sphere(1);
|
||||||
|
translate(v)
|
||||||
|
sphere(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
p = [10, 10, 0];
|
||||||
|
for(i = [0:20:340]) {
|
||||||
|
translate(ptf_rotate(p, a = i, v = v))
|
||||||
|
sphere(1);
|
||||||
|
}
|
||||||
|
|
||||||
|

|
Reference in New Issue
Block a user