Changed all BOSL references to BOSL2.

This commit is contained in:
Revar Desmera 2019-04-18 23:45:46 -07:00
parent 6b0e796462
commit a46ea27fca
34 changed files with 145 additions and 146 deletions

View file

@ -1,12 +1,12 @@
# BOSL
The Belfry OpenScad Library - A library of tools, shapes, and helpers to make OpenScad easier to use.
# BOSL2
The Belfry OpenScad Library, v2 - A library of tools, shapes, and helpers to make OpenScad easier to use.
This library is a set of useful tools, shapes and manipulators that I developed while working on various
projects, including large ones like the Snappy-Reprap printed 3D printer.
## Terminology
For purposes of the BOSL library, the following terms apply:
For purposes of the BOSL2 library, the following terms apply:
- **Left**: Towards X-
- **Right**: Towards X+
- **Front**/**Forward**: Towards Y-
@ -30,7 +30,7 @@ align | Side of the origin that the part should be on. Given as a vector away
## Examples
A lot of the features of this library are to allow shorter, easier-to-read, intent-based coding. For example:
[`BOSL/transforms.scad`](https://github.com/revarbat/BOSL/wiki/transforms.scad) Examples | Raw OpenSCAD Equivalent
[`BOSL2/transforms.scad`](https://github.com/revarbat/BOSL2/wiki/transforms.scad) Examples | Raw OpenSCAD Equivalent
------------------------------- | -------------------------------
`up(5)` | `translate([0,0,5])`
`xrot(30,cp=[0,10,20])` | `translate([0,10,20]) rotate([30,0,0]) translate([0,-10,-20])`
@ -38,7 +38,7 @@ A lot of the features of this library are to allow shorter, easier-to-read, inte
`zring(n=6,r=20)` | `for (zr=[0:5]) rotate([0,0,zr*60]) translate([20,0,0])`
`skew_xy(xa=30,ya=45)` | `multmatrix([[1,0,tan(30),0],[0,1,tan(45),0],[0,0,1,0],[0,0,0,1]])`
[`BOSL/shapes.scad`](https://github.com/revarbat/BOSL/wiki/shapes.scad) Examples | Raw OpenSCAD Equivalent
[`BOSL2/shapes.scad`](https://github.com/revarbat/BOSL2/wiki/shapes.scad) Examples | Raw OpenSCAD Equivalent
---------------------------------- | -------------------------------
`upcube([10,20,30]);` | `translate([0,0,15]) cube([10,20,30], center=true);`
`cuboid([20,20,30], fillet=5, edges=EDGES_Z_ALL);` | `minkowski() {cube([10,10,20], center=true); sphere(r=5, $fn=32);}`
@ -46,7 +46,7 @@ A lot of the features of this library are to allow shorter, easier-to-read, inte
`xcyl(l=20,d=4);` | `rotate([0,90,0]) cylinder(h=20, d=4, center=true);`
`cyl(l=100, d=40, fillet=5);` | `translate([0,0,50]) minkowski() {cylinder(h=90, d=30, center=true); sphere(r=5);}`
[`BOSL/masks.scad`](https://github.com/revarbat/BOSL/wiki/masks.scad) Examples | Raw Openscad Equivalent
[`BOSL2/masks.scad`](https://github.com/revarbat/BOSL2/wiki/masks.scad) Examples | Raw Openscad Equivalent
----------------------------------- | -------------------------------
`chamfer_mask_z(l=20,chamfer=5);` | `rotate(45) cube([5*sqrt(2), 5*sqrt(2), 20], center=true);`
`fillet_mask_z(l=20,fillet=5);` | `difference() {cube([10,10,20], center=true); for(dx=[-5,5],dy=[-5,5]) translate([dx,dy,0]) cylinder(h=20.1, r=5, center=true);}`
@ -57,30 +57,30 @@ A lot of the features of this library are to allow shorter, easier-to-read, inte
The library files are as follows:
### Commonly Used
- [`transforms.scad`](https://github.com/revarbat/BOSL/wiki/transforms.scad): The most commonly used transformations, manipulations, and shortcuts are in this file.
- [`shapes.scad`](https://github.com/revarbat/BOSL/wiki/shapes.scad): Common useful shapes and structured objects.
- [`masks.scad`](https://github.com/revarbat/BOSL/wiki/masks.scad): Shapes that are useful for masking with `difference()` and `intersect()`.
- [`threading.scad`](https://github.com/revarbat/BOSL/wiki/threading.scad): Modules to make triangular and trapezoidal threaded rods and nuts.
- [`paths.scad`](https://github.com/revarbat/BOSL/wiki/paths.scad): Functions and modules to work with arbitrary 3D paths.
- [`beziers.scad`](https://github.com/revarbat/BOSL/wiki/beziers.scad): Functions and modules to work with bezier curves.
- [`transforms.scad`](https://github.com/revarbat/BOSL2/wiki/transforms.scad): The most commonly used transformations, manipulations, and shortcuts are in this file.
- [`shapes.scad`](https://github.com/revarbat/BOSL2/wiki/shapes.scad): Common useful shapes and structured objects.
- [`masks.scad`](https://github.com/revarbat/BOSL2/wiki/masks.scad): Shapes that are useful for masking with `difference()` and `intersect()`.
- [`threading.scad`](https://github.com/revarbat/BOSL2/wiki/threading.scad): Modules to make triangular and trapezoidal threaded rods and nuts.
- [`paths.scad`](https://github.com/revarbat/BOSL2/wiki/paths.scad): Functions and modules to work with arbitrary 3D paths.
- [`beziers.scad`](https://github.com/revarbat/BOSL2/wiki/beziers.scad): Functions and modules to work with bezier curves.
### Standard Parts
- [`involute_gears.scad`](https://github.com/revarbat/BOSL/wiki/involute_gears.scad): Modules and functions to make involute gears and racks.
- [`joiners.scad`](https://github.com/revarbat/BOSL/wiki/joiners.scad): Modules to make joiner shapes for connecting separately printed objects.
- [`sliders.scad`](https://github.com/revarbat/BOSL/wiki/sliders.scad): Modules for creating simple sliders and rails.
- [`metric_screws.scad`](https://github.com/revarbat/BOSL/wiki/metric_screws.scad): Functions and modules to make metric screws, nuts, and screwholes.
- [`linear_bearings.scad`](https://github.com/revarbat/BOSL/wiki/linear_bearings.scad): Modules to make mounts for LMxUU style linear bearings.
- [`nema_steppers.scad`](https://github.com/revarbat/BOSL/wiki/nema_steppers.scad): Modules to make mounting holes for NEMA motors.
- [`phillips_drive.scad`](https://github.com/revarbat/BOSL/wiki/phillips_drive.scad): Modules to create Phillips screwdriver tips.
- [`torx_drive.scad`](https://github.com/revarbat/BOSL/wiki/torx_drive.scad): Functions and Modules to create Torx bit drive holes.
- [`wiring.scad`](https://github.com/revarbat/BOSL/wiki/wiring.scad): Modules to render routed bundles of wires.
- [`involute_gears.scad`](https://github.com/revarbat/BOSL2/wiki/involute_gears.scad): Modules and functions to make involute gears and racks.
- [`joiners.scad`](https://github.com/revarbat/BOSL2/wiki/joiners.scad): Modules to make joiner shapes for connecting separately printed objects.
- [`sliders.scad`](https://github.com/revarbat/BOSL2/wiki/sliders.scad): Modules for creating simple sliders and rails.
- [`metric_screws.scad`](https://github.com/revarbat/BOSL2/wiki/metric_screws.scad): Functions and modules to make metric screws, nuts, and screwholes.
- [`linear_bearings.scad`](https://github.com/revarbat/BOSL2/wiki/linear_bearings.scad): Modules to make mounts for LMxUU style linear bearings.
- [`nema_steppers.scad`](https://github.com/revarbat/BOSL2/wiki/nema_steppers.scad): Modules to make mounting holes for NEMA motors.
- [`phillips_drive.scad`](https://github.com/revarbat/BOSL2/wiki/phillips_drive.scad): Modules to create Phillips screwdriver tips.
- [`torx_drive.scad`](https://github.com/revarbat/BOSL2/wiki/torx_drive.scad): Functions and Modules to create Torx bit drive holes.
- [`wiring.scad`](https://github.com/revarbat/BOSL2/wiki/wiring.scad): Modules to render routed bundles of wires.
### Miscellaneous
- [`math.scad`](https://github.com/revarbat/BOSL/wiki/math.scad): Useful helper functions.
- [`constants.scad`](https://github.com/revarbat/BOSL/wiki/constants.scad): Useful constants for vectors, edges, etc.
- [`quaternions.scad`](https://github.com/revarbat/BOSL/wiki/quaternions.scad): Functions to work with quaternion rotations.
- [`debug.scad`](https://github.com/revarbat/BOSL/wiki/debug.scad): Modules to help debug creation of beziers, `polygons()`s and `polyhedron()`s
- [`math.scad`](https://github.com/revarbat/BOSL2/wiki/math.scad): Useful helper functions.
- [`constants.scad`](https://github.com/revarbat/BOSL2/wiki/constants.scad): Useful constants for vectors, edges, etc.
- [`quaternions.scad`](https://github.com/revarbat/BOSL2/wiki/quaternions.scad): Functions to work with quaternion rotations.
- [`debug.scad`](https://github.com/revarbat/BOSL2/wiki/debug.scad): Modules to help debug creation of beziers, `polygons()`s and `polyhedron()`s
## Documentation
The full library docs can be found at https://github.com/revarbat/BOSL/wiki
The full library docs can be found at https://github.com/revarbat/BOSL2/wiki

View file

@ -3,8 +3,8 @@
// Bezier functions and modules.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/beziers.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/beziers.scad>
// ```
//////////////////////////////////////////////////////////////////////
@ -830,7 +830,7 @@ function bezier_triangle(tri, splinesteps=16, vertices=[], faces=[]) =
// Arguments:
// size = 2D XY size of the patch.
// N = Degree of the patch to generate. Since this is flat, a degree of 1 should usually be sufficient.
// orient = The orientation to rotate the edge patch into. Use the `ORIENT` constants in `BOSL/constants.scad`.
// orient = The orientation to rotate the edge patch into. Use the `ORIENT` constants in `constants.scad`.
// trans = Amount to translate patch, after rotating to `orient`.
// Example(3D):
// patch = bezier_patch_flat(size=[100,100], N=3);

View file

@ -3,7 +3,7 @@
// Useful Constants.
// To use this, add the following line to the top of your file.
// ```
// include <BOSL/constants.scad>
// include <BOSL2/constants.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,13 +3,13 @@
// Functions to create 2D and 3D convex hulls.
// To use, add the following line to the beginning of your file:
// ```
// include <BOSL/convex_hull.scad>
// include <BOSL2/convex_hull.scad>
// ```
// Derived from Linde's Hull:
// - https://github.com/openscad/scad-utils
//////////////////////////////////////////////////////////////////////
include <BOSL/math.scad>
include <math.scad>

View file

@ -3,8 +3,8 @@
// Helpers to make debugging OpenScad code easier.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/debug.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/debug.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -1,8 +1,8 @@
include <BOSL/constants.scad>
include <BOSL/transforms.scad>
include <BOSL/primitives.scad>
include <BOSL/shapes.scad>
include <BOSL/debug.scad>
include <BOSL2/constants.scad>
include <BOSL2/transforms.scad>
include <BOSL2/primitives.scad>
include <BOSL2/shapes.scad>
include <BOSL2/debug.scad>
cuboid([60,40,40], fillet=5, edges=EDGES_Z_ALL, align="bottom") {
attach("top") rounded_prismoid([60,40],[20,20], h=50, r1=5, r2=10) {

View file

@ -1,7 +1,7 @@
include <BOSL/constants.scad>
use <BOSL/transforms.scad>
use <BOSL/beziers.scad>
use <BOSL/math.scad>
include <BOSL2/constants.scad>
use <BOSL2/transforms.scad>
use <BOSL2/beziers.scad>
use <BOSL2/math.scad>
function CR_corner(size, orient=[0,0,0], trans=[0,0,0]) =

View file

@ -1,6 +1,6 @@
include <BOSL/constants.scad>
include <BOSL/primitives.scad>
include <BOSL/debug.scad>
include <BOSL2/constants.scad>
include <BOSL2/primitives.scad>
include <BOSL2/debug.scad>
cylinder(h=30, d1=50, d2=30) show_connectors("cylinder");

View file

@ -1,7 +1,7 @@
include <BOSL/constants.scad>
include <BOSL/transforms.scad>
include <BOSL/primitives.scad>
include <BOSL/beziers.scad>
include <BOSL2/constants.scad>
include <BOSL2/transforms.scad>
include <BOSL2/primitives.scad>
include <BOSL2/beziers.scad>
module leaf(s) {
path = [

View file

@ -1,6 +1,6 @@
use <BOSL/transforms.scad>
use <BOSL/math.scad>
include <BOSL/constants.scad>
use <BOSL2/transforms.scad>
use <BOSL2/math.scad>
include <BOSL2/constants.scad>
// Shows all the orientations on cubes in their correct rotations.

View file

@ -1,6 +1,6 @@
include <BOSL/constants.scad>
include <BOSL/shapes.scad>
include <BOSL/debug.scad>
include <BOSL2/constants.scad>
include <BOSL2/shapes.scad>
include <BOSL2/debug.scad>
prismoid([60,40], [30,20], h=40) show_connectors();

View file

@ -1,7 +1,7 @@
include <BOSL/constants.scad>
include <BOSL/transforms.scad>
include <BOSL/primitives.scad>
include <BOSL/shapes.scad>
include <BOSL2/constants.scad>
include <BOSL2/transforms.scad>
include <BOSL2/primitives.scad>
include <BOSL2/shapes.scad>
diff("hole", "body pole")

View file

@ -19,8 +19,8 @@
//
// To use, add the following line to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/involute_gears.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/involute_gears.scad>
// ```
//////////////////////////////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Snap-together joiners.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/joiners.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/joiners.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Linear Bearing clips/holders.
// To use, add these lines to the top of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/linear_bearings.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/linear_bearings.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Masking shapes.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/masks.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/masks.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,7 +3,7 @@
// Math helper functions.
// To use, add the following lines to the beginning of your file:
// ```
// use <BOSL/math.scad>
// use <BOSL2/math.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Screws, Bolts, and Nuts.
// To use, include the following lines at the top of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/metric_screws.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/metric_screws.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Masks and models for NEMA stepper motors.
// To use, add these lines to the top of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/nema_steppers.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/nema_steppers.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Polylines, polygons and paths.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/paths.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/paths.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Phillips driver bits
// To use, add these lines to the top of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/phillips_drive.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/phillips_drive.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -1,11 +1,11 @@
//////////////////////////////////////////////////////////////////////
// LibFile: primitives.scad
// The basic built-in shapes, reworked to integrate better with
// other BOSL library shapes and utilities.
// other BOSL2 library shapes and utilities.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/primitives.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/primitives.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,7 +3,7 @@
// Support for Quaternions.
// To use, add the following line to the beginning of your file:
// ```
// use <BOSL/quaternions.scad>
// use <BOSL2/quaternions.scad>
// ```
///////////////////////////////////////////

View file

@ -101,9 +101,9 @@ class ImageProcessing(object):
stdlibs = ["constants.scad", "math.scad", "transforms.scad", "shapes.scad", "debug.scad"]
script = ""
for lib in stdlibs:
script += "include <BOSL/%s>\n" % lib
script += "include <BOSL2/%s>\n" % lib
if libfile not in stdlibs:
script += "include <BOSL/%s>\n" % libfile
script += "include <BOSL2/%s>\n" % libfile
for line in self.commoncode:
script += line+"\n"
for line in code:

View file

@ -3,10 +3,10 @@
PREVIEW_LIBS="constants compat transforms shapes masks paths beziers math metric_screws threading involute_gears sliders joiners linear_bearings nema_steppers wiring triangulation quaternions phillips_drive torx_drive debug"
dir="$(basename $PWD)"
if [ "$dir" = "BOSL" ]; then
cd BOSL.wiki
elif [ "$dir" != "BOSL.wiki" ]; then
echo "Must run this script from the BOSL or BOSL/BOSL.wiki directories."
if [ "$dir" = "BOSL2" ]; then
cd BOSL2.wiki
elif [ "$dir" != "BOSL2.wiki" ]; then
echo "Must run this script from the BOSL2 or BOSL2/BOSL2.wiki directories."
exit 1
fi

View file

@ -3,8 +3,8 @@
// Common useful shapes and structured objects.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/shapes.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/shapes.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Simple V-groove based sliders and rails.
// To use, add these lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/sliders.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/sliders.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
include <BOSL/math.scad>
include <BOSL/convex_hull.scad>
include <BOSL2/math.scad>
include <BOSL2/convex_hull.scad>
testpoints_on_sphere = [ for(p =

View file

@ -1,7 +1,6 @@
include <BOSL/constants.scad>
include <BOSL/math.scad>
include <BOSL2/constants.scad>
include <BOSL2/math.scad>
eps = 1e-9;
// Simple Calculations
@ -112,61 +111,61 @@ test_hypot();
module test_sinh() {
assert(abs(sinh(-2)+3.6268604078) < eps);
assert(abs(sinh(-1)+1.1752011936) < eps);
assert(abs(sinh(0)) < eps);
assert(abs(sinh(1)-1.1752011936) < eps);
assert(abs(sinh(2)-3.6268604078) < eps);
assert(abs(sinh(-2)+3.6268604078) < EPSILON);
assert(abs(sinh(-1)+1.1752011936) < EPSILON);
assert(abs(sinh(0)) < EPSILON);
assert(abs(sinh(1)-1.1752011936) < EPSILON);
assert(abs(sinh(2)-3.6268604078) < EPSILON);
}
test_sinh();
module test_cosh() {
assert(abs(cosh(-2)-3.7621956911) < eps);
assert(abs(cosh(-1)-1.5430806348) < eps);
assert(abs(cosh(0)-1) < eps);
assert(abs(cosh(1)-1.5430806348) < eps);
assert(abs(cosh(2)-3.7621956911) < eps);
assert(abs(cosh(-2)-3.7621956911) < EPSILON);
assert(abs(cosh(-1)-1.5430806348) < EPSILON);
assert(abs(cosh(0)-1) < EPSILON);
assert(abs(cosh(1)-1.5430806348) < EPSILON);
assert(abs(cosh(2)-3.7621956911) < EPSILON);
}
test_cosh();
module test_tanh() {
assert(abs(tanh(-2)+0.9640275801) < eps);
assert(abs(tanh(-1)+0.761594156) < eps);
assert(abs(tanh(0)) < eps);
assert(abs(tanh(1)-0.761594156) < eps);
assert(abs(tanh(2)-0.9640275801) < eps);
assert(abs(tanh(-2)+0.9640275801) < EPSILON);
assert(abs(tanh(-1)+0.761594156) < EPSILON);
assert(abs(tanh(0)) < EPSILON);
assert(abs(tanh(1)-0.761594156) < EPSILON);
assert(abs(tanh(2)-0.9640275801) < EPSILON);
}
test_tanh();
module test_asinh() {
assert(abs(asinh(sinh(-2))+2) < eps);
assert(abs(asinh(sinh(-1))+1) < eps);
assert(abs(asinh(sinh(0))) < eps);
assert(abs(asinh(sinh(1))-1) < eps);
assert(abs(asinh(sinh(2))-2) < eps);
assert(abs(asinh(sinh(-2))+2) < EPSILON);
assert(abs(asinh(sinh(-1))+1) < EPSILON);
assert(abs(asinh(sinh(0))) < EPSILON);
assert(abs(asinh(sinh(1))-1) < EPSILON);
assert(abs(asinh(sinh(2))-2) < EPSILON);
}
test_asinh();
module test_acosh() {
assert(abs(acosh(cosh(-2))-2) < eps);
assert(abs(acosh(cosh(-1))-1) < eps);
assert(abs(acosh(cosh(0))) < eps);
assert(abs(acosh(cosh(1))-1) < eps);
assert(abs(acosh(cosh(2))-2) < eps);
assert(abs(acosh(cosh(-2))-2) < EPSILON);
assert(abs(acosh(cosh(-1))-1) < EPSILON);
assert(abs(acosh(cosh(0))) < EPSILON);
assert(abs(acosh(cosh(1))-1) < EPSILON);
assert(abs(acosh(cosh(2))-2) < EPSILON);
}
test_acosh();
module test_atanh() {
assert(abs(atanh(tanh(-2))+2) < eps);
assert(abs(atanh(tanh(-1))+1) < eps);
assert(abs(atanh(tanh(0))) < eps);
assert(abs(atanh(tanh(1))-1) < eps);
assert(abs(atanh(tanh(2))-2) < eps);
assert(abs(atanh(tanh(-2))+2) < EPSILON);
assert(abs(atanh(tanh(-1))+1) < EPSILON);
assert(abs(atanh(tanh(0))) < EPSILON);
assert(abs(atanh(tanh(1))-1) < EPSILON);
assert(abs(atanh(tanh(2))-2) < EPSILON);
}
test_atanh();
@ -519,11 +518,11 @@ module test_normalize() {
assert(normalize([10,0,0]) == [1,0,0]);
assert(normalize([0,10,0]) == [0,1,0]);
assert(normalize([0,0,10]) == [0,0,1]);
assert(abs(norm(normalize([10,10,10]))-1) < eps);
assert(abs(norm(normalize([-10,-10,-10]))-1) < eps);
assert(abs(norm(normalize([-10,0,0]))-1) < eps);
assert(abs(norm(normalize([0,-10,0]))-1) < eps);
assert(abs(norm(normalize([0,0,-10]))-1) < eps);
assert(abs(norm(normalize([10,10,10]))-1) < EPSILON);
assert(abs(norm(normalize([-10,-10,-10]))-1) < EPSILON);
assert(abs(norm(normalize([-10,0,0]))-1) < EPSILON);
assert(abs(norm(normalize([0,-10,0]))-1) < EPSILON);
assert(abs(norm(normalize([0,0,-10]))-1) < EPSILON);
}
test_normalize();
@ -539,18 +538,18 @@ module test_vector_angle() {
assert(vector_angle(a,b)==90);
}
}
assert(abs(vector_angle([10,10,0],[10,0,0])-45) < eps);
assert(abs(vector_angle([10,10,0],[10,0,0])-45) < EPSILON);
}
test_vector_angle();
module test_vector_axis() {
assert(norm(vector_axis([10,0,0],[10,10,0]) - [0,0,1]) < eps);
assert(norm(vector_axis([10,0,0],[0,10,0]) - [0,0,1]) < eps);
assert(norm(vector_axis([0,10,0],[10,0,0]) - [0,0,-1]) < eps);
assert(norm(vector_axis([0,0,10],[10,0,0]) - [0,1,0]) < eps);
assert(norm(vector_axis([10,0,0],[0,0,10]) - [0,-1,0]) < eps);
assert(norm(vector_axis([10,0,10],[0,-10,0]) - [sin(45),0,-sin(45)]) < eps);
assert(norm(vector_axis([10,0,0],[10,10,0]) - [0,0,1]) < EPSILON);
assert(norm(vector_axis([10,0,0],[0,10,0]) - [0,0,1]) < EPSILON);
assert(norm(vector_axis([0,10,0],[10,0,0]) - [0,0,-1]) < EPSILON);
assert(norm(vector_axis([0,0,10],[10,0,0]) - [0,1,0]) < EPSILON);
assert(norm(vector_axis([10,0,0],[0,0,10]) - [0,-1,0]) < EPSILON);
assert(norm(vector_axis([10,0,10],[0,-10,0]) - [sin(45),0,-sin(45)]) < EPSILON);
}
test_vector_axis();

View file

@ -3,8 +3,8 @@
// Triangular and Trapezoidal-Threaded Screw Rods and Nuts.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/threading.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/threading.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// Torx driver bits
// To use, add these lines to the top of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/torx_drive.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/torx_drive.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,8 +3,8 @@
// This is the file that the most commonly used transformations, distributors, and mutator are in.
// To use, add the following lines to the beginning of your file:
// ```
// include <BOSL/constants.scad>
// use <BOSL/transforms.scad>
// include <BOSL2/constants.scad>
// use <BOSL2/transforms.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,7 +3,7 @@
// Functions to triangulate polyhedron faces.
// To use, add the following lines to the beginning of your file:
// ```
// use <BOSL/triangulation.scad>
// use <BOSL2/triangulation.scad>
// ```
//////////////////////////////////////////////////////////////////////

View file

@ -3,7 +3,7 @@
// Rendering for wiring bundles
// To use, include the following line at the top of your file:
// ```
// use <BOSL/wiring.scad>
// use <BOSL2/wiring.scad>
// ```
//////////////////////////////////////////////////////////////////////