generate pngs with jenkins
|
|
@ -13,6 +13,8 @@ pipeline {
|
|||
stage("Build") {
|
||||
agent any
|
||||
steps {
|
||||
sh 'python3.8 tests.py'
|
||||
sh 'make doc_images -j4'
|
||||
sh 'make -C docs html'
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,10 @@
|
|||
GENERATE = bin grid grid_inv pill rcube round_box round_flat_box toolinlay1 toolinlay2
|
||||
|
||||
doc_images: $(GENERATE:%=docs/img/%.png)
|
||||
|
||||
clean:
|
||||
rm docs/files/*
|
||||
rm docs/img/*
|
||||
|
||||
docs/img/%.png: docs/files/%.scad
|
||||
openscad $< -o $@ --colorscheme "Tomorrow" --render --quiet || snap run openscad $< -o $@ --colorscheme "Tomorrow" --render --quiet
|
||||
|
After Width: | Height: | Size: 7.7 KiB |
|
Before Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 6.4 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
|
@ -119,9 +119,10 @@
|
|||
<div>
|
||||
|
||||
<h1>All modules for which code is available</h1>
|
||||
<ul><li><a href="solidLib.html">solidLib</a></li>
|
||||
<ul><li><a href="solidLib/assortment.html">solidLib.assortment</a></li>
|
||||
<li><a href="solidLib/primitives.html">solidLib.primitives</a></li>
|
||||
</ul>
|
||||
</ul></ul>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,158 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>solidLib — solidLib documentation</title>
|
||||
|
||||
<link rel="stylesheet" href="../_static/css/index.f658d18f9b420779cfdf24aa0a7e2d77.css">
|
||||
|
||||
|
||||
<link rel="stylesheet"
|
||||
href="../_static/vendor/fontawesome/5.13.0/css/all.min.css">
|
||||
<link rel="preload" as="font" type="font/woff2" crossorigin
|
||||
href="../_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff2">
|
||||
<link rel="preload" as="font" type="font/woff2" crossorigin
|
||||
href="../_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff2">
|
||||
|
||||
|
||||
|
||||
<link rel="stylesheet"
|
||||
href="../_static/vendor/open-sans_all/1.44.1/index.css">
|
||||
<link rel="stylesheet"
|
||||
href="../_static/vendor/lato_latin-ext/1.44.1/index.css">
|
||||
|
||||
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/basic.css" type="text/css" />
|
||||
|
||||
<link rel="preload" as="script" href="../_static/js/index.d3f166471bb80abb5163.js">
|
||||
|
||||
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
<script src="../_static/doctools.js"></script>
|
||||
<link rel="index" title="Index" href="../genindex.html" />
|
||||
<link rel="search" title="Search" href="../search.html" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="docsearch:language" content="en" />
|
||||
</head>
|
||||
<body data-spy="scroll" data-target="#bd-toc-nav" data-offset="80">
|
||||
|
||||
<nav class="navbar navbar-light navbar-expand-lg bg-light fixed-top bd-navbar" id="navbar-main">
|
||||
<div class="container-xl">
|
||||
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
|
||||
<p class="title">solidLib</p>
|
||||
|
||||
</a>
|
||||
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar-menu" aria-controls="navbar-menu" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
|
||||
<div id="navbar-menu" class="col-lg-9 collapse navbar-collapse">
|
||||
<ul id="navbar-main-elements" class="navbar-nav mr-auto">
|
||||
|
||||
|
||||
<li class="nav-item ">
|
||||
<a class="nav-link" href="../solidLib.html">solidLib package</a>
|
||||
</li>
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
<ul class="navbar-nav">
|
||||
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
|
||||
<div class="container-xl">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-12 col-md-3 bd-sidebar"><form class="bd-search d-flex align-items-center" action="../search.html" method="get">
|
||||
<i class="icon fas fa-search"></i>
|
||||
<input type="search" class="form-control" name="q" id="search-input" placeholder="Search the docs ..." aria-label="Search the docs ..." autocomplete="off" >
|
||||
</form>
|
||||
<nav class="bd-links" id="bd-docs-nav" aria-label="Main navigation">
|
||||
|
||||
<div class="bd-toc-item active">
|
||||
|
||||
|
||||
<ul class="nav bd-sidenav">
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="d-none d-xl-block col-xl-2 bd-toc">
|
||||
|
||||
|
||||
<nav id="bd-toc-nav">
|
||||
<ul class="nav section-nav flex-column">
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<main class="col-12 col-md-9 col-xl-7 py-md-5 pl-md-5 pr-md-4 bd-content" role="main">
|
||||
|
||||
<div>
|
||||
|
||||
<h1>Source code for solidLib</h1><div class="highlight"><pre>
|
||||
<div class="viewcode-block" id="settings"><a class="viewcode-back" href="../solidLib.html#solidLib.settings">[docs]</a><span></span><span class="k">class</span> <span class="nc">settings</span><span class="p">:</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> global dolidLib settings</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">segments</span> <span class="o">=</span> <span class="mi">36</span>
|
||||
<span class="n">raster</span> <span class="o">=</span> <span class="mi">59</span>
|
||||
<span class="n">height</span> <span class="o">=</span> <span class="mi">67</span></div>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class='prev-next-bottom'>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<script src="../_static/js/index.d3f166471bb80abb5163.js"></script>
|
||||
|
||||
|
||||
<footer class="footer mt-5 mt-md-0">
|
||||
<div class="container">
|
||||
<p>
|
||||
© Copyright 2021, Patrick Nisble.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 3.4.3.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -195,6 +195,11 @@
|
|||
|
||||
|
||||
<div class="viewcode-block" id="bin"><a class="viewcode-back" href="../../solidLib.html#solidLib.assortment.bin">[docs]</a><span class="k">def</span> <span class="nf">bin</span><span class="p">(</span><span class="n">x</span><span class="p">:</span> <span class="nb">float</span><span class="p">,</span> <span class="n">y</span><span class="p">:</span> <span class="nb">float</span><span class="p">,</span> <span class="n">h</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">67</span><span class="p">,</span> <span class="n">segments</span><span class="p">:</span> <span class="nb">int</span> <span class="o">=</span> <span class="mi">36</span><span class="p">,</span> <span class="n">dim</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">59</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> standardized container</span>
|
||||
|
||||
<span class="sd"> .. image:: img/bin.png</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">class</span> <span class="nc">dims</span><span class="p">:</span>
|
||||
<span class="n">wall</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
<span class="n">r_in</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
|
|
@ -228,7 +233,7 @@
|
|||
|
||||
<span class="sd"> creates a tooltray for alex container bins (2x3)</span>
|
||||
|
||||
<span class="sd"> .. image:: img/bin_toolinlay1.png</span>
|
||||
<span class="sd"> .. image:: img/toolinlay1.png</span>
|
||||
|
||||
<span class="sd"> :param height: height of inset above lower bin</span>
|
||||
<span class="sd"> :param inset: depth of inset</span>
|
||||
|
|
@ -287,7 +292,7 @@
|
|||
|
||||
<span class="sd"> creates a tooltray for alex container bins (2x3)</span>
|
||||
|
||||
<span class="sd"> .. image:: img/bin_toolinlay2.png</span>
|
||||
<span class="sd"> .. image:: img/toolinlay2.png</span>
|
||||
|
||||
<span class="sd"> :param height: height of inset above lower bin</span>
|
||||
<span class="sd"> :param r_tool: toolspace radius as float or list of floats</span>
|
||||
|
|
|
|||
|
|
@ -123,8 +123,6 @@
|
|||
|
||||
<span class="kn">import</span> <span class="nn">solid</span> <span class="k">as</span> <span class="nn">scad</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">.globals</span> <span class="kn">import</span> <span class="n">SEGMENTS</span>
|
||||
|
||||
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
|
||||
<span class="kn">import</span> <span class="nn">logging</span> <span class="k">as</span> <span class="nn">log</span>
|
||||
|
||||
|
|
@ -149,7 +147,7 @@
|
|||
<span class="n">scad</span><span class="o">.</span><span class="n">minkowski</span><span class="p">()(</span><span class="n">box</span><span class="p">,</span> <span class="n">wall</span><span class="p">)</span>
|
||||
<span class="p">)</span></div>
|
||||
|
||||
<div class="viewcode-block" id="round_box_new"><a class="viewcode-back" href="../../solidLib.html#solidLib.primitives.round_box_new">[docs]</a><span class="k">def</span> <span class="nf">round_box_new</span><span class="p">(</span><span class="n">dim</span><span class="p">:</span> <span class="n">Iterable</span><span class="p">[</span><span class="nb">float</span><span class="p">],</span> <span class="n">radius</span><span class="p">:</span> <span class="nb">float</span><span class="p">,</span> <span class="n">segments</span><span class="p">:</span> <span class="nb">int</span> <span class="o">=</span> <span class="mi">32</span><span class="p">):</span>
|
||||
<div class="viewcode-block" id="rcube"><a class="viewcode-back" href="../../solidLib.html#solidLib.primitives.rcube">[docs]</a><span class="k">def</span> <span class="nf">rcube</span><span class="p">(</span><span class="n">dim</span><span class="p">:</span> <span class="n">Iterable</span><span class="p">[</span><span class="nb">float</span><span class="p">],</span> <span class="n">radius</span><span class="p">:</span> <span class="nb">float</span><span class="p">,</span> <span class="n">segments</span><span class="p">:</span> <span class="nb">int</span> <span class="o">=</span> <span class="mi">32</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> creates a cube with rounded corners</span>
|
||||
|
||||
|
|
@ -187,6 +185,9 @@
|
|||
|
||||
|
||||
<div class="viewcode-block" id="pill"><a class="viewcode-back" href="../../solidLib.html#solidLib.primitives.pill">[docs]</a><span class="k">def</span> <span class="nf">pill</span><span class="p">(</span><span class="n">ps</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]],</span> <span class="n">r</span><span class="p">,</span> <span class="n">segments</span><span class="p">:</span> <span class="nb">int</span> <span class="o">=</span> <span class="mi">36</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> create a pill around given points</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">ps</span><span class="p">)</span> <span class="o"><</span> <span class="mi">2</span><span class="p">:</span>
|
||||
<span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"requires 2 or more points"</span><span class="p">)</span>
|
||||
<span class="n">s</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">sphere</span><span class="p">(</span><span class="n">r</span><span class="o">=</span><span class="n">r</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">segments</span><span class="p">)</span>
|
||||
|
|
|
|||
|
|
@ -12,14 +12,6 @@ solidLib.assortment module
|
|||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
solidLib.globals module
|
||||
-----------------------
|
||||
|
||||
.. automodule:: solidLib.globals
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
solidLib.primitives module
|
||||
--------------------------
|
||||
|
||||
|
|
|
|||
|
|
@ -1,701 +0,0 @@
|
|||
@import url("basic.css");
|
||||
|
||||
/* -- page layout ----------------------------------------------------------- */
|
||||
|
||||
body {
|
||||
font-family: Georgia, serif;
|
||||
font-size: 17px;
|
||||
background-color: #fff;
|
||||
color: #000;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
|
||||
div.document {
|
||||
width: 940px;
|
||||
margin: 30px auto 0 auto;
|
||||
}
|
||||
|
||||
div.documentwrapper {
|
||||
float: left;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
div.bodywrapper {
|
||||
margin: 0 0 0 220px;
|
||||
}
|
||||
|
||||
div.sphinxsidebar {
|
||||
width: 220px;
|
||||
font-size: 14px;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
hr {
|
||||
border: 1px solid #B1B4B6;
|
||||
}
|
||||
|
||||
div.body {
|
||||
background-color: #fff;
|
||||
color: #3E4349;
|
||||
padding: 0 30px 0 30px;
|
||||
}
|
||||
|
||||
div.body > .section {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
div.footer {
|
||||
width: 940px;
|
||||
margin: 20px auto 30px auto;
|
||||
font-size: 14px;
|
||||
color: #888;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
div.footer a {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
p.caption {
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
|
||||
div.relations {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
div.sphinxsidebar a {
|
||||
color: #444;
|
||||
text-decoration: none;
|
||||
border-bottom: 1px dotted #999;
|
||||
}
|
||||
|
||||
div.sphinxsidebar a:hover {
|
||||
border-bottom: 1px solid #999;
|
||||
}
|
||||
|
||||
div.sphinxsidebarwrapper {
|
||||
padding: 18px 10px;
|
||||
}
|
||||
|
||||
div.sphinxsidebarwrapper p.logo {
|
||||
padding: 0;
|
||||
margin: -10px 0 0 0px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sphinxsidebarwrapper h1.logo {
|
||||
margin-top: -10px;
|
||||
text-align: center;
|
||||
margin-bottom: 5px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
div.sphinxsidebarwrapper h1.logo-name {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
div.sphinxsidebarwrapper p.blurb {
|
||||
margin-top: 0;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
div.sphinxsidebar h3,
|
||||
div.sphinxsidebar h4 {
|
||||
font-family: Georgia, serif;
|
||||
color: #444;
|
||||
font-size: 24px;
|
||||
font-weight: normal;
|
||||
margin: 0 0 5px 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.sphinxsidebar h4 {
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
div.sphinxsidebar h3 a {
|
||||
color: #444;
|
||||
}
|
||||
|
||||
div.sphinxsidebar p.logo a,
|
||||
div.sphinxsidebar h3 a,
|
||||
div.sphinxsidebar p.logo a:hover,
|
||||
div.sphinxsidebar h3 a:hover {
|
||||
border: none;
|
||||
}
|
||||
|
||||
div.sphinxsidebar p {
|
||||
color: #555;
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul {
|
||||
margin: 10px 0;
|
||||
padding: 0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul li.toctree-l1 > a {
|
||||
font-size: 120%;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul li.toctree-l2 > a {
|
||||
font-size: 110%;
|
||||
}
|
||||
|
||||
div.sphinxsidebar input {
|
||||
border: 1px solid #CCC;
|
||||
font-family: Georgia, serif;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
div.sphinxsidebar hr {
|
||||
border: none;
|
||||
height: 1px;
|
||||
color: #AAA;
|
||||
background: #AAA;
|
||||
|
||||
text-align: left;
|
||||
margin-left: 0;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
div.sphinxsidebar .badge {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
div.sphinxsidebar .badge:hover {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
/* To address an issue with donation coming after search */
|
||||
div.sphinxsidebar h3.donation {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/* -- body styles ----------------------------------------------------------- */
|
||||
|
||||
a {
|
||||
color: #004B6B;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #6D4100;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
div.body h1,
|
||||
div.body h2,
|
||||
div.body h3,
|
||||
div.body h4,
|
||||
div.body h5,
|
||||
div.body h6 {
|
||||
font-family: Georgia, serif;
|
||||
font-weight: normal;
|
||||
margin: 30px 0px 10px 0px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; }
|
||||
div.body h2 { font-size: 180%; }
|
||||
div.body h3 { font-size: 150%; }
|
||||
div.body h4 { font-size: 130%; }
|
||||
div.body h5 { font-size: 100%; }
|
||||
div.body h6 { font-size: 100%; }
|
||||
|
||||
a.headerlink {
|
||||
color: #DDD;
|
||||
padding: 0 4px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a.headerlink:hover {
|
||||
color: #444;
|
||||
background: #EAEAEA;
|
||||
}
|
||||
|
||||
div.body p, div.body dd, div.body li {
|
||||
line-height: 1.4em;
|
||||
}
|
||||
|
||||
div.admonition {
|
||||
margin: 20px 0px;
|
||||
padding: 10px 30px;
|
||||
background-color: #EEE;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.admonition tt.xref, div.admonition code.xref, div.admonition a tt {
|
||||
background-color: #FBFBFB;
|
||||
border-bottom: 1px solid #fafafa;
|
||||
}
|
||||
|
||||
div.admonition p.admonition-title {
|
||||
font-family: Georgia, serif;
|
||||
font-weight: normal;
|
||||
font-size: 24px;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
div.admonition p.last {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
div.highlight {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
dt:target, .highlight {
|
||||
background: #FAF3E8;
|
||||
}
|
||||
|
||||
div.warning {
|
||||
background-color: #FCC;
|
||||
border: 1px solid #FAA;
|
||||
}
|
||||
|
||||
div.danger {
|
||||
background-color: #FCC;
|
||||
border: 1px solid #FAA;
|
||||
-moz-box-shadow: 2px 2px 4px #D52C2C;
|
||||
-webkit-box-shadow: 2px 2px 4px #D52C2C;
|
||||
box-shadow: 2px 2px 4px #D52C2C;
|
||||
}
|
||||
|
||||
div.error {
|
||||
background-color: #FCC;
|
||||
border: 1px solid #FAA;
|
||||
-moz-box-shadow: 2px 2px 4px #D52C2C;
|
||||
-webkit-box-shadow: 2px 2px 4px #D52C2C;
|
||||
box-shadow: 2px 2px 4px #D52C2C;
|
||||
}
|
||||
|
||||
div.caution {
|
||||
background-color: #FCC;
|
||||
border: 1px solid #FAA;
|
||||
}
|
||||
|
||||
div.attention {
|
||||
background-color: #FCC;
|
||||
border: 1px solid #FAA;
|
||||
}
|
||||
|
||||
div.important {
|
||||
background-color: #EEE;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.note {
|
||||
background-color: #EEE;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.tip {
|
||||
background-color: #EEE;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.hint {
|
||||
background-color: #EEE;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.seealso {
|
||||
background-color: #EEE;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.topic {
|
||||
background-color: #EEE;
|
||||
}
|
||||
|
||||
p.admonition-title {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
p.admonition-title:after {
|
||||
content: ":";
|
||||
}
|
||||
|
||||
pre, tt, code {
|
||||
font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
.hll {
|
||||
background-color: #FFC;
|
||||
margin: 0 -12px;
|
||||
padding: 0 12px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
img.screenshot {
|
||||
}
|
||||
|
||||
tt.descname, tt.descclassname, code.descname, code.descclassname {
|
||||
font-size: 0.95em;
|
||||
}
|
||||
|
||||
tt.descname, code.descname {
|
||||
padding-right: 0.08em;
|
||||
}
|
||||
|
||||
img.screenshot {
|
||||
-moz-box-shadow: 2px 2px 4px #EEE;
|
||||
-webkit-box-shadow: 2px 2px 4px #EEE;
|
||||
box-shadow: 2px 2px 4px #EEE;
|
||||
}
|
||||
|
||||
table.docutils {
|
||||
border: 1px solid #888;
|
||||
-moz-box-shadow: 2px 2px 4px #EEE;
|
||||
-webkit-box-shadow: 2px 2px 4px #EEE;
|
||||
box-shadow: 2px 2px 4px #EEE;
|
||||
}
|
||||
|
||||
table.docutils td, table.docutils th {
|
||||
border: 1px solid #888;
|
||||
padding: 0.25em 0.7em;
|
||||
}
|
||||
|
||||
table.field-list, table.footnote {
|
||||
border: none;
|
||||
-moz-box-shadow: none;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
table.footnote {
|
||||
margin: 15px 0;
|
||||
width: 100%;
|
||||
border: 1px solid #EEE;
|
||||
background: #FDFDFD;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table.footnote + table.footnote {
|
||||
margin-top: -15px;
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
table.field-list th {
|
||||
padding: 0 0.8em 0 0;
|
||||
}
|
||||
|
||||
table.field-list td {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
table.field-list p {
|
||||
margin-bottom: 0.8em;
|
||||
}
|
||||
|
||||
/* Cloned from
|
||||
* https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68
|
||||
*/
|
||||
.field-name {
|
||||
-moz-hyphens: manual;
|
||||
-ms-hyphens: manual;
|
||||
-webkit-hyphens: manual;
|
||||
hyphens: manual;
|
||||
}
|
||||
|
||||
table.footnote td.label {
|
||||
width: .1px;
|
||||
padding: 0.3em 0 0.3em 0.5em;
|
||||
}
|
||||
|
||||
table.footnote td {
|
||||
padding: 0.3em 0.5em;
|
||||
}
|
||||
|
||||
dl {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
dl dd {
|
||||
margin-left: 30px;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 0 0 0 30px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
/* Matches the 30px from the narrow-screen "li > ul" selector below */
|
||||
margin: 10px 0 10px 30px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
pre {
|
||||
background: #EEE;
|
||||
padding: 7px 30px;
|
||||
margin: 15px 0px;
|
||||
line-height: 1.3em;
|
||||
}
|
||||
|
||||
div.viewcode-block:target {
|
||||
background: #ffd;
|
||||
}
|
||||
|
||||
dl pre, blockquote pre, li pre {
|
||||
margin-left: 0;
|
||||
padding-left: 30px;
|
||||
}
|
||||
|
||||
tt, code {
|
||||
background-color: #ecf0f3;
|
||||
color: #222;
|
||||
/* padding: 1px 2px; */
|
||||
}
|
||||
|
||||
tt.xref, code.xref, a tt {
|
||||
background-color: #FBFBFB;
|
||||
border-bottom: 1px solid #fff;
|
||||
}
|
||||
|
||||
a.reference {
|
||||
text-decoration: none;
|
||||
border-bottom: 1px dotted #004B6B;
|
||||
}
|
||||
|
||||
/* Don't put an underline on images */
|
||||
a.image-reference, a.image-reference:hover {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
a.reference:hover {
|
||||
border-bottom: 1px solid #6D4100;
|
||||
}
|
||||
|
||||
a.footnote-reference {
|
||||
text-decoration: none;
|
||||
font-size: 0.7em;
|
||||
vertical-align: top;
|
||||
border-bottom: 1px dotted #004B6B;
|
||||
}
|
||||
|
||||
a.footnote-reference:hover {
|
||||
border-bottom: 1px solid #6D4100;
|
||||
}
|
||||
|
||||
a:hover tt, a:hover code {
|
||||
background: #EEE;
|
||||
}
|
||||
|
||||
|
||||
@media screen and (max-width: 870px) {
|
||||
|
||||
div.sphinxsidebar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.document {
|
||||
width: 100%;
|
||||
|
||||
}
|
||||
|
||||
div.documentwrapper {
|
||||
margin-left: 0;
|
||||
margin-top: 0;
|
||||
margin-right: 0;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
div.bodywrapper {
|
||||
margin-top: 0;
|
||||
margin-right: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
li > ul {
|
||||
/* Matches the 30px from the "ul, ol" selector above */
|
||||
margin-left: 30px;
|
||||
}
|
||||
|
||||
.document {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.bodywrapper {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.github {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@media screen and (max-width: 875px) {
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 20px 30px;
|
||||
}
|
||||
|
||||
div.documentwrapper {
|
||||
float: none;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
div.sphinxsidebar {
|
||||
display: block;
|
||||
float: none;
|
||||
width: 102.5%;
|
||||
margin: 50px -30px -20px -30px;
|
||||
padding: 10px 20px;
|
||||
background: #333;
|
||||
color: #FFF;
|
||||
}
|
||||
|
||||
div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p,
|
||||
div.sphinxsidebar h3 a {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
div.sphinxsidebar a {
|
||||
color: #AAA;
|
||||
}
|
||||
|
||||
div.sphinxsidebar p.logo {
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.document {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div.footer {
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.bodywrapper {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div.body {
|
||||
min-height: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.rtd_doc_footer {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.document {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.github {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* misc. */
|
||||
|
||||
.revsys-inline {
|
||||
display: none!important;
|
||||
}
|
||||
|
||||
/* Make nested-list/multi-paragraph items look better in Releases changelog
|
||||
* pages. Without this, docutils' magical list fuckery causes inconsistent
|
||||
* formatting between different release sub-lists.
|
||||
*/
|
||||
div#changelog > div.section > ul > li > p:only-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* Hide fugly table cell borders in ..bibliography:: directive output */
|
||||
table.docutils.citation, table.docutils.citation td, table.docutils.citation th {
|
||||
border: none;
|
||||
/* Below needed in some edge cases; if not applied, bottom shadows appear */
|
||||
-moz-box-shadow: none;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
|
||||
/* relbar */
|
||||
|
||||
.related {
|
||||
line-height: 30px;
|
||||
width: 100%;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.related.top {
|
||||
border-bottom: 1px solid #EEE;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.related.bottom {
|
||||
border-top: 1px solid #EEE;
|
||||
}
|
||||
|
||||
.related ul {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.related li {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
nav#rellinks {
|
||||
float: right;
|
||||
}
|
||||
|
||||
nav#rellinks li+li:before {
|
||||
content: "|";
|
||||
}
|
||||
|
||||
nav#breadcrumbs li+li:before {
|
||||
content: "\00BB";
|
||||
}
|
||||
|
||||
/* Hide certain items when printing */
|
||||
@media print {
|
||||
div.related {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
|
@ -1 +0,0 @@
|
|||
/* This file intentionally left blank. */
|
||||
|
|
@ -124,6 +124,7 @@
|
|||
<div class="genindex-jumpbox">
|
||||
<a href="#B"><strong>B</strong></a>
|
||||
| <a href="#G"><strong>G</strong></a>
|
||||
| <a href="#H"><strong>H</strong></a>
|
||||
| <a href="#M"><strong>M</strong></a>
|
||||
| <a href="#P"><strong>P</strong></a>
|
||||
| <a href="#R"><strong>R</strong></a>
|
||||
|
|
@ -151,6 +152,14 @@
|
|||
</ul></td>
|
||||
</tr></table>
|
||||
|
||||
<h2 id="H">H</h2>
|
||||
<table style="width: 100%" class="indextable genindextable"><tr>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="solidLib.html#solidLib.settings.height">height (solidLib.settings attribute)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
</tr></table>
|
||||
|
||||
<h2 id="M">M</h2>
|
||||
<table style="width: 100%" class="indextable genindextable"><tr>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
|
|
@ -161,8 +170,6 @@
|
|||
<li><a href="solidLib.html#module-solidLib">solidLib</a>
|
||||
</li>
|
||||
<li><a href="solidLib.html#module-solidLib.assortment">solidLib.assortment</a>
|
||||
</li>
|
||||
<li><a href="solidLib.html#module-solidLib.globals">solidLib.globals</a>
|
||||
</li>
|
||||
<li><a href="solidLib.html#module-solidLib.primitives">solidLib.primitives</a>
|
||||
</li>
|
||||
|
|
@ -181,11 +188,13 @@
|
|||
<h2 id="R">R</h2>
|
||||
<table style="width: 100%" class="indextable genindextable"><tr>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="solidLib.html#solidLib.primitives.round_box">round_box() (in module solidLib.primitives)</a>
|
||||
<li><a href="solidLib.html#solidLib.settings.raster">raster (solidLib.settings attribute)</a>
|
||||
</li>
|
||||
<li><a href="solidLib.html#solidLib.primitives.rcube">rcube() (in module solidLib.primitives)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="solidLib.html#solidLib.primitives.round_box_new">round_box_new() (in module solidLib.primitives)</a>
|
||||
<li><a href="solidLib.html#solidLib.primitives.round_box">round_box() (in module solidLib.primitives)</a>
|
||||
</li>
|
||||
<li><a href="solidLib.html#solidLib.primitives.round_flat_box">round_flat_box() (in module solidLib.primitives)</a>
|
||||
</li>
|
||||
|
|
@ -195,6 +204,10 @@
|
|||
<h2 id="S">S</h2>
|
||||
<table style="width: 100%" class="indextable genindextable"><tr>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="solidLib.html#solidLib.settings.segments">segments (solidLib.settings attribute)</a>
|
||||
</li>
|
||||
<li><a href="solidLib.html#solidLib.settings">settings (class in solidLib)</a>
|
||||
</li>
|
||||
<li>
|
||||
solidLib
|
||||
|
||||
|
|
@ -202,20 +215,13 @@
|
|||
<li><a href="solidLib.html#module-solidLib">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li>
|
||||
solidLib.assortment
|
||||
|
||||
<ul>
|
||||
<li><a href="solidLib.html#module-solidLib.assortment">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li>
|
||||
solidLib.globals
|
||||
|
||||
<ul>
|
||||
<li><a href="solidLib.html#module-solidLib.globals">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
|
|
|
|||
|
|
@ -138,7 +138,6 @@
|
|||
<li class="toctree-l1"><a class="reference internal" href="solidLib.html">solidLib package</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="solidLib.html#submodules">Submodules</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="solidLib.html#module-solidLib.assortment">solidLib.assortment module</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="solidLib.html#module-solidLib.globals">solidLib.globals module</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="solidLib.html#module-solidLib.primitives">solidLib.primitives module</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="solidLib.html#module-solidLib">Module contents</a></li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -143,11 +143,6 @@
|
|||
<td>   
|
||||
<a href="solidLib.html#module-solidLib.assortment"><code class="xref">solidLib.assortment</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
<a href="solidLib.html#module-solidLib.globals"><code class="xref">solidLib.globals</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Search.setIndex({docnames:["index","solidLib"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["index.rst","solidLib.rst"],objects:{"":{solidLib:[1,0,0,"-"]},"solidLib.assortment":{bin:[1,1,1,""],grid:[1,1,1,""],grid_inv:[1,1,1,""],toolinlay1:[1,1,1,""],toolinlay2:[1,1,1,""]},"solidLib.primitives":{pill:[1,1,1,""],round_box:[1,1,1,""],round_box_new:[1,1,1,""],round_flat_box:[1,1,1,""]},solidLib:{assortment:[1,0,0,"-"],globals:[1,0,0,"-"],primitives:[1,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:function"},terms:{"2x3":1,"2x3x":[],"float":1,"int":1,abov:1,addit:1,alex:1,arg:1,assort:0,base:1,bin:1,bool:1,bottom:1,box:1,circular:1,contain:1,content:0,corner:1,creat:1,cube:1,deprec:1,depth:1,dim:1,dimens:1,fals:1,fillet:1,flat:1,flatten:1,gener:1,given:1,global:0,grid:1,grid_inv:1,gridspac:1,height:1,index:0,inset:1,inset_tool:1,iter:1,list:1,lower:1,maxh:1,modul:0,object:1,oer:[],packag:0,page:0,paramet:1,pill:1,primit:0,r_tool:1,radiu:1,raster:1,restrict:1,round:1,round_box:1,round_box_new:1,round_flat_box:1,search:0,segment:1,size:1,sourc:1,structur:1,submodul:0,system:1,toolinlai:1,toolinlay1:1,toolinlay2:1,toolspac:1,tooltrai:1,top:1,triangl:1,union:1,used:1,wall:1,warn:[],width:1,without:1,x_dim:1,y_dim:1,z_dim:1},titles:["Welcome to solidLib\u2019s documentation!","solidLib package"],titleterms:{assort:1,content:1,document:0,global:1,indic:0,modul:1,packag:1,primit:1,solidlib:[0,1],submodul:1,tabl:0,welcom:0}})
|
||||
Search.setIndex({docnames:["index","solidLib"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["index.rst","solidLib.rst"],objects:{"":{solidLib:[1,0,0,"-"]},"solidLib.assortment":{bin:[1,1,1,""],grid:[1,1,1,""],grid_inv:[1,1,1,""],toolinlay1:[1,1,1,""],toolinlay2:[1,1,1,""]},"solidLib.primitives":{pill:[1,1,1,""],rcube:[1,1,1,""],round_box:[1,1,1,""],round_flat_box:[1,1,1,""]},"solidLib.settings":{height:[1,3,1,""],raster:[1,3,1,""],segments:[1,3,1,""]},solidLib:{assortment:[1,0,0,"-"],primitives:[1,0,0,"-"],settings:[1,2,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:attribute"},terms:{"2x3":1,"class":1,"float":1,"int":1,abov:1,addit:1,alex:1,arg:1,around:1,assort:0,base:1,bin:1,bool:1,bottom:1,box:1,circular:1,contain:1,content:0,corner:1,creat:1,cube:1,deprec:1,depth:1,dim:1,dimens:1,dolidlib:1,fals:1,fillet:1,flat:1,flatten:1,gener:1,given:1,global:1,grid:1,grid_inv:1,gridspac:1,height:1,index:0,inset:1,inset_tool:1,iter:1,list:1,lower:1,maxh:1,modul:0,object:1,packag:0,page:0,paramet:1,pill:1,point:1,primit:0,r_tool:1,radiu:1,raster:1,rcube:1,restrict:1,round:1,round_box:1,round_flat_box:1,search:0,segment:1,set:1,size:1,sourc:1,standard:1,structur:1,submodul:0,system:1,toolinlai:1,toolinlay1:1,toolinlay2:1,toolspac:1,tooltrai:1,top:1,triangl:1,union:1,used:1,wall:1,width:1,without:1,x_dim:1,y_dim:1,z_dim:1},titles:["Welcome to solidLib\u2019s documentation!","solidLib package"],titleterms:{assort:1,content:1,document:0,global:[],indic:0,modul:1,packag:1,primit:1,solidlib:[0,1],submodul:1,tabl:0,welcom:0}})
|
||||
|
|
@ -119,10 +119,6 @@
|
|||
<a href="#module-solidLib.assortment" class="nav-link">solidLib.assortment module</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item toc-entry toc-h2">
|
||||
<a href="#module-solidLib.globals" class="nav-link">solidLib.globals module</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item toc-entry toc-h2">
|
||||
<a href="#module-solidLib.primitives" class="nav-link">solidLib.primitives module</a>
|
||||
</li>
|
||||
|
|
@ -154,7 +150,9 @@
|
|||
<dl class="py function">
|
||||
<dt id="solidLib.assortment.bin">
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">bin</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">y</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">h</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">67</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">36</span></em>, <em class="sig-param"><span class="n">dim</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">59</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/assortment.html#bin"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.bin" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
<dd><p>standardized container</p>
|
||||
<img alt="_images/bin.png" src="_images/bin.png" />
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.assortment.grid">
|
||||
|
|
@ -174,7 +172,7 @@ the triangles used for the base structure is given by their height and width</p>
|
|||
<dt id="solidLib.assortment.toolinlay1">
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">toolinlay1</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">height</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="n">r_tool</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">7</span></em>, <em class="sig-param"><span class="n">inset</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">4</span></em>, <em class="sig-param"><span class="n">maxh</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">67</span></em>, <em class="sig-param"><span class="n">dim</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">59</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">36</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/assortment.html#toolinlay1"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.toolinlay1" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>creates a tooltray for alex container bins (2x3)</p>
|
||||
<img alt="_images/bin_toolinlay1.png" src="_images/bin_toolinlay1.png" />
|
||||
<img alt="_images/toolinlay1.png" src="_images/toolinlay1.png" />
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
|
|
@ -189,7 +187,7 @@ the triangles used for the base structure is given by their height and width</p>
|
|||
<dt id="solidLib.assortment.toolinlay2">
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">toolinlay2</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">height</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">r_tool</span><span class="p">:</span> <span class="n">Union<span class="p">[</span>float<span class="p">, </span>Iterable<span class="p">[</span>float<span class="p">]</span><span class="p">]</span></span> <span class="o">=</span> <span class="default_value">7</span></em>, <em class="sig-param"><span class="n">inset</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">4</span></em>, <em class="sig-param"><span class="n">inset_tool</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">3</span></em>, <em class="sig-param"><span class="n">maxh</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">67</span></em>, <em class="sig-param"><span class="n">dim</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">59</span></em>, <em class="sig-param"><span class="n">wall</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">2</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">36</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/assortment.html#toolinlay2"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.toolinlay2" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>creates a tooltray for alex container bins (2x3)</p>
|
||||
<img alt="_images/bin_toolinlay2.png" src="_images/bin_toolinlay2.png" />
|
||||
<img alt="_images/toolinlay2.png" src="_images/toolinlay2.png" />
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
|
|
@ -205,16 +203,30 @@ the triangles used for the base structure is given by their height and width</p>
|
|||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
</div>
|
||||
<div class="section" id="module-solidLib.globals">
|
||||
<span id="solidlib-globals-module"></span><h2>solidLib.globals module<a class="headerlink" href="#module-solidLib.globals" title="Permalink to this headline">¶</a></h2>
|
||||
</div>
|
||||
<div class="section" id="module-solidLib.primitives">
|
||||
<span id="solidlib-primitives-module"></span><h2>solidLib.primitives module<a class="headerlink" href="#module-solidLib.primitives" title="Permalink to this headline">¶</a></h2>
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.primitives.pill">
|
||||
<code class="sig-prename descclassname">solidLib.primitives.</code><code class="sig-name descname">pill</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">ps</span><span class="p">:</span> <span class="n">List<span class="p">[</span>List<span class="p">[</span>float<span class="p">]</span><span class="p">]</span></span></em>, <em class="sig-param"><span class="n">r</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">36</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/primitives.html#pill"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.primitives.pill" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
<dd><p>create a pill around given points</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.primitives.rcube">
|
||||
<code class="sig-prename descclassname">solidLib.primitives.</code><code class="sig-name descname">rcube</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">dim</span><span class="p">:</span> <span class="n">Iterable<span class="p">[</span>float<span class="p">]</span></span></em>, <em class="sig-param"><span class="n">radius</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">32</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/primitives.html#rcube"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.primitives.rcube" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>creates a cube with rounded corners</p>
|
||||
<img alt="_images/round_box.png" src="_images/round_box.png" />
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>dim</strong> – cube dimensions to base box on.</p></li>
|
||||
<li><p><strong>radius</strong> – box radius.</p></li>
|
||||
<li><p><strong>segments</strong> – circular object segments</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.primitives.round_box">
|
||||
|
|
@ -233,22 +245,6 @@ the triangles used for the base structure is given by their height and width</p>
|
|||
<img alt="_images/round_box.png" src="_images/round_box.png" />
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.primitives.round_box_new">
|
||||
<code class="sig-prename descclassname">solidLib.primitives.</code><code class="sig-name descname">round_box_new</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">dim</span><span class="p">:</span> <span class="n">Iterable<span class="p">[</span>float<span class="p">]</span></span></em>, <em class="sig-param"><span class="n">radius</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">32</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/primitives.html#round_box_new"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.primitives.round_box_new" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>creates a cube with rounded corners</p>
|
||||
<img alt="_images/round_box.png" src="_images/round_box.png" />
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>dim</strong> – cube dimensions to base box on.</p></li>
|
||||
<li><p><strong>radius</strong> – box radius.</p></li>
|
||||
<li><p><strong>segments</strong> – circular object segments</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.primitives.round_flat_box">
|
||||
<code class="sig-prename descclassname">solidLib.primitives.</code><code class="sig-name descname">round_flat_box</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">y</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">z</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">r</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">segments</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">32</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/primitives.html#round_flat_box"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.primitives.round_flat_box" title="Permalink to this definition">¶</a></dt>
|
||||
|
|
@ -259,6 +255,28 @@ the triangles used for the base structure is given by their height and width</p>
|
|||
</div>
|
||||
<div class="section" id="module-solidLib">
|
||||
<span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-solidLib" title="Permalink to this headline">¶</a></h2>
|
||||
<dl class="py class">
|
||||
<dt id="solidLib.settings">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">solidLib.</code><code class="sig-name descname">settings</code><a class="reference internal" href="_modules/solidLib.html#settings"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.settings" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>global dolidLib settings</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="solidLib.settings.height">
|
||||
<code class="sig-name descname">height</code><em class="property"> = 67</em><a class="headerlink" href="#solidLib.settings.height" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="solidLib.settings.raster">
|
||||
<code class="sig-name descname">raster</code><em class="property"> = 59</em><a class="headerlink" href="#solidLib.settings.raster" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="solidLib.settings.segments">
|
||||
<code class="sig-name descname">segments</code><em class="property"> = 36</em><a class="headerlink" href="#solidLib.settings.segments" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,509 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
union() {
|
||||
difference() {
|
||||
translate(v = [4, 4, 0]) {
|
||||
minkowski() {
|
||||
cube(size = [51, 51, 59]);
|
||||
cylinder($fn = 36, h = 8, r = 4);
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [51, 51, 63]);
|
||||
sphere($fn = 32, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 0, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
intersection() {
|
||||
translate(v = [0, 0, 2]) {
|
||||
union() {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 0, 0]) {
|
||||
union() {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
difference() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [3.0000000000, 0], [1.0000000000, 2], [0, 2]]);
|
||||
}
|
||||
}
|
||||
translate(v = [3.0000000000, 3.0000000000, 2]) {
|
||||
union() {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
rotate(a = [0, -90, 0]) {
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 0, 0]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [51, 51, 63]);
|
||||
sphere($fn = 32, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
********* SolidPython code: **********
|
||||
************************************************
|
||||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
@ -0,0 +1,291 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 0, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 118, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 0, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 118, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
********* SolidPython code: **********
|
||||
************************************************
|
||||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
difference() {
|
||||
cube(size = [118, 177, 1.5000000000]);
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 0, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [0, 118, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 0, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 118, 0]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate(v = [59, 59, 0]) {
|
||||
rotate(a = [0, 0, 180]) {
|
||||
union() {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
translate(v = [0, 59, 0]) {
|
||||
rotate(a = [0, 0, -90]) {
|
||||
rotate(a = [90, 0, 90]) {
|
||||
linear_extrude(height = 59) {
|
||||
polygon(points = [[0, 0], [1.5000000000, 0], [0, 1.5000000000]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
********* SolidPython code: **********
|
||||
************************************************
|
||||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
hull() {
|
||||
translate(v = [0, 0, 0]) {
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [1, 1, 1]) {
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
********* SolidPython code: **********
|
||||
************************************************
|
||||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
hull() {
|
||||
translate(v = [0.2500000000, 0.2500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.2500000000, 0.2500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.2500000000, 0.7500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.2500000000, 0.7500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.2500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.2500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.7500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.7500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
********* SolidPython code: **********
|
||||
************************************************
|
||||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-09 16:29:37
|
||||
|
||||
|
||||
translate(v = [0.2500000000, 0.2500000000, 0]) {
|
||||
minkowski() {
|
||||
cube(size = [0.5000000000, 0.5000000000, 0.5000000000]);
|
||||
cylinder($fn = 36, h = 0.5000000000, r = 0.2500000000);
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
********* SolidPython code: **********
|
||||
************************************************
|
||||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round__flat_box.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-09 16:31:15
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
translate(v = [0.2500000000, 0.2500000000, 0.2500000000]) {
|
||||
minkowski() {
|
||||
cube(size = [0.5000000000, 0.5000000000, 0.5000000000]);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
sphere($fn = 32, r = 0.2500000000);
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
|
|
@ -13,11 +13,21 @@ translate(v = [0.2500000000, 0.2500000000, 0.2500000000]) {
|
|||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by SolidPython 1.0.5 on 2021-02-09 16:31:15
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
|
||||
|
||||
translate(v = [0.2500000000, 0.2500000000, 0]) {
|
||||
|
|
@ -13,11 +13,21 @@ translate(v = [0.2500000000, 0.2500000000, 0]) {
|
|||
|
||||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
||||
|
||||
************************************************/
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 7.7 KiB |
|
Before Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 7.4 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 6.4 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
|
@ -12,14 +12,6 @@ solidLib.assortment module
|
|||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
solidLib.globals module
|
||||
-----------------------
|
||||
|
||||
.. automodule:: solidLib.globals
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
solidLib.primitives module
|
||||
--------------------------
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1,7 @@
|
|||
from .globals import SEGMENTS
|
||||
class settings:
|
||||
"""
|
||||
global dolidLib settings
|
||||
"""
|
||||
segments = 36
|
||||
raster = 59
|
||||
height = 67
|
||||
|
|
|
|||
|
|
@ -74,6 +74,11 @@ def grid_inv(
|
|||
|
||||
|
||||
def bin(x: float, y: float, h: float = 67, segments: int = 36, dim: float = 59):
|
||||
"""
|
||||
standardized container
|
||||
|
||||
.. image:: img/bin.png
|
||||
"""
|
||||
class dims:
|
||||
wall = 2
|
||||
r_in = 2
|
||||
|
|
@ -107,7 +112,7 @@ def toolinlay1(
|
|||
|
||||
creates a tooltray for alex container bins (2x3)
|
||||
|
||||
.. image:: img/bin_toolinlay1.png
|
||||
.. image:: img/toolinlay1.png
|
||||
|
||||
:param height: height of inset above lower bin
|
||||
:param inset: depth of inset
|
||||
|
|
@ -166,7 +171,7 @@ def toolinlay2(
|
|||
|
||||
creates a tooltray for alex container bins (2x3)
|
||||
|
||||
.. image:: img/bin_toolinlay2.png
|
||||
.. image:: img/toolinlay2.png
|
||||
|
||||
:param height: height of inset above lower bin
|
||||
:param r_tool: toolspace radius as float or list of floats
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
SEGMENTS = 36
|
||||
|
|
@ -2,8 +2,6 @@ from typing import List, Iterable
|
|||
|
||||
import solid as scad
|
||||
|
||||
from .globals import SEGMENTS
|
||||
|
||||
import numpy as np
|
||||
import logging as log
|
||||
|
||||
|
|
|
|||
10
tests.py
|
|
@ -1,7 +1,17 @@
|
|||
# import solidLib as sl
|
||||
import solidLib.primitives as slp
|
||||
import solidLib.assortment as sla
|
||||
import solid as s
|
||||
|
||||
|
||||
s.scad_render_to_file(slp.pill([[0,0,0],[1, 1, 1]], .25), "./docs/files/pill.scad")
|
||||
s.scad_render_to_file(slp.rcube([1, 1, 1], .25), "./docs/files/rcube.scad")
|
||||
s.scad_render_to_file(slp.round_box(1, 1, 1, .25), "./docs/files/round_box.scad")
|
||||
s.scad_render_to_file(slp.round_flat_box(1, 1, 1, .25), "./docs/files/round_flat_box.scad")
|
||||
|
||||
s.scad_render_to_file(sla.bin(1, 1), "./docs/files/bin.scad")
|
||||
s.scad_render_to_file(sla.grid(2,3), "docs/files/grid.scad")
|
||||
s.scad_render_to_file(sla.grid_inv(2,3), "docs/files/grid_inv.scad")
|
||||
|
||||
s.scad_render_to_file(sla.toolinlay1(15), "docs/files/toolinlay1.scad")
|
||||
s.scad_render_to_file(sla.toolinlay2(15), "docs/files/toolinlay2.scad")
|
||||
|
|
|
|||