Laptop stand blockly

Laptop stand blockly script details
Author
matas
Type
Blockly logo image
blockly
App Version
0.13.0
Visibility
public
Date Created
Apr 9, 2021, 1:23:57 PM
Last Edit Date
Dec 5, 2023, 5:05:08 PM

Script Details

The Code
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="K/@-42QKxE!UWz#$7IYX">laptopThickness</variable> <variable id="3afy[tTcpuyS7A(_?FL+">laptopHeight</variable> <variable id="wEP~!;MC{M.!*XZQ}(}F">laptopWidth</variable> <variable id="X{qP1|JP^1%/9tT{gJfZ">standSideThickness</variable> <variable id="CV:1PX9f4mJwyO*K6wDb">laptopOffsetFromGround</variable> <variable id="S,8z8C-y;usRfMLjR|oj">profilePoints</variable> <variable id="0a^sM9$lxDVxu2mq_TVh">laptopToDraw</variable> <variable id="#D2?Rt8,??{r3}yl-afe">laptopStandThickSolid</variable> </variables> <block type="variables_set" id="+t8s!%k9Q5gYsQY6t705" x="4077" y="-1570"> <field name="VAR" id="K/@-42QKxE!UWz#$7IYX">laptopThickness</field> <value name="VALUE"> <block type="math_number" id="eFs-Qhf~M0X/TJVh;Dps"> <field name="NUM">1.5</field> </block> </value> <next> <block type="variables_set" id="MO#DWg+DU}9#T!/oSmx}"> <field name="VAR" id="3afy[tTcpuyS7A(_?FL+">laptopHeight</field> <value name="VALUE"> <block type="math_number" id="s91R}zc6D?nfvtfCpUK1"> <field name="NUM">21.24</field> </block> </value> <next> <block type="variables_set" id="f8[a57=jdYzS0)ReAtIl"> <field name="VAR" id="wEP~!;MC{M.!*XZQ}(}F">laptopWidth</field> <value name="VALUE"> <block type="math_number" id="e[[E+-!#]:=/spVTOAAr"> <field name="NUM">30.41</field> </block> </value> <next> <block type="variables_set" id="j?PVjJE|;Do9:GUhIyI%"> <field name="VAR" id="X{qP1|JP^1%/9tT{gJfZ">standSideThickness</field> <value name="VALUE"> <block type="math_number" id="Rwf^BszLL?RF.`!;ku*y"> <field name="NUM">1.7</field> </block> </value> <next> <block type="variables_set" id="CL+(AbLk+aA_S=f(rW~b"> <field name="VAR" id="CV:1PX9f4mJwyO*K6wDb">laptopOffsetFromGround</field> <value name="VALUE"> <block type="math_number" id="{v[Uub=5oqQ:%J:P/9g^"> <field name="NUM">2</field> </block> </value> <next> <block type="variables_set" id="{aiLOA0GN3dxAGw$9gCc"> <field name="VAR" id="S,8z8C-y;usRfMLjR|oj">profilePoints</field> <value name="VALUE"> <block type="lists_create_with" id=";_WNmH7$;c)Q_26c_VB%"> <mutation items="8"> </mutation> <value name="ADD0"> <block type="bitbybit.point.pointXYZ" id="?IOUv8CiVx8ZGkMEQo$_"> <value name="X"> <block type="math_number" id="kh?}t,8)rF0G?t|:#J85"> <field name="NUM">-12.5</field> </block> </value> <value name="Y"> <block type="math_number" id="-r4Kf.+;v}=l:E[EwM%^"> <field name="NUM">0</field> </block> </value> <value name="Z"> <block type="math_number" id="osMZhq,`_L93?g#DDx0o"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD1"> <block type="bitbybit.point.pointXYZ" id="@4s^pMCg4FRDZD4Y#03{"> <value name="X"> <block type="math_number" id="i)Z9=.h}Rb(BmO0D6Dez"> <field name="NUM">-8</field> </block> </value> <value name="Y"> <block type="math_number" id="tx*U0C^5~85?*:7)]SA|"> <field name="NUM">13</field> </block> </value> <value name="Z"> <block type="math_number" id="@$LWoC#8oH[9{)2LrsvZ"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD2"> <block type="bitbybit.point.pointXYZ" id="eKgOfB:7GEh[EArt)5s_"> <value name="X"> <block type="math_number" id="[+sjsMVK?N?qdMg.#n8@"> <field name="NUM">-4</field> </block> </value> <value name="Y"> <block type="math_number" id="W2x9[-}JoYP3QV~ty?Fk"> <field name="NUM">11</field> </block> </value> <value name="Z"> <block type="math_number" id="F!xm_HK*6td:cHUWsBW6"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD3"> <block type="bitbybit.point.pointXYZ" id=").|_]~A+gBgkc91-iN,N"> <value name="X"> <block type="math_number" id="bxz~g_a/DR=$3G*x%F2L"> <field name="NUM">-2</field> </block> </value> <value name="Y"> <block type="math_number" id="!|q(u]3%5y%{6BiJ]F!:"> <field name="NUM">6</field> </block> </value> <value name="Z"> <block type="math_number" id=".z9,chAw~]I$e$f$lyoB"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD4"> <block type="bitbybit.point.pointXYZ" id="],KZ7[0L,aM/FK]++F$+"> <value name="X"> <block type="math_number" id="7s@H.xrjoOIfk*ZMTH%W"> <field name="NUM">2</field> </block> </value> <value name="Y"> <block type="math_number" id="%-e[WO|e^[)JMEA[J{!e"> <field name="NUM">6</field> </block> </value> <value name="Z"> <block type="math_number" id=":Jx?0F)}l_Pl!sV-z2o:"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD5"> <block type="bitbybit.point.pointXYZ" id="5qjGQ,2;pHcNJ/wIo9Im"> <value name="X"> <block type="math_number" id="JVO`*rmaO(Cj3/PB@Soy"> <field name="NUM">4</field> </block> </value> <value name="Y"> <block type="math_number" id="TRXO~MNiqv,C(F:7=!ay"> <field name="NUM">14</field> </block> </value> <value name="Z"> <block type="math_number" id="Y-r59G(Zzr-1:FKxK)h~"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD6"> <block type="bitbybit.point.pointXYZ" id="C*kg8E!zh^sQ%/gZA,dy"> <value name="X"> <block type="math_number" id="5NQ%mh-KV=1Ru|[?$NFM"> <field name="NUM">8</field> </block> </value> <value name="Y"> <block type="math_number" id="B_Tp@9gV?K8?7g;K6~Im"> <field name="NUM">17</field> </block> </value> <value name="Z"> <block type="math_number" id="^vx6n;VHR$hD}A@mAToV"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="ADD7"> <block type="bitbybit.point.pointXYZ" id="-J`E#A#_5U~`$E*w}Gp1"> <value name="X"> <block type="math_number" id="$bj7~{]Hr*!O*Wy9,lcN"> <field name="NUM">12.5</field> </block> </value> <value name="Y"> <block type="math_number" id="%f*p*nC[FbzR@cG4AQr4"> <field name="NUM">0</field> </block> </value> <value name="Z"> <block type="math_number" id="HH8|mCtlrP;x[0PT@kua"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="?eCY[wdO*~H]`J`*Npi)"> <field name="VAR" id="0a^sM9$lxDVxu2mq_TVh">laptopToDraw</field> <value name="VALUE"> <block type="bitbybit.occt.fillets.filletEdges" id="H6V*ie{dw+`j*AAuG,n$"> <value name="Shape"> <block type="bitbybit.occt.shapes.solid.createBox" id="VD!^6S6s=*?xAs7io`zL"> <value name="Width"> <block type="variables_get" id="k}+0z|n1GtYo/;|]mWG="> <field name="VAR" id="wEP~!;MC{M.!*XZQ}(}F">laptopWidth</field> </block> </value> <value name="Length"> <block type="variables_get" id="_i~UIDEg_5*T+s7#:1j~"> <field name="VAR" id="K/@-42QKxE!UWz#$7IYX">laptopThickness</field> </block> </value> <value name="Height"> <block type="variables_get" id="mNIA:zXRG1yKE*70Qp!!"> <field name="VAR" id="3afy[tTcpuyS7A(_?FL+">laptopHeight</field> </block> </value> <value name="Center"> <block type="bitbybit.point.pointXYZ" id="g8S5t4VqjaFoNX`_,x[X"> <value name="X"> <block type="math_number" id="$(sF`=u2)/n9Pe{kD}Bz"> <field name="NUM">0</field> </block> </value> <value name="Y"> <block type="math_arithmetic" id="jo.YD1ZvNhbUV,|YWv+U"> <field name="OP">ADD</field> <value name="A"> <block type="variables_get" id="3Q]gOoOBW9:v.2Q.9P|H"> <field name="VAR" id="CV:1PX9f4mJwyO*K6wDb">laptopOffsetFromGround</field> </block> </value> <value name="B"> <block type="math_arithmetic" id="IfS!U$Bi2q]#/{s^dj^;"> <field name="OP">DIVIDE</field> <value name="A"> <block type="variables_get" id="-x-Iy0fUOvpSPEFN0t8r"> <field name="VAR" id="3afy[tTcpuyS7A(_?FL+">laptopHeight</field> </block> </value> <value name="B"> <block type="math_number" id="FIK^C4J[.Y3;)b:g%_]f"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> <value name="Z"> <block type="math_arithmetic" id="XQ(27-opt{UOHct~zfSf"> <field name="OP">ADD</field> <value name="A"> <block type="variables_get" id="-P,`DTh:o!DV:J)qsYI~"> <field name="VAR" id="X{qP1|JP^1%/9tT{gJfZ">standSideThickness</field> </block> </value> <value name="B"> <block type="math_arithmetic" id="C0_K;9DLvAA7-mZ-+*hP"> <field name="OP">DIVIDE</field> <value name="A"> <block type="variables_get" id="9GM[ZkY+Iw^XpFP@)Cyk"> <field name="VAR" id="K/@-42QKxE!UWz#$7IYX">laptopThickness</field> </block> </value> <value name="B"> <block type="math_number" id="6y,YvD832aZrP}nMK~5Z"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <value name="Radius"> <block type="math_number" id="GGR%#C(U4A04iolTucGF"> <field name="NUM">0.2</field> </block> </value> </block> </value> <next> <block type="variables_set" id="B#G}:LU5DQ7:9Vbf4Tf]"> <field name="VAR" id="#D2?Rt8,??{r3}yl-afe">laptopStandThickSolid</field> <value name="VALUE"> <block type="bitbybit.occt.operations.makeThickSolidSimple" id="Vrx-e?a_~nRzebpLASuJ"> <value name="Shape"> <block type="bitbybit.occt.fillets.filletEdges" id="jw63z*=^YWu?;KOCHn!e"> <value name="Shape"> <block type="bitbybit.occt.operations.extrude" id="j)=[5dHLv:DKvz/T_l7V"> <value name="Shape"> <block type="bitbybit.occt.shapes.wire.createPolygonWire" id="_(@.7WpA)p-/mwYqm#[K"> <value name="Points"> <block type="variables_get" id="=f;drh1^;f6i?|qA,XKK"> <field name="VAR" id="S,8z8C-y;usRfMLjR|oj">profilePoints</field> </block> </value> </block> </value> <value name="Direction"> <block type="bitbybit.point.pointXYZ" id="fQ!9AwE!/W+9x04Q~hF6"> <value name="X"> <block type="math_number" id="~Gw$jb1p.(0OK5tGo,d6"> <field name="NUM">0</field> </block> </value> <value name="Y"> <block type="math_number" id="^qd@NkU{8$wlB4w7e,@4"> <field name="NUM">0</field> </block> </value> <value name="Z"> <block type="math_arithmetic" id="_QkM:WVALXZkoKAmAw!Z"> <field name="OP">ADD</field> <value name="A"> <block type="variables_get" id="ha^z684,)4o[3O#Ufj~F"> <field name="VAR" id="K/@-42QKxE!UWz#$7IYX">laptopThickness</field> </block> </value> <value name="B"> <block type="math_arithmetic" id="$;^qs61]f|c5,oXTn8Xo"> <field name="OP">MULTIPLY</field> <value name="A"> <block type="variables_get" id="0nO|mz~DBt|sJn4tk(tq"> <field name="VAR" id="X{qP1|JP^1%/9tT{gJfZ">standSideThickness</field> </block> </value> <value name="B"> <block type="math_number" id="Gthe[)sVw#a{a;yWRw=O"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <value name="Radius"> <block type="math_number" id="SpYdD*n*]U7.wog,dOaF"> <field name="NUM">1.5</field> </block> </value> </block> </value> <value name="Offset"> <block type="math_number" id="I;;`QPav[izt)|+ZEOG5"> <field name="NUM">-0.5</field> </block> </value> </block> </value> <next> <block type="bitbybit.draw.drawAnyAsyncNoReturn" id="#uk*y$V%6OqaSf[l`!r3"> <value name="Entity"> <block type="bitbybit.occt.booleans.difference" id="zZWEHK.t0S2z`!WB4?s("> <value name="Shape"> <block type="variables_get" id="#K^*;vq10#PgcJ{n?n4o"> <field name="VAR" id="#D2?Rt8,??{r3}yl-afe">laptopStandThickSolid</field> </block> </value> <value name="Shapes"> <block type="lists_create_with" id="(MR_BpM[I|{5%M1[#bo?"> <mutation items="1"> </mutation> <value name="ADD0"> <block type="variables_get" id="/fuN4Bg(.7a%~l0CN[1l"> <field name="VAR" id="0a^sM9$lxDVxu2mq_TVh">laptopToDraw</field> </block> </value> </block> </value> <value name="KeepEdges"> <block type="logic_boolean" id="zEk;,(rbHa?Z3KogPX7B"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="Options"> <block type="bitbybit.draw.optionsOcctShape" id="w1#EjJ|c-N$8;;yF+,k."> <value name="FaceOpacity"> <block type="math_number" id="RP|)!6XL%YX`.O~)/4D0"> <field name="NUM">1</field> </block> </value> <value name="EdgeOpacity"> <block type="math_number" id="+WYlu$/G2]i;OiP(p:oy"> <field name="NUM">1</field> </block> </value> <value name="EdgeColour"> <block type="colour_picker" id="(|xuOJhJ@F[Or]B??P$6"> <field name="COLOUR">#ffffff</field> </block> </value> <value name="FaceColour"> <block type="colour_picker" id="A/ShGcPuw4Lni;[:-AY="> <field name="COLOUR">#990000</field> </block> </value> <value name="EdgeWidth"> <block type="math_number" id="cC8-IR5L[3ns6}i1iSzX"> <field name="NUM">5</field> </block> </value> <value name="DrawEdges"> <block type="logic_boolean" id="Jp-jJLS2_w_%[b=0jGv/"> <field name="BOOL">TRUE</field> </block> </value> <value name="DrawFaces"> <block type="logic_boolean" id="?b^B@Ybf{ykR`wuC|%S^"> <field name="BOOL">TRUE</field> </block> </value> <value name="Precision"> <block type="math_number" id=")2L]3sGcx{x4=9zl}|d7"> <field name="NUM">0.05</field> </block> </value> <value name="DrawEdgeIndexes"> <block type="logic_boolean" id=":#n7YF`6|:)gKy]4AYSp"> <field name="BOOL">FALSE</field> </block> </value> <value name="EdgeIndexHeight"> <block type="math_number" id="_bDN|3S$o,bc~jwt~Ej@"> <field name="NUM">0.06</field> </block> </value> <value name="EdgeIndexColour"> <block type="colour_picker" id="Mx2`7:.6qF#t}t/q1;@6"> <field name="COLOUR">#bbbbff</field> </block> </value> <value name="DrawFaceIndexes"> <block type="logic_boolean" id="cESUSF*LulFTk!NF0g18"> <field name="BOOL">FALSE</field> </block> </value> <value name="FaceIndexHeight"> <block type="math_number" id="jW/8MvWL!aY{):$*N|8G"> <field name="NUM">0.06</field> </block> </value> <value name="FaceIndexColour"> <block type="colour_picker" id="oB#*0K+sZ1H2eh=c-0n2"> <field name="COLOUR">#0000ff</field> </block> </value> </block> </value> <next> <block type="bitbybit.draw.drawAnyAsyncNoReturn" id="h@@i1[-mQWr7*d$0cSol"> <value name="Entity"> <block type="variables_get" id="2otb0Z%oOE1KL*q?,pc)"> <field name="VAR" id="0a^sM9$lxDVxu2mq_TVh">laptopToDraw</field> </block> </value> <value name="Options"> <block type="bitbybit.draw.optionsOcctShape" id="TQBN/ZNlYpZYW%)%zBmj"> <value name="FaceOpacity"> <block type="math_number" id="R!f*xHl]jz?J^:S?)RRZ"> <field name="NUM">1</field> </block> </value> <value name="EdgeOpacity"> <block type="math_number" id="EE7z_=[w+-H^Q6D-E{im"> <field name="NUM">0.4</field> </block> </value> <value name="EdgeColour"> <block type="colour_picker" id="a,{4VnfO^|fhb`cT2!T0"> <field name="COLOUR">#ffffff</field> </block> </value> <value name="FaceColour"> <block type="colour_picker" id="$?Hk{U0}imQZ:fL2Xi+x"> <field name="COLOUR">#ffffff</field> </block> </value> <value name="EdgeWidth"> <block type="math_number" id="z7b6/%@y9*9BGW]M(7dW"> <field name="NUM">5</field> </block> </value> <value name="DrawEdges"> <block type="logic_boolean" id="B-GhyPx{HRUU_m|_W$tY"> <field name="BOOL">TRUE</field> </block> </value> <value name="DrawFaces"> <block type="logic_boolean" id="hPK[_{EXT2lVqSKM{Rsi"> <field name="BOOL">TRUE</field> </block> </value> <value name="Precision"> <block type="math_number" id="LUHtUvHv)+0~jXcQ*d0W"> <field name="NUM">0.05</field> </block> </value> <value name="DrawEdgeIndexes"> <block type="logic_boolean" id="Tm5!3nN`zm|^6*$Mc7s%"> <field name="BOOL">FALSE</field> </block> </value> <value name="EdgeIndexHeight"> <block type="math_number" id="06XaN7xMFh.4VjLfx1EW"> <field name="NUM">0.06</field> </block> </value> <value name="EdgeIndexColour"> <block type="colour_picker" id="}U_[OBu9W0|^mv*W9.ZW"> <field name="COLOUR">#bbbbff</field> </block> </value> <value name="DrawFaceIndexes"> <block type="logic_boolean" id="PV40~?B[-`K*L@*5m6W;"> <field name="BOOL">FALSE</field> </block> </value> <value name="FaceIndexHeight"> <block type="math_number" id="6tyvvx6D/V/s%ht+K$=~"> <field name="NUM">0.06</field> </block> </value> <value name="FaceIndexColour"> <block type="colour_picker" id="=W~k8dB6Wf)e_{l6*()G"> <field name="COLOUR">#0000ff</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>