-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #3 from jsconan/release-0.1.0
Release 0.1.0
- Loading branch information
Showing
16 changed files
with
1,230 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# Logs | ||
*.log | ||
|
||
# Results | ||
output | ||
dist | ||
*.csg | ||
*.csv | ||
|
||
# Runtime data | ||
*.pid | ||
*.seed | ||
|
||
# System files | ||
*~ | ||
.DS_Store | ||
|
||
# Projects | ||
nbproject/ | ||
.idea | ||
.settings | ||
.project | ||
|
||
# Generated files | ||
*.stl | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[submodule "lib/camelSCAD"] | ||
path = lib/camelSCAD | ||
url = [email protected]:jsconan/camelSCAD.git |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# rc-tracks history | ||
|
||
## [Version 0.1.0](https://github.com/jsconan/rc-tracks/releases/tag/v0.1.0) | ||
|
||
Design a race track system for 1/24 to 1/32 scale RC cars. | ||
|
||
--- | ||
|
||
Import from the repository [jsconan/things](https://github.com/jsconan/things) | ||
|
||
Extract of the pull request https://github.com/jsconan/things/pull/37 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
|
||
/** | ||
* @license | ||
* GPLv3 License | ||
* | ||
* Copyright (c) 2020 Jean-Sebastien CONAN | ||
* | ||
* This file is part of jsconan/things. | ||
* | ||
* jsconan/things is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* jsconan/things 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 General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with jsconan/things. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
/** | ||
* A race track system for 1/24 to 1/32 scale RC cars. | ||
* | ||
* An additional barrier body for a curved track part. | ||
* | ||
* @author jsconan | ||
* @version 0.1.0 | ||
*/ | ||
|
||
// Import the project's setup. | ||
include <util/setup.scad> | ||
|
||
// Sets the minimum facet angle and size using the defined render mode. | ||
applyMode(mode=renderMode) { | ||
// Uncomment the next line to cut a sample from the object | ||
//sample(size=[DEFAULT_BUILD_PLATE_SIZE, DEFAULT_BUILD_PLATE_SIZE, 5], offset=[0, 0, 0]) | ||
barrierBody( | ||
length = getCurveRemainingLength(getChunkSize()), | ||
height = getBarrierBodyHeight(), | ||
thickness = getBarrierThickness(), | ||
slotDepth = getBarrierHolderDepth(), | ||
notchBase = getBarrierNotchBase() | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
|
||
/** | ||
* @license | ||
* GPLv3 License | ||
* | ||
* Copyright (c) 2020 Jean-Sebastien CONAN | ||
* | ||
* This file is part of jsconan/things. | ||
* | ||
* jsconan/things is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* jsconan/things 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 General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with jsconan/things. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
/** | ||
* A race track system for 1/24 to 1/32 scale RC cars. | ||
* | ||
* A barrier body for a straight track part. | ||
* | ||
* @author jsconan | ||
* @version 0.1.0 | ||
*/ | ||
|
||
// Import the project's setup. | ||
include <util/setup.scad> | ||
|
||
// Sets the minimum facet angle and size using the defined render mode. | ||
applyMode(mode=renderMode) { | ||
// Uncomment the next line to cut a sample from the object | ||
//sample(size=[DEFAULT_BUILD_PLATE_SIZE, DEFAULT_BUILD_PLATE_SIZE, 5], offset=[0, 0, 0]) | ||
barrierBodyFull( | ||
length = getChunkSize(), | ||
height = getBarrierBodyHeight(), | ||
thickness = getBarrierThickness(), | ||
slotDepth = getBarrierHolderDepth(), | ||
notchBase = getBarrierNotchBase() | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
|
||
/** | ||
* @license | ||
* GPLv3 License | ||
* | ||
* Copyright (c) 2020 Jean-Sebastien CONAN | ||
* | ||
* This file is part of jsconan/things. | ||
* | ||
* jsconan/things is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* jsconan/things 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 General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with jsconan/things. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
/** | ||
* A race track system for 1/24 to 1/32 scale RC cars. | ||
* | ||
* A barrier holder for a curved track part. | ||
* | ||
* @author jsconan | ||
* @version 0.1.0 | ||
*/ | ||
|
||
// Import the project's setup. | ||
include <util/setup.scad> | ||
|
||
// Sets the minimum facet angle and size using the defined render mode. | ||
applyMode(mode=renderMode) { | ||
// Uncomment the next line to cut a sample from the object | ||
//sample(size=[DEFAULT_BUILD_PLATE_SIZE, DEFAULT_BUILD_PLATE_SIZE, 5], offset=[0, 0, 0]) | ||
curveBarrierHolder( | ||
length = getChunkSize(), | ||
bodyThickness = getSlotWidth(), | ||
slotDepth = getBarrierHolderDepth(), | ||
barrierBase = getBarrierHolderBase(), | ||
notchBase = getBarrierNotchBase(), | ||
ratio = 1 | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
|
||
/** | ||
* @license | ||
* GPLv3 License | ||
* | ||
* Copyright (c) 2020 Jean-Sebastien CONAN | ||
* | ||
* This file is part of jsconan/things. | ||
* | ||
* jsconan/things is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* jsconan/things 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 General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with jsconan/things. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
/** | ||
* A race track system for 1/24 to 1/32 scale RC cars. | ||
* | ||
* A barrier holder for a straight track part. | ||
* | ||
* @author jsconan | ||
* @version 0.1.0 | ||
*/ | ||
|
||
// Import the project's setup. | ||
include <util/setup.scad> | ||
|
||
// Sets the minimum facet angle and size using the defined render mode. | ||
applyMode(mode=renderMode) { | ||
// Uncomment the next line to cut a sample from the object | ||
//sample(size=[DEFAULT_BUILD_PLATE_SIZE, DEFAULT_BUILD_PLATE_SIZE, 5], offset=[0, 0, 0]) | ||
straightBarrierHolder( | ||
length = getChunkSize(), | ||
bodyThickness = getSlotWidth(), | ||
slotDepth = getBarrierHolderDepth(), | ||
barrierBase = getBarrierHolderBase(), | ||
notchBase = getBarrierNotchBase() | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
/** | ||
* @license | ||
* GPLv3 License | ||
* | ||
* Copyright (c) 2020 Jean-Sebastien CONAN | ||
* | ||
* This file is part of jsconan/things. | ||
* | ||
* jsconan/things is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* jsconan/things 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 General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with jsconan/things. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
/** | ||
* A race track system for 1/24 to 1/32 scale RC cars. | ||
* | ||
* Defines the config. | ||
* | ||
* @author jsconan | ||
* @version 0.1.0 | ||
*/ | ||
|
||
// We will render the object using the specifications of this mode | ||
renderMode = MODE_PROD; | ||
|
||
// Defines the constraints of the print. | ||
printResolution = 0.2; // The target layer height | ||
nozzleWidth = 0.4; // The size of the print nozzle | ||
printTolerance = 0.1; // The print tolerance when pieces need to be assembled | ||
|
||
// Defines options | ||
heightWithFasteners = true; // Should the height be with or without the fastener elements? | ||
|
||
// The dimensions of a track chunk | ||
chunkSize = 200; // The nominal size of a chunk: the length for straight chunk, or the width for a curved chunk | ||
|
||
// The constraints of the track barrier | ||
barrierThickness = 0.6; // The thickness of the barrier body | ||
barrierHeight = 40; // The height of the barrier, depending on the option heightWithFasteners | ||
barrierHolderDepth = 6; // The depth of the barrier holder to clamp the barrier body | ||
barrierHolderBase = 2; // The base value used to design the barrier holder | ||
barrierNotchBase = 2; // The base value used to design the barrier notches |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
#!/bin/bash | ||
# | ||
# GPLv3 License | ||
# | ||
# Copyright (c) 2020 Jean-Sebastien CONAN | ||
# | ||
# This file is part of jsconan/things. | ||
# | ||
# jsconan/things is free software: you can redistribute it and/or modify | ||
# it under the terms of the GNU General Public License as published by | ||
# the Free Software Foundation, either version 3 of the License, or | ||
# (at your option) any later version. | ||
# | ||
# jsconan/things 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 General Public License for more details. | ||
# | ||
# You should have received a copy of the GNU General Public License | ||
# along with jsconan/things. If not, see <http://www.gnu.org/licenses/>. | ||
# | ||
|
||
# | ||
# A race track system for 1/24 to 1/32 scale RC cars. | ||
# | ||
# Generates the STL files for the project. | ||
# | ||
# @author jsconan | ||
# | ||
|
||
# application params | ||
heightWithFasteners= | ||
chunkSize= | ||
barrierHeight= | ||
|
||
# script config | ||
scriptpath=$(dirname $0) | ||
project=$(pwd) | ||
srcpath=${project} | ||
dstpath=${project}/output | ||
|
||
source "${scriptpath}/../../lib/camelSCAD/scripts/utils.sh" | ||
|
||
# load parameters | ||
while (( "$#" )); do | ||
case $1 in | ||
"-l"|"--chunkSize") | ||
chunkSize=$2 | ||
shift | ||
;; | ||
"-w"|"--barrierHeight") | ||
barrierHeight=$2 | ||
shift | ||
;; | ||
"-i"|"--innerHeight") | ||
heightWithFasteners=0 | ||
;; | ||
"-o"|"--outerHeight") | ||
heightWithFasteners=1 | ||
;; | ||
"-h"|"--help") | ||
echo -e "${C_INF}Renders OpenSCAD files${C_RST}" | ||
echo -e " ${C_INF}Usage:${C_RST}" | ||
echo -e "${C_CTX}\t$0 [-h|--help] [-o|--option value] files${C_RST}" | ||
echo | ||
echo -e "${C_MSG} -h, --help ${C_RST}Show this help" | ||
echo -e "${C_MSG} -l, --chunkSize ${C_RST}Set the length of a track chunk" | ||
echo -e "${C_MSG} -w --barrierHeight ${C_RST}Set the height of the track barrier" | ||
echo -e "${C_MSG} -i, --innerHeight ${C_RST}The height of the barrier does not contains the size of the holders" | ||
echo -e "${C_MSG} -o, --outerHeight ${C_RST}The height of the barrier contains the size of the holders" | ||
echo | ||
exit 0 | ||
;; | ||
*) | ||
ls $1 >/dev/null 2>&1 | ||
if [ "$?" == "0" ]; then | ||
srcpath=$1 | ||
else | ||
printerror "Unknown parameter ${1}" | ||
fi | ||
;; | ||
esac | ||
shift | ||
done | ||
|
||
# check OpenSCAD | ||
scadcheck | ||
|
||
# render the files, if exist | ||
scadtostlall "${srcpath}" "${dstpath}" "" \ | ||
"$(varif "chunkSize" ${chunkSize})" \ | ||
"$(varif "barrierHeight" ${barrierHeight})" \ | ||
"$(varif "heightWithFasteners" ${heightWithFasteners})" |
Oops, something went wrong.