+/*
+ Copyright (C) 2015 Daniel Watson
+ See the end of the file for license conditions.
+*/
// challenge-bot
// GNU AGPLv3 (or later at your option)
-// project available at these locations:
-// https://gitorious.org/ozzloy/challenge-bot
-// https://github.com/waynegramlich/challenge-bot
+// project available here:
+// https://challenge-bot.com/
// use $fn = 20 while developing, 100 when about to print
// 20 will make previews fast
// 100 will make printing smooth
-$fn = 100;
-
-use <qr.scad>
-
-qr_size = 54;
-qr_height = 2;
-
-wall_width = 3;
-
-wheel_width = 6;
-wheel_radius = sqrt(2 * pow(qr_size / 2, 2)) + wall_width / 2;
-
-motor_shaft_radius = 3.7;
-motor_shaft_flat_width = 4.8;
-
-module mounting_screw_flat(){
- square(2, center = true);}
-
-module motor_shaft_flat(radius, flat_width){
- intersection(){
- circle(radius);
- square([flat_width, radius * 2], center = true);}}
-
-module motor_shaft(radius,
- flat_width,
- shaft_length){
- linear_extrude(height = shaft_length){
- motor_shaft_flat(radius, flat_width);}}
-
-module rim(radius, wall_width, wheel_width){
- linear_extrude(height = wheel_width){
- difference(){
- circle(radius);
- circle(radius - wall_width);}}}
-
-module motor_shaft_holder_flat(radius, flat_width, wall_width){
- difference(){
- motor_shaft_flat(radius + wall_width,
- flat_width + wall_width);
- motor_shaft_flat(radius, flat_width);}}
-
-module motor_shaft_holder(radius, flat_width, wall_width, height){
- linear_extrude(height = height){
- motor_shaft_holder_flat(radius, flat_width, wall_width);}}
-
-module wheel_black(radius, width, shaft_radius, shaft_flat_width, wall_width){
- color("black"){
- rim(radius, wall_width, width);
- linear_extrude(height = qr_height){
- difference(){
- qr_black_flat();
- mounting_screw_flat();}}
- translate([0, 0, qr_height]){
- motor_shaft_holder(shaft_radius,
- shaft_flat_width,
- wall_width,
- width - qr_height);}}}
-
-module wheel_white(){
- color("white"){
- linear_extrude(height = qr_height){
- difference(){
- qr_white_flat();
- mounting_screw_flat();}}}}
-
-module wheel(radius, width, shaft_radius, shaft_flat_width, wall_width){
- wheel_black(radius,
- width,
- shaft_radius,
- shaft_flat_width,
- wall_width);
- wheel_white();}
+include <wheel-data.scad>
wheel(wheel_radius,
wheel_width,
motor_shaft_radius,
motor_shaft_flat_width,
- wall_width);
+ wall_width,
+ tread_radius);
+
+/*
+ This file is part of challenge-bot.
+
+ Challenge-bot is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ GNU Affero Emacs is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with challenge-bot. If not, see <http://www.gnu.org/licenses/>.
+*/