Script: Preview Spaceship

Preview Spaceship picture
Type
Blockly logo indicatorblockly
Author
matas
Date Created
Mar 24, 2021, 12:54:34 PM
Last Edit Date
Oct 2, 2025, 7:40:25 PM

Project Information

Example of how to import STEP files into Bit by bit developers platform from Rhino. Rhino McNeel software is great for modeling BRep type geometry and outputs high quality stp or igs files. Now we show how you can load them online and edit through OpenCascade Technology kernel (OCCT) visual programming components.

View Full Project

Script Code

<xml xmlns="https://developers.google.com/blockly/xml">
 <block type="bitbybit.draw.drawAnyAsyncNoReturn" id="H$2viM2gMzvcIs:r9s#N" x="-835" y="-309">
  <value name="Entity">
   <block type="bitbybit.occt.io.loadSTEPorIGES" id="$OCIn4lVq@kS564=el}u">
    <value name="AssetFile">
     <block type="bitbybit.asset.getFile" id="CYR-;`~J!;O)nwlOIe[n">
      <value name="FileName">
       <block type="text" id="Vih283~n7IEbp/~qw/r,">
        <field name="TEXT">cabin.stp</field>
       </block>
      </value>
     </block>
    </value>
    <value name="AdjustZtoY">
     <block type="logic_boolean" id="=/vkwN)kX{It1^BIb5tp">
      <field name="BOOL">FALSE</field>
     </block>
    </value>
   </block>
  </value>
  <value name="Options">
   <block type="bitbybit.draw.optionsOcctShape" id=":)Q-$;H+TPb3kX8(BWzZ">
    <value name="FaceOpacity">
     <block type="math_number" id="a9G|#+DSQZP*]FW:9Z|P">
      <field name="NUM">0.9</field>
     </block>
    </value>
    <value name="EdgeOpacity">
     <block type="math_number" id="vli24RFy0Y?_rI$YJo:%">
      <field name="NUM">0.6</field>
     </block>
    </value>
    <value name="EdgeColour">
     <block type="colour_picker" id="B[$-,+-cIM..:,shzPU{">
      <field name="COLOUR">#ffffff</field>
     </block>
    </value>
    <value name="FaceColour">
     <block type="colour_picker" id="|##8N:a,EkHKzjHkHw@[">
      <field name="COLOUR">#0000ff</field>
     </block>
    </value>
    <value name="EdgeWidth">
     <block type="math_number" id="fDBbpKT6h+n-xNM8^b.K">
      <field name="NUM">10</field>
     </block>
    </value>
    <value name="DrawEdges">
     <block type="logic_boolean" id="#dQHu3XXDBE;45}h!eLL">
      <field name="BOOL">TRUE</field>
     </block>
    </value>
    <value name="DrawFaces">
     <block type="logic_boolean" id="Khm3.~]zqp[p6wfT9J.e">
      <field name="BOOL">TRUE</field>
     </block>
    </value>
    <value name="Precision">
     <block type="math_number" id="oh$pnRuuvu%~Vv_}9}S0">
      <field name="NUM">0.05</field>
     </block>
    </value>
    <value name="DrawEdgeIndexes">
     <block type="logic_boolean" id="urm|]A`FHJX(o8/|?$.e">
      <field name="BOOL">FALSE</field>
     </block>
    </value>
    <value name="EdgeIndexHeight">
     <block type="math_number" id="(ph6@?9/T,OQg%|:T71t">
      <field name="NUM">0.06</field>
     </block>
    </value>
    <value name="EdgeIndexColour">
     <block type="colour_picker" id="Y,#xt#C.6Yx1L~Fb7gDa">
      <field name="COLOUR">#bbbbff</field>
     </block>
    </value>
    <value name="DrawFaceIndexes">
     <block type="logic_boolean" id="D9Dsf!v;fO0D6#p,:9/|">
      <field name="BOOL">FALSE</field>
     </block>
    </value>
    <value name="FaceIndexHeight">
     <block type="math_number" id="vw.xs@MZ[aY@$S/RMDZx">
      <field name="NUM">0.06</field>
     </block>
    </value>
    <value name="FaceIndexColour">
     <block type="colour_picker" id="fxSE1ePMP@!m+X0ITt@^">
      <field name="COLOUR">#0000ff</field>
     </block>
    </value>
   </block>
  </value>
  <next>
   <block type="bitbybit.draw.drawAnyAsyncNoReturn" id="U63Ri|zV*8%u1#cKe^AO">
    <value name="Entity">
     <block type="bitbybit.occt.io.loadSTEPorIGES" id="=MP!3LTJhg@sH],?@z/O">
      <value name="AssetFile">
       <block type="bitbybit.asset.getFile" id="00=XldANn8cZ03;TjXw7">
        <value name="FileName">
         <block type="text" id="0hfNHTzdY-|%FbW{BB7~">
          <field name="TEXT">body.stp</field>
         </block>
        </value>
       </block>
      </value>
      <value name="AdjustZtoY">
       <block type="logic_boolean" id="]sUcE@8.;XaEatK@Vq7v">
        <field name="BOOL">FALSE</field>
       </block>
      </value>
     </block>
    </value>
    <value name="Options">
     <block type="bitbybit.draw.optionsOcctShape" id="ZdG7)5bv)GZPS+k3@j4q">
      <value name="FaceOpacity">
       <block type="math_number" id="]H_s%5OS/}K*$b_*,*K5">
        <field name="NUM">1</field>
       </block>
      </value>
      <value name="EdgeOpacity">
       <block type="math_number" id="[bk.mg1%/ERBd(CZzd|D">
        <field name="NUM">0.6</field>
       </block>
      </value>
      <value name="EdgeColour">
       <block type="colour_picker" id="sA+|~[;mF9gcD;W[w;d3">
        <field name="COLOUR">#ffffff</field>
       </block>
      </value>
      <value name="FaceColour">
       <block type="colour_picker" id="Yr{gls{1yOw1VJ#zjzxN">
        <field name="COLOUR">#6600cc</field>
       </block>
      </value>
      <value name="EdgeWidth">
       <block type="math_number" id="=@PhpMbmG]Sk#65NqrmE">
        <field name="NUM">10</field>
       </block>
      </value>
      <value name="DrawEdges">
       <block type="logic_boolean" id="tI?0*$GnGtk3,JLR;ybv">
        <field name="BOOL">TRUE</field>
       </block>
      </value>
      <value name="DrawFaces">
       <block type="logic_boolean" id="$#UF|yAk:a_hH+o5hAdv">
        <field name="BOOL">TRUE</field>
       </block>
      </value>
      <value name="Precision">
       <block type="math_number" id="_kAZRBo3;PzK+#XL,lZ[">
        <field name="NUM">0.05</field>
       </block>
      </value>
      <value name="DrawEdgeIndexes">
       <block type="logic_boolean" id="/w//D#S~e),@:mT|h{sN">
        <field name="BOOL">FALSE</field>
       </block>
      </value>
      <value name="EdgeIndexHeight">
       <block type="math_number" id="-J1k$11)#{pfeUQEhb5}">
        <field name="NUM">0.06</field>
       </block>
      </value>
      <value name="EdgeIndexColour">
       <block type="colour_picker" id="BE.%oNz+V-CDo_FOP(48">
        <field name="COLOUR">#bbbbff</field>
       </block>
      </value>
      <value name="DrawFaceIndexes">
       <block type="logic_boolean" id="K*vU~/tLxw6_dH_MqXKz">
        <field name="BOOL">FALSE</field>
       </block>
      </value>
      <value name="FaceIndexHeight">
       <block type="math_number" id="~^l8$FibCk4In32[eMzJ">
        <field name="NUM">0.06</field>
       </block>
      </value>
      <value name="FaceIndexColour">
       <block type="colour_picker" id="GoYQX5aB=xG5cpGt1}36">
        <field name="COLOUR">#0000ff</field>
       </block>
      </value>
     </block>
    </value>
    <next>
     <block type="bitbybit.draw.drawAnyAsyncNoReturn" id="2[^hC:Xt-O-kyD3)22GS">
      <value name="Entity">
       <block type="bitbybit.occt.io.loadSTEPorIGES" id="hz9k0}3XT4P~^f00(`|%">
        <value name="AssetFile">
         <block type="bitbybit.asset.getFile" id="pgh^:t~{F0KRjV~%#Oqg">
          <value name="FileName">
           <block type="text" id="J|vZ)z3)+uLr7/#Wu=5l">
            <field name="TEXT">wings.stp</field>
           </block>
          </value>
         </block>
        </value>
        <value name="AdjustZtoY">
         <block type="logic_boolean" id="$(!P_M?`+.Q6Z=(|;YSG">
          <field name="BOOL">FALSE</field>
         </block>
        </value>
       </block>
      </value>
      <value name="Options">
       <block type="bitbybit.draw.optionsOcctShape" id="Adv-NHU8-hW$U:iFja([">
        <value name="FaceOpacity">
         <block type="math_number" id="IYU~fi}E7WO0bIeaC3!0">
          <field name="NUM">1</field>
         </block>
        </value>
        <value name="EdgeOpacity">
         <block type="math_number" id="!ivp:U.wEwHa![=8koQd">
          <field name="NUM">1</field>
         </block>
        </value>
        <value name="EdgeColour">
         <block type="colour_picker" id="U2b5_Nmj3Rh(hQ`hUVhm">
          <field name="COLOUR">#000000</field>
         </block>
        </value>
        <value name="FaceColour">
         <block type="colour_picker" id="B*tG)_;Q})=2hwVf!NXT">
          <field name="COLOUR">#3333ff</field>
         </block>
        </value>
        <value name="EdgeWidth">
         <block type="math_number" id="@`_pPcmy%YiI[LYP!~ap">
          <field name="NUM">4</field>
         </block>
        </value>
        <value name="DrawEdges">
         <block type="logic_boolean" id="/eCLvXj`(#1TTMUctV=(">
          <field name="BOOL">TRUE</field>
         </block>
        </value>
        <value name="DrawFaces">
         <block type="logic_boolean" id="J%!ExvKrHE4qIB,KR}x,">
          <field name="BOOL">TRUE</field>
         </block>
        </value>
        <value name="Precision">
         <block type="math_number" id="j8IjPPp2S%#qS(]I(_TI">
          <field name="NUM">0.05</field>
         </block>
        </value>
        <value name="DrawEdgeIndexes">
         <block type="logic_boolean" id="nv=8hIGJ-iz0+iHy;FLR">
          <field name="BOOL">FALSE</field>
         </block>
        </value>
        <value name="EdgeIndexHeight">
         <block type="math_number" id="h8C`H+Xnw-r7Zv?){~_%">
          <field name="NUM">0.06</field>
         </block>
        </value>
        <value name="EdgeIndexColour">
         <block type="colour_picker" id="bD3LQq7Rr1Jf*qzo=^5%">
          <field name="COLOUR">#bbbbff</field>
         </block>
        </value>
        <value name="DrawFaceIndexes">
         <block type="logic_boolean" id="$=B.GF^iervrWVo5s+QA">
          <field name="BOOL">FALSE</field>
         </block>
        </value>
        <value name="FaceIndexHeight">
         <block type="math_number" id="-[RC+$XMVfSQHi+7-ZW+">
          <field name="NUM">0.06</field>
         </block>
        </value>
        <value name="FaceIndexColour">
         <block type="colour_picker" id="^+%L},o8pE,Ie5EI7#$I">
          <field name="COLOUR">#0000ff</field>
         </block>
        </value>
       </block>
      </value>
     </block>
    </next>
   </block>
  </next>
 </block>
</xml>