update docs

Signed-off-by: Jess Frazelle <github@jessfraz.com>
This commit is contained in:
Jess Frazelle
2023-12-05 16:25:51 -08:00
parent 3467a5d5dd
commit 43cc9d18b6
2585 changed files with 705361 additions and 171748 deletions

View File

@ -3,7 +3,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>kittycad.models.output_format &mdash; kittycad v0.4.6 documentation</title>
<title>kittycad.models.output_format &mdash; kittycad v0.5.9 documentation</title>
<link rel="stylesheet" href="../../../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../../_static/graphviz.css" type="text/css" />
@ -15,7 +15,7 @@
<script src="../../../_static/jquery.js?v=5d32c60e"></script>
<script src="../../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js?v=80626fd4"></script>
<script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js?v=19ad864f"></script>
<script src="../../../_static/doctools.js?v=888ff710"></script>
<script src="../../../_static/sphinx_highlight.js?v=4825356b"></script>
<script src="../../../_static/clipboard.min.js?v=a7894cd8"></script>
@ -37,7 +37,7 @@
kittycad
</a>
<div class="version">
v0.4.6
v0.5.9
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
@ -79,356 +79,98 @@
<div itemprop="articleBody">
<h1>Source code for kittycad.models.output_format</h1><div class="highlight"><pre>
<span></span><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Any</span><span class="p">,</span> <span class="n">Dict</span><span class="p">,</span> <span class="n">List</span><span class="p">,</span> <span class="n">Type</span><span class="p">,</span> <span class="n">TypeVar</span><span class="p">,</span> <span class="n">Union</span>
<span></span><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span><span class="p">,</span> <span class="n">Union</span>
<span class="kn">import</span> <span class="nn">attr</span>
<span class="kn">from</span> <span class="nn">pydantic</span> <span class="kn">import</span> <span class="n">BaseModel</span><span class="p">,</span> <span class="n">Field</span><span class="p">,</span> <span class="n">RootModel</span>
<span class="kn">from</span> <span class="nn">typing_extensions</span> <span class="kn">import</span> <span class="n">Annotated</span>
<span class="kn">from</span> <span class="nn">..models.storage</span> <span class="kn">import</span> <span class="n">Storage</span>
<span class="kn">from</span> <span class="nn">..models.fbx_storage</span> <span class="kn">import</span> <span class="n">FbxStorage</span>
<span class="kn">from</span> <span class="nn">..models.gltf_presentation</span> <span class="kn">import</span> <span class="n">GltfPresentation</span>
<span class="kn">from</span> <span class="nn">..models.gltf_storage</span> <span class="kn">import</span> <span class="n">GltfStorage</span>
<span class="kn">from</span> <span class="nn">..models.ply_storage</span> <span class="kn">import</span> <span class="n">PlyStorage</span>
<span class="kn">from</span> <span class="nn">..models.selection</span> <span class="kn">import</span> <span class="n">Selection</span>
<span class="kn">from</span> <span class="nn">..models.stl_storage</span> <span class="kn">import</span> <span class="n">StlStorage</span>
<span class="kn">from</span> <span class="nn">..models.system</span> <span class="kn">import</span> <span class="n">System</span>
<span class="kn">from</span> <span class="nn">..types</span> <span class="kn">import</span> <span class="n">UNSET</span><span class="p">,</span> <span class="n">Unset</span>
<span class="kn">from</span> <span class="nn">..models.unit_length</span> <span class="kn">import</span> <span class="n">UnitLength</span>
<span class="n">JQ</span> <span class="o">=</span> <span class="n">TypeVar</span><span class="p">(</span><span class="s2">&quot;JQ&quot;</span><span class="p">,</span> <span class="n">bound</span><span class="o">=</span><span class="s2">&quot;gltf&quot;</span><span class="p">)</span>
<div class="viewcode-block" id="fbx"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.fbx.html#kittycad.models.output_format.fbx">[docs]</a><span class="k">class</span> <span class="nc">fbx</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Autodesk Filmbox (FBX) format.&quot;&quot;&quot;</span>
<div class="viewcode-block" id="gltf"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf">[docs]</a><span class="nd">@attr</span><span class="o">.</span><span class="n">s</span><span class="p">(</span><span class="n">auto_attribs</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="k">class</span> <span class="nc">gltf</span><span class="p">:</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;glTF 2.0. We refer to this as glTF since that is how our customers refer to it, although by default it will be in binary format and thus technically (glb). If you prefer ascii output, you can set that option for the export.&quot;&quot;&quot;</span> <span class="c1"># noqa: E501</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">FbxStorage</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">Storage</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="nb">type</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;gltf&quot;</span>
<span class="nb">type</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">&quot;fbx&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="s2">&quot;fbx&quot;</span></div>
<span class="n">additional_properties</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="n">attr</span><span class="o">.</span><span class="n">ib</span><span class="p">(</span><span class="n">init</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">factory</span><span class="o">=</span><span class="nb">dict</span><span class="p">)</span>
<div class="viewcode-block" id="gltf.to_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf.to_dict">[docs]</a> <span class="k">def</span> <span class="nf">to_dict</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</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="bp">self</span><span class="o">.</span><span class="n">storage</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">storage</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">storage</span>
<span class="nb">type</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">type</span>
<div class="viewcode-block" id="gltf"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf">[docs]</a><span class="k">class</span> <span class="nc">gltf</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;glTF 2.0. We refer to this as glTF since that is how our customers refer to it, although by default it will be in binary format and thus technically (glb). If you prefer ascii output, you can set that option for the export.&quot;&quot;&quot;</span>
<span class="n">field_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">)</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">({})</span>
<span class="k">if</span> <span class="n">storage</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;storage&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">storage</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;type&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="nb">type</span>
<span class="n">presentation</span><span class="p">:</span> <span class="n">GltfPresentation</span>
<span class="k">return</span> <span class="n">field_dict</span></div>
<span class="n">storage</span><span class="p">:</span> <span class="n">GltfStorage</span>
<div class="viewcode-block" id="gltf.from_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf.from_dict">[docs]</a> <span class="nd">@classmethod</span>
<span class="k">def</span> <span class="nf">from_dict</span><span class="p">(</span><span class="bp">cls</span><span class="p">:</span> <span class="n">Type</span><span class="p">[</span><span class="n">JQ</span><span class="p">],</span> <span class="n">src_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="n">JQ</span><span class="p">:</span>
<span class="n">d</span> <span class="o">=</span> <span class="n">src_dict</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
<span class="n">_storage</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;storage&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">Storage</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_storage</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">storage</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">storage</span> <span class="o">=</span> <span class="n">_storage</span> <span class="c1"># type: ignore[arg-type]</span>
<span class="nb">type</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">&quot;gltf&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="s2">&quot;gltf&quot;</span></div>
<span class="nb">type</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;type&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">gltf</span> <span class="o">=</span> <span class="bp">cls</span><span class="p">(</span>
<span class="n">storage</span><span class="o">=</span><span class="n">storage</span><span class="p">,</span>
<span class="nb">type</span><span class="o">=</span><span class="nb">type</span><span class="p">,</span>
<span class="p">)</span>
<div class="viewcode-block" id="obj"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj">[docs]</a><span class="k">class</span> <span class="nc">obj</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Wavefront OBJ format.&quot;&quot;&quot;</span>
<span class="n">gltf</span><span class="o">.</span><span class="n">additional_properties</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">return</span> <span class="n">gltf</span></div>
<span class="n">coords</span><span class="p">:</span> <span class="n">System</span>
<span class="nd">@property</span>
<span class="k">def</span> <span class="nf">additional_keys</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
<span class="nb">type</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">&quot;obj&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="s2">&quot;obj&quot;</span>
<div class="viewcode-block" id="gltf.__getitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf.__getitem__">[docs]</a> <span class="k">def</span> <span class="fm">__getitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Any</span><span class="p">:</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<span class="n">units</span><span class="p">:</span> <span class="n">UnitLength</span></div>
<div class="viewcode-block" id="gltf.__setitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf.__setitem__">[docs]</a> <span class="k">def</span> <span class="fm">__setitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">value</span><span class="p">:</span> <span class="n">Any</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span></div>
<div class="viewcode-block" id="gltf.__delitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf.__delitem__">[docs]</a> <span class="k">def</span> <span class="fm">__delitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="ply"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply">[docs]</a><span class="k">class</span> <span class="nc">ply</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;The PLY Polygon File Format.&quot;&quot;&quot;</span>
<div class="viewcode-block" id="gltf.__contains__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.gltf.html#kittycad.models.output_format.gltf.__contains__">[docs]</a> <span class="k">def</span> <span class="fm">__contains__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">bool</span><span class="p">:</span>
<span class="k">return</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span></div></div>
<span class="n">coords</span><span class="p">:</span> <span class="n">System</span>
<span class="n">selection</span><span class="p">:</span> <span class="n">Selection</span>
<span class="n">PQ</span> <span class="o">=</span> <span class="n">TypeVar</span><span class="p">(</span><span class="s2">&quot;PQ&quot;</span><span class="p">,</span> <span class="n">bound</span><span class="o">=</span><span class="s2">&quot;obj&quot;</span><span class="p">)</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">PlyStorage</span>
<span class="nb">type</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">&quot;ply&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="s2">&quot;ply&quot;</span>
<div class="viewcode-block" id="obj"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj">[docs]</a><span class="nd">@attr</span><span class="o">.</span><span class="n">s</span><span class="p">(</span><span class="n">auto_attribs</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="k">class</span> <span class="nc">obj</span><span class="p">:</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Wavefront OBJ format.&quot;&quot;&quot;</span> <span class="c1"># noqa: E501</span>
<span class="n">units</span><span class="p">:</span> <span class="n">UnitLength</span></div>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="nb">type</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;obj&quot;</span>
<span class="n">additional_properties</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="n">attr</span><span class="o">.</span><span class="n">ib</span><span class="p">(</span><span class="n">init</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">factory</span><span class="o">=</span><span class="nb">dict</span><span class="p">)</span>
<div class="viewcode-block" id="step"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step">[docs]</a><span class="k">class</span> <span class="nc">step</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;ISO 10303-21 (STEP) format.&quot;&quot;&quot;</span>
<div class="viewcode-block" id="obj.to_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj.to_dict">[docs]</a> <span class="k">def</span> <span class="nf">to_dict</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</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="bp">self</span><span class="o">.</span><span class="n">coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">coords</span>
<span class="nb">type</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">type</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">System</span>
<span class="n">field_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">)</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">({})</span>
<span class="k">if</span> <span class="n">coords</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;coords&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">coords</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;type&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="nb">type</span>
<span class="nb">type</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">&quot;step&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="s2">&quot;step&quot;</span></div>
<span class="k">return</span> <span class="n">field_dict</span></div>
<div class="viewcode-block" id="obj.from_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj.from_dict">[docs]</a> <span class="nd">@classmethod</span>
<span class="k">def</span> <span class="nf">from_dict</span><span class="p">(</span><span class="bp">cls</span><span class="p">:</span> <span class="n">Type</span><span class="p">[</span><span class="n">PQ</span><span class="p">],</span> <span class="n">src_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="n">PQ</span><span class="p">:</span>
<span class="n">d</span> <span class="o">=</span> <span class="n">src_dict</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
<span class="n">_coords</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;coords&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">_coords</span> <span class="c1"># type: ignore[arg-type]</span>
<div class="viewcode-block" id="stl"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl">[docs]</a><span class="k">class</span> <span class="nc">stl</span><span class="p">(</span><span class="n">BaseModel</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;*ST**ereo**L**ithography format.&quot;&quot;&quot;</span>
<span class="nb">type</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;type&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">System</span>
<span class="n">obj</span> <span class="o">=</span> <span class="bp">cls</span><span class="p">(</span>
<span class="n">coords</span><span class="o">=</span><span class="n">coords</span><span class="p">,</span>
<span class="nb">type</span><span class="o">=</span><span class="nb">type</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">selection</span><span class="p">:</span> <span class="n">Selection</span>
<span class="n">obj</span><span class="o">.</span><span class="n">additional_properties</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">return</span> <span class="n">obj</span></div>
<span class="n">storage</span><span class="p">:</span> <span class="n">StlStorage</span>
<span class="nd">@property</span>
<span class="k">def</span> <span class="nf">additional_keys</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
<span class="nb">type</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">&quot;stl&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="s2">&quot;stl&quot;</span>
<div class="viewcode-block" id="obj.__getitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj.__getitem__">[docs]</a> <span class="k">def</span> <span class="fm">__getitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Any</span><span class="p">:</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<span class="n">units</span><span class="p">:</span> <span class="n">UnitLength</span></div>
<div class="viewcode-block" id="obj.__setitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj.__setitem__">[docs]</a> <span class="k">def</span> <span class="fm">__setitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">value</span><span class="p">:</span> <span class="n">Any</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span></div>
<div class="viewcode-block" id="obj.__delitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj.__delitem__">[docs]</a> <span class="k">def</span> <span class="fm">__delitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="obj.__contains__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.obj.html#kittycad.models.output_format.obj.__contains__">[docs]</a> <span class="k">def</span> <span class="fm">__contains__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">bool</span><span class="p">:</span>
<span class="k">return</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span></div></div>
<span class="n">IM</span> <span class="o">=</span> <span class="n">TypeVar</span><span class="p">(</span><span class="s2">&quot;IM&quot;</span><span class="p">,</span> <span class="n">bound</span><span class="o">=</span><span class="s2">&quot;ply&quot;</span><span class="p">)</span>
<div class="viewcode-block" id="ply"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply">[docs]</a><span class="nd">@attr</span><span class="o">.</span><span class="n">s</span><span class="p">(</span><span class="n">auto_attribs</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="k">class</span> <span class="nc">ply</span><span class="p">:</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;The PLY Polygon File Format.&quot;&quot;&quot;</span> <span class="c1"># noqa: E501</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">Storage</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="nb">type</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;ply&quot;</span>
<span class="n">additional_properties</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="n">attr</span><span class="o">.</span><span class="n">ib</span><span class="p">(</span><span class="n">init</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">factory</span><span class="o">=</span><span class="nb">dict</span><span class="p">)</span>
<div class="viewcode-block" id="ply.to_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply.to_dict">[docs]</a> <span class="k">def</span> <span class="nf">to_dict</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</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="bp">self</span><span class="o">.</span><span class="n">coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">coords</span>
<span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">storage</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">storage</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">storage</span>
<span class="nb">type</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">type</span>
<span class="n">field_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">)</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">({})</span>
<span class="k">if</span> <span class="n">coords</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;coords&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">coords</span>
<span class="k">if</span> <span class="n">storage</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;storage&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">storage</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;type&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="nb">type</span>
<span class="k">return</span> <span class="n">field_dict</span></div>
<div class="viewcode-block" id="ply.from_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply.from_dict">[docs]</a> <span class="nd">@classmethod</span>
<span class="k">def</span> <span class="nf">from_dict</span><span class="p">(</span><span class="bp">cls</span><span class="p">:</span> <span class="n">Type</span><span class="p">[</span><span class="n">IM</span><span class="p">],</span> <span class="n">src_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="n">IM</span><span class="p">:</span>
<span class="n">d</span> <span class="o">=</span> <span class="n">src_dict</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
<span class="n">_coords</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;coords&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">_coords</span> <span class="c1"># type: ignore[arg-type]</span>
<span class="n">_storage</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;storage&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">Storage</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_storage</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">storage</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">storage</span> <span class="o">=</span> <span class="n">_storage</span> <span class="c1"># type: ignore[arg-type]</span>
<span class="nb">type</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;type&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">ply</span> <span class="o">=</span> <span class="bp">cls</span><span class="p">(</span>
<span class="n">coords</span><span class="o">=</span><span class="n">coords</span><span class="p">,</span>
<span class="n">storage</span><span class="o">=</span><span class="n">storage</span><span class="p">,</span>
<span class="nb">type</span><span class="o">=</span><span class="nb">type</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">ply</span><span class="o">.</span><span class="n">additional_properties</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">return</span> <span class="n">ply</span></div>
<span class="nd">@property</span>
<span class="k">def</span> <span class="nf">additional_keys</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
<div class="viewcode-block" id="ply.__getitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply.__getitem__">[docs]</a> <span class="k">def</span> <span class="fm">__getitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Any</span><span class="p">:</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="ply.__setitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply.__setitem__">[docs]</a> <span class="k">def</span> <span class="fm">__setitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">value</span><span class="p">:</span> <span class="n">Any</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span></div>
<div class="viewcode-block" id="ply.__delitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply.__delitem__">[docs]</a> <span class="k">def</span> <span class="fm">__delitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="ply.__contains__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.ply.html#kittycad.models.output_format.ply.__contains__">[docs]</a> <span class="k">def</span> <span class="fm">__contains__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">bool</span><span class="p">:</span>
<span class="k">return</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span></div></div>
<span class="n">OU</span> <span class="o">=</span> <span class="n">TypeVar</span><span class="p">(</span><span class="s2">&quot;OU&quot;</span><span class="p">,</span> <span class="n">bound</span><span class="o">=</span><span class="s2">&quot;step&quot;</span><span class="p">)</span>
<div class="viewcode-block" id="step"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step">[docs]</a><span class="nd">@attr</span><span class="o">.</span><span class="n">s</span><span class="p">(</span><span class="n">auto_attribs</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="k">class</span> <span class="nc">step</span><span class="p">:</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;ISO 10303-21 (STEP) format.&quot;&quot;&quot;</span> <span class="c1"># noqa: E501</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="nb">type</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;step&quot;</span>
<span class="n">additional_properties</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="n">attr</span><span class="o">.</span><span class="n">ib</span><span class="p">(</span><span class="n">init</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">factory</span><span class="o">=</span><span class="nb">dict</span><span class="p">)</span>
<div class="viewcode-block" id="step.to_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step.to_dict">[docs]</a> <span class="k">def</span> <span class="nf">to_dict</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</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="bp">self</span><span class="o">.</span><span class="n">coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">coords</span>
<span class="nb">type</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">type</span>
<span class="n">field_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">)</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">({})</span>
<span class="k">if</span> <span class="n">coords</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;coords&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">coords</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;type&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="nb">type</span>
<span class="k">return</span> <span class="n">field_dict</span></div>
<div class="viewcode-block" id="step.from_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step.from_dict">[docs]</a> <span class="nd">@classmethod</span>
<span class="k">def</span> <span class="nf">from_dict</span><span class="p">(</span><span class="bp">cls</span><span class="p">:</span> <span class="n">Type</span><span class="p">[</span><span class="n">OU</span><span class="p">],</span> <span class="n">src_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="n">OU</span><span class="p">:</span>
<span class="n">d</span> <span class="o">=</span> <span class="n">src_dict</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
<span class="n">_coords</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;coords&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">_coords</span> <span class="c1"># type: ignore[arg-type]</span>
<span class="nb">type</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;type&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">step</span> <span class="o">=</span> <span class="bp">cls</span><span class="p">(</span>
<span class="n">coords</span><span class="o">=</span><span class="n">coords</span><span class="p">,</span>
<span class="nb">type</span><span class="o">=</span><span class="nb">type</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">step</span><span class="o">.</span><span class="n">additional_properties</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">return</span> <span class="n">step</span></div>
<span class="nd">@property</span>
<span class="k">def</span> <span class="nf">additional_keys</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
<div class="viewcode-block" id="step.__getitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step.__getitem__">[docs]</a> <span class="k">def</span> <span class="fm">__getitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Any</span><span class="p">:</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="step.__setitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step.__setitem__">[docs]</a> <span class="k">def</span> <span class="fm">__setitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">value</span><span class="p">:</span> <span class="n">Any</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span></div>
<div class="viewcode-block" id="step.__delitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step.__delitem__">[docs]</a> <span class="k">def</span> <span class="fm">__delitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="step.__contains__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.step.html#kittycad.models.output_format.step.__contains__">[docs]</a> <span class="k">def</span> <span class="fm">__contains__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">bool</span><span class="p">:</span>
<span class="k">return</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span></div></div>
<span class="n">KL</span> <span class="o">=</span> <span class="n">TypeVar</span><span class="p">(</span><span class="s2">&quot;KL&quot;</span><span class="p">,</span> <span class="n">bound</span><span class="o">=</span><span class="s2">&quot;stl&quot;</span><span class="p">)</span>
<div class="viewcode-block" id="stl"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl">[docs]</a><span class="nd">@attr</span><span class="o">.</span><span class="n">s</span><span class="p">(</span><span class="n">auto_attribs</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="k">class</span> <span class="nc">stl</span><span class="p">:</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;*ST**ereo**L**ithography format.&quot;&quot;&quot;</span> <span class="c1"># noqa: E501</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">Storage</span><span class="p">]</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="nb">type</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;stl&quot;</span>
<span class="n">additional_properties</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="n">attr</span><span class="o">.</span><span class="n">ib</span><span class="p">(</span><span class="n">init</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">factory</span><span class="o">=</span><span class="nb">dict</span><span class="p">)</span>
<div class="viewcode-block" id="stl.to_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl.to_dict">[docs]</a> <span class="k">def</span> <span class="nf">to_dict</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</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="bp">self</span><span class="o">.</span><span class="n">coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">coords</span>
<span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">storage</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">storage</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">storage</span>
<span class="nb">type</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">type</span>
<span class="n">field_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">)</span>
<span class="n">field_dict</span><span class="o">.</span><span class="n">update</span><span class="p">({})</span>
<span class="k">if</span> <span class="n">coords</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;coords&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">coords</span>
<span class="k">if</span> <span class="n">storage</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">UNSET</span><span class="p">:</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;storage&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">storage</span>
<span class="n">field_dict</span><span class="p">[</span><span class="s2">&quot;type&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="nb">type</span>
<span class="k">return</span> <span class="n">field_dict</span></div>
<div class="viewcode-block" id="stl.from_dict"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl.from_dict">[docs]</a> <span class="nd">@classmethod</span>
<span class="k">def</span> <span class="nf">from_dict</span><span class="p">(</span><span class="bp">cls</span><span class="p">:</span> <span class="n">Type</span><span class="p">[</span><span class="n">KL</span><span class="p">],</span> <span class="n">src_dict</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="n">KL</span><span class="p">:</span>
<span class="n">d</span> <span class="o">=</span> <span class="n">src_dict</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
<span class="n">_coords</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;coords&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">coords</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">System</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_coords</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">coords</span> <span class="o">=</span> <span class="n">_coords</span> <span class="c1"># type: ignore[arg-type]</span>
<span class="n">_storage</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;storage&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">storage</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="n">Unset</span><span class="p">,</span> <span class="n">Storage</span><span class="p">]</span>
<span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_storage</span><span class="p">,</span> <span class="n">Unset</span><span class="p">):</span>
<span class="n">storage</span> <span class="o">=</span> <span class="n">UNSET</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">storage</span> <span class="o">=</span> <span class="n">_storage</span> <span class="c1"># type: ignore[arg-type]</span>
<span class="nb">type</span> <span class="o">=</span> <span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">&quot;type&quot;</span><span class="p">,</span> <span class="n">UNSET</span><span class="p">)</span>
<span class="n">stl</span> <span class="o">=</span> <span class="bp">cls</span><span class="p">(</span>
<span class="n">coords</span><span class="o">=</span><span class="n">coords</span><span class="p">,</span>
<span class="n">storage</span><span class="o">=</span><span class="n">storage</span><span class="p">,</span>
<span class="nb">type</span><span class="o">=</span><span class="nb">type</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">stl</span><span class="o">.</span><span class="n">additional_properties</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">return</span> <span class="n">stl</span></div>
<span class="nd">@property</span>
<span class="k">def</span> <span class="nf">additional_keys</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
<div class="viewcode-block" id="stl.__getitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl.__getitem__">[docs]</a> <span class="k">def</span> <span class="fm">__getitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Any</span><span class="p">:</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="stl.__setitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl.__setitem__">[docs]</a> <span class="k">def</span> <span class="fm">__setitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">value</span><span class="p">:</span> <span class="n">Any</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span></div>
<div class="viewcode-block" id="stl.__delitem__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl.__delitem__">[docs]</a> <span class="k">def</span> <span class="fm">__delitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
<div class="viewcode-block" id="stl.__contains__"><a class="viewcode-back" href="../../../_autosummary/kittycad.models.output_format.stl.html#kittycad.models.output_format.stl.__contains__">[docs]</a> <span class="k">def</span> <span class="fm">__contains__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">bool</span><span class="p">:</span>
<span class="k">return</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">additional_properties</span></div></div>
<span class="n">OutputFormat</span> <span class="o">=</span> <span class="n">Union</span><span class="p">[</span><span class="n">gltf</span><span class="p">,</span> <span class="n">obj</span><span class="p">,</span> <span class="n">ply</span><span class="p">,</span> <span class="n">step</span><span class="p">,</span> <span class="n">stl</span><span class="p">]</span>
<span class="n">OutputFormat</span> <span class="o">=</span> <span class="n">RootModel</span><span class="p">[</span>
<span class="n">Annotated</span><span class="p">[</span>
<span class="n">Union</span><span class="p">[</span>
<span class="n">fbx</span><span class="p">,</span>
<span class="n">gltf</span><span class="p">,</span>
<span class="n">obj</span><span class="p">,</span>
<span class="n">ply</span><span class="p">,</span>
<span class="n">step</span><span class="p">,</span>
<span class="n">stl</span><span class="p">,</span>
<span class="p">],</span>
<span class="n">Field</span><span class="p">(</span><span class="n">discriminator</span><span class="o">=</span><span class="s2">&quot;type&quot;</span><span class="p">),</span>
<span class="p">]</span>
<span class="p">]</span>
</pre></div>
</div>