<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Giulio Piacentino</title>
	<atom:link href="http://www.giuliopiacentino.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.giuliopiacentino.com</link>
	<description>An archive of personal and collaborative projects and experiments, certainly developed with an eye on digital architecture.</description>
	<lastBuildDate>Fri, 17 May 2013 14:21:47 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Weaverbird &#8211; Topological Mesh Editor</title>
		<link>http://www.giuliopiacentino.com/weaverbird/</link>
		<comments>http://www.giuliopiacentino.com/weaverbird/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 22:29:21 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Experiments & discoveries]]></category>
		<category><![CDATA[catmull clark]]></category>
		<category><![CDATA[grasshopper]]></category>
		<category><![CDATA[mesh]]></category>
		<category><![CDATA[Rhinoceros]]></category>
		<category><![CDATA[smooth]]></category>
		<category><![CDATA[subdivision]]></category>
		<category><![CDATA[topology]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=1218</guid>
		<description><![CDATA[Weaverbird is a topological modeler that contains many of the known subdivision and transformation operators, readily usable by designers. Instead of doing the work repeatedly, or sometimes using complicated scripts, this plug-in reconstructs the shape, subdivides any mesh, even made by polylines, and helps preparing for fabrication. Weaverbird &#8211; 0.7.50.0 Spring GH. For Rhino 4/5 [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-1218"></span><!--noteaser--></p>
<dl id="attachment_1221" style="width: 490px;">
<dt><a href="/get-wb/"><img class="aligncenter size-full wp-image-1221" title="weaverbird" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/weaverBird.jpg" alt="weaverbird" width="480" height="308" /></a></dt>
</dl>
<p>Weaverbird is a topological modeler that contains many of the known subdivision and transformation operators, readily usable by designers. Instead of doing the work repeatedly, or sometimes using complicated scripts, this plug-in reconstructs the shape, subdivides any mesh, even made by polylines, and helps preparing for fabrication.</p>
<p><a href="/get-wb/">Weaverbird &#8211; 0.7.50.0 Spring GH</a>. For Rhino 4/5 and Grasshopper 0.9. In wb toolbar. Please upgrade to this version if you are using any earlier releases. This version will expire on December 31, 2014.</p>
<p><small>To install, right click, choose &#8220;save as&#8230;&#8221; and then double click the file to launch the setup. If you encounter any problem contact me with a comment.</small></p>
<p><small>If you don&#8217;t have <a href="/get-wb-no-admin/">admin rights</a> (you will find instructions in the zip file).</small></p>
<p>Main topological commands:</p>
<p><img class="size-full wp-image-1265 alignleft" style="margin: 5px 8px;" title="catmullClark" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/catmullClark.png" alt="catmullClark" width="24" height="24" /> <span style="color: #800000;"><strong>Catmull-Clark smoothing</strong></span> (<em>wbCatmullClark</em>). Calculates the type of mesh-based recursive subdivision  described by Edwin Catmull and Jim Clark, at first in 1978. The  resulting mesh always consists of quadrilaterals.</p>
<p><img class="size-full wp-image-1274 alignleft" style="margin: 5px 8px;" title="quadSplit" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/quadSplit.png" alt="quadSplit" width="24" height="24" /><span style="color: #800000;"><strong>Split mesh into Quads</strong></span> (<em>wbSplitQuad</em>). Calculates a new mesh, which is formed of only quads and generally appears similar to the old one, except that it is welded. It is topologically equivalent to the Catmull-Clark subdivision.</p>
<p><img class="size-full wp-image-1272 alignleft" style="margin: 5px 8px;" title="loop" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/loop.png" alt="loop" width="24" height="24" /><span style="color: #800000;"><strong>Loop smoothing</strong></span> (<em>wbLoop</em>). Calculates the type of mesh-based recursive subdivision described by Charles Loop, at first in his Mathematics thesis in 1987. The resulting mesh always consists of triangular faces.</p>
<p><img class="size-full wp-image-1276 alignleft" style="margin: 5px 8px;" title="splitPolygons" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/splitPolygons.png" alt="" width="24" height="24" /><span style="color: #800000;"><strong>Split mesh with inner face</strong></span> (<em>wbSplitPolygons</em>). Places a new face departing from the middle of each original face edge. Caps the remaining hole with Sierpinski triangles.</p>
<p><img class="size-full wp-image-1277 alignleft" style="margin: 5px 8px;" title="triangles" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/triangles.png" alt="" width="24" height="24" /><span style="color: #800000;"><strong>Sierpinsky Triangles subdivision </strong></span>(<em>wbSierpinskyTriangle</em>). Places a triangle in each corner of a mesh face. The mesh will have one more hole per face.</p>
<p><img class="size-full wp-image-1270 alignleft" style="margin: 5px 8px;" title="frame" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/frame.png" alt="" width="24" height="24" /><span style="color: #800000;"><strong>Frame</strong></span> (<em>wbFrame</em>). Computes a new mesh with higher naked edge count, where each face has a new hole in the center and resembles a picture frame. The resulting mesh always consists of quad faces.</p>
<p><img class="size-full wp-image-1264 alignleft" style="margin: 5px 8px;" title="carpet" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/carpet.png" alt="carpet" width="24" height="24" /><span style="color: #800000;"><strong>Carpet</strong></span> (<em>wbCarpet</em>). Computes a new mesh with higher naked edge count, where each face has a  new hole in the center. The resulting mesh always consists of quad faces, and can be used to compute a Sierpinski carpet.</p>
<p style="text-align: left;"><span style="color: #800000;"> </span><img class="size-full wp-image-1279 alignleft" style="margin: 5px 8px;" title="window" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/window.png" alt="window" width="24" height="24" /><span style="color: #800000;"><strong>Window</strong></span> (<em>wbWindow</em>). Replaces each original mesh face with a new one, reconstructed  on the inside. Each face has the same number of sides as the original one.</p>
<p>New mesh primitives definitions:</p>
<p><img class="size-full wp-image-1273 alignnone" style="margin-left: 8px; margin-right: 5px;" title="prism" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/prism.png" alt="" width="24" height="24" />wbPrism, <img class="size-full wp-image-1263 alignnone" style="margin-left: 5px; margin-right: 5px;" title="antiPrism" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/antiPrism.png" alt="" width="24" height="24" />wbAntiPrism, <img class="size-full wp-image-1266 alignnone" style="margin-left: 5px; margin-right: 5px;" title="pyramid" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/cone.png" alt="" width="24" height="24" />wbPyramid, <img class="size-full wp-image-1267 alignnone" style="margin-left: 5px; margin-right: 5px;" title="dipyramid" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/dipyramid.png" alt="DiPyramids" width="24" height="24" />wbDiPyramid</p>
<p>Additional commands:</p>
<p>- <span style="color: #800000;"><strong>wbOptions</strong></span>. To see the main log, set up the threading model, control the maximum time a single operation is allowed to take, and set options for the Loop subdivision scheme (to use Loop&#8217;s receipt or Warren-Weimer&#8217;s one).</p>
<p>- <span style="color: #800000;"><strong>wbProperties</strong></span>. Opens a window with topological information about any mesh object in Rhino. Exposes triangular and quad face counts, edge count, current and welded vertex counts.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/weaverbird/feed/</wfw:commentRss>
		<slash:comments>56</slash:comments>
		</item>
		<item>
		<title>Grasshopper tools in C#</title>
		<link>http://www.giuliopiacentino.com/grasshopper-tools/</link>
		<comments>http://www.giuliopiacentino.com/grasshopper-tools/#comments</comments>
		<pubDate>Tue, 26 May 2009 22:42:50 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Experiments & discoveries]]></category>
		<category><![CDATA[bake]]></category>
		<category><![CDATA[contour]]></category>
		<category><![CDATA[definition]]></category>
		<category><![CDATA[grasshopper]]></category>
		<category><![CDATA[names]]></category>
		<category><![CDATA[Rhinoceros]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=1033</guid>
		<description><![CDATA[Grasshopper features an impressive amount of highly interlinked components &#8211; from lines to trees, from circles to graph editors. Sometimes, however, when design tasks become more advanced, we might need to further customize this plugin by directly borrowing from Rhino commands. With these scripting components, the user can quickly solve otherwise more complex design behaviors. [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-1033"></span><!--noteaser-->Grasshopper features an impressive amount of highly interlinked components &#8211; from lines to trees, from circles to graph editors. Sometimes, however, when design tasks become more advanced, we might need to further customize this plugin by directly borrowing from Rhino commands. With these scripting components, the user can quickly solve otherwise more complex design behaviors.</p>
<p>This list of C# scripts is a work in progress and is open for requests.<strong><span style="color: #ff0000;"> </span></strong><span style="color: #ff0000;">Supporting  v. 0.8.<strong>2</strong> and some previous versions.</span><strong><span style="color: #ff0000;"><br />
</span></strong></p>
<table style="font-size: 0.75em; border: 1px dotted #999; line-height: 1.25em;" border="0" cellspacing="0" cellpadding="3" width="480">
<tbody>
<tr>
<td class="small" style="background-color:#BBB; color: #FFF; border-bottom: 1px dotted #999; text-transform: uppercase;" colspan="3" align="center">baking &amp; Referencing</td>
</tr>
<tr>
<td style="border-bottom: 1px dotted #999; border-right: 1px dotted #999;" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1063 alignnone" title="bakeName" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/bakename.png" alt="bakeName" width="120" height="89" /></td>
<td style="border-bottom: 1px dotted #999; border-right: 1px dotted #999;">bakeName<br />
<a href="http://www.giuliopiacentino.com/static/bakeWithNames.ghx"><span style="color: #c0c0c0;">GH 0.6.0012</span></a><br />
<a href="http://www.giuliopiacentino.com/static/bakeWithNames-18.ghx"><span style="color: #c0c0c0;">GH 0.6.0018</span></a><br />
<a href="../../static/bakeWithNames-43.ghx"><span style="color: #c0c0c0;">GH 0.6.0043</span></a></td>
<td style="border-bottom: 1px dotted #999;"><strong>obj</strong> (geom) &#8211; a list of objects to bake<br />
<strong>name</strong> (string) &#8211; a list of names (common Rhino property)<br />
<strong>activate</strong> (bool) &#8211; one go-no-go signal, or a list thereof</p>
<p><strong><span style="color: #ff6600;">A</span></strong> (strings) &#8211; a list explaining the result(s)</td>
</tr>
<tr style="border-bottom: 1px dotted #999;">
<td style="border-right: 1px dotted #999;  border-bottom: 1px dotted #999;" width="128" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1066 alignnone" title="bakeAttributes" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/bakeattributes.png" alt="bakeattributes" width="120" height="193" /></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; " width="120">bakeAttributes<a href="http://www.giuliopiacentino.com/static/bakeMostAttributes.ghx"><span style="color: #c0c0c0;"><br />
GH 0.6.0012</span></a><br />
<a href="http://www.giuliopiacentino.com/static/bakeMostAttributes-18.ghx"><span style="color: #c0c0c0;">GH 0.6.0018</span></a><br />
<a href="../../static/bakeMostAttributes-43.ghx"><span style="color: #c0c0c0;">GH 0.6.43</span></a><br />
<a href="../../static/bakeMostAttributes-802.ghx"><span style="color: #c0c0c0;">GH 0.8.2</span></a><br />
<a href="../../static/bakeMostAttributes-807.ghx"><span style="color: #c0c0c0;">GH 0.8.7</span></a><br />
<a href="../../static/bakeMostAttributes-852.ghx"><span style="color: #c0c0c0;">GH 0.8.52</span> w/ groups</a></td>
<td style=" border-bottom: 1px dotted #999; "><strong>obj</strong> (geom) &#8211; a list of objects to bake<br />
<strong>name</strong> (string) &#8211; a list of names<br />
<strong>layer</strong> (string) &#8211; Rhino layer name(s)<br />
<strong>color</strong> (onColor) &#8211; screen+print color(s)<br />
<strong>lineT</strong> (string) &#8211; the name of a linetype. Please only use with custom names.<br />
<strong>pWidth</strong> (double) &#8211; printing thickness(es)<br />
<strong>wires</strong> (int) &#8211; number(s) setting the quantity of wires, as in the property panel<br />
<strong>material</strong> (int) &#8211; GH shader(s), containing a Rhino material<br />
<strong>activate</strong> (bool) &#8211; one go-no-go signal, or a list thereof</p>
<p><strong><span style="color: #ff6600;">A</span></strong> (strings) &#8211; a list explaining the result(s)</td>
</tr>
<tr style="border-bottom: 1px dotted #999;">
<td style="border-right: 1px dotted #999;  border-bottom: 1px dotted #999;" width="128" align="center" bgcolor="#eeeeee"><a href="http://www.giuliopiacentino.com/static/findID.ghx"><img class="size-full wp-image-1192 alignnone" title="findID" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/findID.PNG" alt="findID" width="75" height="64" /></a><a href="http://www.giuliopiacentino.com/static/findID.ghx"><img class="size-full wp-image-1193 alignnone" title="findRef" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/findRef.PNG" alt="findRef" width="76" height="70" /></a></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">findID<br />
findRef<br />
<span style="color: #c0c0c0;">GH 0.6.0012<br />
<span style="color: #ffffff;">2009 06 19</span></span></td>
<td style=" border-bottom: 1px dotted #999; "><strong>x</strong> (geom) &#8211; a Rhino geometry</p>
<p><span style="color: #ff6600;"><strong>A </strong></span>(string) &#8211; The Rhino ID<br />
<span style="color: #ff6600;"><strong>A </strong></span>(MRhinoObjRef) &#8211; The Rhino Ref</td>
</tr>
<tr>
<td class="small" style="background-color:#BBB; color: #FFF; border-bottom: 1px dotted #999; text-transform: uppercase;" colspan="3" align="center">Automatic Sections</td>
</tr>
<tr>
<td style="border-right: 1px dotted #999;  border-bottom: 1px dotted #999; " width="128" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1116 alignnone" title="contours" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/contours.png" alt="contours" width="135" height="82" /><br />
<img class="size-full wp-image-1068 alignnone" title="contours" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/contoursa.png" alt="contours" width="137" height="94" /></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">contours<br />
<a href="http://www.giuliopiacentino.com/static/contours.ghx"><span style="color: #c0c0c0;">GH 0.6.0012</span></a><br />
<a href="../../static/contours-43.ghx"><span style="color: #c0c0c0;">GH 0.6.0043</span></a><br />
<span style="color: #ffffff;">2009 06 04</span></td>
<td style="border-bottom: 1px dotted #999; "><strong>input</strong> (geom) &#8211; the objects to contour<br />
<strong>axis</strong> (onLine) &#8211; a line identifying the origin and end of the sectioning axis<br />
<strong>dist</strong> (double) &#8211; the interval between sections</p>
<p><span style="color: #ff6600;"><strong>geomOut </strong></span>(geom) &#8211; a list containing all geometries</p>
<p><span style="color: #ff6600;"><strong>meshOut</strong></span> (geom) &#8211; a list containing all geometries deriving from a mesh<br />
<span style="color: #ff6600;"><strong>brepOut</strong></span> (geom) &#8211; a list containing all geometries deriving from nurbs-types<br />
<span style="color: #ff6600;"><strong>pts</strong></span> (geom) &#8211; a list containing all geometries deriving from curves and lines</td>
</tr>
<tr>
<td class="small" style="background-color:#BBB; color: #FFF; border-bottom: 1px dotted #999; text-transform: uppercase;" colspan="3" align="center">Continous redrawing</td>
</tr>
<tr>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; " width="128" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1152 alignnone" title="theEngine" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/engine2.png" alt="theEngine2" width="114" height="88" /><img class="size-full wp-image-1151 alignnone" title="theEngine" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/engine1.png" alt="theEngine1" width="110" height="96" /></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">theEngine</p>
<p>component for<a href="http://www.giuliopiacentino.com/static/theEngine.ghx"><span style="color: #c0c0c0;"><br />
GH 0.6.0012<br />
</span></a><br />
Compatibility release for <a href="http://www.giuliopiacentino.com/static/theEngine-18.ghx"><span style="color: #c0c0c0;">GH 0.6.0018</span></a> available, but users are encouraged to use the new timer within GH.<br />
<a href="../../static/theEngine-43.ghx"><span style="color: #c0c0c0;">GH 0.6.0043</span></a><br />
<a href="../../static/theEngine-08.ghx"><span style="color: #c0c0c0;">GH 0.8.0003</span> New</a></p>
<p><span style="color: #ffffff;">2009 06 06</span></td>
<td style="border-bottom: 1px dotted #999; "><strong>isOn </strong>(bool) &#8211; one go-no-go signal<br />
<strong>speed</strong> (int) &#8211; a period, expressed in milliseconds, that sets the refreshing rate<br />
<strong>resetAt</strong> (int) &#8211; the last shown number in the series, which will be restarting at 0<strong>stopAt</strong> (int) &#8211; the last shown number in the series starting at 0<br />
<strong>reset </strong>(object) &#8211; any object (or bool) passed here will make this component restart from 0</p>
<p><span style="color: #ff6600;"><strong>C </strong></span>(int) &#8211; the current count</td>
</tr>
<tr>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; " width="128" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1172 alignnone" title="bucket" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/bucket.png" alt="bucket" width="109" height="66" /><img class="size-full wp-image-1170 alignnone" title="addBuffer" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/addbuffer.png" alt="addBuffer" width="107" height="92" /><img class="size-full wp-image-1171 alignnone" title="addBufferLtd" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/addbufferltd.png" alt="addBufferLtd" width="110" height="112" /></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">Buckets</p>
<p><a href="http://www.giuliopiacentino.com/static/buffers.ghx"><span style="color: #c0c0c0;">GH 0.6.0012</span></a><br />
<a href="http://www.giuliopiacentino.com/static/buffers-18.ghx"><span style="color: #c0c0c0;">GH 0.6.0018</span></a><br />
<a href="../../static/buffers-43.ghx"><span style="color: #c0c0c0;">GH 0.6.0043</span></a><br />
<span style="color: #ffffff;">2009 06 10</span></td>
<td style="border-bottom: 1px dotted #999; "><strong>x </strong>(list) &#8211; a list of points. For the bucket, it can be a list of anything.<br />
<strong>reset</strong> (object) &#8211; any object here will make this an empty list</p>
<p><strong>limit</strong> (OnInterval) &#8211; two numbers which set the max and min values for each internal point coordinate<br />
<strong>recov</strong> (int: 0, 1 or 2) &#8211; a method to recover in case the internal value exceeds limits: wrap world (restart from other side of domain), limit (stop at the threshold, or restart from middle of the interval.</p>
<p><span style="color: #ff6600;"><strong>A </strong></span>(list) &#8211; the list in memory</td>
</tr>
<tr>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; " width="128" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1179 alignnone" title="renderanimation" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/renderanimation.png" alt="renderanimation" width="117" height="175" /></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">renderAnimation</p>
<p><span style="color: #888888;"><a href="http://www.giuliopiacentino.com/static/animation-four-examples.ghx"><span style="color: #888888;">GH 0.6.0012</span></a><br />
<a href="http://www.giuliopiacentino.com/static/animation-four-examples-18.ghx"><span style="color: #888888;">GH 0.6.0018</span></a></span><br />
<span style="color: #888888;"><a href="../../static/animation-four-examples-43.ghx"><span style="color: #888888;">GH 0.6.0043</span></a></span><br />
<span style="color: #888888;"><a href="../../static/animation-four-examples-59.ghx"><span style="color: #888888;">GH 0.6.0059</span></a></span><br />
<span style="color: #888888;"><a href="../../static/animation-four-examples-755.ghx"><span style="color: #888888;">GH 0.7.0055</span></a></span><br />
<span style="color: #888888;"><a href="../../static/animation-four-examples-802.ghx"><span style="color: #888888;">GH 0.8.0002</span></a></span><br />
<span style="color: #888888;"><a href="../../static/animation-four-examples-804.ghx"><span style="color: #888888;">GH 0.8.0004</span></a></span><br />
<span style="color: #888888;"><a href="../../static/animation-four-examples-813.ghx"><span style="color: #888888;">GH 0.8.0013</span></a></span><br />
<span style="color: #888888;"><a href="http://www.grasshopper3d.com/forum/topics/renderanimation-by-giulio-piacentino-updated" target="_blank"><span style="color: #888888;">GH 0.8.0065</span></a> updated by Jacek</span><br />
<span style="color: #ffffff;">200906 10</span></p>
<p>(four examples, see last one)</td>
<td style="border-bottom: 1px dotted #999; "><strong>geometry </strong>(list) &#8211; a list of objects to be added to the scene before rendering<br />
<strong>viewport</strong> (string) &#8211; the name of the viewport to use. If empty or non-existing, the active one will be used<br />
<strong>filePath </strong>(string) &#8211; a name of an existing folder. If empty, the folder of the open document will be used. If document not saved, the current user&#8217;s document folder will be used</p>
<p><strong>fileExt </strong>(string) &#8211; jpg, png, bmp, or another extension that the rendering engine supports<strong><br />
material</strong> (shader) &#8211; a GH shader. If material has a name and name is already existing on the scene, then the material on the scene will simply be inherited. No need of double materials</p>
<p><strong>current </strong>(int) &#8211; the sequential number of the frame<br />
<strong>rectMem </strong>(bool, defaults false) &#8211; deletes redo+undo after each rendering<br />
<strong>activate </strong>(bool, defaults false)</p>
<p><span style="color: #ff6600;"><strong>A </strong></span>(string) &#8211; a text, explaining the outcome</td>
</tr>
<tr>
<td class="small" style="background-color:#BBB; color: #FFF; border-bottom: 1px dotted #999; text-transform: uppercase;" colspan="3" align="center">fonts</td>
</tr>
<tr>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; " width="128" align="center" bgcolor="#eeeeee"><img class="size-full wp-image-1180 alignnone" title="txtlines" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/txtlines.png" alt="txtlines" width="106" height="132" /></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">txtLines<br />
<a href="http://www.giuliopiacentino.com/static/txtLines.ghx"><span style="color: #c0c0c0;">GH 0.6.0012</span></a><br />
<a href="http://www.giuliopiacentino.com/static/txtLine-0.8.61.ghx"><span style="color: #c0c0c0;">GH 0.8.0061</span> New</a></td>
<td style="border-bottom: 1px dotted #999; "><strong>face</strong> (string) &#8211; the name of the font<strong><br />
bold </strong>(bool, default false)<br />
<strong>italics </strong>(bool, default false)<br />
<strong>size </strong>(double, default 5.0)<br />
<strong>content </strong>(string) &#8211; the text shown<br />
<strong>pt </strong>(on3dPoint) &#8211; the point ancoring the text</p>
<p><span style="color: #ff6600;"><strong>A</strong></span> (OnLine list) &#8211; a list containing all curves</td>
</tr>
<tr>
<td class="small" style="background-color:#BBB; color: #FFF; border-bottom: 1px dotted #999; text-transform: uppercase;" colspan="3" align="center">Networking</td>
</tr>
<tr>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; " width="128" align="center" bgcolor="#eeeeee"><a href="http://www.giuliopiacentino.com/static/UDP.zip"><img class="size-full wp-image-1216 aligncenter" title="UdpReceiver" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/UdpReceiver.png" alt="UdpReceiver" width="105" height="106" /></a></td>
<td style="border-right: 1px dotted #999; border-bottom: 1px dotted #999; ">updReceiver<br />
udpSender<br />
<span style="color: #c0c0c0;">GH 0.6.0019<br />
Processing 1.0.5<br />
+ UDP library</span></p>
<p><span style="color: #ffffff;">2009 08 31</span></td>
<td style="border-bottom: 1px dotted #999; "><strong>port </strong>(integer) &#8211; a resonable port number</p>
<p><span style="color: #ff6600;"><strong>out</strong></span> (string list) &#8211; network echo<span style="color: #ff6600;"><strong><br />
client</strong></span> (UdpClient) &#8211; a .net framework udp client<br />
<span style="color: #ff6600;"><strong>A</strong></span> (bool) &#8211; message received<br />
<span style="color: #ff6600;"><strong>B </strong></span>(string) &#8211; message</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/grasshopper-tools/feed/</wfw:commentRss>
		<slash:comments>72</slash:comments>
		</item>
		<item>
		<title>Knitting patterns on a surface in Grasshopper</title>
		<link>http://www.giuliopiacentino.com/knitting-pattern/</link>
		<comments>http://www.giuliopiacentino.com/knitting-pattern/#comments</comments>
		<pubDate>Fri, 22 May 2009 16:53:54 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Experiments & discoveries]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[chain]]></category>
		<category><![CDATA[grasshopper]]></category>
		<category><![CDATA[knit]]></category>
		<category><![CDATA[knot]]></category>
		<category><![CDATA[pattern]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=938</guid>
		<description><![CDATA[Last week I have been visiting my brother in Barcelona. Maybe I should blame the maritime environment if I started experimenting with knots and threads. So, what I am going to show you today is a method to digitally knit yarn in Grasshopper. A similar definition to make a chaining fabric is provided at the end [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-938"></span><!--noteaser--></p>
<p><img class="aligncenter size-medium wp-image-941" title="stockinette-2" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/stockinette-2-480x360.jpg" alt="stockinette-2" width="480" height="360" /></p>
<p>Last week I have been visiting my brother in Barcelona. Maybe I should blame the maritime environment if I started experimenting with knots and threads. So, what I am going to show you today is a method to digitally knit yarn in <a href="http://www.grasshopper3d.com/" target="_blank">Grasshopper</a>. A similar definition to make a chaining fabric is provided at the end of the tutorial as well.</p>
<h3>The stockinette stitch pattern</h3>
<p><img class="aligncenter size-full wp-image-956" title="knit-schematic-ill" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/knit-schematic-ill.gif" alt="knit-schematic-ill" width="480" height="160" /><br />
<a href="/static/stockinette-pattern.ghx">Download this Grasshopper definition</a></p>
<p>We are going to model the common <a href="http://en.wikipedia.org/wiki/Knitting#Structure" target="_blank">stockinette</a> stitch pattern at first, because this stitch can be easily adjusted to other knitting, chaining or weaving fabric compositions.</p>
<ol>
<li>The Grasshopper file starts from a straightforward definition of a knitting tile made out of curves, a surface and some parameters. This tile is illustrated in the picture above and is exactly the one marked in the dashed  &#8220;component&#8221; box. The tile is surrounded by a rectangle in the grasshopper canvas, so that you can quickly adjust it to other definitions, in case you should need.</li>
<li>A containing box is created, departing from the input curves. We are particularly lucky this time, because the open part of the curves can be exactely used to define the boundary box.</li>
<li>This tile of curves is then repeated on the surface using the surface morphing component of Grasshopper, which is particularly useful because it maintains the geometrical continuity of what is being positioned.</li>
<li>All curves are joined and rebuit using a custom-written C# method.</li>
<li>The piping component finally produces the pipes.</li>
</ol>
<p><img class="aligncenter size-medium wp-image-940" title="stockinette-1" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/stockinette-1-480x360.jpg" alt="stockinette-1" width="480" height="360" /></p>
<h3>Chaining pattern</h3>
<p><img class="aligncenter size-full wp-image-965" title="chain-schematic-ill" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/chain-schematic-ill.gif" alt="chain-schematic-ill" width="480" height="160" /><br />
<a href="/static/chain-pattern.ghx">Download the chain definition</a></p>
<p>By minimally modifying the previous definition, we can obtain a series of chains on a surface. It similarly works with one tile, which is then copied on the surface. We could expand this definition by making each newly formed link (a closed curve) periodic.</p>
<p><img class="aligncenter size-medium wp-image-981" title="chain-pattern" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/chain-pattern-480x360.jpg" alt="chain-pattern" width="480" height="360" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/knitting-pattern/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Adding motion in RhinoScript</title>
		<link>http://www.giuliopiacentino.com/adding-motion-in-rhinoscript/</link>
		<comments>http://www.giuliopiacentino.com/adding-motion-in-rhinoscript/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 09:06:10 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[RhinoScripts]]></category>
		<category><![CDATA[animator]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[motion]]></category>
		<category><![CDATA[movement]]></category>
		<category><![CDATA[rhinoscript]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=885</guid>
		<description><![CDATA[This tutorial explains step-by-step how to setup animation in any RhinoScript. In this particular and simple case, we are going to move a sphere on a path that is defined by a curve. This example can be, then, expanded to more complex scenarios: for example, using the new animation to trigger some response, as in [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-885"></span><!--noteaser--><br />
This tutorial explains step-by-step how to setup animation in any RhinoScript. In this particular and simple case, we are going to move a sphere on a path that is defined by a curve. This example can be, then, expanded to more complex scenarios: for example, using the new animation to trigger some response, as in the case of the <a title="Component wall" href="/component-wall/">component wall</a>.</p>
<p>In cartoons and movies, animation is achieved by rapidly displaying a sequence of pictures that have a common structure. This method creates the illusion of movement, because our brains will, as they are used to, reconstruct the pattern of motion from the static pieces.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-926" title="animation" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/animation.jpg" alt="animation" width="479" height="114" /></p>
<h3>How many frames</h3>
<p>As we are going to animate an object, we will make it follow a curve. We need, therefore, to sample this curve in a number of (small) intervals. The number of intervals will determine the number of final frames we produce. If you plan to show your animation, later, on a TV screen, then you can take the frame rates of the PAL or NTSC systems: the European PAL has 25 frames per second (fps) and the American NTSC 29,97. If you plan to show your video online, you will need relatively fewer images: at least 18 fps, but most times 24 or 25 fps.</p>
<ul>
<li>For a European minute, therefore, the computer will need to render (60 s *  25 frames/s = ) 1500 frames.</li>
<li>Similarly, for an American minute we will need (60 s *  29,97 frames/s = ) 1789 frames.</li>
</ul>
<h3>Subdividing the curve</h3>
<p>To make the movement better controllable, we can, instead of subdividing the curve by Euclidean distance, evaluate it at a fraction of its domain (in its own parameterization). We will therefore be able of applying a weight to a control point, and it will influence the speed in proximity of the respective knot.</p>
<ul>
<li>A higher weight coefficient &#8220;slows&#8221; down the movement in the area.</li>
<li>Two or more control points close to each other will make the animation basically stop for some time.</li>
</ul>
<h3>Moving the objects</h3>
<p>RhinoScript gives us a number of methods to define the position of objects. For example, we can calculate the volume centroid of closed Breps, or the area centroid of open meshes. We will use these points to define the original location of our objects (O).</p>
<p><img class="alignnone size-full wp-image-887" title="Simple motion explained" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/motion_rhino.jpg" alt="Simple motion explained" width="480" height="156" /></p>
<p>Because we want to follow a curve, we will need to move the object to the curve beginning, or S. For each frame, we will move by a t parameter farther on the curve. To avoid small summing errors, the script takes again the original coordinate and then sums the vector OS and SN, and does NOT move every time from the previous location (P) to the next (N). This would be subject to errors for small numbers, or for many frames.</p>
<h3>Download</h3>
<ul>
<li>Draw a curve, then run <a href="/static/animator.rvb">animator.rvb</a> first and <a href="/static/activity.rvb">activity.rvb</a> at last.</li>
</ul>
<h3>Implementation</h3>
<p>animator.rvb<br />
The animation details like the ID of the object we move and the original position are saved in a class called animator. As the namespace for VBScript is shared, we can define the class &#8220;animator&#8221; only once. Therefore, you can load the animator once for every Rhinoceros session. The class does the job of finding out which type of object we are dealing with on its own, so we just need to feed it an ID after initialization with the method setUp(). When we destroy the object, such as in the case we stop the script by pressing ESC or we are finished with our script, the object original position will be restored.</p>
<p>activity.rvb<br />
The activity file will create one sphere and look for the first instance of a curve in the document. Make sure that it can find it. Then, it will make the sphere follow the curve in 750 frames. The constant DontRenderUpTo will skip the rendering part of the loop for all 750 frames.</p>
<h3>Other examples</h3>
<p>Many other ways to achieve motion in Rhino are explained on the <a href="/grasshopper-tools/">Grasshopper tools</a> page, at the renderAnimation link.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/adding-motion-in-rhinoscript/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Vimeo</title>
		<link>http://www.giuliopiacentino.com/vimeo/</link>
		<comments>http://www.giuliopiacentino.com/vimeo/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 17:30:58 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Stories]]></category>
		<category><![CDATA[file sharing]]></category>
		<category><![CDATA[vimeo]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=759</guid>
		<description><![CDATA[Vimeo is a file-sharing website that does pretty much the same things as Youtube (now belonging to Google), Dailymotion (from France) and Google video (obviously in Mountain View, California). Everyone of them, though, tries to attract a different audience. Vimeo&#8217;s (based in NY) target group has a focus on creative people. Of this community, I [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.vimeo.com/" target="_blank">Vimeo</a> is a file-sharing website that does pretty much the same things as Youtube (now belonging to Google), Dailymotion (from France) and Google video (obviously in Mountain View, California).<br />
Everyone of them, though, tries to attract a different audience. Vimeo&#8217;s (based in NY) target group has a focus on creative people. Of this community, I particularly like the fair behaviour and the nice and intelligent commenting. So I thought I would upload some of my videos there, from now on. See here <a href="http://vimeo.com/giulio/likes" target="_blank">http://vimeo.com/giulio/likes</a> if I added your video to my likes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/vimeo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Librarian nightmare &amp; dream</title>
		<link>http://www.giuliopiacentino.com/physical-boxes/</link>
		<comments>http://www.giuliopiacentino.com/physical-boxes/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 19:07:38 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Processing.org]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[physics]]></category>
		<category><![CDATA[processing.org]]></category>
		<category><![CDATA[simulation]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=723</guid>
		<description><![CDATA[How to use JBullet To use Jbullet easily in the new processing 1.0, you can just follow these steps: install Java3D to have access to some standard matrix operations in Processing &#38; Java. What you really need is only the vecmath class. If Processing (depending on the version &#38; settings) still does not see it, [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-723"></span><!--noteaser--></p>
<p><APPLET name="boxes_applet" WIDTH="480" HEIGHT="360" archive="http://www.giuliopiacentino.com/static/boxes_applet.jar" standby="Loading Processing software..."  code="boxes_applet.class" boxmessage="Loading Processing software..." boxcolor="#CCCCCC"></APPLET></p>
<h2>How to use JBullet</h2>
<p>To use Jbullet easily in the new processing 1.0, you can just follow these steps:</p>
<ol>
<li>install <a href="https://java3d.dev.java.net/">Java3D</a> to have access to some standard matrix operations in Processing &amp; Java. What you really need is only the vecmath class. If Processing (depending on the version &amp; settings) still does not see it, put the vecmath.jar inside processing&#8217;s libraries&#92;vecmath&#92;library.</li>
<li>download <a href="http://jbullet.advel.cz/" target="_blank">Jbullet</a> and be sure that you put jbullet.jar inside processing&#8217;s libraries&#92;jbullet&#92;library.</li>
<li>restart Processing if it was running.</li>
</ol>
<p>Download the <img src="/wp-giulio/wp-content/uploads/processing1.jpg" alt="Processing 1.0 pde file" title="Processing 1.0 pde file" width="16" height="16" class="alignnone size-full wp-image-820" /> <a href="/static/books.pde" target="_blank">books.pde</a> source code. And please, if you find this useful, post a link to your sketch or video that you did with this, I&#8217;m curious!</p>
<p>Addendum: if you want to use <a href="http://hipstersinc.com/p5sunflow/" title="P5Sunflow: Easy Ray Tracing from Processing.org">P5sunflow</a>, then use processing v135: the version 1.0 seems not to be working with it. The code of the sketch is compatible, but you have to install the libraries in the processing folder itself.</p>
<h2>Video</h2>
<p><a href="http://vimeo.com/2534691" target="_blank">A video</a> is on Vimeo.<br />
<object width="480" height="360"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2534691&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2534691&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="480" height="360"></embed></object><br /><a href="http://vimeo.com/">Librarian&#8217;s nightmare &#038; dream</a> from <a href="http://vimeo.com/giulio" target="_blank">Giulio</a> on Vimeo.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/physical-boxes/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Interactive landscape tool &#8211; behind the scene</title>
		<link>http://www.giuliopiacentino.com/source-code-interactive/</link>
		<comments>http://www.giuliopiacentino.com/source-code-interactive/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 11:13:07 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Processing.org]]></category>
		<category><![CDATA[hyperbody]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[landscape]]></category>
		<category><![CDATA[processing.org]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=593</guid>
		<description><![CDATA[Finally, with the release of Processing 1.0, it is possible to run online the Interactive and Landscape Tool as an applet. For this occasion, I thought it would be nice to also open the source code. Web edition This release can run in your web browser. It uses P3D as software-simulated three dimensional enviroment. I [...]]]></description>
				<content:encoded><![CDATA[<p>Finally, with the release of Processing 1.0, it is possible to run online the <a href="/interactive-landscape-tool/">Interactive and Landscape Tool</a> as an applet. For this occasion, I thought it would be nice to also open the source code. <span id="more-593"></span></p>
<h2>Web edition</h2>
<p>This release can run in your web browser. It uses P3D as software-simulated three dimensional enviroment.<br />
<APPLET name="ILT" WIDTH="480" HEIGHT="360" archive="http://www.giuliopiacentino.com/static/interactive_landscape_tool_for_web.jar,http://www.giuliopiacentino.com/static/core.jar" standby="Loading Processing software..."  code="interactive_landscape_tool_for_web.class" mayscript="true" scriptable="true" boxmessage="Loading Processing software..." boxcolor="#CCCCCC"></APPLET><br />
I suggest you try these commands: <em>1</em> (then grab a box with right mouse button), then <em>2</em> (try zoom with central wheel) and <em>3</em> (orbit by dragging outside of a box), <em>4</em>, <em>5</em> (adjust the sizes of the volumes by dragging the top bar) and <em>6</em> (custom views).</p>
<p>If you have problems, try downloading the latest <a href="http://www.java.com/" target="_blank" title="Java Download">Java</a> or watch the <a href="/interactive-landscape-tool/">Flash video</a>, instead. Built with Processing.</p>
<h2>Processing sketch source code</h2>
<p>You can also download the full-screen, desktop (Processing) version that runs quite faster thanks to OpenGL. <img src="/wp-giulio/wp-content/uploads/processing1.jpg" alt="Processing 1.0 pde file (zipped archive)" title="Processing 1.0 pde file (zipped archive)" width="16" height="16" class="alignnone size-full wp-image-820" /> <a href="/static/interactive_landscape_tool.zip" name="code" title="Source code for the Interactive Landscape Tool. Built with Processing 1.0.1 (zipped archive)">Interactive Landscape Tool (zip)</a>.</p>
<p>Special thanks to <a href="http://www.designexplorer.net/" target="_blank">Axel Kilian</a> for the help during the design explorer class (beginning of the development), the whole <a href="http://www.tudelft.nl/live/pagina.jsp?id=c9e2fad8-037c-4188-be0d-8e6ed34397cd&#038;lang=en" target="_blank">Hyperbody Research Group</a> in TU Delft for feedback and the <a href="http://www.processing.org/" target="_blank">Processing</a> community.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/source-code-interactive/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Freeform Rhino workshop, Tilburg</title>
		<link>http://www.giuliopiacentino.com/rhino-intro/</link>
		<comments>http://www.giuliopiacentino.com/rhino-intro/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 19:06:12 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Workshops]]></category>
		<category><![CDATA[academy of arts]]></category>
		<category><![CDATA[Pnina Avidar]]></category>
		<category><![CDATA[Rhinoceros]]></category>
		<category><![CDATA[tilburg]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=515</guid>
		<description><![CDATA[These slides constitute the Rhino day-one (crash) course that was used to teach students at the Fontys Academy of Architecture in Tilburg. They are meant to be for oral presentation and therefore lack the accompanying text. I hope, still, that they might be useful if you need to revise your Rhinoceros skills &#8211; or refresh [...]]]></description>
				<content:encoded><![CDATA[<p>These slides constitute the Rhino day-one (crash) course that was used to teach students at the Fontys Academy of Architecture in Tilburg. They are meant to be for oral presentation and therefore lack the accompanying text. I hope, still, that they might be useful if you need to revise your Rhinoceros skills &#8211; or refresh command lists.</p>
<p>Download: <a title="Rhino first-day workshop pdf presentation" href="/static/rhino-intro.pdf">pdf slideshow</a> &#8211; <a title="Rhino first-day workshop Powerpoint presentation" href="/static/rhino-intro.pptx">pptx presentation</a></p>

<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_01/' title='tilburg-handout_Page_01'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_01-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_01" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_02/' title='tilburg-handout_Page_02'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_02-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_02" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_03/' title='tilburg-handout_Page_03'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_03-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_03" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_04/' title='tilburg-handout_Page_04'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_04-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_04" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_05/' title='tilburg-handout_Page_05'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_05-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_05" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_06/' title='tilburg-handout_Page_06'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_06-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_06" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_07/' title='tilburg-handout_Page_07'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_07-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_07" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_08/' title='tilburg-handout_Page_08'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_08-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_08" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_09/' title='tilburg-handout_Page_09'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_09-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_09" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_10/' title='tilburg-handout_Page_10'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_10-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_10" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_11/' title='tilburg-handout_Page_11'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_11-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_11" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_12/' title='tilburg-handout_Page_12'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_12-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_12" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_13/' title='tilburg-handout_Page_13'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_13-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_13" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_14/' title='tilburg-handout_Page_14'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_14-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_14" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_15/' title='tilburg-handout_Page_15'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_15-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_15" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_16/' title='tilburg-handout_Page_16'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_16-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_16" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_17/' title='tilburg-handout_Page_17'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_17-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_17" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_18/' title='tilburg-handout_Page_18'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_18-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_18" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_19/' title='tilburg-handout_Page_19'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_19-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_19" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_20/' title='tilburg-handout_Page_20'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_20-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_20" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_21/' title='tilburg-handout_Page_21'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_21-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_21" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_22/' title='tilburg-handout_Page_22'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_22-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_22" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_23/' title='tilburg-handout_Page_23'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_23-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_23" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_24/' title='tilburg-handout_Page_24'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_24-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_24" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_25/' title='tilburg-handout_Page_25'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_25-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_25" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_26/' title='tilburg-handout_Page_26'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_26-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_26" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_27/' title='tilburg-handout_Page_27'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_27-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_27" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_28/' title='tilburg-handout_Page_28'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_28-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_28" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_29/' title='tilburg-handout_Page_29'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_29-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_29" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_30/' title='tilburg-handout_Page_30'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_30-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_30" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_31/' title='tilburg-handout_Page_31'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_31-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_31" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_32/' title='tilburg-handout_Page_32'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_32-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_32" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_33/' title='tilburg-handout_Page_33'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_33-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_33" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_34/' title='tilburg-handout_Page_34'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_34-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_34" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_35/' title='tilburg-handout_Page_35'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_35-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_35" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_36/' title='tilburg-handout_Page_36'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_36-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_36" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_37/' title='tilburg-handout_Page_37'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_37-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_37" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_38/' title='tilburg-handout_Page_38'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_38-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_38" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_39/' title='tilburg-handout_Page_39'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_39-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_39" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_40/' title='tilburg-handout_Page_40'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_40-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_40" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_41/' title='tilburg-handout_Page_41'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_41-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_41" /></a>
<a href='http://www.giuliopiacentino.com/rhino-intro/tilburg-handout_page_42/' title='tilburg-handout_Page_42'><img width="160" height="80" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tilburg-handout_page_42-160x80.jpg" class="attachment-thumbnail" alt="tilburg-handout_Page_42" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/rhino-intro/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Posting code online</title>
		<link>http://www.giuliopiacentino.com/posting-code-online/</link>
		<comments>http://www.giuliopiacentino.com/posting-code-online/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 19:04:30 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Stories]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[posting]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=529</guid>
		<description><![CDATA[I think that it is absolutely necessary and beautiful to post one&#8217;s code online, especially the code that was used to obtain bigger projects. Therefore, I will be busy posting online quite a bit of code that I recently (or less) wrote. Would be nice to know if you found the code useful, or to [...]]]></description>
				<content:encoded><![CDATA[<p>I think that it is absolutely necessary and beautiful to post one&#8217;s code online, especially the code that was used to obtain bigger projects. Therefore, I will be busy posting online quite a bit of code that I recently (or less) wrote. Would be nice to know if you found the code useful, or to see your projects.</p>
<p>I wrote myself, for example, to David Rutten, who has been a good source of understanding for Rhinoscripts. I thanked him for sharing his code.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/posting-code-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curves continuity</title>
		<link>http://www.giuliopiacentino.com/curves-continuity/</link>
		<comments>http://www.giuliopiacentino.com/curves-continuity/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 11:00:06 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Workshops]]></category>
		<category><![CDATA[continuity]]></category>
		<category><![CDATA[curves]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[NURBS]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=452</guid>
		<description><![CDATA[Download high resolution NURBS programs like Rhino and Maya allow you to generate objects from many adjacent surfaces. This diagram shows how to work with continuity among these surfaces, and also curves and lines. Position, tangency, curvature radius and derivatives are used to graphically explain G0, G1 and G2 to every audience.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.giuliopiacentino.com/curves-continuity/"><img class="alignnone size-medium wp-image-453" title="gs-continuity-derivative" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/gs-continuity-derivative-480x330.png" alt="This diagram shows how to work with continuity among surfaces, curves and lines. Position, tangency, curvature radius and derivatives are used to graphically explain G0, G1 and G2" width="480" height="330" /></a> <span id="more-452"></span><a href="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/gs-continuity-derivative.png">Download high resolution</a></p>
<p>NURBS programs like Rhino and Maya allow you to generate objects from many adjacent surfaces. This diagram shows how to work with continuity among these surfaces, and also curves and lines. Position, tangency, curvature radius and derivatives are used to graphically explain G0, G1 and G2 to every audience.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/curves-continuity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Component wall</title>
		<link>http://www.giuliopiacentino.com/component-wall/</link>
		<comments>http://www.giuliopiacentino.com/component-wall/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 13:28:42 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[RhinoScripts]]></category>
		<category><![CDATA[component]]></category>
		<category><![CDATA[coral]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[response]]></category>
		<category><![CDATA[user]]></category>
		<category><![CDATA[wall]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=418</guid>
		<description><![CDATA[A wall is usually constructed as an entity that separates an interior from an exterior, leaving the exchange of air and light to the parts called windows. The motivation for this is notably the idea of shelter; that layer of separation between the human skin and the elements. This little experiment wants to challenge this [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-418"></span><!--noteaser--><br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="id" value="videoPlayerCompontent" /><param name="align" value="middle" /><param name="allowScriptAccess" value="sameDomain" /><param name="allowFullScreen" value="true" /><param name="quality" value="best" /><param name="src" value="/static/videoPlayerCompontent.swf?stream=coral-wall-flash.flv" /><embed id="videoPlayerCompontent" type="application/x-shockwave-flash" width="480" height="400" src="/static/videoPlayerCompontent.swf?stream=coral-wall-flash.flv" quality="best" allowfullscreen="true" allowscriptaccess="sameDomain" align="middle"></embed></object></p>
<p>A wall is usually constructed as an entity that separates an interior from an exterior, leaving the exchange of air and light to the parts called windows. The motivation for this is notably the idea of shelter; that layer of separation between the human skin and the elements.</p>
<p>This little experiment wants to challenge this assumption and proposes a small component that is capable of sensing the presence of people. When someone is close to the wall, the partition become more porous: it allows the outside of the wall to see the interior.</p>
<p>At this time, light and air are allowed to come in. Additionally, this can constitute a manner of showing the presence of inner activities in a public building.</p>
<p><a href="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/component-wall-static.jpg"><img src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/component-wall-static-480x251.jpg" alt="" title="component-wall-static" width="480" height="251" class="alignnone size-medium wp-image-470" /></a></p>
<h3>Behind the scenes</h3>
<p>Visit <a href="http://www.giuliopiacentino.com/adding-motion-in-rhinoscript/" title="Motion and movement in RhinoScript">adding motion in RhinoScript</a> to learn how to put together a similar animation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/component-wall/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Barcelona workshop rhinoScript</title>
		<link>http://www.giuliopiacentino.com/barcelona-workshop-rhinoscript/</link>
		<comments>http://www.giuliopiacentino.com/barcelona-workshop-rhinoscript/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 15:45:46 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[RhinoScripts]]></category>
		<category><![CDATA[Stories]]></category>
		<category><![CDATA[Workshops]]></category>
		<category><![CDATA[Barcelona]]></category>
		<category><![CDATA[Live Architecture Network]]></category>
		<category><![CDATA[Luis Fraguada]]></category>
		<category><![CDATA[Rhinoceros]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=427</guid>
		<description><![CDATA[I am just back to Delft after having visited Barcelona to participate as a Rhino educator to McNeel&#8217;s RhinoScript workshop. Luis Fraguada of Live Architecture Network was the instructor and showed us some useful techniques for geometry construction and data visualization. I developed one of the script of the class a bit further and came [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-427"></span><!--noteaser--></p>
<p><a href="/barcelona-workshop-rhinoscript/"><img class="alignnone size-medium wp-image-428" title="RhinoScript workshop Barcelona dna" src="/wp-giulio/wp-content/uploads/rhinoscript-workshop-dna-480x344.jpg" alt="RhinoScript workshop Barcelona dna" width="480" height="344" /></a></p>
<p>I am just back to Delft after having visited Barcelona to participate as a Rhino educator to McNeel&#8217;s <a href="http://blog.rhino3d.com/2008/10/rhinoscript-training-at-mcneel-europe.html">RhinoScript workshop</a>. Luis Fraguada of <a href="http://www.livearchitecture.net/?page_id=133">Live Architecture Network</a> was the instructor and showed us some useful techniques for geometry construction and data visualization. I developed one of the script of the class a bit further and came up with this DNA helix.</p>
<p>Download the code: <img src="/wp-giulio/wp-content/uploads/rhino.jpg" alt="Rhino VBScript file" title="Rhino VBScript file" width="16" height="16" class="alignnone size-full wp-image-821" /> <a href="/static/dna.rvb" title="Rhino VBScript file">dna.rvb</a>.</p>
<div class="code">Option Explicit<br />
Rem Script written by Giulio<br />
Rem Script version lunes, 10 de noviembre de 2008 21:00:00</p>
<p>Call Main()</p>
<p>Sub Main()</p>
<p>Dim arrLfStart(),arrRxStart(), arrLfEnd(), arrRxEnd(), arrLinks(), i<br />
Dim links: links = 36</p>
<p>ReDim arrLfStart(links), arrRxStart(links), arrLfEnd(links), arrRxEnd(links), arrLinks(links)</p>
<p>Dim angleDist:angleDist = Rhino.PI / 10</p>
<p>For i=0 To links</p>
<p>arrLfStart(i) = Array(Cos(i-angleDist)*3 + Cos(i*12)*12,	 Sin(i-angleDist)*3 + Sin(i*12)*12,	i*5)<br />
arrRxStart(i) = Array(Cos(i+angleDist)*3 + Cos(i*12)*12,	 Sin(i+angleDist)*3 + Sin(i*12)*12,	i*5)<br />
arrLfEnd(i) = Array(-Cos(i-angleDist)*3 + Cos(i*12)*12,		-Sin(i-angleDist)*3 + Sin(i*12)*12,	i*5)<br />
arrRxEnd(i) = Array(-Cos(i+angleDist)*3 + Cos(i*12)*12,		-Sin(i+angleDist)*3 + Sin(i*12)*12,	i*5)</p>
<p>Call Rhino.AddCylinder(IntraPts(arrLfStart(i), arrRxStart(i), 0.5), IntraPts(arrLfEnd(i), arrRxEnd(i), 0.5), 0.5)</p>
<p>Next</p>
<p>Call Rhino.AddLoftSrf(Array(Rhino.AddInterpCurve(arrLfStart), Rhino.AddInterpCurve(arrRxStart)))<br />
Call Rhino.AddLoftSrf(Array(Rhino.AddInterpCurve(arrLfEnd), Rhino.AddInterpCurve(arrRxEnd)))</p>
<p>End Sub</p>
<p>Function IntraPts(byRef p1, byRef p2,byRef n)<br />
Rem This function gives the first point out if you use n=0,<br />
Rem with n=1 it gives the second point.<br />
IntraPts = Array( p1(0)*(1.0-n)+p2(0)*n, p1(1)*(1.0-n)+p2(1)*n,  p1(2)*(1.0-n)+p2(2)*n  )<br />
End Function</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/barcelona-workshop-rhinoscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bézienne</title>
		<link>http://www.giuliopiacentino.com/bezienne/</link>
		<comments>http://www.giuliopiacentino.com/bezienne/#comments</comments>
		<pubDate>Mon, 03 Nov 2008 21:16:18 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[Processing.org]]></category>
		<category><![CDATA[bezier]]></category>
		<category><![CDATA[curve]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[java-javascript interaction]]></category>
		<category><![CDATA[processing.org]]></category>
		<category><![CDATA[UGC]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=301</guid>
		<description><![CDATA[New&#160;&#160;&#160;Open defaults (10)&#160;&#160;&#160;Make code&#160;&#160;&#160;Draw code Select: &#171; &#160;&#160; &#8249; &#160;&#160;all/none&#160; &#8250; &#160;&#160; &#187; Delete: 1Pt&#160;&#160;Objs&#160;&#160;Undo Modifiers: move (arrows) &#8211; scale (+/-) &#8211; Mirror&#160;&#160;Flip&#160;&#160;Approximate Zoom: mouse wheel. Pan: central mouse button. Reset. By default, the applet makes always new lines of four control points. You can hold Shift to continue in a new position. If you [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-301"></span><!--noteaser--></p>
<p><APPLET name="bez" WIDTH="480" HEIGHT="320" archive="http://www.giuliopiacentino.com/static/bezienne.jar,http://www.giuliopiacentino.com/static/core.jar" standby="Loading Processing software..."  code="bezienne.class" mayscript="true" scriptable="true" boxmessage="Loading Processing software..." boxcolor="#CCCCCC"></APPLET><script language="Javascript">function papplet(){    return document.bez; } function selCode(){ window.scroll(0,400); document.forms[1].elements.comment.focus(); document.forms[1].elements.comment.select();}</script><br />
<form onSubmit="return false;" name="functions" id="functions">
<p><a href="javascript:papplet().waitAndCall('N');" title="New drawing (and clear canvas, undoable) [N]">New</a>&nbsp;&nbsp;&nbsp;<a href="javascript:papplet().waitAndCall('O');" title="Opens a predefined canvas [o]">Open defaults (<b>10</b>)</a>&nbsp;&nbsp;&nbsp;<a title="Writes down the code for the drawing. It puts it in the comment box, so that you can send it, or just copy it.  [Enter]" href="javascript:papplet().waitAndCall('c');" onclick="window.setTimeout('selCode();',400);">Make code</a>&nbsp;&nbsp;&nbsp;<a title="Puts all the coded beziers from the comment box into the canvas [v]" href="javascript:papplet().waitAndCall('v');" >Draw code</a></p>
<p>Select: <a title="First [1]" href="javascript:papplet().waitAndCall('1');"> &laquo; </a>&nbsp;&nbsp;<a title="Select only previous [p]" href="javascript:papplet().waitAndCall('p');"> &lsaquo; </a>&nbsp;&nbsp;<a title="All or none, depending [a]" href="javascript:papplet().waitAndCall('a');">all/none</a>&nbsp;<a title="Select only next [n]" href="javascript:papplet().waitAndCall('n');"> &rsaquo; </a>&nbsp;&nbsp;<a title="Last [0]" href="javascript:papplet().waitAndCall('0');"> &raquo; </a></p>
<p>Delete: <a title="Remove last control point [Esc]" href="javascript:papplet().waitAndCall('E');">1Pt</a>&nbsp;&nbsp;<a title="Delete selected objects. If none selected, then the last one [Del]" href="javascript:papplet().waitAndCall('D');">Objs</a>&nbsp;&nbsp;<a href="javascript:papplet().waitAndCall('z');" title="Undo delete (only once for now, sorry) [z]">Undo</a></p>
<p>Modifiers: move (<abbr title="Suggestions: at first, select all the things that you need to move. Then, be sure that the focus is on the applet (you can click on it with the central mouse button to be sure). You can now use the four arrows">arrows</abbr>) &#8211; scale (<a href="javascript:papplet().waitAndCall('+');" title="Scales +10% [+]">+</a>/<a href="javascript:papplet().waitAndCall('-');" title="Scales -10% [-]">-</a>) &#8211; <a title="Mirror vertically [m]" href="javascript:papplet().waitAndCall('m');">Mirror</a>&nbsp;&nbsp;<a title="Flip horizontally [f]" href="javascript:papplet().waitAndCall('f');">Flip</a>&nbsp;&nbsp;<a title="Saves disc space and makes more readable by rounding all control points to integers [X]" href="javascript:papplet().waitAndCall('X');">Approximate</a></p>
<p>Zoom: mouse wheel. Pan: central mouse button. <a title="Reset the view [r]" href="javascript:papplet().waitAndCall('r');">Reset</a>. By default, the applet makes always new lines of four control points. You can hold <em>Shift</em> to continue in a new position. If you click in the neighborhood of a selected control point (red), the program will snap to it.</p>
</form>
<p>Drawings: #5 is made by Ryoko Ikeda, #9 by Ilaria Giardiello. You can submit your own code by simply filling the fields below here (use &#8220;make code&#8221;).</p>
<p style="font-size: 0.75em;">Source code: <img src="/wp-giulio/wp-content/uploads/processing1.jpg" alt="Processing 1 pde files" title="Processing 1 pde files" width="16" height="16" class="alignnone size-full wp-image-820" /> <a href="http://www.giuliopiacentino.com/static/bezienne.pde">bezienne</a> <a href="http://www.giuliopiacentino.com/static/Bez.pde" target="_blank">Bez</a> <a href="http://www.giuliopiacentino.com/static/Point.pde" target="_blank">Point</a> <a href="http://www.giuliopiacentino.com/static/controls.pde" target="_blank">controls</a> <a href="http://www.giuliopiacentino.com/static/copyPaste.pde" target="_blank">copyPaste</a> <a href="http://www.giuliopiacentino.com/static/pointEditor.pde" target="_blank">pointEditor</a> <a href="http://www.giuliopiacentino.com/static/save.pde" target="_blank">save</a>. Built with <a href="http://processing.org" title="Processing.org" target="_blank">Processing</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/bezienne/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Sakura, flowers</title>
		<link>http://www.giuliopiacentino.com/sakura-flowers/</link>
		<comments>http://www.giuliopiacentino.com/sakura-flowers/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 18:16:21 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[RhinoScripts]]></category>
		<category><![CDATA[lake]]></category>
		<category><![CDATA[mesh]]></category>
		<category><![CDATA[petals]]></category>
		<category><![CDATA[replication]]></category>
		<category><![CDATA[Ryoko Ikeda]]></category>
		<category><![CDATA[sakura]]></category>
		<category><![CDATA[sky]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[storm]]></category>
		<category><![CDATA[teamoptionexplicit]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=66</guid>
		<description><![CDATA[This script takes care of populating a mesh with specific geometry: in this case, a closed NURBS curve. This curve can be topologically modified, and in this case we closed it with a jag to obtain petals. It can be applyed to a variaty of cases, and served as inspiration for the component wall. Download [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-66"></span><!--noteaser-->This script takes care of populating a mesh with specific geometry: in this case, a closed NURBS curve. This curve can be topologically modified, and in this case we closed it with a jag to obtain petals. It can be applyed to a variaty of cases, and served as inspiration for the <a href="/component-wall/">component wall</a>.</p>
<p>Download the source code: <img src="/wp-giulio/wp-content/uploads/rhino.jpg" alt="Rhino VBScript file" title="Rhino VBScript file" width="16" height="16" class="alignnone size-full wp-image-821" /> <a href="/static/sakura.rvb" title="Rhino VBScript file">sakura.rvb</a>.</p>
<p><a href="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/sakura1.jpg"><img class="alignnone size-medium wp-image-67" title="sakura flower storm 1" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/sakura1-480x360.jpg" alt="" width="480" height="360" /></a></p>
<p><a href="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/flowerstorm1.png"><img class="alignnone size-medium wp-image-68" title="flower storm 2" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/flowerstorm1-480x360.png" alt="" width="480" height="360" /></a></p>
<hr />
<p>&#8220;Option Explicit&#8221; is a series of scripts developed in collaboration with Ryoko Ikeda that deals with organic, abstract form and contemplates experiments that have been dealt with in aspects like geometry, light and shadows.</p>
<p>The intermediate goal is computationally explore shape creation, using the implementation of VBScripting that is offered inside Rhinoceros 4.0. The more far-seeing goal is to investigate algorithmic relationships among entities that usually surround us and re-establish their creative articulations, to simply allow us to deal with complexity.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/sakura-flowers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tree &#8211; and lake</title>
		<link>http://www.giuliopiacentino.com/tree-and-lake/</link>
		<comments>http://www.giuliopiacentino.com/tree-and-lake/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 00:01:40 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[RhinoScripts]]></category>
		<category><![CDATA[L-system]]></category>
		<category><![CDATA[Ryoko Ikeda]]></category>
		<category><![CDATA[tree]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=60</guid>
		<description><![CDATA[Many things in nature grow from little to big. In fact, many people, when asked to name things that shrink, cannot normally name any for some time. But how does a tree actually grow? Lindermayer was also fascinated by this question and develped a whole set of explanations, as a part of wider sintax-free grammars, [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-60"></span><!--noteaser--></p>
<p>Many things in nature grow from little to big. In fact, many people, when asked to name things that shrink, cannot normally name any for some time. But how does a tree actually grow?</p>
<p>Lindermayer was also fascinated by this question and develped a whole set of explanations, as a part of wider sintax-free grammars, to explain it. <a href="http://en.wikipedia.org/wiki/L-system" target="_blank">L-systems</a> explain the groth of trees through a simple, unfolding, enlargement process, that we can imagine as the restarting every spring.</p>
<p><em>&#8220;Just a small change in the script of The crown and we get closer to an autumnal view.&#8221;</em></p>
<p>Download the source code: <img src="/wp-giulio/wp-content/uploads/rhino.jpg" alt="Rhino VBScript file" title="Rhino VBScript file" width="16" height="16" class="alignnone size-full wp-image-821" /> <a href="/static/tree1.rvb" title="Rhino VBScript file">tree1.rvb</a>.</p>
<p><a href="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tree1.jpg"><img class="alignnone size-medium wp-image-61" title="A tree made by division and multiplication, on a lake" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tree1-480x360.jpg" alt="" width="480" height="360" /></a></p>
<hr />
<p>&#8220;Option Explicit&#8221; is a series of scripts developed in collaboration with Ryoko Ikeda that deals with organic, abstract form and contemplates experiments that have been dealt with in aspects like geometry, light and shadows.</p>
<p>The intermediate goal is computationally explore shape creation, using the implementation of VBScripting that is offered inside Rhinoceros 4.0. The more far-seeing goal is to investigate algorithmic relationships among entities that usually surround us and re-establish their creative articulations, to simply allow us to deal with complexity.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/tree-and-lake/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Growing into a crown</title>
		<link>http://www.giuliopiacentino.com/growing-into-a-crown/</link>
		<comments>http://www.giuliopiacentino.com/growing-into-a-crown/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 17:13:00 +0000</pubDate>
		<dc:creator>Giulio Piacentino</dc:creator>
				<category><![CDATA[RhinoScripts]]></category>
		<category><![CDATA[L-system]]></category>
		<category><![CDATA[Ryoko Ikeda]]></category>
		<category><![CDATA[tree]]></category>

		<guid isPermaLink="false">http://www.giuliopiacentino.com/?p=53</guid>
		<description><![CDATA[This experiment, on our side, has the goal of understanding fractal object as a way to obtain morphogenesis. Each generation translates, scales and doubles. How to make it really work with rotations? The best answer would be quaternions, but also rotation matrices would do. The construction curves are showing how the growth path resembles patterns [...]]]></description>
				<content:encoded><![CDATA[<p><span id="more-53"></span><!--noteaser--></p>
<p>This experiment, on our side, has the goal of understanding fractal object as a way to obtain morphogenesis. Each generation translates, scales and doubles. How to make it really work with rotations? The best answer would be <a title="Wikipedia's Quaternion Article" target="_blank" href="http://en.wikipedia.org/wiki/Quaternion">quaternions</a>, but also rotation matrices would do.</p>
<p>The construction curves are showing how the growth path resembles patterns that are typical in<br />
nature: similar to the one that biologist observe in corals and other sea life.</p>
<p>Download the source code: <img src="/wp-giulio/wp-content/uploads/rhino.jpg" alt="Rhino VBScript file" title="Rhino VBScript file" width="16" height="16" class="alignnone size-full wp-image-821" /> <a href="/static/crown.rvb" title="Rhino VBScript file">crown.rvb</a>.</p>
<p><a href="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tree-crown.jpg"><img class="alignnone size-medium wp-image-54" title="tree-crown" src="http://www.giuliopiacentino.com/wp-giulio/wp-content/uploads/tree-crown-479x359.jpg" alt="" width="479" height="359" /></a></p>
<hr />
<p>&#8220;Option Explicit&#8221; is a series of scripts developed in collaboration with Ryoko Ikeda that deals with organic, abstract form and contemplates experiments that have been dealt with in aspects like geometry, light and shadows.</p>
<p>The intermediate goal is computationally explore shape creation, using the implementation of VBScripting that is offered inside Rhinoceros 4.0. The more far-seeing goal is to investigate algorithmic relationships among entities that usually surround us and re-establish their creative articulations, to simply allow us to deal with complexity.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.giuliopiacentino.com/growing-into-a-crown/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
