mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-13 18:24:28 +02:00
check vector
This commit is contained in:
@@ -8,6 +8,8 @@
|
|||||||
*
|
*
|
||||||
**/
|
**/
|
||||||
|
|
||||||
|
include <__private__/__is_vector.scad>;
|
||||||
|
|
||||||
function _q_rotation(a, v) =
|
function _q_rotation(a, v) =
|
||||||
let(
|
let(
|
||||||
half_a = a / 2,
|
half_a = a / 2,
|
||||||
@@ -67,14 +69,13 @@ function _m_zRotation(a) =
|
|||||||
];
|
];
|
||||||
|
|
||||||
function _to_avect(a) =
|
function _to_avect(a) =
|
||||||
len(a) == 3 ? a : (
|
let(leng = len(a))
|
||||||
len(a) == 2 ? [a[0], a[1], 0] : (
|
leng == 3 ? a : (
|
||||||
len(a) == 1 ? [a[0], 0, 0] : [0, 0, a]
|
leng == 2 ? [a[0], a[1], 0] : [a[0], 0, 0]
|
||||||
)
|
|
||||||
);
|
);
|
||||||
|
|
||||||
function _xyz_rotation(a) =
|
function _xyz_rotation(a) =
|
||||||
let(ang = _to_avect(a))
|
let(ang = __is_vector(a) ? _to_avect(a) : [0, 0, a])
|
||||||
_m_zRotation(ang[2]) * _m_yRotation(ang[1]) * _m_xRotation(ang[0]);
|
_m_zRotation(ang[2]) * _m_yRotation(ang[1]) * _m_xRotation(ang[0]);
|
||||||
|
|
||||||
function m_rotation(a, v) =
|
function m_rotation(a, v) =
|
||||||
|
Reference in New Issue
Block a user