mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-16 11:44:50 +02:00
use scad
This commit is contained in:
@@ -8,8 +8,8 @@
|
||||
*
|
||||
**/
|
||||
|
||||
include <__comm__/__frags.scad>;
|
||||
include <__comm__/__nearest_multiple_of_4.scad>;
|
||||
use <__comm__/__frags.scad>;
|
||||
use <__comm__/__nearest_multiple_of_4.scad>;
|
||||
|
||||
module line3d(p1, p2, thickness, p1Style = "CAP_CIRCLE", p2Style = "CAP_CIRCLE") {
|
||||
r = thickness / 2;
|
||||
|
@@ -1,4 +1,5 @@
|
||||
include <unittest.scad>;
|
||||
use <unittest.scad>;
|
||||
use <line3d.scad>;
|
||||
|
||||
module test_line3d() {
|
||||
p1 = [0, 0, 0];
|
||||
@@ -6,97 +7,33 @@ module test_line3d() {
|
||||
thickness = 1;
|
||||
fn = 24;
|
||||
|
||||
module test_line3d_default_caps() {
|
||||
echo("==== test_line3d_default_caps ====");
|
||||
echo("==== test_line3d_default_caps ====");
|
||||
|
||||
include <line3d.scad>;
|
||||
|
||||
module test_line3d_butt(p, r, frags, length, angles) {
|
||||
assertEqualPoint(p1, p);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(14.2829, length);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
module test_line3d_cap(p, r, frags, cap_leng, angles) {
|
||||
assert(p == p1 || p == p2);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(0.3536, cap_leng);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
|
||||
line3d(
|
||||
p1 = p1,
|
||||
p2 = p2,
|
||||
thickness = thickness,
|
||||
$fn = fn
|
||||
);
|
||||
module test_line3d_butt(p, r, frags, length, angles) {
|
||||
assertEqualPoint(p1, p);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(14.2829, length);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
module test_line3d_cap_butt() {
|
||||
echo("==== test_line3d_cap_butt ====");
|
||||
|
||||
include <line3d.scad>;
|
||||
|
||||
module test_line3d_butt(p, r, frags, length, angles) {
|
||||
assertEqualPoint(p1, p);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(14.2829, length);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
module test_line3d_cap(p, r, frags, cap_leng, angles) {
|
||||
fail("Should not be invoked!!");
|
||||
}
|
||||
|
||||
line3d(
|
||||
p1 = p1,
|
||||
p2 = p2,
|
||||
thickness = thickness,
|
||||
p1Style = "CAP_BUTT",
|
||||
p2Style = "CAP_BUTT",
|
||||
$fn = fn
|
||||
);
|
||||
}
|
||||
module test_line3d_cap(p, r, frags, cap_leng, angles) {
|
||||
assert(p == p1 || p == p2);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(0.3536, cap_leng);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
|
||||
module test_line3d_cap_sphere() {
|
||||
echo("==== test_line3d_cap_sphere ====");
|
||||
|
||||
include <line3d.scad>;
|
||||
|
||||
module test_line3d_butt(p, r, frags, length, angles) {
|
||||
assertEqualPoint(p1, p);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(14.2829, length);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
module test_line3d_cap(p, r, frags, cap_leng, angles) {
|
||||
assert(p == p1 || p == p2);
|
||||
assertEqualNum(thickness / 2, r);
|
||||
assertEqualNum(fn, frags);
|
||||
assertEqualNum(0.5043, cap_leng);
|
||||
assertEqualPoint([0, 45.5618, 11.3099], angles);
|
||||
}
|
||||
|
||||
line3d(
|
||||
p1 = p1,
|
||||
p2 = p2,
|
||||
thickness = thickness,
|
||||
p1Style = "CAP_SPHERE",
|
||||
p2Style = "CAP_SPHERE",
|
||||
$fn = fn
|
||||
);
|
||||
}
|
||||
line3d(
|
||||
p1 = p1,
|
||||
p2 = p2,
|
||||
thickness = thickness,
|
||||
$fn = fn
|
||||
);
|
||||
|
||||
test_line3d_default_caps();
|
||||
test_line3d_cap_butt();
|
||||
test_line3d_cap_sphere();
|
||||
}
|
||||
|
||||
test_line3d();
|
Reference in New Issue
Block a user