start updating lib to use solidLib.settings
|
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.8 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
@@ -122,8 +122,10 @@
|
||||
<span></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">solid</span> <span class="k">as</span> <span class="nn">scad</span>
|
||||
<span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">primitives</span> <span class="k">as</span> <span class="n">slp</span>
|
||||
<span class="kn">import</span> <span class="nn">solidLib</span> <span class="k">as</span> <span class="nn">sl</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Union</span><span class="p">,</span> <span class="n">Iterable</span>
|
||||
|
||||
<span class="c1"># import .primitives as slp</span>
|
||||
|
||||
|
||||
@@ -133,8 +135,6 @@
|
||||
<span class="n">w</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">3</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="mf">1.5</span><span class="p">,</span>
|
||||
<span class="n">fillet</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</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="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="p">):</span>
|
||||
<span class="sd">"""generate a grid of (flattened) triangles with or without fillet</span>
|
||||
|
||||
@@ -149,7 +149,7 @@
|
||||
<span class="n">out</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">polygon</span><span class="p">([[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="n">w</span> <span class="o">/</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="n">w</span> <span class="o">/</span> <span class="mi">2</span> <span class="o">-</span> <span class="n">h</span><span class="p">,</span> <span class="n">h</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="n">h</span><span class="p">]])</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">out</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">polygon</span><span class="p">([[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="n">w</span> <span class="o">/</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="n">h</span><span class="p">]])</span>
|
||||
<span class="n">out</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">linear_extrude</span><span class="p">(</span><span class="n">dim</span><span class="p">)(</span><span class="n">out</span><span class="p">)</span>
|
||||
<span class="n">out</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">linear_extrude</span><span class="p">(</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">)(</span><span class="n">out</span><span class="p">)</span>
|
||||
<span class="n">out</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">([</span><span class="mi">90</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">90</span><span class="p">])(</span><span class="n">out</span><span class="p">)</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">fillet</span><span class="p">:</span>
|
||||
@@ -158,25 +158,25 @@
|
||||
<span class="n">scallop</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">pill</span><span class="p">(</span>
|
||||
<span class="p">[</span>
|
||||
<span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">h</span> <span class="o">-</span> <span class="p">(</span><span class="n">w</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">h</span><span class="p">),</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">dsl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">h</span> <span class="o">-</span> <span class="p">(</span><span class="n">w</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">h</span><span class="p">),</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="c1"># [0,0,h], [dim - 2 * h - (w - 2 * h),0,h]</span>
|
||||
<span class="p">],</span>
|
||||
<span class="n">h</span><span class="p">,</span>
|
||||
<span class="n">segments</span><span class="o">=</span><span class="n">segments</span><span class="p">,</span>
|
||||
<span class="n">segments</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">,</span>
|
||||
<span class="p">)</span>
|
||||
<span class="n">scallop</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">90</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">scallop</span><span class="p">)</span> <span class="o">+</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">dim</span> <span class="o">-</span> <span class="n">w</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">])(</span>
|
||||
<span class="n">scallop</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">90</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">scallop</span><span class="p">)</span> <span class="o">+</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">-</span> <span class="n">w</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">])(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">90</span><span class="p">,</span> <span class="mi">0</span><span class="p">])(</span><span class="n">scallop</span><span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
<span class="n">scallop</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">w</span> <span class="o">/</span> <span class="mi">2</span><span class="p">,</span> <span class="n">w</span> <span class="o">/</span> <span class="mi">2</span><span class="p">,</span> <span class="n">h</span><span class="p">))(</span><span class="n">scallop</span><span class="p">)</span>
|
||||
<span class="n">out</span> <span class="o">-=</span> <span class="n">scallop</span>
|
||||
|
||||
<span class="n">out</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="n">dim</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">90</span><span class="p">))(</span><span class="n">out</span><span class="p">))</span>
|
||||
<span class="n">out</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">dim</span><span class="p">,</span> <span class="n">dim</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">180</span><span class="p">))(</span><span class="n">out</span><span class="p">))</span>
|
||||
<span class="n">out</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">90</span><span class="p">))(</span><span class="n">out</span><span class="p">))</span>
|
||||
<span class="n">out</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">scad</span><span class="o">.</span><span class="n">rotate</span><span class="p">((</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">180</span><span class="p">))(</span><span class="n">out</span><span class="p">))</span>
|
||||
|
||||
<span class="n">result</span> <span class="o">=</span> <span class="n">out</span>
|
||||
<span class="k">for</span> <span class="n">dx</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">x_dim</span><span class="p">):</span>
|
||||
<span class="k">for</span> <span class="n">dy</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">y</span><span class="p">):</span>
|
||||
<span class="n">result</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">dim</span> <span class="o">*</span> <span class="n">dx</span><span class="p">,</span> <span class="n">dim</span> <span class="o">*</span> <span class="n">dy</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">out</span><span class="p">)</span>
|
||||
<span class="n">result</span> <span class="o">+=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">dx</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">dy</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span><span class="n">out</span><span class="p">)</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">result</span></div>
|
||||
|
||||
@@ -187,29 +187,28 @@
|
||||
<span class="n">w</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">3</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="mf">1.5</span><span class="p">,</span>
|
||||
<span class="n">fillet</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</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="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="p">):</span>
|
||||
<span class="n">g</span> <span class="o">=</span> <span class="n">grid</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">w</span><span class="p">,</span> <span class="n">h</span><span class="p">,</span> <span class="n">fillet</span><span class="p">,</span> <span class="n">dim</span><span class="p">,</span> <span class="n">segments</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">x</span> <span class="o">*</span> <span class="n">dim</span><span class="p">,</span> <span class="n">y</span> <span class="o">*</span> <span class="n">dim</span><span class="p">,</span> <span class="n">h</span><span class="p">])</span> <span class="o">-</span> <span class="n">g</span></div>
|
||||
<span class="n">g</span> <span class="o">=</span> <span class="n">grid</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">w</span><span class="p">,</span> <span class="n">h</span><span class="p">,</span> <span class="n">fillet</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">x</span> <span class="o">*</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">y</span> <span class="o">*</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">h</span><span class="p">])</span> <span class="o">-</span> <span class="n">g</span></div>
|
||||
|
||||
|
||||
<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>
|
||||
<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="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>
|
||||
<span class="n">r_out</span> <span class="o">=</span> <span class="n">r_in</span> <span class="o">+</span> <span class="n">wall</span>
|
||||
|
||||
<span class="n">bulk</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">round_flat_box</span><span class="p">(</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x</span><span class="p">,</span> <span class="n">dim</span> <span class="o">*</span> <span class="n">y</span><span class="p">,</span> <span class="n">h</span><span class="p">,</span> <span class="n">dims</span><span class="o">.</span><span class="n">r_out</span><span class="p">)</span>
|
||||
<span class="n">hole</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">round_box</span><span class="p">(</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x</span> <span class="o">-</span> <span class="n">dims</span><span class="o">.</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span> <span class="n">dim</span> <span class="o">*</span> <span class="n">y</span> <span class="o">-</span> <span class="n">dims</span><span class="o">.</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span> <span class="n">h</span><span class="p">,</span> <span class="n">dims</span><span class="o">.</span><span class="n">r_in</span><span class="p">)</span>
|
||||
<span class="n">bulk</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">rfcube</span><span class="p">([</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">y</span><span class="p">,</span> <span class="n">h</span><span class="p">],</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="o">.</span><span class="n">r_out</span><span class="p">)</span>
|
||||
<span class="n">hole</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">rcube</span><span class="p">([</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x</span> <span class="o">-</span> <span class="n">dims</span><span class="o">.</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">y</span> <span class="o">-</span> <span class="n">dims</span><span class="o">.</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span> <span class="n">h</span><span class="p">],</span> <span class="n">dims</span><span class="o">.</span><span class="n">r_in</span><span class="p">)</span>
|
||||
<span class="n">hole</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">dims</span><span class="o">.</span><span class="n">wall</span><span class="p">,</span> <span class="n">dims</span><span class="o">.</span><span class="n">wall</span><span class="p">,</span> <span class="n">dims</span><span class="o">.</span><span class="n">wall</span><span class="p">])(</span><span class="n">hole</span><span class="p">)</span>
|
||||
|
||||
<span class="n">wall_o</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cylinder</span><span class="p">(</span><span class="n">r</span><span class="o">=</span><span class="n">dims</span><span class="o">.</span><span class="n">r_out</span><span class="p">,</span> <span class="n">h</span><span class="o">=</span><span class="n">dims</span><span class="o">.</span><span class="n">r_out</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">segments</span><span class="p">)</span>
|
||||
<span class="n">wall_o</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cylinder</span><span class="p">(</span><span class="n">r</span><span class="o">=</span><span class="n">dims</span><span class="o">.</span><span class="n">r_out</span><span class="p">,</span> <span class="n">h</span><span class="o">=</span><span class="n">dims</span><span class="o">.</span><span class="n">r_out</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">)</span>
|
||||
|
||||
<span class="n">g</span> <span class="o">=</span> <span class="n">grid</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span>
|
||||
|
||||
@@ -226,8 +225,6 @@
|
||||
<span class="n">r_tool</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">7</span><span class="p">,</span>
|
||||
<span class="n">inset</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
|
||||
<span class="n">maxh</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">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="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">"""toolinlay1</span>
|
||||
|
||||
@@ -244,19 +241,19 @@
|
||||
<span class="n">r_in</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
<span class="n">tool_ins</span> <span class="o">=</span> <span class="mi">3</span>
|
||||
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">round_flat_box</span><span class="p">(</span><span class="n">x</span> <span class="o">*</span> <span class="n">dim</span><span class="p">,</span> <span class="n">y</span> <span class="o">*</span> <span class="n">dim</span><span class="p">,</span> <span class="n">height</span> <span class="o">+</span> <span class="n">inset</span><span class="p">,</span> <span class="n">r_in</span> <span class="o">+</span> <span class="n">wall</span><span class="p">)</span>
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">rfcube</span><span class="p">([</span><span class="n">x</span> <span class="o">*</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">y</span> <span class="o">*</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">height</span> <span class="o">+</span> <span class="n">inset</span><span class="p">],</span> <span class="n">r_in</span> <span class="o">+</span> <span class="n">wall</span><span class="p">)</span>
|
||||
|
||||
<span class="n">toolindent</span> <span class="o">=</span> <span class="mf">0.1</span>
|
||||
<span class="n">toolindent_w</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
<span class="n">toolbase_l</span> <span class="o">=</span> <span class="n">dim</span> <span class="o">*</span> <span class="n">x</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r_tool</span>
|
||||
<span class="n">toolbase_l</span> <span class="o">=</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r_tool</span>
|
||||
<span class="n">toolbase_t</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">toolbase_l</span> <span class="o">*</span> <span class="p">(</span><span class="mi">1</span> <span class="o">-</span> <span class="n">toolindent</span><span class="p">),</span> <span class="mf">0.001</span><span class="p">,</span> <span class="n">tool_ins</span><span class="p">])</span>
|
||||
<span class="n">toolbase_b</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">toolbase_l</span> <span class="o">*</span> <span class="p">(</span><span class="mi">1</span> <span class="o">-</span> <span class="n">toolindent</span><span class="p">),</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">])(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">toolbase_l</span> <span class="o">*</span> <span class="n">toolindent</span> <span class="o">-</span> <span class="n">toolindent_w</span><span class="p">,</span> <span class="mf">0.001</span><span class="p">,</span> <span class="n">tool_ins</span><span class="p">])</span>
|
||||
<span class="p">)</span>
|
||||
<span class="n">toolcutout</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">minkowski</span><span class="p">()(</span>
|
||||
<span class="n">toolbase_t</span><span class="p">,</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_tool</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">segments</span><span class="p">)</span>
|
||||
<span class="n">toolbase_t</span><span class="p">,</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_tool</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">)</span>
|
||||
<span class="p">)</span> <span class="o">+</span> <span class="n">scad</span><span class="o">.</span><span class="n">minkowski</span><span class="p">()(</span>
|
||||
<span class="n">toolbase_b</span><span class="p">,</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_tool</span> <span class="o">+</span> <span class="n">toolindent_w</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">segments</span><span class="p">)</span>
|
||||
<span class="n">toolbase_b</span><span class="p">,</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_tool</span> <span class="o">+</span> <span class="n">toolindent_w</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="n">toolcutout</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">(</span>
|
||||
@@ -264,14 +261,14 @@
|
||||
<span class="p">)(</span><span class="n">toolcutout</span><span class="p">)</span>
|
||||
|
||||
<span class="n">toolcutouts</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">((</span><span class="n">dim</span> <span class="o">*</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">3</span> <span class="o">*</span> <span class="n">wall</span><span class="p">)</span> <span class="o">//</span> <span class="p">(</span><span class="n">r_tool</span> <span class="o">*</span> <span class="mi">2</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">toolindent_w</span><span class="p">)):</span>
|
||||
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">((</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">3</span> <span class="o">*</span> <span class="n">wall</span><span class="p">)</span> <span class="o">//</span> <span class="p">(</span><span class="n">r_tool</span> <span class="o">*</span> <span class="mi">2</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">toolindent_w</span><span class="p">)):</span>
|
||||
<span class="n">toolcutouts</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="n">i</span> <span class="o">*</span> <span class="p">(</span><span class="mi">2</span> <span class="o">*</span> <span class="n">r_tool</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">toolindent_w</span> <span class="o">+</span> <span class="mf">1.4</span><span class="p">),</span> <span class="mi">0</span><span class="p">])(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"yellow"</span><span class="p">)(</span><span class="n">toolcutout</span><span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="n">lower</span> <span class="o">=</span> <span class="nb">bin</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="n">h</span><span class="o">=</span><span class="n">maxh</span> <span class="o">-</span> <span class="n">height</span><span class="p">,</span> <span class="n">dim</span><span class="o">=</span><span class="n">dim</span><span class="p">)</span>
|
||||
<span class="n">lower</span> <span class="o">=</span> <span class="nb">bin</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="n">h</span><span class="o">=</span><span class="n">maxh</span> <span class="o">-</span> <span class="n">height</span><span class="p">,</span> <span class="n">dim</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">)</span>
|
||||
<span class="n">lower</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"red"</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">)(</span><span class="n">lower</span><span class="p">)</span>
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">maxh</span> <span class="o">-</span> <span class="n">height</span> <span class="o">-</span> <span class="n">inset</span><span class="p">])(</span><span class="n">base</span><span class="p">)</span>
|
||||
|
||||
@@ -284,9 +281,7 @@
|
||||
<span class="n">inset</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
|
||||
<span class="n">inset_tool</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span>
|
||||
<span class="n">maxh</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">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="n">wall</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mi">2</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="p">):</span>
|
||||
<span class="sd">"""toolinlay2</span>
|
||||
|
||||
@@ -299,14 +294,11 @@
|
||||
<span class="sd"> :param inset: depth of toolinlay inset</span>
|
||||
<span class="sd"> :param inset_tool: depth of additional toolspace inset</span>
|
||||
<span class="sd"> :param maxh: system height restriction</span>
|
||||
<span class="sd"> :param dim: system raster dimension</span>
|
||||
<span class="sd"> :param segments: circular object segments</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">x_dim</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
<span class="n">y_dim</span> <span class="o">=</span> <span class="mi">3</span>
|
||||
<span class="n">x_dim</span> <span class="o">=</span> <span class="mi">3</span>
|
||||
<span class="n">r_in</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">round_flat_box</span><span class="p">(</span><span class="n">x_dim</span> <span class="o">*</span> <span class="n">dim</span><span class="p">,</span> <span class="n">y_dim</span> <span class="o">*</span> <span class="n">dim</span><span class="p">,</span> <span class="n">height</span> <span class="o">+</span> <span class="n">inset</span><span class="p">,</span> <span class="n">r_in</span> <span class="o">+</span> <span class="n">wall</span><span class="p">)</span>
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">rfcube</span><span class="p">([</span><span class="n">x_dim</span> <span class="o">*</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">y_dim</span> <span class="o">*</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">,</span> <span class="n">height</span> <span class="o">+</span> <span class="n">inset</span><span class="p">],</span> <span class="n">r_in</span> <span class="o">+</span> <span class="n">wall</span><span class="p">)</span>
|
||||
|
||||
<span class="n">toolindent</span> <span class="o">=</span> <span class="mf">0.1</span>
|
||||
<span class="n">toolindent_w</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
@@ -315,16 +307,16 @@
|
||||
<span class="n">tool_rs</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">r_tool</span><span class="p">,</span> <span class="nb">list</span><span class="p">):</span>
|
||||
<span class="n">tool_rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">r_tool</span><span class="p">]</span> <span class="o">*</span> <span class="p">(</span>
|
||||
<span class="p">(</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">3</span> <span class="o">*</span> <span class="n">wall</span><span class="p">)</span> <span class="o">//</span> <span class="p">(</span><span class="n">r_tool</span> <span class="o">*</span> <span class="mi">2</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">toolindent_w</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span>
|
||||
<span class="p">(</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">3</span> <span class="o">*</span> <span class="n">wall</span><span class="p">)</span> <span class="o">//</span> <span class="p">(</span><span class="n">r_tool</span> <span class="o">*</span> <span class="mi">2</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">toolindent_w</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">tool_rs</span> <span class="o">=</span> <span class="n">r_tool</span>
|
||||
|
||||
<span class="n">toolbase_l</span> <span class="o">=</span> <span class="n">dim</span> <span class="o">*</span> <span class="n">y_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">tool_rs</span><span class="p">)</span>
|
||||
<span class="n">toolbase_l</span> <span class="o">=</span> <span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">y_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">tool_rs</span><span class="p">)</span>
|
||||
<span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">r</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">tool_rs</span><span class="p">):</span>
|
||||
<span class="n">toolbase_t</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="mf">0.001</span><span class="p">,</span> <span class="n">toolbase_l</span> <span class="o">*</span> <span class="p">(</span><span class="mi">1</span> <span class="o">-</span> <span class="n">toolindent</span><span class="p">),</span> <span class="n">inset_tool</span><span class="p">])</span>
|
||||
<span class="c1"># toolbase_b = scad.translate([0, toolbase_l * (1 - toolindent), 0])(</span>
|
||||
<span class="c1"># scad.cube([0.001, toolbase_l * toolindent - toolindent_w, tool_ins])</span>
|
||||
<span class="c1"># scad.cube([0.001, toolbase_l * toolindent - toolindent_w, tool_ins])</span>
|
||||
<span class="c1"># )</span>
|
||||
<span class="n">toolcutout</span> <span class="o">=</span> <span class="n">slp</span><span class="o">.</span><span class="n">pill</span><span class="p">(</span>
|
||||
<span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">]])</span>
|
||||
@@ -348,12 +340,12 @@
|
||||
<span class="p">[</span>
|
||||
<span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">dim</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span>
|
||||
<span class="p">[</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span> <span class="o">*</span> <span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">wall</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span>
|
||||
<span class="p">]</span>
|
||||
<span class="p">)</span>
|
||||
<span class="o">+</span> <span class="p">[</span><span class="mi">9</span> <span class="o">+</span> <span class="n">wall</span><span class="p">,</span> <span class="mi">9</span> <span class="o">+</span> <span class="n">wall</span><span class="p">,</span> <span class="n">maxh</span> <span class="o">-</span> <span class="n">inset_tool</span><span class="p">],</span>
|
||||
@@ -361,14 +353,19 @@
|
||||
<span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
<span class="n">toolcutouts</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span><span class="mi">0</span><span class="p">))(</span>
|
||||
<span class="n">slp</span><span class="o">.</span><span class="n">round_flat_box</span><span class="p">(</span>
|
||||
<span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span> <span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span> <span class="o">-</span> <span class="n">wall</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mi">9</span><span class="o">-</span><span class="n">wall</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">segments</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">((</span><span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span> <span class="n">wall</span> <span class="o">*</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">))(</span>
|
||||
<span class="n">slp</span><span class="o">.</span><span class="n">rfcube</span><span class="p">(</span>
|
||||
<span class="p">[</span>
|
||||
<span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span><span class="p">,</span>
|
||||
<span class="n">toolindent</span> <span class="o">*</span> <span class="n">toolbase_l</span> <span class="o">+</span> <span class="mi">2</span> <span class="o">*</span> <span class="mi">9</span> <span class="o">-</span> <span class="n">wall</span><span class="p">,</span>
|
||||
<span class="mi">100</span><span class="p">,</span>
|
||||
<span class="p">],</span>
|
||||
<span class="mi">9</span> <span class="o">-</span> <span class="n">wall</span><span class="p">,</span>
|
||||
<span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="n">lower</span> <span class="o">=</span> <span class="nb">bin</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="n">h</span><span class="o">=</span><span class="n">maxh</span> <span class="o">-</span> <span class="n">height</span><span class="p">,</span> <span class="n">dim</span><span class="o">=</span><span class="n">dim</span><span class="p">)</span>
|
||||
<span class="n">lower</span> <span class="o">=</span> <span class="nb">bin</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="n">h</span><span class="o">=</span><span class="n">maxh</span> <span class="o">-</span> <span class="n">height</span><span class="p">,</span> <span class="n">dim</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">raster</span><span class="p">)</span>
|
||||
<span class="n">lower</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">color</span><span class="p">(</span><span class="s2">"red"</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">)(</span><span class="n">lower</span><span class="p">)</span>
|
||||
<span class="n">base</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">maxh</span> <span class="o">-</span> <span class="n">height</span> <span class="o">-</span> <span class="n">inset</span><span class="p">])(</span><span class="n">base</span><span class="p">)</span>
|
||||
|
||||
|
||||
@@ -123,35 +123,19 @@
|
||||
|
||||
<span class="kn">import</span> <span class="nn">solid</span> <span class="k">as</span> <span class="nn">scad</span>
|
||||
|
||||
<span class="kn">import</span> <span class="nn">solidLib</span> <span class="k">as</span> <span class="nn">sl</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>
|
||||
|
||||
<span class="n">log</span><span class="o">.</span><span class="n">basicConfig</span><span class="p">(</span><span class="n">level</span><span class="o">=</span><span class="n">log</span><span class="o">.</span><span class="n">INFO</span><span class="p">)</span>
|
||||
|
||||
<div class="viewcode-block" id="round_box"><a class="viewcode-back" href="../../solidLib.html#solidLib.primitives.round_box">[docs]</a><span class="k">def</span> <span class="nf">round_box</span><span class="p">(</span><span class="n">x_dim</span><span class="p">:</span> <span class="nb">float</span><span class="p">,</span> <span class="n">y_dim</span><span class="p">:</span> <span class="nb">float</span><span class="p">,</span> <span class="n">z_dim</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 round box with radius r</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> x_dim (float): .</span>
|
||||
|
||||
<span class="sd"> Important:</span>
|
||||
<span class="sd"> deprecated</span>
|
||||
|
||||
<span class="sd"> .. image:: img/round_box.png</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">box</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">x_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">radius</span><span class="p">,</span> <span class="n">y_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">radius</span><span class="p">,</span> <span class="n">z_dim</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">radius</span><span class="p">])</span>
|
||||
<span class="n">wall</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">radius</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">segments</span><span class="p">)</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">radius</span><span class="p">,</span> <span class="n">radius</span><span class="p">,</span> <span class="n">radius</span><span class="p">])(</span>
|
||||
<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="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>
|
||||
<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="sd">"""</span>
|
||||
<span class="sd"> creates a cube with rounded corners</span>
|
||||
|
||||
<span class="sd"> .. image:: img/round_box.png</span>
|
||||
<span class="sd"> .. image:: img/rcube.png</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> dim: cube dimensions to base box on.</span>
|
||||
@@ -164,29 +148,30 @@
|
||||
<span class="k">for</span> <span class="n">dy</span> <span class="ow">in</span> <span class="p">[</span><span class="n">radius</span><span class="p">,</span> <span class="n">dim</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">radius</span><span class="p">]:</span>
|
||||
<span class="k">for</span> <span class="n">dz</span> <span class="ow">in</span> <span class="p">[</span><span class="n">radius</span><span class="p">,</span> <span class="n">dim</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">-</span> <span class="n">radius</span><span class="p">]:</span>
|
||||
<span class="n">corners</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">dx</span><span class="p">,</span> <span class="n">dy</span><span class="p">,</span> <span class="n">dz</span><span class="p">])((</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">radius</span><span class="p">)</span>
|
||||
<span class="p">))</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">dx</span><span class="p">,</span> <span class="n">dy</span><span class="p">,</span> <span class="n">dz</span><span class="p">])(</span>
|
||||
<span class="p">(</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">radius</span><span class="p">,</span> <span class="n">segments</span><span class="o">=</span><span class="n">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">))</span>
|
||||
<span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">hull</span><span class="p">()(</span><span class="o">*</span><span class="n">corners</span><span class="p">)</span></div>
|
||||
|
||||
<div class="viewcode-block" id="round_flat_box"><a class="viewcode-back" href="../../solidLib.html#solidLib.primitives.round_flat_box">[docs]</a><span class="k">def</span> <span class="nf">round_flat_box</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">z</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="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="rfcube"><a class="viewcode-back" href="../../solidLib.html#solidLib.primitives.rfcube">[docs]</a><span class="k">def</span> <span class="nf">rfcube</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">r</span><span class="p">:</span> <span class="nb">float</span><span class="p">):</span>
|
||||
<span class="sd">"""creates a round box with radius r and flat top/bottom</span>
|
||||
|
||||
<span class="sd"> .. image:: img/round_flat_box.png</span>
|
||||
<span class="sd"> .. image:: img/round_flat_box.png</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">box</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">x</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r</span><span class="p">,</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r</span><span class="p">,</span> <span class="n">z</span><span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r</span><span class="p">])</span>
|
||||
<span class="n">wall</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cylinder</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">h</span><span class="o">=</span><span class="mi">2</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>
|
||||
<span class="n">box</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cube</span><span class="p">([</span><span class="n">dim</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r</span><span class="p">,</span> <span class="n">dim</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r</span><span class="p">,</span> <span class="n">dim</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">r</span><span class="p">])</span>
|
||||
<span class="n">wall</span> <span class="o">=</span> <span class="n">scad</span><span class="o">.</span><span class="n">cylinder</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">h</span><span class="o">=</span><span class="mi">2</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">sl</span><span class="o">.</span><span class="n">settings</span><span class="o">.</span><span class="n">segments</span><span class="p">)</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">r</span><span class="p">,</span> <span class="n">r</span><span class="p">,</span> <span class="mi">0</span><span class="p">])(</span>
|
||||
<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>
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">([</span><span class="n">r</span><span class="p">,</span> <span class="n">r</span><span class="p">,</span> <span class="mi">0</span><span class="p">])(</span><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></div>
|
||||
|
||||
|
||||
<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"> .. image:: img/pill.png</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>
|
||||
@@ -195,9 +180,7 @@
|
||||
<span class="n">spheres</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<span class="c1"># log.info(ps)</span>
|
||||
<span class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span class="n">ps</span><span class="p">:</span>
|
||||
<span class="n">spheres</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
|
||||
<span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">(</span><span class="n">p</span><span class="p">)(</span><span class="n">s</span><span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
<span class="n">spheres</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">scad</span><span class="o">.</span><span class="n">translate</span><span class="p">(</span><span class="n">p</span><span class="p">)(</span><span class="n">s</span><span class="p">))</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">scad</span><span class="o">.</span><span class="n">hull</span><span class="p">()(</span><span class="o">*</span><span class="n">spheres</span><span class="p">)</span></div>
|
||||
</pre></div>
|
||||
|
||||
@@ -189,14 +189,12 @@
|
||||
<table style="width: 100%" class="indextable genindextable"><tr>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<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">round_box() (in module solidLib.primitives)</a>
|
||||
<li><a href="solidLib.html#solidLib.primitives.rcube">rcube() (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><a href="solidLib.html#solidLib.primitives.rfcube">rfcube() (in module solidLib.primitives)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
</tr></table>
|
||||
|
||||
@@ -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,""],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}})
|
||||
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,""],rfcube:[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:[],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,rfbox:[],rfcube:1,round:1,round_box:[],round_flat_box:[],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:[],z_dim:[]},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}})
|
||||
@@ -149,14 +149,14 @@
|
||||
<span id="solidlib-assortment-module"></span><h2>solidLib.assortment module<a class="headerlink" href="#module-solidLib.assortment" title="Permalink to this headline">¶</a></h2>
|
||||
<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>
|
||||
<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><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><p>standardized container</p>
|
||||
<img alt="_images/bin.png" src="_images/bin.png" />
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.assortment.grid">
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">grid</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x_dim</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">y</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">w</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">h</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">1.5</span></em>, <em class="sig-param"><span class="n">fillet</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">False</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#grid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.grid" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">grid</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x_dim</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">y</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">w</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">h</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">1.5</span></em>, <em class="sig-param"><span class="n">fillet</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/assortment.html#grid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.grid" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>generate a grid of (flattened) triangles with or without fillet</p>
|
||||
<p>the generated grid is x by y in size with a gridspace of size dim,
|
||||
the triangles used for the base structure is given by their height and width</p>
|
||||
@@ -165,12 +165,12 @@ the triangles used for the base structure is given by their height and width</p>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.assortment.grid_inv">
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">grid_inv</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">w</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">h</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">1.5</span></em>, <em class="sig-param"><span class="n">fillet</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">False</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#grid_inv"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.grid_inv" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-prename descclassname">solidLib.assortment.</code><code class="sig-name descname">grid_inv</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">w</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">h</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">1.5</span></em>, <em class="sig-param"><span class="n">fillet</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/assortment.html#grid_inv"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.assortment.grid_inv" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<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>
|
||||
<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><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/toolinlay1.png" src="_images/toolinlay1.png" />
|
||||
<dl class="field-list simple">
|
||||
@@ -185,7 +185,7 @@ the triangles used for the base structure is given by their height and width</p>
|
||||
|
||||
<dl class="py function">
|
||||
<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>
|
||||
<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">wall</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">2</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/toolinlay2.png" src="_images/toolinlay2.png" />
|
||||
<dl class="field-list simple">
|
||||
@@ -196,8 +196,6 @@ the triangles used for the base structure is given by their height and width</p>
|
||||
<li><p><strong>inset</strong> – depth of toolinlay inset</p></li>
|
||||
<li><p><strong>inset_tool</strong> – depth of additional toolspace inset</p></li>
|
||||
<li><p><strong>maxh</strong> – system height restriction</p></li>
|
||||
<li><p><strong>dim</strong> – system raster dimension</p></li>
|
||||
<li><p><strong>segments</strong> – circular object segments</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
@@ -210,13 +208,14 @@ the triangles used for the base structure is given by their height and width</p>
|
||||
<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><p>create a pill around given points</p>
|
||||
<img alt="_images/pill.png" src="_images/pill.png" />
|
||||
</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>
|
||||
<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><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" />
|
||||
<img alt="_images/rcube.png" src="_images/rcube.png" />
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
@@ -229,25 +228,8 @@ the triangles used for the base structure is given by their height and width</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="solidLib.primitives.round_box">
|
||||
<code class="sig-prename descclassname">solidLib.primitives.</code><code class="sig-name descname">round_box</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x_dim</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">y_dim</span><span class="p">:</span> <span class="n">float</span></em>, <em class="sig-param"><span class="n">z_dim</span><span class="p">:</span> <span class="n">float</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"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.primitives.round_box" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>creates a round box with radius r</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><p><strong>x_dim</strong> (<em>float</em>) – <p>.</p>
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="admonition important">
|
||||
<p class="admonition-title">Important</p>
|
||||
<p>deprecated</p>
|
||||
</div>
|
||||
<img alt="_images/round_box.png" src="_images/round_box.png" />
|
||||
</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>
|
||||
<dt id="solidLib.primitives.rfcube">
|
||||
<code class="sig-prename descclassname">solidLib.primitives.</code><code class="sig-name descname">rfcube</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">r</span><span class="p">:</span> <span class="n">float</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/solidLib/primitives.html#rfcube"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#solidLib.primitives.rfcube" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>creates a round box with radius r and flat top/bottom</p>
|
||||
<img alt="_images/round_flat_box.png" src="_images/round_flat_box.png" />
|
||||
</dd></dl>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
union() {
|
||||
@@ -10,10 +10,30 @@ union() {
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [51, 51, 63]);
|
||||
sphere($fn = 32, r = 2);
|
||||
hull() {
|
||||
translate(v = [2, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 2, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 53, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 53, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 2, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 53, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 53, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -474,10 +494,30 @@ union() {
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [51, 51, 63]);
|
||||
sphere($fn = 32, r = 2);
|
||||
hull() {
|
||||
translate(v = [2, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 2, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 53, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 53, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 2, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 53, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [53, 53, 65]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -495,8 +535,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
union() {
|
||||
@@ -277,8 +277,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
difference() {
|
||||
@@ -280,8 +280,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
hull() {
|
||||
@@ -21,8 +21,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
hull() {
|
||||
translate(v = [0.2500000000, 0.2500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.2500000000, 0.2500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.2500000000, 0.7500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.2500000000, 0.7500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.2500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.2500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.7500000000, 0.2500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
translate(v = [0.7500000000, 0.7500000000, 0.7500000000]) {
|
||||
sphere(r = 0.2500000000);
|
||||
sphere($fn = 36, r = 0.2500000000);
|
||||
}
|
||||
}
|
||||
/***********************************************
|
||||
@@ -39,8 +39,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
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 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.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:21:44
|
||||
|
||||
|
||||
translate(v = [0.2500000000, 0.2500000000, 0]) {
|
||||
@@ -19,8 +19,7 @@ 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(slp.rfcube([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")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
difference() {
|
||||
@@ -20,10 +20,30 @@ difference() {
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [110, 169, 48]);
|
||||
sphere($fn = 32, r = 2);
|
||||
hull() {
|
||||
translate(v = [2, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1624,10 +1644,30 @@ difference() {
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [110, 169, 48]);
|
||||
sphere($fn = 32, r = 2);
|
||||
hull() {
|
||||
translate(v = [2, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1809,8 +1849,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-12 20:02:04
|
||||
// Generated by SolidPython 1.0.5 on 2021-02-14 10:24:57
|
||||
|
||||
|
||||
difference() {
|
||||
@@ -20,10 +20,30 @@ difference() {
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [110, 169, 48]);
|
||||
sphere($fn = 32, r = 2);
|
||||
hull() {
|
||||
translate(v = [2, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1624,10 +1644,30 @@ difference() {
|
||||
}
|
||||
}
|
||||
translate(v = [2, 2, 2]) {
|
||||
translate(v = [2, 2, 2]) {
|
||||
minkowski() {
|
||||
cube(size = [110, 169, 48]);
|
||||
sphere($fn = 32, r = 2);
|
||||
hull() {
|
||||
translate(v = [2, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [2, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 2, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 2]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
translate(v = [112, 171, 50]) {
|
||||
sphere($fn = 36, r = 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1771,8 +1811,7 @@ 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(slp.rfcube([1, 1, 1], .25), "./docs/files/rfcube.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")
|
||||
|
||||
|
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.8 KiB |
|
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |