1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-17 12:10:47 +02:00
This commit is contained in:
Justin Lin
2020-01-27 15:13:08 +08:00
parent 3ae3029b57
commit 4b0974807c
2 changed files with 25 additions and 88 deletions

View File

@@ -8,8 +8,8 @@
* *
**/ **/
include <__comm__/__frags.scad>; use <__comm__/__frags.scad>;
include <__comm__/__nearest_multiple_of_4.scad>; use <__comm__/__nearest_multiple_of_4.scad>;
module line3d(p1, p2, thickness, p1Style = "CAP_CIRCLE", p2Style = "CAP_CIRCLE") { module line3d(p1, p2, thickness, p1Style = "CAP_CIRCLE", p2Style = "CAP_CIRCLE") {
r = thickness / 2; r = thickness / 2;

View File

@@ -1,4 +1,5 @@
include <unittest.scad>; use <unittest.scad>;
use <line3d.scad>;
module test_line3d() { module test_line3d() {
p1 = [0, 0, 0]; p1 = [0, 0, 0];
@@ -6,11 +7,8 @@ module test_line3d() {
thickness = 1; thickness = 1;
fn = 24; 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) { module test_line3d_butt(p, r, frags, length, angles) {
assertEqualPoint(p1, p); assertEqualPoint(p1, p);
assertEqualNum(thickness / 2, r); assertEqualNum(thickness / 2, r);
@@ -34,69 +32,8 @@ module test_line3d() {
thickness = thickness, thickness = thickness,
$fn = fn $fn = fn
); );
}
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_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
);
}
test_line3d_default_caps(); test_line3d_default_caps();
test_line3d_cap_butt();
test_line3d_cap_sphere();
} }
test_line3d(); test_line3d();