diff --git a/printed/butt_box.scad b/printed/butt_box.scad
index 8096bb3..31ac817 100644
--- a/printed/butt_box.scad
+++ b/printed/butt_box.scad
@@ -54,7 +54,7 @@ function bbox(screw, sheets, base_sheet, top_sheet, span, size, name = "bbox", s
[ screw, sheets, base_sheet, top_sheet, span, size.x, size.y, size.z, name, skip_blocks, star_washers ];
function bbox_volume(type) = bbox_width(type) * bbox_depth(type) * bbox_height(type) / 1000000; //! Internal volume in litres
-function bbox_area(type) = let(w = bbox_width(type), d = bbox_depth(type), h = bbox_height(type)) //! Internal surdface area in m^2
+function bbox_area(type) = let(w = bbox_width(type), d = bbox_depth(type), h = bbox_height(type)) //! Internal surface area in m^2
2 * (w * d + w * h + d * h) / 1000000;
module bbox_shelf_blank(type) { //! 2D template for a shelf
diff --git a/printed/door_hinge.scad b/printed/door_hinge.scad
index 452aa6c..d220a0b 100644
--- a/printed/door_hinge.scad
+++ b/printed/door_hinge.scad
@@ -45,7 +45,7 @@ function door_hinge_stat_screw() = stat_screw; //! Screw use to fas
function door_hinge_stat_width() = stat_width; //! Width of the stationary part
function door_hinge_stat_length() = stat_length; //! Length of the stationary part
-module door_hinge_hole_positions(dir = 0) { //! Position chidren at the door hole positions
+module door_hinge_hole_positions(dir = 0) { //! Position children at the door hole positions
hole_pitch = width - 10;
for(side = [-1, 1])
diff --git a/printed/door_latch.scad b/printed/door_latch.scad
index cf100ff..1af87ef 100644
--- a/printed/door_latch.scad
+++ b/printed/door_latch.scad
@@ -57,7 +57,7 @@ module door_latch_stl() { //! Generates the STL for the printed part
}
}
-module door_latch_assembly(sheet_thickness = 3) { //! The assembly for a specified sheet thickess
+module door_latch_assembly(sheet_thickness = 3) { //! The assembly for a specified sheet thickness
washer = screw_washer(screw);
nut = screw_nut(screw);
diff --git a/printed/drag_chain.scad b/printed/drag_chain.scad
index 63fb768..34b393b 100644
--- a/printed/drag_chain.scad
+++ b/printed/drag_chain.scad
@@ -20,7 +20,7 @@
//
//! Parametric cable drag chain to limit the bend radius of a cable run.
//!
-//! Each link has a maximum bend angle of 45°, so the mininium radius is proportional to the link length.
+//! Each link has a maximum bend angle of 45°, so the minimum radius is proportional to the link length.
//!
//! The travel property is how far it can move in each direction, i.e. half the maximum travel if the chain is mounted in the middle of the travel.
//!
diff --git a/printed/fan_guard.scad b/printed/fan_guard.scad
index 46ff114..f539d91 100644
--- a/printed/fan_guard.scad
+++ b/printed/fan_guard.scad
@@ -17,7 +17,7 @@
// If not, see .
//
-//! Pintable fan finger guard to match the specified fan. To be `include`d, not `use`d.
+//! Printable fan finger guard to match the specified fan. To be `include`d, not `use`d.
//!
//! The ring spacing as well as the number of spokes can be specified, if zero a gasket is generated instead of a guard.
//
diff --git a/printed/flat_hinge.scad b/printed/flat_hinge.scad
index 0a4d25a..98b8c29 100644
--- a/printed/flat_hinge.scad
+++ b/printed/flat_hinge.scad
@@ -40,7 +40,7 @@ function hinge_knuckles(type) = type[6]; //! How many knuckles
function hinge_screw(type) = type[7]; //! Screw type to mount it
function hinge_screws(type) = type[8]; //! How many screws
function hinge_clearance(type) = type[9]; //! Clearance between knuckles
-function hinge_margin(type) = type[10]; //! How far to keep the screws from the knuckes
+function hinge_margin(type) = type[10]; //! How far to keep the screws from the knuckles
function flat_hinge(name, size, pin_d, knuckle_d, knuckles, screw, screws, clearance, margin) = //! Construct the property list for a flat hinge.
[name, size.x, size.y, size.z, pin_d, knuckle_d, knuckles, screw, screws, clearance, margin];
@@ -73,7 +73,7 @@ module hinge_male(type, female = false) { //! The half with the stationary
assert(kr > pr, "knuckle diameter must be bigger than the pin diameter");
n = hinge_knuckles(type);
- assert(n >= 3, "must be at least three knuckes");
+ assert(n >= 3, "must be at least three knuckles");
mn = ceil(n / 2); // Male knuckles
fn = floor(n / 2); // Female knuckles
gap = hinge_clearance(type);
diff --git a/scripts/options.py b/scripts/options.py
index deaddcf..042835e 100644
--- a/scripts/options.py
+++ b/scripts/options.py
@@ -17,7 +17,7 @@
# If not, see .
#
-# Set command line options from enviroment variables and check if they have changed
+# Set command line options from environment variables and check if they have changed
import json, os, deps
from colorama import Fore, init
diff --git a/scripts/views.py b/scripts/views.py
index 6ddcb9a..98b323f 100755
--- a/scripts/views.py
+++ b/scripts/views.py
@@ -82,7 +82,7 @@ def bom_to_assemblies(bom_dir, bounds_map):
return [assembly["name"] for assembly in flat_bom]
def eop(doc_file, last = False, first = False):
- print('', file = doc_file) # An invisable marker for page breaks because markdown takes much longer if the document contains a div
+ print('', file = doc_file) # An invisible marker for page breaks because markdown takes much longer if the document contains a div
if not first:
print('[Top](#TOP)', file = doc_file)
if not last:
diff --git a/utils/core/polyholes.scad b/utils/core/polyholes.scad
index 6370b34..c5e4c5e 100644
--- a/utils/core/polyholes.scad
+++ b/utils/core/polyholes.scad
@@ -28,12 +28,12 @@
//! large increase in the number of facets.
//! When set to 1 the polygons alternate each layer, when set higher the rotation takes `twist + 1` layers to repeat.
//! A small additional rotation is added to make the polygon rotate one more side over the length of the hole to make it appear round when
-//! veiwed end on.
+//! viewed end on.
//!
//! When `twist` is set the resulting cylinder is extended by `eps` at each end so that the exact length of the hole can be used without
//! leaving a scar on either surface.
//
-function sides(r, n = undef) = is_undef(n) ? max(round(4 * r), 3) : n ? max(n, 3) : r2sides(r); //! Optimium number of sides for specified radius
+function sides(r, n = undef) = is_undef(n) ? max(round(4 * r), 3) : n ? max(n, 3) : r2sides(r); //! Optimum number of sides for specified radius
function corrected_radius(r, n = undef) = r / cos(180 / sides(r, n)); //! Adjusted radius to make flats lie on the circle
function corrected_diameter(d, n = undef) = 2 * corrected_radius(d / 2 , n); //! Adjusted diameter to make flats lie on the circle
diff --git a/utils/core/teardrops.scad b/utils/core/teardrops.scad
index cbcfd0b..9705517 100644
--- a/utils/core/teardrops.scad
+++ b/utils/core/teardrops.scad
@@ -26,7 +26,7 @@
//
module teardrop(h, r, center = true, truncate = true, chamfer = 0, chamfer_both_ends = true, plus = false) { //! For making horizontal holes that don't need support material, set `truncate = false` to make traditional RepRap teardrops that don't even need bridging
module teardrop_2d(r, truncate) {
- er = layer_height / 2 - eps; // Extrustion edge radius
+ er = layer_height / 2 - eps; // Extrusion edge radius
R = plus ? r + er : r; // Corrected radius
offset = plus ? -er : 0; // Offset inwards
hull()
diff --git a/utils/gears.scad b/utils/gears.scad
index 19f153a..05e7662 100644
--- a/utils/gears.scad
+++ b/utils/gears.scad
@@ -135,4 +135,4 @@ function involute_worm_profile(m, pa = 20, clearance = undef) = //! Calculate wo
let(tooth = involute_rack_tooth_profile(m),
pitch = PI * m,
y_min = min([for(p = tooth) p.y])
- ) [for(p = tooth) [p.x - pitch / 2, p.y - y_min, 0]]; // Offset to be positive in y, centred in x and add 0 z ordintate
+ ) [for(p = tooth) [p.x - pitch / 2, p.y - y_min, 0]]; // Offset to be positive in y, centred in x and add 0 z coordinate
diff --git a/utils/sweep.scad b/utils/sweep.scad
index fcb96ad..3eb29f4 100644
--- a/utils/sweep.scad
+++ b/utils/sweep.scad
@@ -18,7 +18,7 @@
//
//
-//! Utility to generate a polhedron by sweeping a 2D profile along a 3D path and utilities for generating paths.
+//! Utility to generate a polyhedron by sweeping a 2D profile along a 3D path and utilities for generating paths.
//!
//! The initial orientation is the Y axis of the profile points towards the initial center of curvature, Frenet-Serret style.
//! Subsequent rotations use the minimum rotation method.
diff --git a/utils/tube.scad b/utils/tube.scad
index b362d77..20b6a87 100644
--- a/utils/tube.scad
+++ b/utils/tube.scad
@@ -69,7 +69,7 @@ module woven_tube(or, ir, h, center= true, colour = grey(30), colour2, warp = 2,
}
}
-module rectangular_tube(size, center = true, thickness = 1, fillet = 0.5) { //! Create a retangular tube with filleted corners
+module rectangular_tube(size, center = true, thickness = 1, fillet = 0.5) { //! Create a rectangular tube with filleted corners
extrude_if(size.z, center = center)
difference() {
rounded_square([size.x, size.y], fillet);
diff --git a/vitamins/belt.scad b/vitamins/belt.scad
index b076046..4884e3b 100644
--- a/vitamins/belt.scad
+++ b/vitamins/belt.scad
@@ -19,21 +19,21 @@
//
//! Models timing belt running in a path over toothed or smooth pulleys and calculates an accurate length.
-//! Only models 2D paths, belt may twist to support crossed belt core XY and other designes where the belt twists!
+//! Only models 2D paths, belt may twist to support crossed belt core XY and other designs where the belt twists!
//!
//! By default the path is a closed loop. An open loop can be specified by specifying `open=true`, and in that case the start and end points are not connected, leaving the loop open.
//!
//! To get a 180 degree twist of the loop, you can use the `twist` argument. `Twist` can be a single number, and in that case the belt will twist after
//! the position with that number. Alternatively `twist` can be a list of boolean values with a boolean for each position; the belt will then twist after
//! the position that have a `true` value in the `twist` list. If the path is specified with pulley/idler types, then you can use `auto_twist=true`; in
-//! that case the belt will automatically twist so the back of the belt always runs against idlers and the tooth side runs against pullies. If you use
+//! that case the belt will automatically twist so the back of the belt always runs against idlers and the tooth side runs against pulleys. If you use
//! `open=true` then you might also use `start_twist=true` to let the belt start the part with the back side out.
//!
-//! The path must be specified as a list of positions. Each position should be either a vector with `[x, y, pulley]` or `[x, y, r]`. A pully is a type from
+//! The path must be specified as a list of positions. Each position should be either a vector with `[x, y, pulley]` or `[x, y, r]`. A pulley is a type from
//! `pulleys.scad`, and correct radius and angle will automatically be calculated. Alternatively a radius can be specified directly.
//!
//! To make the back of the belt run against a smooth pulley on the outside of the loop specify a negative pitch radius.
-//! Alternativley you can just specify smooth pulleys in the path, and it will then happen automatically.
+//! Alternatively you can just specify smooth pulleys in the path, and it will then happen automatically.
//!
//! Individual teeth are not drawn, instead they are represented by a lighter colour.
//
@@ -60,7 +60,7 @@ module belt(type, points, belt_colour = grey(20), tooth_colour = grey(50), open
info = _belt_points_info(type, points, open, twist, auto_twist, start_twist);
dotwist = info[0]; // array of booleans, true if a twist happen after the position
twisted = info[1]; // array of booleans, true if the belt is twisted at the position
- pointsx = info[2]; // array of [x,y,r], r is negative if left-angle (points may have pulleys as third element, but pointsx have radi)
+ pointsx = info[2]; // array of [x,y,r], r is negative if left-angle (points may have pulleys as third element, but pointsx have radii)
tangents = info[3];
arcs = info[4];
length = ceil(_belt_length(info, open) / pitch) * pitch;
diff --git a/vitamins/cable_strip.scad b/vitamins/cable_strip.scad
index 9ced9e7..0341f22 100644
--- a/vitamins/cable_strip.scad
+++ b/vitamins/cable_strip.scad
@@ -20,7 +20,7 @@
//
//! A strip of polypropylene used with ribbon cable to make a cable flexible in one direction only.
//!
-//! Modelled with a Bezier spline, which is not quite the same as a minimum energy curve but very close, epecially
+//! Modelled with a Bezier spline, which is not quite the same as a minimum energy curve but very close, especially
//! near the extreme positions, where the model needs to be accurate.
//!
//! When the sides are constrained then a circular model is more accurate.
diff --git a/vitamins/camera.scad b/vitamins/camera.scad
index 34dbad0..b4c1717 100644
--- a/vitamins/camera.scad
+++ b/vitamins/camera.scad
@@ -25,7 +25,7 @@ use
function camera_pcb(type) = type[2]; //! The PCB part of the camera
function camera_lens_offset(type) = type[3]; //! Offset of the lens center from the PCB centre
-function camera_lens(type) = type[4]; //! Stack of lens parts, can be round, rectanular or rounded rectangular, with optional tapered aperture
+function camera_lens(type) = type[4]; //! Stack of lens parts, can be round, rectangular or rounded rectangular, with optional tapered aperture
function camera_connector_pos(type) = type[5]; //! The flex connector block for the camera itself's position
function camera_connector_size(type)= type[6]; //! The flex connector block for the camera itself's size
diff --git a/vitamins/display.scad b/vitamins/display.scad
index da3280f..cd76f38 100644
--- a/vitamins/display.scad
+++ b/vitamins/display.scad
@@ -18,7 +18,7 @@
//
//
-//! LCD dispays.
+//! LCD displays.
//
include <../utils/core/core.scad>
diff --git a/vitamins/displays.scad b/vitamins/displays.scad
index d0d21d0..464f5c8 100644
--- a/vitamins/displays.scad
+++ b/vitamins/displays.scad
@@ -53,7 +53,7 @@ LCDS7282BPCB = ["", "", 85, 36, 1.65, 0, 2.56, 0, "green", false, [[-2.5, -2.5],
[]];
LCDS7282B = ["LCDS7282B", "LCD display S-7282B", 73.6, 28.7, 9.6, LCDS7282BPCB,
- [-2.5, 0, 0], // pcb offst
+ [-2.5, 0, 0], // pcb offset
[[-64.5 / 2, -14.5 / 2], [64.5 / 2, 14.5 / 2, 0.6]], // aperture
[], // touch screen
0, // thread length
diff --git a/vitamins/light_strip.scad b/vitamins/light_strip.scad
index 6b2086d..313f8db 100644
--- a/vitamins/light_strip.scad
+++ b/vitamins/light_strip.scad
@@ -21,7 +21,7 @@
//! LED strip lights that can be cut to size.
//!
//! The definitions are for the full length but they can be cut to size by specifying how many segments,
-//! which can by calcuated using `light_strip_segments(type, max_length)`.
+//! which can by calculated using `light_strip_segments(type, max_length)`.
//!
//! The `light_strip_clip()` module makes a clip to go around the light that can be incorporated into a printed bracket to hold it.
//
diff --git a/vitamins/opengrab.scad b/vitamins/opengrab.scad
index ac6dec6..f332ef3 100644
--- a/vitamins/opengrab.scad
+++ b/vitamins/opengrab.scad
@@ -18,9 +18,9 @@
//
//
-//! Nicodrone OpenGrab V3 electro-permananet magnet, see .
+//! Nicodrone OpenGrab V3 electro-permanent magnet, see .
//!
-//! A permanent magnet that can be magnatized and de-magnatized electronically.
+//! A permanent magnet that can be magnetized and de-magnetized electronically.
//
include <../utils/core/core.scad>
use <../utils/thread.scad>
diff --git a/vitamins/panel_meter.scad b/vitamins/panel_meter.scad
index e60a5b1..9cbb1e6 100644
--- a/vitamins/panel_meter.scad
+++ b/vitamins/panel_meter.scad
@@ -23,7 +23,7 @@
//! Notes on the DSN_VC288:
//!
//! * The tabs aren't modelled because they can be fully retracted if the PCB is removed.
-//! * The current connector isn't moddelled as it is awkwardly tall. I remove it and solder wires instead.
+//! * The current connector isn't modelled as it is awkwardly tall. I remove it and solder wires instead.
//
include <../utils/core/core.scad>
diff --git a/vitamins/pcb.scad b/vitamins/pcb.scad
index f2ed988..fed02b0 100644
--- a/vitamins/pcb.scad
+++ b/vitamins/pcb.scad
@@ -45,7 +45,7 @@ function pcb_thickness(type) = type[4]; //! Thickness
function pcb_radius(type) = type[5]; //! Corner radius
function pcb_hole_d(type) = type[6]; //! Mounting hole diameter
function pcb_land_d(type) = type[7]; //! Pad around mounting hole
-function pcb_colour(type) = type[8]; //! Colour of the subtrate
+function pcb_colour(type) = type[8]; //! Colour of the substrate
function pcb_parts_on_bom(type) = type[9]; //! True if the parts should be separate BOM items
function pcb_holes(type) = type[10]; //! List of hole positions
function pcb_components(type) = type[11]; //! List of components
@@ -72,7 +72,7 @@ function pcb_coord(type, p) = let(l = pcb_length(type), w = pcb_width(type)) //!
[(p.x >= 0 ? p.x : l + p.x) - l / 2,
(p.y >= 0 ? p.y : w + p.y) - w / 2];
-module pcb_hole_positions(type, all = true) { // Positition children at the hole positions, including holes not used for screws
+module pcb_hole_positions(type, all = true) { // Position children at the hole positions, including holes not used for screws
holes = pcb_holes(type);
for($i = [0 : 1 : len(holes) - 1]) {
diff --git a/vitamins/psu.scad b/vitamins/psu.scad
index 1756877..b89ef74 100644
--- a/vitamins/psu.scad
+++ b/vitamins/psu.scad
@@ -18,7 +18,7 @@
//
//
-//! Powersupplies. Can be a simple cube or can be defined by a list of six faces, each with thickness, holes, cutouts, etc.
+//! Power supplies. Can be a simple cube or can be defined by a list of six faces, each with thickness, holes, cutouts, etc.
//!
//! Face order is bottom, top, left, right, front, back.
//
@@ -246,7 +246,7 @@ module psu(type) { //! Draw a power supply
}
}
}
- // Special case for lighting type PSUs with teminals at the end
+ // Special case for lighting type PSUs with terminals at the end
terminals = psu_terminals(type);
if(terminals) {
ft = psu_face_thickness(faces[f_front]);
diff --git a/vitamins/psus.scad b/vitamins/psus.scad
index ae51862..b6e0013 100644
--- a/vitamins/psus.scad
+++ b/vitamins/psus.scad
@@ -114,7 +114,7 @@ S_300_12 = [
[// f_top, top
[],// holes
0.5,// thickness
- [],// coutouts
+ [],// cutouts
false,// grill
[215/2 - 47.5, 115/2 - 37.5, fan50x15],
[],//iec
diff --git a/vitamins/pulley.scad b/vitamins/pulley.scad
index b070318..002d618 100644
--- a/vitamins/pulley.scad
+++ b/vitamins/pulley.scad
@@ -36,7 +36,7 @@ function pulley_hub_length(type) = type[7]; //! Hub length
function pulley_bore(type) = type[8]; //! Bore diameter for shaft
function pulley_flange_dia(type) = type[9]; //! Flange diameter
function pulley_flange_thickness(type) = type[10]; //! Flange thickness
-function pulley_screw_length(type) = type[11]; //! Grup screw length
+function pulley_screw_length(type) = type[11]; //! Grub screw length
function pulley_screw_z(type) = type[12]; //! Grub screw position
function pulley_screw(type) = type[13]; //! Grub screw type
function pulley_screws(type) = type[14]; //! Number of grub screws
diff --git a/vitamins/ring_terminal.scad b/vitamins/ring_terminal.scad
index 9c71408..908a007 100644
--- a/vitamins/ring_terminal.scad
+++ b/vitamins/ring_terminal.scad
@@ -36,7 +36,7 @@ function ringterm_screw(type) = type[7]; //! Screw type
function ringterm_crimp_length(type) = type[8]; //! If non-zero the length of the crimp tube
function ringterm_extent(type) = ringterm_length(type) / sqrt(2); //! Space to leave
-module ring_terminal(type) { //! Draw specifeid ring terminal
+module ring_terminal(type) { //! Draw specified ring terminal
screw = ringterm_screw(type);
d = 2 * screw_radius(screw);
crimp = ringterm_crimp_length(type);
diff --git a/vitamins/rod.scad b/vitamins/rod.scad
index 927bb60..5a23b1d 100644
--- a/vitamins/rod.scad
+++ b/vitamins/rod.scad
@@ -20,7 +20,7 @@
//
//! Steel rods and studding with chamfered ends.
//!
-//! These items are sysmtrical, so by default the origin is in the centre but it can be changed to the bottom.
+//! These items are symmetrical, so by default the origin is in the centre but it can be changed to the bottom.
//
include <../utils/core/core.scad>
use <../utils/thread.scad>
diff --git a/vitamins/sheet.scad b/vitamins/sheet.scad
index 8e2dba2..0c6c2a9 100644
--- a/vitamins/sheet.scad
+++ b/vitamins/sheet.scad
@@ -20,7 +20,7 @@
//
//! Sheet materials. Rectangular with optional rounded corners. Negative radii make a chamfer.
//!
-//! The "Soft" parameter can be used to determinesif the sheet material needs machine screws or wood screws, e.g.:
+//! The "Soft" parameter can be used to determine if the sheet material needs machine screws or wood screws, e.g.:
//!
//! * If soft, wood screws will be used, with a pilot hole.
//! * If not soft, either tapped holes or a clearance hole and nuts will be used to retain screws.
@@ -40,8 +40,8 @@ function sheet_thickness(type) = type[2]; //! Thickness
function sheet_colour(type) = type[3]; //! Colour
function sheet_is_soft(type) = type[4]; //! Is soft enough for wood screws
function sheet_is_woven(type) = !is_undef(type[5]); //! Is a woven sheet, eg carbon fiber
-function sheet_warp(type) = type[5]; //! Wovern sheet warp
-function sheet_weft(type) = type[6]; //! Wovern sheet weft
+function sheet_warp(type) = type[5]; //! Woven sheet warp
+function sheet_weft(type) = type[6]; //! Woven sheet weft
function sheet_colour2(type) = type[7]; //! Second colour for a woven sheet
module corner(r) {
diff --git a/vitamins/washer.scad b/vitamins/washer.scad
index 407d18c..963fc2b 100644
--- a/vitamins/washer.scad
+++ b/vitamins/washer.scad
@@ -29,7 +29,7 @@ soft_washer_colour = grey(20);
hard_washer_colour = grey(80);
star_washer_colour = brass;
-function washer_size(type) = type[1]; //! Noiminal size
+function washer_size(type) = type[1]; //! Nominal size
function washer_diameter(type) = type[2]; //! External diameter
function washer_thickness(type) = type[3]; //! Thickness
function washer_soft(type) = type[4]; //! True if rubber
diff --git a/vitamins/ziptie.scad b/vitamins/ziptie.scad
index 9b83764..8142bd0 100644
--- a/vitamins/ziptie.scad
+++ b/vitamins/ziptie.scad
@@ -35,7 +35,7 @@ module ziptie(type, r = 5, t = 0) //! Draw specified ziptie wrapped around radiu
latch = ziptie_latch(type);
lx = latch.x / 2;
zt = ziptie_thickness(type);
- cr = zt; // sharp corner raduus
+ cr = zt; // sharp corner radius
z = r + t - cr;
x = r - cr;
inside_corners = t ? [ [0, 0, r], [-x, z, cr], [x, z, cr] ] : [];