<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5546324682725148786</id><updated>2011-09-30T03:28:02.653+03:00</updated><category term='this'/><category term='Heuristic'/><category term='visual'/><category term='simulation'/><category term='processing'/><category term='structurl'/><category term='Fluid Dynamics'/><category term='Verlet Integration'/><category term='tensile structure'/><category term='swarm optimization'/><category term='iDiana'/><category term='fvlib'/><category term='graphics'/><category term='Design Optimization'/><category term='standup'/><category term='FEA'/><category term='graph'/><category term='applet'/><category term='TN6'/><category term='aab'/><category term='blog'/><category term='eliza'/><category term='LPacker'/><category term='library'/><category term='time'/><category term='DXF'/><category term='strukturl'/><category term='fib'/><category term='Manufacturing'/><category term='eerkit'/><category term='Packing'/><category term='cloth simulation'/><category term='diagram'/><category term='MSAFluid'/><category term='analysis'/><category term='Wind Tunnel'/><category term='ribonkit'/><category term='design-free'/><category term='elclok'/><category term='Update'/><category term='L-system'/><category term='architecture'/><category term='found'/><category term='Form Design'/><category term='Combinatorial Problem'/><category term='sheet simulation'/><category term='TN7'/><category term='engineering aesthetics'/><title type='text'>volatile prototypes</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>46</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7492683647449239740</id><published>2011-03-15T03:16:00.000+02:00</published><updated>2011-03-15T03:16:58.137+02:00</updated><title type='text'>Closing Down + Moving!!</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;The Short Version:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This blog has permanently moved to a proper site. The new address is:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: 42px; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px; text-align: center;"&gt;&lt;a href="http://www.volatileprototypes.com/"&gt;www.volatileprototypes.com&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;The --ramblings-enabled version:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh6.googleusercontent.com/-vyxDi96WjWE/TX68tGHb6UI/AAAAAAAAAiQ/J10MloPq8p0/s1600/Screen+shot+2011-03-15+at+2.10.43+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="266" src="https://lh6.googleusercontent.com/-vyxDi96WjWE/TX68tGHb6UI/AAAAAAAAAiQ/J10MloPq8p0/s400/Screen+shot+2011-03-15+at+2.10.43+AM.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Almost three years ago, at a time when I was bringing my first works and thoughts on computational art and design online, blogging now and then about relevant and not so relevant stuff seemed quite fun. However, as time went by my engagement with computation in design got a little bit more serious. And then a little bit more and more, until I realized that the blog as a medium was unable to "hold my thoughts" in an efficient manner, simply because they were no more frequent minute posts but mostly sparse and organized entities. Blogging became quite clunky, unable to respond well to large chunks of info posted from time to time. Not from a technical viewpoint, but from a structural one, long-lasting information becoming hidden in the blog's continuous 'stream of events', masked by the tiniest updates and news, and therefore turning essentially inaccessible.&lt;br /&gt;&lt;br /&gt;In view of this situation I began a proper, structured site about half a year ago. Recently it has been redesigned and now is central to my research and experimentation on computation and design.&lt;br /&gt;&lt;br /&gt;Therefore, I'm ultimately putting this blog to bed. Thanks all for participating and I hope to meet you at the new site: &lt;a href="http://www.volatileprototypes.com/"&gt;www.volatileprototypes.com&lt;/a&gt; And if you're still not bored and have some time, check out my &lt;a href="http://yconst.com/"&gt;design portfolio&lt;/a&gt; too.&lt;br /&gt;Thanks! (';&lt;br /&gt;&lt;br /&gt;-Yiannis&lt;br /&gt;&lt;br /&gt;ps. Blogs closing down are kinda funny and sad at the same time. And there are so many.&amp;nbsp;Maybe someone could set up a gallery of abandoned/ inactive/ shut down blogs. Just sayin.&lt;br /&gt;&lt;br /&gt;(picture is from &lt;a href="http://www.flickr.com/photos/djll/sets/72157608369709836/"&gt;this flickr set&lt;/a&gt;)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7492683647449239740?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7492683647449239740/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2011/03/closing-down-moving.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7492683647449239740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7492683647449239740'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2011/03/closing-down-moving.html' title='Closing Down + Moving!!'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh6.googleusercontent.com/-vyxDi96WjWE/TX68tGHb6UI/AAAAAAAAAiQ/J10MloPq8p0/s72-c/Screen+shot+2011-03-15+at+2.10.43+AM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-2162705356919803067</id><published>2011-01-20T23:58:00.000+02:00</published><updated>2011-01-20T23:58:27.169+02:00</updated><title type='text'>fvlib update and Github repo</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;fvlib has been updated with a solver that may be of use when visualizing 3d pointsets/graphs. It allows the separation of coinciding points from a specific user-defined viewpoint. More info at the &lt;a href="http://www.volatileprototypes.com/libraries/fvlib/"&gt;fvlib page&lt;/a&gt;, or head directly to the &lt;a href="https://github.com/yconst/fvlib"&gt;Github repo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TTiuaSMhISI/AAAAAAAAAg4/0w5-RxRbI9Q/s1600/scs1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="277" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TTiuaSMhISI/AAAAAAAAAg4/0w5-RxRbI9Q/s400/scs1.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TTiunPSCF3I/AAAAAAAAAg8/uzFSMIdpx0Y/s1600/scs2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="277" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TTiunPSCF3I/AAAAAAAAAg8/uzFSMIdpx0Y/s400/scs2.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-2162705356919803067?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/2162705356919803067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2011/01/fvlib-update-and-github-repo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2162705356919803067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2162705356919803067'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2011/01/fvlib-update-and-github-repo.html' title='fvlib update and Github repo'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/TTiuaSMhISI/AAAAAAAAAg4/0w5-RxRbI9Q/s72-c/scs1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5230797157597542713</id><published>2010-12-03T17:27:00.002+02:00</published><updated>2010-12-11T15:54:03.548+02:00</updated><title type='text'>Configurations, fin</title><content type='html'>Below is an abstract of the project I've been working on as part of my graduation at TU Delft for the past three months.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;In architectural design, the process of designing an efficient spatial configuration that reflects the project’s essence is a crucial part of the design process of almost every project. This holds true especially when it comes to projects with complex building programs, featuring a large number of discrete spaces, as well as complex configurational requirements. Lately, there is increasing interest to employ computational methods for the analysis and synthesis of spatial configurations.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;The aim of this study is to introduce a computation-based analysis and optimization process, and it’s implementation into a digital design tool, with the goal of suggesting potentially efficient spatial configurations, based on the input of configurational information and a range of performance parameters by the designer.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;A generative method is proposed, based on a 3D data structure to encode spatial configurations, a compositional method for the generation of configurations and the use of heuristics for the evaluation and evolution of solutions according to conformance with the designer’s requirements. The implementation of this method into a digital design tool aims to be easily accessible by designers, utilizing a simple interface and expressive visualizations of results, so that usage along the design process becomes feasible.&lt;/i&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/TPZSUCmpFCI/AAAAAAAAAgk/oo7jZTMX0r4/s1600/conf1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="382" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/TPZSUCmpFCI/AAAAAAAAAgk/oo7jZTMX0r4/s400/conf1.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TPZSZVeg-3I/AAAAAAAAAgs/NK9drBeEMDk/s1600/conf3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="382" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TPZSZVeg-3I/AAAAAAAAAgs/NK9drBeEMDk/s400/conf3.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;More info and images can be found at the &lt;a href="http://www.volatileprototypes.com/projects/bocskit/"&gt;bocskit page&lt;/a&gt;.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;A compiled version of &lt;a href="http://www.volatileprototypes.com/files/bocskit.zip"&gt;bocskit is available for download&lt;/a&gt;, however source code will be released at a later time.&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5230797157597542713?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5230797157597542713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/12/configurations-fin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5230797157597542713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5230797157597542713'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/12/configurations-fin.html' title='Configurations, fin'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/TPZSUCmpFCI/AAAAAAAAAgk/oo7jZTMX0r4/s72-c/conf1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7213408132366238398</id><published>2010-11-21T16:50:00.000+02:00</published><updated>2010-11-21T16:50:26.271+02:00</updated><title type='text'>Generative Arts 2010</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TOkxaXEpA8I/AAAAAAAAAgg/evc_FaHMzhw/s1600/SAVE_canopy.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="340" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TOkxaXEpA8I/AAAAAAAAAgg/evc_FaHMzhw/s640/SAVE_canopy.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;A paper with the title "Computational Optimization as means for exploring structurally efficient surfaces" will be presented at the &lt;a href="http://www.generativeart.com/"&gt;13th Generative Art conference&lt;/a&gt; Politecnico di Milano, Italy, 15-17 December. The paper is closely related to the development of 'surfkit', a tool whose function is to optimize user-defined, self-supported surfaces by &amp;nbsp;distributing their thickness in order to minimize deflection.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.volatileprototypes.com/projects/surfkit/"&gt;More info about surfkit...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7213408132366238398?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7213408132366238398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/11/generative-arts-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7213408132366238398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7213408132366238398'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/11/generative-arts-2010.html' title='Generative Arts 2010'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/TOkxaXEpA8I/AAAAAAAAAgg/evc_FaHMzhw/s72-c/SAVE_canopy.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-278086572200250239</id><published>2010-10-28T13:34:00.002+03:00</published><updated>2010-10-29T00:42:46.567+03:00</updated><title type='text'>Configurations, Part 5</title><content type='html'>Just a quick update of what's going on with the current project...&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/TMnuTXiJH8I/AAAAAAAAAeM/FipLty6VXfA/s1600/fl.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="612" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/TMnuTXiJH8I/AAAAAAAAAeM/FipLty6VXfA/s640/fl.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-278086572200250239?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/278086572200250239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/10/configurations-part-5_28.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/278086572200250239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/278086572200250239'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/10/configurations-part-5_28.html' title='Configurations, Part 5'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/TMnuTXiJH8I/AAAAAAAAAeM/FipLty6VXfA/s72-c/fl.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-306612226028982095</id><published>2010-10-25T13:14:00.001+03:00</published><updated>2010-10-25T18:56:05.849+03:00</updated><title type='text'>fvlib release 4, surfkit release 2</title><content type='html'>fvlib has been updated to it's fourth release. &lt;a href="http://www.volatileprototypes.com/libraries/fvlib/"&gt;More info and downloads here.&lt;/a&gt; Also available as a &lt;a href="http://code.google.com/p/fvlib/"&gt;Google Code project.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLdi3pDhtLI/AAAAAAAAAcc/qQkuC0TKcOk/s1600/1_1.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="364" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLdi3pDhtLI/AAAAAAAAAcc/qQkuC0TKcOk/s640/1_1.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;surfkit has been updated to it's second release. &lt;a href="http://www.volatileprototypes.com/projects/surfkit/"&gt;More info and Downloads here.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-306612226028982095?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/306612226028982095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/10/fvlib-release-4-surfkit-release-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/306612226028982095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/306612226028982095'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/10/fvlib-release-4-surfkit-release-2.html' title='fvlib release 4, surfkit release 2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/TLdi3pDhtLI/AAAAAAAAAcc/qQkuC0TKcOk/s72-c/1_1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7829954325935228479</id><published>2010-10-19T14:09:00.020+03:00</published><updated>2010-10-26T14:24:40.433+03:00</updated><title type='text'>Configurations, Part 4</title><content type='html'>I've so far performed a series of elementary tests, mostly to validate functionality and out of curiosity for the first results. Each image is shortly explained.&lt;br /&gt;&lt;br /&gt;Please note that the interface and visualization of the application are in a totally initial stage and therefore not polished at all.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Test 1, 2: Connectivity&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In the first test, the goal was set to achieve as many of the connections specified in the original matrix as possible. The original matrix was semi-randomly generated, by filling a percentage of 3 randomly selected rows/columns while leaving the rest blank. This arrangement corresponds to a centralized circulation layout with a few spaces being having the role of a "hub", and the rest being passive in terms of circulation.&lt;br /&gt;The first test resulted into a solution with very high fitness value, satisfying all connection requirements except two. In order to validate this, a second test with the same parameters was performed. However, in the second test fitness did not turn out as high as in the first. This can be attributed to two reasons:&lt;br /&gt;The evolutionary process is in it's early stage and needs further study to increase the effectiveness of the search for optimal solutions.&lt;br /&gt;An optimal solution is not achievable with the specific connectivity scheme&lt;br /&gt;&lt;br /&gt;Results&lt;br /&gt;&lt;br /&gt;In the images below you can seen the original fittest and final (after evolution) fittest solutions. Next to the arrangements is a bar displaying the fitness value and an overlay of the required and actual connectivity matrices.&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLhfFaQ71GI/AAAAAAAAAcg/ArCI2eTuYrY/s1600/test1-init.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="516" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLhfFaQ71GI/AAAAAAAAAcg/ArCI2eTuYrY/s640/test1-init.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 1: Initial Fittest Solution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLhfOAn1myI/AAAAAAAAAck/z7v-5HK_fEc/s1600/test1-end.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLhfOAn1myI/AAAAAAAAAck/z7v-5HK_fEc/s640/test1-end.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 1: Fittest Solution after approx. 10000 generations of 239 members (10 min runtime)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/TMa6G1yZzYI/AAAAAAAAAd4/7NafDigfCkM/s1600/test1-parm.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/TMa6G1yZzYI/AAAAAAAAAd4/7NafDigfCkM/s400/test1-parm.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 1: Parameters&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLkheU7m3bI/AAAAAAAAAcs/vGkJykD46pI/s1600/test2-init.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLkheU7m3bI/AAAAAAAAAcs/vGkJykD46pI/s640/test2-init.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 2: Initial Fittest Solution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLkhkECluBI/AAAAAAAAAcw/kM00m9OpZUw/s1600/test2-end.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLkhkECluBI/AAAAAAAAAcw/kM00m9OpZUw/s640/test2-end.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 2: Fittest Solution after approx. 10000 generations of 239 members (10 min runtime)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TLkhoFe1j7I/AAAAAAAAAc0/E6CKcEErOWU/s1600/test2-end2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TLkhoFe1j7I/AAAAAAAAAc0/E6CKcEErOWU/s640/test2-end2.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 2: Fittest Solution, alternate viewpoint&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;Discussion of the Results&lt;br /&gt;&lt;br /&gt;It is clear in the first test that, while most connectivity requirements are satisfied, spaces with irrational characteristics appear. To satisfy their connectivity, some spaces have gained so much height that the solution is no realistic. Moreover, there are spaces with no adjacency whatsoever to the outside, a feature which further decreases the feasibility of the solution.&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;b&gt;Test 3, 4: Connectivity + Adjacency to Surface&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;A second performance factor has been added to thess tests, which requires at least one block of every different space to be in contact with the surface of the building volume. Again, the connectivity matrix was semi-randomly generated as in the first test.&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmcDKoAqqI/AAAAAAAAAc4/VEdPGNXkwvo/s1600/test3-init.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmcDKoAqqI/AAAAAAAAAc4/VEdPGNXkwvo/s640/test3-init.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 4: Initial Fittest Solution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmcKMWPZtI/AAAAAAAAAc8/rYLW7Eo3u9U/s1600/test3-end.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmcKMWPZtI/AAAAAAAAAc8/rYLW7Eo3u9U/s640/test3-end.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 4: Fittest Solution after approx. 10000 generations of 250 members (10 min runtime)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmcOmoabmI/AAAAAAAAAdA/xm53wSsBdes/s1600/test3-end2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmcOmoabmI/AAAAAAAAAdA/xm53wSsBdes/s640/test3-end2.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="font-size: medium; margin-bottom: 0.5em; margin-left: auto; margin-right: auto; padding-bottom: 6px; padding-left: 6px; padding-right: 6px; padding-top: 6px; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px; padding-top: 4px; text-align: center;"&gt;Test 4: Fittest Solution, alternate viewpoint.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="text-align: auto;"&gt;Discussion of the Results&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;While it seems again that the solution found is performing very well, spaces outside the allowable height range still appear. Essentially, all spaces that are required to have a large number of connections are oriented vertically, so that they can be in contact with as many other spaces as possible.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;Test 5, 6&lt;/b&gt;:&amp;nbsp;&lt;b&gt;Connectivity + Adjacency to Surface + Height Limit&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;In the last two tests the aim was to produce solutions that adhere to height restrictions for each space. The representation used so far is dimensionless, therefore "floor" has been chosen as the height unit in this case. This equals roughly 3 meters for a typical office floor. Once again, test was performed using a semi-random connectivity matrix.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLmq7hM4-mI/AAAAAAAAAdQ/ZquqBpwtGK8/s1600/test5-init.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLmq7hM4-mI/AAAAAAAAAdQ/ZquqBpwtGK8/s640/test5-init.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 5: Initial Fittest Solution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmrCD1cq-I/AAAAAAAAAdU/23uOsebIDEQ/s1600/test5-end5.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="518" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TLmrCD1cq-I/AAAAAAAAAdU/23uOsebIDEQ/s640/test5-end5.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 5: Fittest Solution after approx. 10000 generations of 252 members (10 min runtime)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TMa6PO3lXCI/AAAAAAAAAd8/P5S8EbAn4Ds/s1600/test6-iniparms.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TMa6PO3lXCI/AAAAAAAAAd8/P5S8EbAn4Ds/s400/test6-iniparms.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Test 5: Initial Parameters&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Discussion of the Results&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;It is evident that much more feasible solutions begin to appear with the introduction of the height limitation via penalization. Still, probably due to the number of unique spaces and the intense connectivity requirements of some of them, the connectivity satisfaction is impossible to achieve in it's entirety.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Next tests will be after a basic data input interface is implemented, so that working on actual configuration data becomes possible.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Check back soon!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7829954325935228479?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7829954325935228479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/10/configurations-part-4.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7829954325935228479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7829954325935228479'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/10/configurations-part-4.html' title='Configurations, Part 4'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/TLhfFaQ71GI/AAAAAAAAAcg/ArCI2eTuYrY/s72-c/test1-init.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4853785974900614575</id><published>2010-10-16T17:50:00.004+03:00</published><updated>2010-10-16T19:44:47.144+03:00</updated><title type='text'>Configurations, Part 3</title><content type='html'>I have so far been able to implement the code required for storing Constructor Graphs, Connectivity Grids and Integration Matrices. The necessary routines for constructing Grids from Constructor Graphs, evaluating, generating matrices and evolving according to a simple GA is also there. These data structures and processes are described in greater detail in my previous post.&lt;br /&gt;&lt;br /&gt;The Organization Scheme that reflects the programmatic organization of the project can be seen in Fig. 1.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLnTYuDtjUI/AAAAAAAAAdo/gSRSMh24Qkg/s1600/Organization.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="470" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLnTYuDtjUI/AAAAAAAAAdo/gSRSMh24Qkg/s640/Organization.png" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Fig. 1: Organization Scheme of the project&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The process begins with a fixed-length &lt;a href="http://en.wikipedia.org/wiki/Chromosome_(genetic_algorithm)"&gt;chromosome&lt;/a&gt; that determines the order and orientation of the combination process that produces the final volume. From the chromosome and via the Constructor Graph emerges the Connectivity Grid, which is the essential specification of the building's connectivity, ignoring dimensions of spaces. From the Connectivity Grid, various "profiling" data can be synthesized, such as the Connectivity Matrix or the Integration Matrix, both of which describe the connectivity between all different spaces within the building volume, the former being a simplified version of the latter.&lt;/div&gt;&lt;div&gt;At this point, I'm still using comparisons between Connectivity Matrices as an evaluation scheme. I shall use this instead of the full-fledged Integration Matrix for the meantime, till I can test all functionality and make sure that all methods and processes are implemented correctly.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The selection happens by means of multiple deterministic &lt;a href="http://en.wikipedia.org/wiki/Tournament_selection"&gt;tournaments&lt;/a&gt; or predefined size, until a fixed-size &lt;a href="http://en.wikipedia.org/wiki/Mating_pool"&gt;mating pool&lt;/a&gt; is established.&lt;/div&gt;&lt;div&gt;The evolutionary process utilizes a &lt;a href="http://en.wikipedia.org/wiki/Crossover_(genetic_algorithm)"&gt;crossover function&lt;/a&gt; between two members and two types of&lt;a href="http://en.wikipedia.org/wiki/Mutation_(genetic_algorithm)"&gt; mutation functions&lt;/a&gt; (a simple point mutation and a swap mutation, each with it's own adjustable probability).&lt;/div&gt;&lt;div&gt;In order to preserve best solutions across generations, a simple rule was added that automatically passes the best solution of each generation to the next, without any modification. Of course, there is still chance that this solution will participate in selection tournaments.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Initial test results will be posted shortly.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLmyJmiQ0oI/AAAAAAAAAdc/UFXoYLXy4YY/s1600/arrangement.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="512" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TLmyJmiQ0oI/AAAAAAAAAdc/UFXoYLXy4YY/s640/arrangement.png" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Fig. 2: Screenshot of the program in operation, showing 20 population members&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4853785974900614575?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4853785974900614575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/10/configurations-part-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4853785974900614575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4853785974900614575'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/10/configurations-part-3.html' title='Configurations, Part 3'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/TLnTYuDtjUI/AAAAAAAAAdo/gSRSMh24Qkg/s72-c/Organization.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-338858031105255270</id><published>2010-09-28T16:15:00.017+03:00</published><updated>2010-10-13T17:30:57.253+03:00</updated><title type='text'>Configurations, Part 2</title><content type='html'>As mentioned &lt;a href="http://prototy.blogspot.com/2010/09/configurations-part-1.html"&gt;earlier&lt;/a&gt;, this study will introduce an analysis-generation tool aiming to suggest alternatives to user-specified spatial configurations, variants that maintain some of its properties and possibly have the potential to improve on others. While the main interest of this project is architectural design, the same process can be expanded (at least in principle) to other fields of design where spatial configuration of elements is of importance.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Variants&lt;br /&gt;&lt;br /&gt;A variant is a form or version of something that differs in some respect from other forms of the same thing.&amp;nbsp;One systematic process to produce a variant, is to keep part of the information of the original to form a more ʻabstractʼ representation. This procedure produces a &lt;i&gt;1:many&lt;/i&gt; relationship between the original and the representation. The information can then be used to evaluate other objects: If their relevant properties are close enough, then they can be classified as variants of the original.&lt;br /&gt;Depending on the information that is kept, variants that share different properties are produced.&lt;br /&gt;Representation of the information is critical because it dictates what types of properties should be kept and how easy it is to make efficient and meaningful changes, in combination with the process of generation.&lt;br /&gt;&lt;br /&gt;In the case of this project spaces within a building volume and relations between them are of primary significance. Therefore, variants produced by the tool should primarily be close to the original in terms of spatial character. How exactly 'spatial character' is interpreted will be discussed further later on.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Process&lt;br /&gt;&lt;br /&gt;The process is two-fold, separated into analysis and generation:&lt;br /&gt;&lt;br /&gt;First, user input is abstracted to form a profile of it's significant properties. This step requires that either the input data is presented to the computer in a recognizable format, or that a recognition engine is built in, e.g. since we are concerned with volumes, if a volume or connection-specific diagram is presented no further processing is required, the profile can be derived immediately, however, if a floor plan or other form of representation is used, a recognition engine should be used to extract the significant volume and connection-specific properties.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TKHkaHu-roI/AAAAAAAAAXE/SmzH1KFFfos/s1600/pict1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TKHkaHu-roI/AAAAAAAAAXE/SmzH1KFFfos/s1600/pict1.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Steps of the Analysis Process&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Following this step, an iterative generation-evaluation process begins. Based on a generation algorithm, populations of spatial configurations are put together and their profile is evaluated against the original. If the pattern is similar, the candidate receives a good fitness value. Additional performance factors may be considered at this stage, in order to enable possible improvement of an aspect of the building/arrangement.&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TKHkbVDBUuI/AAAAAAAAAXI/CL55NFmpmG0/s1600/pict2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TKHkbVDBUuI/AAAAAAAAAXI/CL55NFmpmG0/s1600/pict2.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Steps of the Generative Process&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;3. Encoding and Representation&lt;br /&gt;&lt;br /&gt;The fundamental representative entity is a 3D grid. Each cell of this grid references a different space. Therefore, spaces may correspond to one or more grid cells. Depending on the outcome of the analysis and generative processes, spatial entities may appear on the grid in different forms, e.g. if a volumetric representation is chosen the number of grid cells referencing a single space is equal to the space's volume, however if a connective representation is chosen, the number of grid cells is the minimum required to satisfy the space's connections. So, in the second case, if a space has at most one connection per side, it's mostly possible that it will be referenced by only one cell within the grid.&lt;br /&gt;The 3D grid is therefore the 'meeting point' between analysis and generation. From this grid further information can be extracted, forming a profile of each configuration that can be used as an evaluation index.&lt;br /&gt;From the generative part, each grid is produced from a 'constructive' graph, which dictates the orientation of the combination actions between spaces and their sequence. In turn, the graph is encoded as a string of integer numbers, a suitable form to apply evolutionary operators onto.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Generation&lt;br /&gt;&lt;br /&gt;For the generation of population members (connective grids, volumetric grids and profiles) a &lt;a href="http://en.wikipedia.org/wiki/Genetic_algorithm"&gt;GA&lt;/a&gt;-based approach is chosen. GA seems suitable for a case like this one because it requires no knowledge of the topography of the solution space. Other approaches sharing this characteristic (such as &lt;a href="http://en.wikipedia.org/wiki/Particle_Swarm_Optimization"&gt;Particle Swarm Optimization&lt;/a&gt;) may also be suitable and will be investigated in the future.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Evaluation consists of:&lt;br /&gt;&lt;br /&gt;A core that comprises of spatial analysis techniques and specifically techniques related to Space Syntax. Space syntax, according to Hillier "is a set of techniques for the representation, quantification, and inter- pretation of spatial configuration in buildings and settlements. Configuration is defined in general as, at least, the relation between two spaces taking into account a third, and, at most, as the relations among spaces in a complex taking into account all other spaces in the complex. Spatial configuration is thus a more complex idea than spatial relation, which need invoke no more than a pair of related spaces."&lt;br /&gt;&lt;br /&gt;Supplementary/ Plugin evaluators that may refer to various building properties e.g. energy, daylight, view, privacy, building envelope.&lt;br /&gt;&lt;br /&gt;The basic evaluation profile, which is used to compare the original and the variants, consists of an Integration Matrix. An integration matrix for n different spaces it is a n*n &lt;a href="http://en.wikipedia.org/wiki/Symmetric_matrix"&gt;symmetric matrix&lt;/a&gt; that contains, for each space, values holding the number of spaces that an agent has to walk, to get to another.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TKHx7j2HuNI/AAAAAAAAAXM/22jm_XfuuXI/s1600/conmatrix.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TKHx7j2HuNI/AAAAAAAAAXM/22jm_XfuuXI/s1600/conmatrix.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Example of how an Integration Matrix would look like&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;6. Extensions&lt;br /&gt;&lt;br /&gt;One principle of the project should be that it's various methods and algorithms should be interchangeable, i.e. while the basic process outline may remain the same, the various modules performing generation, evaluation, translation from encoding to representation etc. should be interchangeable. In order for that to be accomplished, the process should be implemented into a 'framework' of sorts, with basic structure built-in and plugin additions that affect functionality.&lt;/div&gt;&lt;div&gt;The basic structure will be implemented into a series of JAVA library classes, on top of which interaction and secondary classes will be implemented in Processing.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-338858031105255270?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/338858031105255270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/09/configurations-part-2.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/338858031105255270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/338858031105255270'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/09/configurations-part-2.html' title='Configurations, Part 2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/TKHkaHu-roI/AAAAAAAAAXE/SmzH1KFFfos/s72-c/pict1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-6469768474056489147</id><published>2010-09-14T18:38:00.004+03:00</published><updated>2010-09-15T03:10:33.309+03:00</updated><title type='text'>Configurations, Part 1</title><content type='html'>I began working on a project that is part of my graduation program at the Computation &amp;amp; Performance track at TU Delft. The project is related to the study of configurations of spaces within a building.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Architectural design begins by generating ideas and continues by transforming them to concrete spatial formations. During this process, the specifications of the project are manifested into a spatial configuration&amp;nbsp;and by the end of it (which takes place rather late in the overall design process) the architectural artefact has obtained most of it's ultimate features and properties.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;While the abstract process of combining spaces or shapes together can be broken down to a series of geometrical transformations, in architectural design there is no precise methodology for that matter, at least not one accepted universally. The process of designing a building is often as fuzzy and unclear as its goals.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Architects learn about the design problem by creating alternatives and testing them in order to gain desired spatial formations.&amp;nbsp;In the absence of a concrete theory or a specific design methodology, examples and references become then the designer's most frequently used tools.&amp;nbsp;&lt;/div&gt;&lt;div&gt;Examples are indeed of great importance: A designer will systematically utilize references of configurations, images, inspirations, as well as alternatives already investigated for the project itself, all put together in a complex combinatorial design process.&amp;nbsp;Therefore, the availability of resources during this process is critical, as it allows for the domain of possible solutions to be broadened.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; margin: 10px 0 10px 0; text-align: center;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TI-WWydfxdI/AAAAAAAAAW8/wz3yd9CKtDE/s1600/4.jpg" width="640" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;That being said, the project will revolve around introducing a spatial analysis-generation tool aiming to suggest alternatives to user-specified configurations, alternatives that maintain some of its properties and possibly have the potential to improve on others. Specifically, analysis methods based on established spatial analysis theories, such as the Space Syntax group of theories will be used to create 'profiles' of the user-specified configurations, an abstraction of certain spatial qualities of the design. Based on this profile and using a generative, evolution-based method, new configurations will be generated, in order to explore alternate configurations that are similar to the configuration profile extracted from analysis.&lt;br /&gt;&lt;br /&gt;The workflow of the tool should be such that promotes the use of examples. This is best suited to the architectural design process. Therefore, the input should be formulated into recognizable architectural arrangements (e.g. floorplans or models), and the output (the alternative configurations) should also follow this paradigm.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-6469768474056489147?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/6469768474056489147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/09/configurations-part-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/6469768474056489147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/6469768474056489147'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/09/configurations-part-1.html' title='Configurations, Part 1'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/TI-WWydfxdI/AAAAAAAAAW8/wz3yd9CKtDE/s72-c/4.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-1931777334652405527</id><published>2010-08-26T13:45:00.001+03:00</published><updated>2010-08-26T14:41:32.390+03:00</updated><title type='text'>Transition to a new site!</title><content type='html'>Being generally disappointed by Google Sites and the flexibility it offers, I decided to switch to a custom content management platform, so I gave &lt;a href="http://www.indexhibit.org/"&gt;Indexhibit&lt;/a&gt; a shot last night.&lt;br /&gt;&lt;br /&gt;Well, its really nice, but switching hosts, updating DNS etc gave me a terrible time. So everything is not done yet and file access maybe limited for a few days as I move files to the new server.&lt;br /&gt;&lt;br /&gt;To sum up:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://prototy.blogspot.com/"&gt;http://prototy.blogspot.com&lt;/a&gt;&amp;nbsp;points to this blog (will be merged with the new site soon).&lt;br /&gt;&lt;a href="http://blog.volatileprototypes.com/"&gt;http://blog.volatileprototypes.com&lt;/a&gt;&amp;nbsp;points to the new site (again will incorporate blog soon).&lt;br /&gt;&lt;a href="http://www.volatileprototypes.com/"&gt;http://www.volatileprototypes.com&lt;/a&gt;&amp;nbsp;points to the new site.&lt;br /&gt;&lt;br /&gt;So, go ahead and &lt;a href="http://www.volatileprototypes.com/"&gt;visit the new site&lt;/a&gt; and tell me what you think! Thanks!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-1931777334652405527?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/1931777334652405527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/08/transition-to-new-site.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/1931777334652405527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/1931777334652405527'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/08/transition-to-new-site.html' title='Transition to a new site!'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4278433361886983189</id><published>2010-08-09T22:49:00.001+03:00</published><updated>2010-09-28T17:16:57.732+03:00</updated><title type='text'>eerkit release 2 and fvlib release 3</title><content type='html'>fvlib's structure was completely rewritten. This resulted in a highly modular class structure that will allow the easy expansion of the library’s functionality. Some extra functionality has been also implemented, namely the simulation of “charged” Particles Interaction Solvers.&lt;br /&gt;Furthermore, most property-setting methods of classes implement the return of the instance itself so that adjustments can be chained together in one line, therefore saving some typing and promoting ease of reading.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;fvlib is released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.volatileprototypes.com/files/fvlib.zip"&gt;Download(library, source, documentation, examples)&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.volatileprototypes.com/libraries/fvlib"&gt;More info about fvlib here.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TGBbTkgjABI/AAAAAAAAAWU/-9EEmf3FsVs/s1600/colors.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="411" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TGBbTkgjABI/AAAAAAAAAWU/-9EEmf3FsVs/s640/colors.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;eerkit has been enriched with a lot of functionality. It is now possible to edit most of the properties of the flex elements, add and delete linear and point elements etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;eerkit&amp;nbsp;is released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.volatileprototypes.com/files/eerkit2.zip"&gt;Download(Windows, OS X, Linux, source)&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.volatileprototypes.com/projects/eerkit"&gt;More info about eerkit here.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TGBbhH30BSI/AAAAAAAAAWc/Tau3NTY-mVY/s1600/intrsctn.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="264" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TGBbhH30BSI/AAAAAAAAAWc/Tau3NTY-mVY/s640/intrsctn.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4278433361886983189?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4278433361886983189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/08/eerkit-release-2-and-fvlib-release-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4278433361886983189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4278433361886983189'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/08/eerkit-release-2-and-fvlib-release-3.html' title='eerkit release 2 and fvlib release 3'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/TGBbTkgjABI/AAAAAAAAAWU/-9EEmf3FsVs/s72-c/colors.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7440301103959384172</id><published>2010-08-01T19:36:00.003+03:00</published><updated>2010-08-01T19:38:26.421+03:00</updated><title type='text'>A new look / a new mapping</title><content type='html'>Volatile Prototypes has been updated and modified in a couple of ways:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;There is a new domain name, &lt;a href="http://www.volatileprototypes.com/"&gt;www.volatileprototypes.com&lt;/a&gt;, within which you can find an extensive site with all the projects previously exhibited here, organized in a systematic fashion.&lt;/li&gt;&lt;li&gt;This blog has also a new address, &lt;a href="http://blog.volatileprototypes.com/"&gt;blog.volatileprototypes.com&lt;/a&gt;. It is though still accessible through the old address, &lt;a href="http://prototy.blogspot.com/"&gt;prototy.blogspot.com&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Most of the features of this blog such as links and sidebar content have been moved to separate pages accesible through the sidebar menu.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;Please note that some features of the new site structure are not yet ready and updates are being made on a daily basis.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7440301103959384172?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7440301103959384172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/08/new-look-new-mapping_01.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7440301103959384172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7440301103959384172'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/08/new-look-new-mapping_01.html' title='A new look / a new mapping'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5683149116809375704</id><published>2010-06-27T02:51:00.006+03:00</published><updated>2010-09-09T01:47:33.889+03:00</updated><title type='text'>Events</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TCaSNzVApKI/AAAAAAAAAUY/I8UP9keTX_4/s1600/inp.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="420" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TCaSNzVApKI/AAAAAAAAAUY/I8UP9keTX_4/s640/inp.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://inprocessing.cybersonica.org/"&gt;Inprocessing&lt;/a&gt; is "&lt;i&gt;an open forum for sharing creative coding and practice&lt;/i&gt;", initiated by Lewis Sykes of &lt;a href="http://www.cybersonica.org/"&gt;Cybersonica&lt;/a&gt; and Dave Mee of &lt;a href="http://madlab.org.uk/"&gt;MadLab&lt;/a&gt;. Every month Inprocessing organizes open sessions at MadLab where&amp;nbsp;people can show their work and introduce their latest discoveries related to digitally enabled art, performance and design. There are also presentations by artists and practitioners of the field, so, for last month's event I was kindly asked by Lewis to talk about some of my work telematically. Telematic presentations are a great idea that enables small communities to host or participate in events regardless of their location. Indeed the session ended up as a wonderful event, with contributions from &lt;a href="http://smeech.co.uk/"&gt;Sam Meech&lt;/a&gt; and Lewis.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Videos and resources from each event are posted on the website so its gradually turning into a sort of "indie mediatheque", with videos, texts, presentations and code from contributors.&amp;nbsp;&lt;/div&gt;&lt;div&gt;So, take some time and pay a visit, it's really worth it. And look forward for more events.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TDtaoz_yoBI/AAAAAAAAAVQ/g3zQWB04mm0/s1600/apoMechanes2009_03.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="630" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TDtaoz_yoBI/AAAAAAAAAVQ/g3zQWB04mm0/s640/apoMechanes2009_03.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;For those of you that have an interest in design and computational media and plan on being around Athens, Greece this summer, there is an interesting workshop going on, titled &lt;a href="http://www.apomechanes.com/"&gt;"apomechanes"&lt;/a&gt;:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;i&gt;"apomechanes is an intensive 3 week computational design studio held each summer in Athens, Greece. The studio is devoted to furthering techniques and concepts of algorithmic processes as means for design and fabrication. apomechanes brings together individuals from diverse backgrounds and fields of study to discuss, exchange and collaborate on projects that investigate modes of algorithmic and machinic processes in architectural design."&amp;nbsp;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5683149116809375704?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5683149116809375704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/06/events.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5683149116809375704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5683149116809375704'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/06/events.html' title='Events'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/TCaSNzVApKI/AAAAAAAAAUY/I8UP9keTX_4/s72-c/inp.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-734690724489748721</id><published>2010-06-06T00:56:00.022+03:00</published><updated>2010-08-11T01:16:36.534+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eerkit'/><category scheme='http://www.blogger.com/atom/ns#' term='applet'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='graph'/><category scheme='http://www.blogger.com/atom/ns#' term='diagram'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Force Directed Bundling / eerkit</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;i&gt;Update: There is a new version of eerkit and the underlying fvlib. You can&lt;/i&gt;&lt;a href="http://www.volatileprototypes.com/projects-2/eerkit"&gt;&lt;i&gt; find it here&lt;/i&gt;&lt;/a&gt;&lt;i&gt;&amp;nbsp;and &lt;/i&gt;&lt;a href="http://www.volatileprototypes.com/libraries/fvlib"&gt;&lt;i&gt;here&lt;/i&gt;&lt;/a&gt;&lt;i&gt; (blog post &lt;/i&gt;&lt;a href="http://blog.volatileprototypes.com/2010/08/eerkit-release-2-and-fvlib-release-3.html"&gt;&lt;i&gt;here&lt;/i&gt;&lt;/a&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;I recently came upon an interesting paper by Danny Holten and Jarke van Wijk of TU Eindhoven (&lt;a href="http://www.visualcomplexity.com/vc/project.cfm?id=679"&gt;paper at visualcomplexity.com&lt;/a&gt;), regarding edge bundling in graphs in order to reduce visual clutter. Their method is based on the use of flexible graph edges that visually group neighboring links. The edges are modeled as point-spring systems that are attracted to each other based on a set of relevancy &amp;nbsp;criteria.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;This gave me the idea to implement a similar technique of defining attract-repulse relations between graph links in 3D space as a method to generate spatial arrangements diagrams (e.g. form finding or circulation diagrams) that adhere to proximity constraints.&amp;nbsp;I've implemented an alternative approach using agent flows (ribonkit) in the past, but this approach looks equally, if not even more promising.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The outcome so far is a &lt;a href="http://xconst.freeshell.org/applets/eerkit/"&gt;simple interactive applet (eerkit)&lt;/a&gt; that allows one to draw edges in space, which are subsequently grouped or separated depending on their direction, distance from each other etc.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Use shift-click or ctrl-click to generate new nodes. Between two subsequent nodes an edge is automatically drawn. Hit 'R' to start over.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;eerkit was developed using&amp;nbsp;&lt;a href="http://www.processing.org/"&gt;Processing 1.1&lt;/a&gt;,&amp;nbsp;&lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt;&amp;nbsp;and a new version of&amp;nbsp;&lt;a href="http://www.volatileprototypes.com/libraries/fvlib"&gt;fvlib&lt;/a&gt;&amp;nbsp;which I will release soon.&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/TAsLrGv5ZMI/AAAAAAAAAT8/_iYV6nJj9b4/s1600/Screen+shot+2010-06-06+at+4.44.28+AM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="476" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/TAsLrGv5ZMI/AAAAAAAAAT8/_iYV6nJj9b4/s640/Screen+shot+2010-06-06+at+4.44.28+AM.png" width="640" /&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/TAq94rDXDBI/AAAAAAAAAT0/diuHrB0roIc/s1600/Screen+shot+2010-06-05+at+8.11.29+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="480" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/TAq94rDXDBI/AAAAAAAAAT0/diuHrB0roIc/s640/Screen+shot+2010-06-05+at+8.11.29+PM.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The fact that 'bundling' methods are based more or less on the simulation of forces renders them interesting in yet another way: Their result can be modeled quite easily in reality as a maquette. The following photos contain aspects of the result of such an effort.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9WTZSQuI/AAAAAAAAATc/XO2zBcLIBLo/s1600/SDC11743.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;span class="Apple-style-span" style="-webkit-text-decorations-in-effect: none; color: black;"&gt;&lt;/span&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9WTZSQuI/AAAAAAAAATc/XO2zBcLIBLo/s640/SDC11743.png" width="633" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9WTZSQuI/AAAAAAAAATc/XO2zBcLIBLo/s1600/SDC11743.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: justify;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;I modeled those using flexible cylindrical plastic elements (the ones used for architectural model-making) and cyanacrylate adhesive. There are 7 nodes and about 20 edges connecting the nodes. The form of the object was quite easy to achieve using temporary fasteners in order to simulate the attractive forces between the links. The flexibility and linear stiffness of the plastic elements did the rest of the job by itself. I'm planning on repeating the 'experiment' with elements of different thicknesses, in order to simulate edge stiffness.&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9qXe2DmI/AAAAAAAAATs/4Zy3WXzsS6E/s1600/SDC11750.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9qXe2DmI/AAAAAAAAATs/4Zy3WXzsS6E/s1600/SDC11750.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9qXe2DmI/AAAAAAAAATs/4Zy3WXzsS6E/s1600/SDC11750.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/TAq9qXe2DmI/AAAAAAAAATs/4Zy3WXzsS6E/s640/SDC11750.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/TAq9fOQ4tZI/AAAAAAAAATk/seWoCcoVQjs/s1600/SDC11764.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="480" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/TAq9fOQ4tZI/AAAAAAAAATk/seWoCcoVQjs/s640/SDC11764.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-734690724489748721?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/734690724489748721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/06/force-directed-bundling-eerkit.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/734690724489748721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/734690724489748721'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/06/force-directed-bundling-eerkit.html' title='Force Directed Bundling / eerkit'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/TAsLrGv5ZMI/AAAAAAAAAT8/_iYV6nJj9b4/s72-c/Screen+shot+2010-06-06+at+4.44.28+AM.png' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5740153742890911722</id><published>2010-05-15T14:07:00.025+03:00</published><updated>2010-07-12T13:36:10.778+03:00</updated><title type='text'>Inprocess:ing v.1.3 - Exploring Designs via Computational Tools</title><content type='html'>&lt;div style="font: normal normal normal 18px/normal Helvetica; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-6BmbYBA7I/AAAAAAAAATU/92QKKce6Y9Y/s1600/inproc_p.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 5em;"&gt;&lt;img width="560px" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-6BmbYBA7I/AAAAAAAAATU/92QKKce6Y9Y/s640/inproc_p.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px;"&gt;&lt;br /&gt;&lt;br /&gt;Thursday, 20th May 7-10pm(and third Thursday – or thereabouts – of the month thereafter)&lt;br /&gt;Madlab (Manchester Digital Laboratory)&lt;br /&gt;&lt;br /&gt;36-40 Edge Street, Manchester M4 1HN&lt;br /&gt;(Between Thomas St and the Craft Centre, opposite A Bar Called Common)&lt;br /&gt;&lt;a href="http://madlab.org.uk/"&gt;madlab.org.uk&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://inprocessing.cybersonica.org/"&gt;inprocessing.cybersonica.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Telematic presentation by Delft based architect Yiannis Chatzikonstantinou - exploring designs via computational tools;&lt;br /&gt;‘In-the-flesh’ presentation by Liverpool based digital ‘videosmith’ Sam Meech;&lt;br /&gt;Informal ‘show-and-tell’ and ‘open-laptop’ sessions (go on... bring some of your own work along).&lt;br /&gt;&lt;br /&gt;InProcess:ing focuses on the Processing language, environment and community (though not exclusively) as a vehicle to support and encourage creative collaboration and meaningful exchange between a diverse group of practitioners, creatives and hobbyists. It aims to create a playful, experimental space and a supportive framework in which people can share their work, realise new technological ideas, be inspired, challenged and stretched.&lt;br /&gt;Join us at the next session to see Processing in action, meet other interested and like-minded people and find out more about the project and how to get involved;&lt;br /&gt;Visit the InProcess:ing website to catch up with developments and future plans, watch past presentations and follow up on interesting links;&lt;br /&gt;Join the forum and share your favourite Processing sketches, suggest practitioners/work for future presentations, offer useful techniques and online resources and tell us what you’d like to see from the project.&lt;br /&gt;&lt;br /&gt;For full biogs, photos and links visit the &lt;a href="http://inprocessing.cybersonica.org/"&gt;InProcess:ing&lt;/a&gt; website.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5740153742890911722?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5740153742890911722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/05/inprocessing-v13.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5740153742890911722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5740153742890911722'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/05/inprocessing-v13.html' title='Inprocess:ing v.1.3 - Exploring Designs via Computational Tools'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/S-6BmbYBA7I/AAAAAAAAATU/92QKKce6Y9Y/s72-c/inproc_p.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-829087700171284787</id><published>2010-05-08T01:10:00.016+03:00</published><updated>2010-07-12T13:40:07.813+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TN6'/><category scheme='http://www.blogger.com/atom/ns#' term='Wind Tunnel'/><category scheme='http://www.blogger.com/atom/ns#' term='Fluid Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='MSAFluid'/><category scheme='http://www.blogger.com/atom/ns#' term='TN7'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Visualizing Flows</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOCCKMP4I/AAAAAAAAASM/2rct-1g7Q1Y/s1600/7.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="353" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOCCKMP4I/AAAAAAAAASM/2rct-1g7Q1Y/s640/7.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOAo8qAfI/AAAAAAAAASE/f-0KyFWi62E/s1600/8.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="355" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOAo8qAfI/AAAAAAAAASE/f-0KyFWi62E/s640/8.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SN-dtnFII/AAAAAAAAAR8/kTzGLVE5xgM/s1600/5.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="353" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SN-dtnFII/AAAAAAAAAR8/kTzGLVE5xgM/s640/5.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S-SOE09MUCI/AAAAAAAAASU/WGzIQllL1d4/s1600/11.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="355" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S-SOE09MUCI/AAAAAAAAASU/WGzIQllL1d4/s640/11.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/S-SOLORypEI/AAAAAAAAASs/t-jtlxilU24/s1600/16.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="400" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/S-SOLORypEI/AAAAAAAAASs/t-jtlxilU24/s640/16.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOGQrfBEI/AAAAAAAAASc/Qk0YPv-Fg_k/s1600/12.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOGQrfBEI/AAAAAAAAASc/Qk0YPv-Fg_k/s1600/12.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOGQrfBEI/AAAAAAAAASc/Qk0YPv-Fg_k/s1600/12.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="355" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOGQrfBEI/AAAAAAAAASc/Qk0YPv-Fg_k/s640/12.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOOb4nLoI/AAAAAAAAAS0/ey7Fzepc-B8/s1600/18.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;img border="0" height="400" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOOb4nLoI/AAAAAAAAAS0/ey7Fzepc-B8/s640/18.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S-Sgw_TqWLI/AAAAAAAAATE/fS7GbNHKgJc/s1600/19.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="400" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S-Sgw_TqWLI/AAAAAAAAATE/fS7GbNHKgJc/s640/19.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-Scl0791eI/AAAAAAAAAS8/KcQXzlWwNA4/s1600/Screen+shot+2010-05-05+at+10.31.51+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="259" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-Scl0791eI/AAAAAAAAAS8/KcQXzlWwNA4/s640/Screen+shot+2010-05-05+at+10.31.51+PM.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S-Sgw_TqWLI/AAAAAAAAATE/fS7GbNHKgJc/s1600/19.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-Scl0791eI/AAAAAAAAAS8/KcQXzlWwNA4/s1600/Screen+shot+2010-05-05+at+10.31.51+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S-Scl0791eI/AAAAAAAAAS8/KcQXzlWwNA4/s1600/Screen+shot+2010-05-05+at+10.31.51+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: justify;"&gt;&lt;/a&gt;&lt;br /&gt;The rendered sculptures above are an interpretation of fluid flows around objects. Specifically, they represent heightfields of velocities of fluids forced into a constant horizontal flow. The models have been generated with the program TN7.&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;TN7 is a project I started about a&amp;nbsp;&lt;a href="http://prototy.blogspot.com/search/label/TN6"&gt;year ago (also named TN6)&lt;/a&gt;&amp;nbsp;that was aimed towards developing a "virtual wind tunnel" for artistic visualizations of fluid flows. It is based on the library&amp;nbsp;&lt;a href="http://memo.tv/msafluid_for_processing"&gt;MSAFluid&lt;/a&gt;&amp;nbsp;by Memo Akten, a fluid solver based on&amp;nbsp;&lt;a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.21.178&amp;amp;rep=rep1&amp;amp;type=pdf"&gt;Jos Stam's programmatic implementation&lt;/a&gt;&amp;nbsp;of the&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Navier%E2%80%93Stokes_equations"&gt;Navier-Stokes equiations&lt;/a&gt;&amp;nbsp;describing the motion of fluid substances.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;I updated TN7 recently, fixed a few issues and included a more intuitive interface. Therefore, release 2 is available for download.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Please note that this release is based an a 'hacked' version of MSAFluid. I arbitrarily changed a few parameters in the source code just experimenting with the realism of the visual outcome. Therefore these hacks are really program-specific and really based on intuition. This hacked version is included in the download package. The exact changes are mentioned in the source file. However, you can re-compile TN7 (or export with processing) to work with the original MSAFluid, just with a minor change in it's source code which can very easily be done with processing.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;TN7 has been developed in&amp;nbsp;&lt;a href="http://www.processing.org/"&gt;Processing 1.1&lt;/a&gt;&amp;nbsp;using&amp;nbsp;&lt;a href="http://memo.tv/msafluid_for_processing"&gt;MSAFluid&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;It is released under the&amp;nbsp;&lt;a href="http://www.opensource.org/licenses/bsd-license.html"&gt;BSD License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/TN7_release_2.zip"&gt;TN7 release 2&lt;/a&gt;&lt;span class="Apple-style-span" style="-webkit-text-decorations-in-effect: none; color: black;"&gt;&amp;nbsp;(Windows, Linux, OS X, Source, MSAFluid 'hacked' version)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-829087700171284787?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/829087700171284787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/05/visualizing-flows.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/829087700171284787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/829087700171284787'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/05/visualizing-flows.html' title='Visualizing Flows'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/S-SOCCKMP4I/AAAAAAAAASM/2rct-1g7Q1Y/s72-c/7.png' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-2594624496455698883</id><published>2010-04-26T22:42:00.008+03:00</published><updated>2010-04-26T23:18:21.738+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fvlib'/><category scheme='http://www.blogger.com/atom/ns#' term='library'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>fvlib, release 2: A (faster!) point-spring solver library for Processing</title><content type='html'>fvlib release 2 adds support for parallel processing of points and links, via the &lt;i&gt;java.util.concurrent&lt;/i&gt; framework. It offers an increase in performance of about 50% from the previous release, given that a dual-core computer is used. Performance figures can be even higher for more than two processors.&lt;br /&gt;&lt;br /&gt;This library is released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.html"&gt;BSD License&lt;/a&gt;.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can find out more in the manual, included in the download package.&lt;/div&gt;&lt;div&gt;Read about the library in the &lt;a href="http://prototy.blogspot.com/2010/03/fvlib-release-1-point-spring-solver.html"&gt;original post&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/fvlib2.zip"&gt;Download (Library+Source+Minimal Reference+Example&lt;/a&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; border-collapse: collapse; color: #333333; font-family: 'trebuchet ms', verdana, arial, sans-serif; font-size: 13px; line-height: 18px;"&gt;&lt;a href="http://xconst.freeshell.org/files/fvlib2.zip"&gt;)&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;(silent updates: file was initially inaccessible, it is ok now. also fixed a few comments in the source)&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-2594624496455698883?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/2594624496455698883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/04/fvlib-release-2-faster-point-spring.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2594624496455698883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2594624496455698883'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/04/fvlib-release-2-faster-point-spring.html' title='fvlib, release 2: A (faster!) point-spring solver library for Processing'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-3371464464138743909</id><published>2010-04-07T21:53:00.006+03:00</published><updated>2010-07-12T13:56:32.321+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><title type='text'>standup #7</title><content type='html'>1. surfkit&lt;br /&gt;&lt;br /&gt;"surfkit" is the end result of an effort I undertook as part of the "Stand-Up Architecture" course for the last months. The goal was to develop a performance-based, multi-parameter form and structure optimization design environment, that can be useful during the early stages of the architectural or product design process, in that it can quickly and with minimal effort suggest alternatives to user-defined forms according conformance to structural and lighting parameters.&lt;br /&gt;Given it's realtime, interactive nature, it can also be of use as an educational tool, demonstrating the process of optimization.&lt;br /&gt;&lt;br /&gt;I'm posting today the most recent snapshot of the project, which could be considered as a 'final' one for the moment. I plan on continuing to develop surfkit in the near future, but not immediately.&lt;br /&gt;&lt;br /&gt;The program functions to an acceptable degree, though many things need a bit of re-thinking or optimizing.&lt;br /&gt;&lt;br /&gt;Development took place in processing, using a couple of useful libraries: &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt; and &lt;a href="http://labelle.spacekit.ca/supercad/"&gt;SuperCAD&lt;/a&gt;.&lt;br /&gt;The program is released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.html"&gt;BSD License&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;UPDATE: The file that was initially released contained a serious bug that in some cases yielded highly inaccurate results. This has now been fixed. If you've already downloaded this release, please download the file again.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://xconst.freeshell.org/files/sa/surfkit2.zip"&gt;Download&lt;/a&gt; (Windows, OS X, Linux, Source)&lt;br /&gt;A few meshes are included in the .zip file as examples. Apart from the default mesh, you can import these meshes and experiment on them. Or you can import most of your .obj files.&lt;br /&gt;&lt;br /&gt;There is still no documentation, but in the near future I'll try to document the internals of the program as well as write a short tutorial on it's usage.&lt;br /&gt;&lt;br /&gt;2. eye candy&lt;br /&gt;&lt;br /&gt;A few of the case studies I did in order to get a better look at the results of using surfkit:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/S7zSviywlLI/AAAAAAAAARk/Hr9mnUDTvrU/s1600/passall.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="355" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/S7zSviywlLI/AAAAAAAAARk/Hr9mnUDTvrU/s640/passall.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/S7zSxYR1utI/AAAAAAAAARs/L6hVcPlrZ1g/s1600/canpall.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="178" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/S7zSxYR1utI/AAAAAAAAARs/L6hVcPlrZ1g/s640/canpall.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-3371464464138743909?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/3371464464138743909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/04/standup-7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3371464464138743909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3371464464138743909'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/04/standup-7.html' title='standup #7'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/S7zSviywlLI/AAAAAAAAARk/Hr9mnUDTvrU/s72-c/passall.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5402160004516121006</id><published>2010-03-31T17:56:00.005+03:00</published><updated>2010-06-16T02:23:28.796+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fvlib'/><category scheme='http://www.blogger.com/atom/ns#' term='library'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>fvlib release 1, Point-Spring Solver Library</title><content type='html'>While working on the StandUp Architecture course project, I had to implement an efficient and simple way of calculating displacements for a given mesh. I chose to do this using Dynamic Relaxation, a method that is relatively fast, although not precise enough for reliable structural calculations.&lt;br /&gt;&lt;br /&gt;Nevertheless, the result was a fairly efficient point-spring solver based on the paper "Advanced Character Physics" by Thomas Jakobsen. I decided that this could have some use as a library, so I wrapped up some of it's basic features and created one for Processing, fvlib.&lt;br /&gt;&lt;br /&gt;fvlib is essentially a minimalistic 3D point-spring solver library, built with high-performance in mind. It uses Verlet Integration for the calculation of point trajectories and Dynamic Relaxation for the calculation of constraints.&lt;br /&gt;&lt;br /&gt;Using the 'fast' option, the library has been tested on a set of 9800 points and 58779 links. Using 15 steps, each iteration was measured to 20-24 msec (using java's System.currentTimeMillis()), on a 2.2GHz Intel Core 2 Duo. In other words, about a million point and spring loops can be performed in realtime on a typical contemporary computer. This test application is included in the download (please note that the example is 2D, z-coordinates flattened, but the library works in 3D).&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S7OHeRyjDII/AAAAAAAAARc/sAoIxaCWFqQ/s1600/Screen+shot+2010-03-31+at+7.31.01+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="400" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S7OHeRyjDII/AAAAAAAAARc/sAoIxaCWFqQ/s400/Screen+shot+2010-03-31+at+7.31.01+PM.png" width="357" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: right;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Screenshot of the test application in operation.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Of course, further optimization (such as multi-threading) is possible. Furthermore, there are surely some glitches in there that have not been discovered yet.&lt;br /&gt;&lt;br /&gt;A JavaDoc should be created too at some point...but not yet :P&lt;br /&gt;&lt;br /&gt;This library is released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.html"&gt;BSD License&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Download&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://xconst.freeshell.org/files/fvlib.zip"&gt;Library+Source+Minimal Reference+Example&lt;/a&gt;&lt;br /&gt;(Hint: The thread in the example &lt;i&gt;does&lt;/i&gt; end at some point!)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Installation&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Unzip and move the extracted folder to Processing's libraries folder. Use Sketch&amp;gt;Import Library&amp;gt;fvlib from within Processing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Classes/Constructors&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Solv : The class that holds the points and links array and performs the calculations.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Solv(ArrayList&lt;point&gt; points, ArrayList&lt;link&gt;&lt;/link&gt; links)&lt;/point&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Solv(Point[] pointsin, Link[] linksin)&lt;br /&gt;&lt;br /&gt;Point : The point class. Has properties to define weight and fix it to a position(unyielding).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Point(float x, float y, float z, float weight)&lt;br /&gt;&amp;nbsp;&amp;nbsp;Point(PVector v, float weight)&lt;br /&gt;&lt;br /&gt;Link : The link class. Takes two points as arguments. Properties are it's length and it's stiffness.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Link(Point p1, Point p2,float stiffness)&lt;br /&gt;&amp;nbsp;&amp;nbsp;Stiffness should be between 0.0 and 0.5&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Methods&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In Solv :&lt;br /&gt;&lt;br /&gt;void step()&lt;br /&gt;Steps the simulation.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setF(float f)&lt;br /&gt;Set the Friction constant (0-1, default 0.99).&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setFast(boolean fast)&lt;br /&gt;Set whether to use the fast (but less accurate) solver. Default false.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setP(Point[] points)&lt;br /&gt;Re-set the array of points in use.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setL(Link[] links)&lt;br /&gt;Re-set the array of links in use.&lt;br /&gt;&lt;br /&gt;Point[] getP()&lt;br /&gt;Return the array of points in use.&lt;br /&gt;&lt;br /&gt;Link[] getL()&lt;br /&gt;Return the array of links in use.&lt;br /&gt;&lt;br /&gt;In Point :&lt;br /&gt;&lt;br /&gt;Point copy()&lt;br /&gt;Return a copy of this point.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setW(float weight)&lt;br /&gt;Set the weight of this point. Default 1.&lt;br /&gt;&lt;br /&gt;float getW()&lt;br /&gt;Return the weight of this point.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setU(boolean u)&lt;br /&gt;Set whether this point is Unyielding.&lt;br /&gt;&lt;br /&gt;boolean getU()&lt;br /&gt;Return whether this point is Unyielding.&lt;br /&gt;&lt;br /&gt;In Link :&lt;br /&gt;&lt;br /&gt;float updateC()&lt;br /&gt;Update original length (C) and current length (L) to reflect the current distance between points.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setC(float cin)&lt;br /&gt;Set the original length.&lt;br /&gt;&lt;br /&gt;float getC()&lt;br /&gt;Get the original length.&lt;br /&gt;&lt;br /&gt;float updateL()&lt;br /&gt;Update the current length(L) to reflect the current distance between points. This should be used whenever the current length should be queried, since during normal operation the current length is not updated.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setP1(Point p)&lt;br /&gt;Set Point 1.&lt;br /&gt;&lt;br /&gt;void&amp;nbsp;setP2(Point p)&lt;br /&gt;Set Point 2.&lt;br /&gt;&lt;br /&gt;Point getP1()&lt;br /&gt;Get Point 1.&lt;br /&gt;&lt;br /&gt;Point getP2()&lt;br /&gt;Get Point 2.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5402160004516121006?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5402160004516121006/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/03/fvlib-release-1-point-spring-solver.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5402160004516121006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5402160004516121006'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/03/fvlib-release-1-point-spring-solver.html' title='fvlib release 1, Point-Spring Solver Library'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/S7OHeRyjDII/AAAAAAAAARc/sAoIxaCWFqQ/s72-c/Screen+shot+2010-03-31+at+7.31.01+PM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-534736600792651602</id><published>2010-03-25T22:38:00.006+02:00</published><updated>2010-06-16T02:27:43.216+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='analysis'/><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><category scheme='http://www.blogger.com/atom/ns#' term='iDiana'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><category scheme='http://www.blogger.com/atom/ns#' term='FEA'/><title type='text'>standup #6</title><content type='html'>A preliminary test was performed using Finite Element Analysis for a flat rectangular structure. It seems that results are encouraging: Maximum displacement has been reduced by approximately 75%, as well as peak stresses. It seems also that in the optimized version stresses are more evenly distributed. The only weak spot is the area to the right, where a lot of inclined elements exist: This area shows significant displacement, possibly resulting from the inclination of the otherwise vertical structure.&lt;br /&gt;&lt;br /&gt;It is also noteworthy that in the analysis all three supports were specified as hinges. This is to match the setting of the optimization process. In the future there is going to be an option before optimization to select between hinges and rollers.&lt;br /&gt;&lt;br /&gt;Software:&amp;nbsp;iDIANA Version 9.3 Release 01&lt;br /&gt;Triangular mesh, element family: TR6, element type: CT30F&lt;br /&gt;&lt;br /&gt;Results summary below:&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;(please note that in stress diagrams contours of original and optimized versions are on different scales)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S6vJR7WhVgI/AAAAAAAAARE/Rp4PRBrb7FA/s1600/test_1_all_Dis.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="268" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S6vJR7WhVgI/AAAAAAAAARE/Rp4PRBrb7FA/s640/test_1_all_Dis.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/S6vJWmohIdI/AAAAAAAAARM/MZdQGu1vDWQ/s1600/test_1_all_S123.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="640" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/S6vJWmohIdI/AAAAAAAAARM/MZdQGu1vDWQ/s640/test_1_all_S123.png" width="502" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6vJeimoZLI/AAAAAAAAARU/3AKVLQGXFB4/s1600/test_1_all_SXXYYXY.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6vJeimoZLI/AAAAAAAAARU/3AKVLQGXFB4/s640/test_1_all_SXXYYXY.png" width="502" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-534736600792651602?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/534736600792651602/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/03/standup-6.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/534736600792651602'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/534736600792651602'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/03/standup-6.html' title='standup #6'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/S6vJR7WhVgI/AAAAAAAAARE/Rp4PRBrb7FA/s72-c/test_1_all_Dis.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5216553185157212595</id><published>2010-03-23T03:39:00.003+02:00</published><updated>2010-06-16T02:24:01.335+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='design-free'/><category scheme='http://www.blogger.com/atom/ns#' term='architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='found'/><title type='text'>in other news...</title><content type='html'>..it seems sometimes interesting spatial arrangements are design-free:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S6gbTjbmLUI/AAAAAAAAAQ8/-badDqNdVB8/s1600-h/Screen+shot+2010-03-17+at+2.11.14+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="492" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S6gbTjbmLUI/AAAAAAAAAQ8/-badDqNdVB8/s640/Screen+shot+2010-03-17+at+2.11.14+PM.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;(suppose credit goes to Google?)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5216553185157212595?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5216553185157212595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/03/in-other-news.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5216553185157212595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5216553185157212595'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/03/in-other-news.html' title='in other news...'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/S6gbTjbmLUI/AAAAAAAAAQ8/-badDqNdVB8/s72-c/Screen+shot+2010-03-17+at+2.11.14+PM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5229105759363398187</id><published>2010-03-22T04:56:00.003+02:00</published><updated>2010-06-27T05:32:41.367+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Standup #5</title><content type='html'>Been working on import export functionality, which at this point seems to be working without any major flaws. I experimented on building a few case studies of small arbitrary structures for demonstration and plan to start testing of optimized vs. original in a FEM program immediately. Also the realization of a physical scaled prototype is in the works.&lt;br /&gt;&lt;br /&gt;I won't release a new update to the Environment yet, there are still a few things that need to be sorted out.&lt;br /&gt;&lt;br /&gt;Some eye candy:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbluCRywI/AAAAAAAAAQU/MJNPIPg7vD4/s1600-h/arr1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbluCRywI/AAAAAAAAAQU/MJNPIPg7vD4/s640/arr1.png" width="425" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbnrIBYyI/AAAAAAAAAQc/5FLwIIbB98w/s1600-h/arr3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbnrIBYyI/AAAAAAAAAQc/5FLwIIbB98w/s640/arr3.png" width="427" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbo2BkzYI/AAAAAAAAAQk/etrGgFnVqeo/s1600-h/arr2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbo2BkzYI/AAAAAAAAAQk/etrGgFnVqeo/s640/arr2.png" width="427" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S6bbxNF6TFI/AAAAAAAAAQ0/EQUzE1xNYgk/s1600-h/Screen+shot+2010-03-22+at+12.54.27+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="443" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S6bbxNF6TFI/AAAAAAAAAQ0/EQUzE1xNYgk/s640/Screen+shot+2010-03-22+at+12.54.27+AM.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Structural optimization running.&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbveaakHI/AAAAAAAAAQs/xZd9jPofZuQ/s1600-h/Screen+shot+2010-03-21+at+6.48.11+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="425" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbveaakHI/AAAAAAAAAQs/xZd9jPofZuQ/s640/Screen+shot+2010-03-21+at+6.48.11+PM.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Specifying support location.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5229105759363398187?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5229105759363398187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/03/standup-5.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5229105759363398187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5229105759363398187'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/03/standup-5.html' title='Standup #5'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/S6bbluCRywI/AAAAAAAAAQU/MJNPIPg7vD4/s72-c/arr1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-135234520192403133</id><published>2010-03-12T21:03:00.008+02:00</published><updated>2010-06-16T02:40:12.946+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Standup #4</title><content type='html'>&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;(please note: All posts related to this project or the standup architecture course now have their own tag description. You can &lt;/span&gt;&lt;a href="http://prototy.blogspot.com/search/label/standup"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;look them up here&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; or click the appropriate link in the side menu)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;During the last two weeks I've been working on implementing the features that have been discussed previously, as well as performing a few changes related to the fundamental structure of the optimization environment.&lt;br /&gt;There are two parts to the optimization process: One that improves material distribution based on structural efficiency and one that improves element alignment based on shading/daylight preferences set by the user. These two have been isolated in previous versions and their results were subject to an averaging superposition in order to determine a final result. This has been changed and now the two components work on a common mesh, the elements of which are continuously and in parallel altered by both components. This makes it more probable that a solution closer to an optimal one can be found, since it allows the optimization process to take into account conformance to each performance factor. A schematic representation of the mode of operation can be seen in Fig. 1.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S5qIRhUbWbI/AAAAAAAAAP8/lN-4LnzUqQk/s1600-h/presentation2.008.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S5qIRhUbWbI/AAAAAAAAAP8/lN-4LnzUqQk/s320/presentation2.008.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig. 1: A schematic of the operation and interaction between optimization modules.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;The shading/daylight module works by measuring the coverage ratio of the elements vs. the whole surface and then comparing it to a user-supplied target ratio. This is then used to accordingly align the elements: If the measured shading ratio is higher than the target, the elements will align to the light source in order to decrease their coverage; in the opposite case they will turn away, therefore casting wider shadows.&lt;br /&gt;Furthermore, an optimization routine has been added to the structural module: Using an approximate bending moment diagram calculated by&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Dynamic_relaxation"&gt;Dynamic Relaxation&lt;/a&gt; and a&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Finite_difference_method"&gt;Finite Difference &lt;/a&gt;Method&amp;nbsp;(the so called &lt;a href="http://en.wikipedia.org/wiki/Verlet_integration"&gt;Verlet Integration&lt;/a&gt;), the routine attempts to transfer thickness from the least stressed to the most stressed areas of the structure. Apart from being more effective (at least in theory), it triggers the emergence of surface patterns that are quite unexpected.&lt;br /&gt;Some examples of architectural arrangements put together to demonstrate the result are shown in Fig. 2 and Fig. 3. The supports in the second example have been added manually, conforming to the positions of the supports specified during the generation of the canopy.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S5qIiBRGgbI/AAAAAAAAAQE/2zoCOTmn5zA/s1600-h/Unsaved+Rhino+Document+3.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="252" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S5qIiBRGgbI/AAAAAAAAAQE/2zoCOTmn5zA/s400/Unsaved+Rhino+Document+3.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: right;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig. 2: Example compositions. Black dots show support positions.&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/S5qKT24NtfI/AAAAAAAAAQM/em8ndW3iv1k/s1600-h/all.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="340" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/S5qKT24NtfI/AAAAAAAAAQM/em8ndW3iv1k/s640/all.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: right;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig. 3: A canopy developed as a demonstration of the optimization process. Supports have been added manually according to supports positions set for the simulation/optimization.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;As for the progress of the project, some elements still need a bit of tuning: There are stability problems with various element sizes, but I guess I'll have a look at those later on. The most urgent issue right now is to implement communication with "the outside world". Export functionality using .DXF has been implemented, but more formats and import functionality should be added too.&lt;br /&gt;&lt;br /&gt;As usual, a snapshot of &lt;a href="http://xconst.freeshell.org/files/sa/surfkit17.zip"&gt;the current state of the project can be downloaded&lt;/a&gt;. Please note that this is an early experimental version of the program and may contain serious bugs.&lt;br /&gt;&lt;br /&gt;Still no documentation so you'll have to experiment ;)&lt;br /&gt;&lt;br /&gt;This prototype has been developed with &lt;a href="http://www.processing.org/"&gt;Processing&lt;/a&gt;, uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam library&lt;/a&gt; for camera manipulation and is released under the &lt;a href="http://www.opensource.org/licenses/bsd-license.html"&gt;BSD License&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;References&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Topology_optimization"&gt;Topology Optimization&lt;/a&gt;, Wikipedia&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Vector_projection"&gt;Vector Projection&lt;/a&gt;, Wikipedia&lt;br /&gt;Jakobsen, Thomas, &lt;a href="http://www.teknikus.dk/tj/gdc2001.htm"&gt;Advanced Character Physics&lt;/a&gt;&lt;br /&gt;Carranza, Pablo M., &lt;a href="http://www.armyofclerks.net/SelfDesign/SelfDesignedStructures.pdf"&gt;Self-Designed structures. Prototype 1&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.topopt.dtu.dk/"&gt;TopOpt Group&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-135234520192403133?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/135234520192403133/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/03/standup-4.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/135234520192403133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/135234520192403133'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/03/standup-4.html' title='Standup #4'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/S5qIRhUbWbI/AAAAAAAAAP8/lN-4LnzUqQk/s72-c/presentation2.008.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4432824894858131051</id><published>2010-02-24T02:03:00.003+02:00</published><updated>2010-02-24T02:36:02.679+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Standup #3</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;a href="http://prototy.blogspot.com/2010/02/yesterday-first-presentation-for-stand.html"&gt;to find out what this is about, please check this post&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The past week I worked extensively on formulating a concrete, final outline of the Design Component's features and structure as well as specifics of the design case, which will be briefly presented here.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;1. Case&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The design case has been simplified in some ways and extended in others. Out of the performance factors involved, daylight handling and structural efficiency will be incorporated. These factors have been evaluated as significant and future work will focus on them. So far I've implemented a fairly efficient although simple structural solver (which is explained later) and still have to work on the daylight solver.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;On the contrary, the Design Component has been extended to support importing of forms, so that the shape of each design case can be extended beyond rectangles, therefore enabling an additional degree of freedom for the designer.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S4RpLcjS99I/AAAAAAAAAPk/yFeJyIre_bg/s1600-h/twin_views" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="289" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S4RpLcjS99I/AAAAAAAAAPk/yFeJyIre_bg/s640/twin_views" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig.1: Example diaram produced with Design Component and based on load distribution and deformation.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;2. Components/Representation&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;I've decided that, instead of developing separate design components for each performance factor, a single, unified environment could be beneficial in the sense that it combines different performance diagrams easily and the level of information exchange between different modules happens in realtime and is therefore broader.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Essentially, this environment will act like a 'switchbox' of sorts, allowing the user to specify to what degree the diagrams produced by each performance component will affect the final diagram.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The interface and basic component logic is complete and, as said, I'm currently working on the individual performance modules (Daylight, Structure). Still, there are two important issues that need further investigation: Communication with other design programs (Import/Export) and visual representation.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The issue of communication should be investigated so that exported data can easily interface with parametric design software and imported shapes could be translated to match the Component's geometrical/topological data structure.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Representation is a less critical but still quite important aspect, in that different methods of representation disseminate particular "tectonic strains" to the user/designer: A wireframe representation could refer to spaceframe construction, while a solids-based one could refer to concrete construction. Given that the diagram produced should be as flexible and 'neutral' as possible, this issue should be figured out.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_dGV8k-N_JP0/S4RpzXKdFgI/AAAAAAAAAPs/v8bMxhKxSwQ/s1600-h/mesh.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="416" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/S4RpzXKdFgI/AAAAAAAAAPs/v8bMxhKxSwQ/s640/mesh.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig. 2: The mesh used for the point-spring solver&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;3.Performance&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;I've managed to incorporate a simple point-spring physics solver into the Design Component. With a suitable plate model, as the one shown in Fig. 2, fairly accurate results of moments distributions have been achieved (although this is not an effort to produce an actual FEM solver of course).&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The physics solver used to calculate the deformation of the shell is based on a simple numerical method that is frequently used in interactive applications, known as &lt;a href="http://www.teknikus.dk/tj/gdc2001.htm"&gt;Verlet Integration Method&lt;/a&gt;. The shell is modeled as a mesh of points and springs. On the points act forces of gravity which alter the distances between them and therefore cause the springs to react. The overall balance achieved after many iterations results into the deformation of the shell. Reading and comparing the strain on each spring can therefore provide an indication of the internal reactions of the shell. I'm really intrigued to try and compare the results with an actual FEM solver to see what is the deviation of this model. Of course this will happen as a part of the design recursion later on, when an actual model corresponding to the design case has been produced.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The daylight-based performance solver is not yet complete but should be easier to implement since it will function mostly based on approximations and information from actual daylight programs (e.g.. &lt;a href="http://www.dial.de/CMS/German/DIALux_Welcome/"&gt;DiaLux&lt;/a&gt;) and raytracers.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S4RqbcA01dI/AAAAAAAAAP0/brBRZ8Mmp50/s1600-h/multiple_views" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="342" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S4RqbcA01dI/AAAAAAAAAP0/brBRZ8Mmp50/s400/multiple_views" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig. 3: Another example diagram, multiple views&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;4. Outcome&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Of course the most interesting part of the whole effort is to actually complete a design case to the point that it reaches the scale of construction. I suppose that, as soon as I figure out some of the main issues of the Design Component, I will start working on a final design using parametric software.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The Design Component in it's current state is available for download.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;No documentation is available, so you can experiment with it for the time being.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Try selecting "Supports" and clicking on a few nodes on the mesh.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Adjust the result by moving the sliders that affect each component's effect on the final diagram.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Please be aware that this is a highly experimental version and may therefore contain serious bugs.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;a href="http://xconst.freeshell.org/files/DC1.zip"&gt;Design Component release 1&lt;/a&gt; (Windows, OS X, Linux, Source Code)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;It has been developed using &lt;a href="http://processing.org/"&gt;Processing 1.0.9&lt;/a&gt;, using the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam library&lt;/a&gt; for camera manipulation.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;It is released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4432824894858131051?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4432824894858131051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/02/standup-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4432824894858131051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4432824894858131051'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/02/standup-3.html' title='Standup #3'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/S4RpLcjS99I/AAAAAAAAAPk/yFeJyIre_bg/s72-c/twin_views' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-2950888006535236707</id><published>2010-02-19T03:47:00.005+02:00</published><updated>2010-02-24T02:07:54.319+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><title type='text'>standup #2</title><content type='html'>I haven't posted on my progress regarding the StandUp course for some time. I've been working on finalizing the definition and structure of the Design Components that will be developed and at the same time working on the actual code. I must say that I'm quite satisfied with the progress. I will post soon the specifics of my recent investigation.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://eekhout.weblog.tudelft.nl/"&gt;Max Eekhout's blog&lt;/a&gt; is online too. Check it out.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-2950888006535236707?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/2950888006535236707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/02/standup-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2950888006535236707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2950888006535236707'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/02/standup-2.html' title='standup #2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-693343139523679596</id><published>2010-02-09T17:32:00.013+02:00</published><updated>2010-02-24T02:07:23.196+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>standup #1</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Yesterday the first presentation for the "Stand Up Architecture" Course took place. In this presentation, the general research direction of each participant was laid out and the research topic was more or less formulated. There were some very interesting presentations, updates or summaries of which you can find on each participant's weblog:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;a href="http://sa-timcastelijn.blogspot.com/"&gt;Tim Castelijn&lt;/a&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;a href="http://sa-jaapoveral.blogspot.com/"&gt;Jaap Overal&lt;/a&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;My research will focus around the general topic that is defined by the question of how &lt;span style="letter-spacing: 0px;"&gt;to employ computation and computation-enabled tools/environments in the early stages of design, in order to enrich the design process, explore alternative design possibilities and integrate heterogenous design factors, while still maintaining flexibility and adherence to performance.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;In other words, how can computational design practices interface with the activity of the designer/architect in a non-intrusive way and be flexible enough to follow the decisions made on an abstract level and based on heterogenous information.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-height: 15px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;Based on this general direction, I proposed that research should focus on a specific, simple, well formulated design case, in order to have a result that is as much as possible exhaustive of the design space and at the same time as transparent and simple so as to be completed within the course's timeframe of 8 weeks.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-height: 15px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;I proposed for the design case a rectangular shelter, essentially a horizontal surface whose form and structure is the object of design. The shelter can be thought of as functioning on its own or as part of a larger complex of buildings.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;Performance parameters will be related to structural efficiency, daylight and sunlight handling, as well as rainfall/rainwater disposal. These three performance factors will be used to construct simple "design environments" which will propose performance-based alternatives in order to augment and expand the designer's solution space and possibly introduce unexpected possibilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: normal normal normal 13px/normal Arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S3GAQm-JahI/AAAAAAAAAOM/HqvAFC5hGII/s1600-h/SDC11319.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5436267248040372754" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/S3GAQm-JahI/AAAAAAAAAOM/HqvAFC5hGII/s400/SDC11319.JPG" style="cursor: hand; cursor: pointer; height: 300px; width: 400px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S3GAQm-JahI/AAAAAAAAAOM/HqvAFC5hGII/s1600-h/SDC11319.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig. 1: Design Case&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/S3GAQm-JahI/AAAAAAAAAOM/HqvAFC5hGII/s1600-h/SDC11319.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;The design environments will be manifested as simple Processing programs, with the ability to communicate design iterations between them. In this way, a "Network of Design-Informing Components" could be formed: each of the programs will inform the current model with its own parameters, the result, therefore, being a product of each program's behavior and logic, as much as of the manner and order of communication between them.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;The intent is to design the programs so that they produce models that are as abstract as possible within the scope of the design case, so that their interpretation can be left to the designer. For example, a model produced by interpreting forces acting on it (Fig. 2) could be directly translated to geometric form, but it could also be interpreted as a graph that dictates the width of the canopy, or even as a table of values that can be further processed by the designer.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; font-size: 16px;"&gt;&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S3GCgwsHIzI/AAAAAAAAAOU/nCHLHLtKrNE/s1600-h/Screen+shot+2010-02-09+at+4.39.47+PM.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5436269724550243122" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S3GCgwsHIzI/AAAAAAAAAOU/nCHLHLtKrNE/s400/Screen+shot+2010-02-09+at+4.39.47+PM.png" style="cursor: pointer; height: 159px; width: 400px;" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Fig.2: Shell deformed approximately according to moments developed on the surface by its own weight&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: -webkit-xxx-large;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Final design proposals will result beginning with these abstract forms and using parametric design software in order to evaluate different structures and construction principles. For example, an abstract form could be translated into a steel spaceframe, a monolithic concrete construction, a canopy constructed out of a folding surface.&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;The evaluation of these finalized designs by analysis software and/or physical models will provide feedback for the optimization of the final model or the reconfiguration of the design environments: In order to improve on a weak point, he designer may choose to improve on the final model or the design process, and this decision becomes a design choice.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;Rudi Stouffs commented that it would be interesting to see how this process ends up not only with a design proposal, but also as a sort of 'documentation' of itself: A detailed description, in the form of computer code as well as mapping of the process. The series of connections between components, the detailed designs, the parametric models, the decisions and the alterations to the models and the design tools. It is an extremely interesting aspect that hasn't occurred to me and I plan on investigating and implementing further on.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 15.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;a href="http://xconst.freeshell.org/documents/Presentation100208.pdf"&gt;The presentation file is available here (pdf)&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 15.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;a href="http://xconst.freeshell.org/files/sa/prot_a_100209.zip"&gt;The first prototype of a component that produces graphs similar to those of moment distribution on a rectangular, flat surface can be found here.&lt;/a&gt; (Binary for Windows, OS X, Linux as well as Source Code[messy:P])&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 15.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;The prototype has been built with Processing, uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam library&lt;/a&gt; and is released under the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 15.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 13.0px Arial; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0px;"&gt;I will work on this a bit more and post back. Chack back for more!&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-693343139523679596?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/693343139523679596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/02/yesterday-first-presentation-for-stand.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/693343139523679596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/693343139523679596'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/02/yesterday-first-presentation-for-stand.html' title='standup #1'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/S3GAQm-JahI/AAAAAAAAAOM/HqvAFC5hGII/s72-c/SDC11319.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4023457961669556791</id><published>2010-02-03T23:47:00.003+02:00</published><updated>2010-02-24T02:07:39.835+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standup'/><title type='text'>standuparchitecture - spring '10</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_dGV8k-N_JP0/S2nvFfj5oUI/AAAAAAAAAN8/eWzGHSDJwBg/s1600-h/64_008.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5434137303049675074" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/S2nvFfj5oUI/AAAAAAAAAN8/eWzGHSDJwBg/s400/64_008.jpg" style="cursor: hand; cursor: pointer; height: 173px; width: 250px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm excited to announce that this weblog will host for the next few months my work progress in the Stand Up Architecture Course, at BK/BT TU Delft, as well as interesting ideas, discussions and other things that take place during the course.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Look forward to more updates!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4023457961669556791?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4023457961669556791/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/02/standuparchitecture-spring-10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4023457961669556791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4023457961669556791'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/02/standuparchitecture-spring-10.html' title='standuparchitecture - spring &apos;10'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/S2nvFfj5oUI/AAAAAAAAAN8/eWzGHSDJwBg/s72-c/64_008.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7955134782937216809</id><published>2010-01-09T04:13:00.008+02:00</published><updated>2010-01-13T02:15:46.698+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='swarm optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='applet'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='ribonkit'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>ribonkit prototype 2</title><content type='html'>&lt;object width="400" height="300"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8627414&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=8627414&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;Happy new year.&lt;/p&gt;&lt;p&gt;ribonkit can be thought of as an experiment that attempts an interpretation of abstract networks of relationships and swarm behavior, to potentially corresponding materials organizations.&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In ribonkit, agents spawn near predefined points (nodes) with another given node as a destination. Agents are being attracted to the destination, but are also attracted or repelled by other nearby agents. The result of this swarm behavior is that, depending on the proximity of others, an agent may choose not the shortest route to it's destination, but one that is commonly agreed upon with other agents. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In this way, a path is created that recursively evolves as agent concentration patterns and objectives change because of it's spatial configuration.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Apart from being abstract curves in space, the traces of each agent's travel can be thought of as indications of a physical object's material concentrations in space. In this sense, the agent's "socially-enabled" goal seeking can be interpreted as a form of "economy" of material usage: In an object with linear elements, coinciding paths of agents do not count multiple times towards the total length of the object's elements.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The second prototype of ribonkit implements non-specific relations between nodes. In other words, the members of the swarm can have any potential destination, instead of a predefined one. This approach is less specific than the original one.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/applets/ribonkit/"&gt;Applet here&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ribonkit prototype 2 has been developed in &lt;a href="http://www.processing.org/"&gt;Processing 1.0.6&lt;/a&gt; and uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt; library for camera manipulation.&lt;p&gt;It is released under the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD license&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7955134782937216809?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7955134782937216809/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2010/01/ribonkit-prototype-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7955134782937216809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7955134782937216809'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2010/01/ribonkit-prototype-2.html' title='ribonkit prototype 2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-163827510940092827</id><published>2009-11-29T18:13:00.002+02:00</published><updated>2009-11-29T18:18:34.516+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='swarm optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='applet'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='ribonkit'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>ribonkit prototype 1</title><content type='html'>&lt;object width="400" height="300"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7878786&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=7878786&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;ribonkit can be thought of as an experiment that attempts a interpretation of abstract networks of relationships, which in the case of ribonkit are &lt;a href="http://en.wikipedia.org/wiki/Graph_(mathematics)"&gt;graphs&lt;/a&gt;, to potentially corresponding materials organizations.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;Based on this principle, ribonkit attempts to draw from optimization theories such as &lt;a href="http://en.wikipedia.org/wiki/Particle_swarm_optimization"&gt;Particle Swarm Optimization&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Ant_colony_optimization"&gt;Ant Colony Optimization&lt;/a&gt; with an aim of:&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;1. Exploring the properties of their spatial manifestations, in a purely abstract relationship-based implementation.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;2. Investigating and evaluating different possibilities of employing such approaches for the design optimization of physical objects. &lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;3. Coming up with a design environment that is well defined yet abstract enough to allow users/designers to conceive and visualize materials organizations and products which are based on the manipulation of their defining relationships.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;ribonkit is still in very early prototype stage. The fundamental workings of it's swarm engine are still being figured out.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;You can check out a (non-interactive) prototype &lt;a href="http://xconst.freeshell.org/applets/ribonkit/"&gt;here (applet)&lt;/a&gt;.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;ribonkit prototype 1 has been developed in &lt;a href="http://www.processing.org"&gt;Processing 1.0.6&lt;/a&gt; and uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt; library for camera manipulation.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;It is released under the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD license&lt;/a&gt;.&lt;/p&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-family:Helvetica, serif;font-size:100%;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-163827510940092827?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/163827510940092827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/11/ribonkit-prototype-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/163827510940092827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/163827510940092827'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/11/ribonkit-prototype-1.html' title='ribonkit prototype 1'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-5007505379884983241</id><published>2009-11-05T05:39:00.008+02:00</published><updated>2009-11-07T05:50:49.447+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='applet'/><category scheme='http://www.blogger.com/atom/ns#' term='L-system'/><category scheme='http://www.blogger.com/atom/ns#' term='engineering aesthetics'/><category scheme='http://www.blogger.com/atom/ns#' term='aab'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>aab, release 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_dGV8k-N_JP0/SvJI9ccxSxI/AAAAAAAAAL4/C3gHTZnsJ4M/s1600-h/5.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 222px;" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/SvJI9ccxSxI/AAAAAAAAAL4/C3gHTZnsJ4M/s400/5.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5400459123616729874" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;artificial landscape, form compositing with aab&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aab release 2 improves on some functionality of the original version, which allows for a wider variety of arrangements to be composed. Release 2 is also available as a web applet &lt;a href="http://xconst.freeshell.org/applets/aab/"&gt;here&lt;/a&gt; (please note that the applet version cannot export compositions to &lt;a href="http://en.wikipedia.org/wiki/Dxf"&gt;DXF&lt;/a&gt;). &lt;/div&gt;&lt;div&gt;For the description please check this &lt;a href="http://prototy.blogspot.com/2009/09/aab-processing-release-1.html"&gt;post&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aab was developed in &lt;a href="http://www.processing.org/"&gt;Processing&lt;/a&gt; and uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt; library.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/aab2.zip"&gt;Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux, Source)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  color: rgb(239, 239, 239); line-height: 14px; font-family:Arial, sans-serif;font-size:12px;"&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 0);   line-height: normal; font-family:Georgia, serif;font-size:16px;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SvJKOkdOKSI/AAAAAAAAAMQ/eimEtFDN5Ks/s1600-h/3.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SvJKOkdOKSI/AAAAAAAAAMQ/eimEtFDN5Ks/s320/3.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5400460517335509282" style="cursor: pointer; width: 250px; height: 258px; " /&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style=" ;font-size:-webkit-xxx-large;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:16px;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SvJKOVRvRjI/AAAAAAAAAMI/_kfCx4jrU5k/s1600-h/2.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SvJKOVRvRjI/AAAAAAAAAMI/_kfCx4jrU5k/s320/2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5400460513260815922" style="cursor: pointer; width: 250px; height: 260px; " /&gt;&lt;/a&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SvJKG-9xYlI/AAAAAAAAAMA/tB3sNsyjBBA/s1600-h/1.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SvJKG-9xYlI/AAAAAAAAAMA/tB3sNsyjBBA/s320/1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5400460387012403794" style="cursor: pointer; width: 250px; height: 259px; " /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-5007505379884983241?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/5007505379884983241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/11/aab-release-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5007505379884983241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/5007505379884983241'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/11/aab-release-2.html' title='aab, release 2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/SvJI9ccxSxI/AAAAAAAAAL4/C3gHTZnsJ4M/s72-c/5.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-6737777645922455897</id><published>2009-09-23T21:51:00.002+03:00</published><updated>2009-10-06T03:54:50.088+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aab'/><title type='text'>aab renders</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_dGV8k-N_JP0/SrputXQ2E2I/AAAAAAAAAKk/5raRQeu6bsQ/s1600-h/4.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 250px;" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/SrputXQ2E2I/AAAAAAAAAKk/5raRQeu6bsQ/s400/4.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5384738030092686178" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_dGV8k-N_JP0/Srpul6bqAsI/AAAAAAAAAKc/qFIo8ECNfPE/s1600-h/2.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 250px;" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/Srpul6bqAsI/AAAAAAAAAKc/qFIo8ECNfPE/s400/2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5384737902094320322" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_dGV8k-N_JP0/Srpuhz-PjoI/AAAAAAAAAKU/Y2VKKCjpGZ0/s1600-h/1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 250px;" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/Srpuhz-PjoI/AAAAAAAAAKU/Y2VKKCjpGZ0/s400/1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5384737831640862338" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_dGV8k-N_JP0/Srpuhz-PjoI/AAAAAAAAAKU/Y2VKKCjpGZ0/s1600-h/1.jpg"&gt;&lt;/a&gt;I decided to upload a few (proper) renderings of arrangements composed by &lt;a href="http://prototy.blogspot.com/2009/09/aab-processing-release-1.html"&gt;aab&lt;/a&gt; (description just below vvv)&lt;br /&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_dGV8k-N_JP0/Srpuhz-PjoI/AAAAAAAAAKU/Y2VKKCjpGZ0/s1600-h/1.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-6737777645922455897?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/6737777645922455897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/09/aab-renders.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/6737777645922455897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/6737777645922455897'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/09/aab-renders.html' title='aab renders'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/SrputXQ2E2I/AAAAAAAAAKk/5raRQeu6bsQ/s72-c/4.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-3944261095510612215</id><published>2009-09-17T17:01:00.009+03:00</published><updated>2009-10-06T03:55:05.748+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='L-system'/><category scheme='http://www.blogger.com/atom/ns#' term='engineering aesthetics'/><category scheme='http://www.blogger.com/atom/ns#' term='aab'/><category scheme='http://www.blogger.com/atom/ns#' term='DXF'/><title type='text'>aab - Processing, release 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SrJFaqGOyGI/AAAAAAAAAKM/aSA4P3p5HSc/s1600-h/4.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 108px;" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SrJFaqGOyGI/AAAAAAAAAKM/aSA4P3p5HSc/s400/4.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5382440828940503138" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;aab - Processing is a remake of an old program I built a while ago, which was also a forerunner for the development of &lt;a href="http://prototy.blogspot.com/2008/08/packing-up-lpacker.html"&gt;LPacker&lt;/a&gt;. It is an automatic composer of forms vaguely and loosely reminiscent of engineering aesthetics.&lt;div&gt;The program simply assumes a solid rectangular volume which it recursively and randomly subdivides in parallel planes (like an &lt;a href="http://en.wikipedia.org/wiki/L-system"&gt;L-System&lt;/a&gt;) or grids, removing random volumes in the process.&lt;/div&gt;&lt;div&gt;Afterwards, it does a little bit of post-processing, creating holes and gaps between the volumes and presents the result on screen.&lt;/div&gt;&lt;div&gt;The user can specify the initial volume's dimensions and export the result in .&lt;a href="http://en.wikipedia.org/wiki/Dxf"&gt;DXF&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/aab.html"&gt;Here&lt;/a&gt; is the original program's page from my old site, and the -slightly inaccurate- description.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aab - Processing was developed in &lt;a href="http://processing.org/"&gt;processing 1.07&lt;/a&gt; and uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam&lt;/a&gt; library for camera manipulation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aab - Processing is released under the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/aab%20-%20Processing.zip"&gt;Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux, Source)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-3944261095510612215?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/3944261095510612215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/09/aab-processing-release-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3944261095510612215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3944261095510612215'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/09/aab-processing-release-1.html' title='aab - Processing, release 1'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/SrJFaqGOyGI/AAAAAAAAAKM/aSA4P3p5HSc/s72-c/4.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-3702889915952027363</id><published>2009-08-06T22:36:00.008+03:00</published><updated>2009-11-30T00:23:41.523+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fib'/><category scheme='http://www.blogger.com/atom/ns#' term='sheet simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='tensile structure'/><category scheme='http://www.blogger.com/atom/ns#' term='Update'/><category scheme='http://www.blogger.com/atom/ns#' term='DXF'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><category scheme='http://www.blogger.com/atom/ns#' term='cloth simulation'/><title type='text'>fib release 3</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SnsyqzAgQUI/AAAAAAAAAJE/hwrVsAKolVU/s1600-h/f2.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 347px; height: 400px;" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SnsyqzAgQUI/AAAAAAAAAJE/hwrVsAKolVU/s400/f2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5366939091770294594" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;fib is a cloth and sheet simulator whose goal is to aid the conceptual realization of&lt;a href="http://en.wikipedia.org/wiki/Tensile_structure"&gt; tensile structures&lt;/a&gt; and support experimentation wih free-form structures in general.  In fib, form creation is based on the manipulation of a surface in 3-dimensional space, which conforms to geometrical constraints of real world cloth or sheet materials.&lt;br /&gt;In fib, the flexible surface is modeled as a 2-D isostatic frame, represented by nodes and springs between nodes. Nodes can be moved and fixed to any position. The model reacts to interaction by adapting to loads applied by the user, in order to maintain its integrity. The physics solver is based on an implementation of the &lt;a href="http://en.wikipedia.org/wiki/Verlet_integration"&gt;Verlet Integration Method&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;fib uses the &lt;a href="http://mrfeinberg.com/peasycam/"&gt;peasycam library&lt;/a&gt; for nice camera manipulation.&lt;br /&gt;fib is released under the terms of the &lt;a href="http://www.gnu.org/copyleft/gpl.html"&gt;GNU General Public License&lt;/a&gt;. &lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/fib3.zip"&gt;Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux, Source, PDF with description and controls included)&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-3702889915952027363?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/3702889915952027363/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/08/fib-release-3.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3702889915952027363'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3702889915952027363'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/08/fib-release-3.html' title='fib release 3'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/SnsyqzAgQUI/AAAAAAAAAJE/hwrVsAKolVU/s72-c/f2.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4092097142162898805</id><published>2009-07-02T20:26:00.005+03:00</published><updated>2009-10-06T03:57:23.641+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TN6'/><category scheme='http://www.blogger.com/atom/ns#' term='Wind Tunnel'/><category scheme='http://www.blogger.com/atom/ns#' term='Fluid Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='MSAFluid'/><category scheme='http://www.blogger.com/atom/ns#' term='DXF'/><category scheme='http://www.blogger.com/atom/ns#' term='TN7'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>TN7 (TN6 Release 3)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SkzvZkvUHEI/AAAAAAAAAIU/3cxwiEbTuO4/s1600-h/1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 201px;" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SkzvZkvUHEI/AAAAAAAAAIU/3cxwiEbTuO4/s400/1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5353917279674571842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;The third release of TN6, named "TN7", adds the following features:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;- A 3D visualization mode that presents a 3D landscape of the velocity field.&lt;/div&gt;&lt;div&gt;- The ability to export the 3D landscape as a DXF model.&lt;/div&gt;&lt;div&gt;- The ability to add thrust segments in the simulation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It also improves on the following:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-Speed &amp;amp; Realism of the simulation.&lt;/div&gt;&lt;div&gt;-Various User Interface enhancements.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For the original description of TN6, see &lt;a href="http://prototy.blogspot.com/2009/05/tn6-release-1.html"&gt;this post&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;TN6 &amp;amp; TN7 are released under the terms of the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/TN7.zip"&gt;Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux, Source)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4092097142162898805?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4092097142162898805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/07/tn7-tn6-release-3.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4092097142162898805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4092097142162898805'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/07/tn7-tn6-release-3.html' title='TN7 (TN6 Release 3)'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/SkzvZkvUHEI/AAAAAAAAAIU/3cxwiEbTuO4/s72-c/1.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-1311192939861887398</id><published>2009-06-11T00:58:00.006+03:00</published><updated>2009-10-06T03:57:07.404+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TN6'/><category scheme='http://www.blogger.com/atom/ns#' term='Wind Tunnel'/><category scheme='http://www.blogger.com/atom/ns#' term='Fluid Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='MSAFluid'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>TN6, release 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_dGV8k-N_JP0/SjAtd5VgAiI/AAAAAAAAAH0/Ue1AIS93vK0/s1600-h/1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 184px;" src="http://2.bp.blogspot.com/_dGV8k-N_JP0/SjAtd5VgAiI/AAAAAAAAAH0/Ue1AIS93vK0/s400/1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5345822749319234082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Release 2 of TN6 improves on the accuracy of the visualization. By default, velocity lines are visualized. Hit '1' to switch to particle view, '2' to return to field view.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For a description of TN6, see &lt;a href="http://prototy.blogspot.com/2009/05/tn6-release-1.html"&gt;this post&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/TN6.zip"&gt;Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-1311192939861887398?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/1311192939861887398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/06/tn6-release-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/1311192939861887398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/1311192939861887398'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/06/tn6-release-2.html' title='TN6, release 2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_dGV8k-N_JP0/SjAtd5VgAiI/AAAAAAAAAH0/Ue1AIS93vK0/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-1463275447582153346</id><published>2009-05-31T14:40:00.007+03:00</published><updated>2009-10-06T03:56:55.549+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TN6'/><category scheme='http://www.blogger.com/atom/ns#' term='Wind Tunnel'/><category scheme='http://www.blogger.com/atom/ns#' term='Fluid Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>TN6, release 1</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SiLHZajj1LI/AAAAAAAAAHc/lSP9ii64Hn0/s1600-h/f.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 218px;" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SiLHZajj1LI/AAAAAAAAAHc/lSP9ii64Hn0/s400/f.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5342051347453957298" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://www.memo.tv/msafluid_for_processing_v1_3"&gt;MSAFluid&lt;/a&gt; is a fluid simulation library by &lt;a href="http://www.memo.tv/"&gt;Memo Akten&lt;/a&gt;. Based on this library and Memo's visualization examples, I put together a simulator that looks like a wind tunnel. While it is far from being accurate, it often produces interesting, dynamic visual forms.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Release 1 can be considered as an alpha state of the program.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Controls:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Click-click to create linear objects&lt;/div&gt;&lt;div&gt;Space - Toggle flow&lt;/div&gt;&lt;div&gt;1 - Particle visualization&lt;/div&gt;&lt;div&gt;2 - Velocity Field visualization&lt;/div&gt;&lt;div&gt;3 - Toggle drawing of objects&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;TN6 has been developed in &lt;a href="http://www.processing.org/"&gt;Processing&lt;/a&gt; 0135.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks to &lt;a href="http://www.memo.tv/"&gt;Memo Akten&lt;/a&gt; for the library and examples, Peter Bourke for &lt;a href="http://local.wasp.uwa.edu.au/~pbourke/geometry/pointline/"&gt;Distance calculation examples&lt;/a&gt; and Pieter Iserbeyt for &lt;a href="http://local.wasp.uwa.edu.au/~pbourke/geometry/pointline/DistancePoint.java"&gt;JAVA source code&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;TN6 is released under the &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Portions of the program are under the Copyright of their respective authors/developers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/TN6.zip"&gt;Download&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-1463275447582153346?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/1463275447582153346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/05/tn6-release-1.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/1463275447582153346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/1463275447582153346'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/05/tn6-release-1.html' title='TN6, release 1'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/SiLHZajj1LI/AAAAAAAAAHc/lSP9ii64Hn0/s72-c/f.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-2359430966857887078</id><published>2009-04-15T00:43:00.018+03:00</published><updated>2009-11-30T00:23:08.880+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fib'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='tensile structure'/><category scheme='http://www.blogger.com/atom/ns#' term='Update'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><category scheme='http://www.blogger.com/atom/ns#' term='cloth simulation'/><title type='text'>fib, beta 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_dGV8k-N_JP0/SfcNLafEBkI/AAAAAAAAAGk/uy15bthIgtI/s1600-h/5.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 297px;" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/SfcNLafEBkI/AAAAAAAAAGk/uy15bthIgtI/s400/5.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5329743173755602498" /&gt;&lt;/a&gt;&lt;div&gt;&lt;div&gt;fib is a basic real time cloth simulator, aimed at the design of tensile structures. Beta 2 improves on the following:&lt;/div&gt;&lt;div&gt;- Faster display, finer textile resolution&lt;/div&gt;&lt;div&gt;- Perspective mode added&lt;/div&gt;&lt;div&gt;- Export to a folder of your choice: Drag and Drop onto Main Window&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Usage:&lt;/div&gt;&lt;div&gt;Click and Drag to move points&lt;/div&gt;&lt;div&gt;Shift + Drag to fix/unfix and move points&lt;/div&gt;&lt;div&gt;Ctrl+ Drag to pan&lt;/div&gt;&lt;div&gt;Q,A to zoom in/out&lt;/div&gt;&lt;div&gt;1 to enter Edit Mode, 2 to enter Perspective Mode&lt;/div&gt;&lt;div&gt;R to reset&lt;/div&gt;&lt;div&gt;The viewport in Edit Mode displays left/top views simultaneously.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;made in &lt;a href="http://www.processing.org/"&gt;processing&lt;/a&gt; 0135b&lt;/div&gt;&lt;div&gt;fib is released under the terms of the &lt;a href="http://www.gnu.org/copyleft/gpl.html"&gt;GNU General Public License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;fib uses &lt;a href="http://www.sojamo.de/libraries/controlP5/"&gt;controlP5&lt;/a&gt; for displaying text and &lt;a href="http://www.sojamo.de/libraries/drop/"&gt;sDrop&lt;/a&gt; for Drag and Drop functionality. Big Thanks goes to their developer, &lt;a href="http://www.sojamo.de/index.php"&gt;Andreas Schlegel&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Download:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/fibbeta2.zip"&gt;fib, beta 2&lt;/a&gt;&lt;/div&gt;&lt;div&gt;(Windows, OS X, Linux, Source Code)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(51, 51, 51);  line-height: 16px; font-family:Arial;font-size:12px;"&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-family:Georgia;color:#000000;"&gt;&lt;span class="Apple-style-span" style="line-height: normal;"&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; line-height: 16.0px; font: 9.0px Arial; color: #ffffff"&gt;(Windows, OS X, Linux, Source Code)&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-2359430966857887078?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/2359430966857887078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/04/fib-beta-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2359430966857887078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2359430966857887078'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/04/fib-beta-2.html' title='fib, beta 2'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/SfcNLafEBkI/AAAAAAAAAGk/uy15bthIgtI/s72-c/5.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7400249406063822199</id><published>2009-03-09T21:21:00.003+02:00</published><updated>2009-03-09T21:25:39.185+02:00</updated><title type='text'>Change! ! !</title><content type='html'>This blog's transition to the new URL is complete ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7400249406063822199?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7400249406063822199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/03/change.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7400249406063822199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7400249406063822199'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/03/change.html' title='Change! ! !'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7159344780612095441</id><published>2009-02-25T17:46:00.011+02:00</published><updated>2009-11-30T00:23:29.482+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fib'/><category scheme='http://www.blogger.com/atom/ns#' term='Form Design'/><category scheme='http://www.blogger.com/atom/ns#' term='tensile structure'/><category scheme='http://www.blogger.com/atom/ns#' term='Verlet Integration'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><category scheme='http://www.blogger.com/atom/ns#' term='cloth simulation'/><title type='text'>fib, beta</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SamSkgQvs6I/AAAAAAAAAE0/ZB0HaK9cCOI/s1600-h/Untitled3.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 234px;" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SamSkgQvs6I/AAAAAAAAAE0/ZB0HaK9cCOI/s400/Untitled3.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5307934791665955746" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dGV8k-N_JP0/SaVtzYQc3hI/AAAAAAAAAEc/9lvCDaOdQrU/s1600-h/1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 297px;" src="http://1.bp.blogspot.com/_dGV8k-N_JP0/SaVtzYQc3hI/AAAAAAAAAEc/9lvCDaOdQrU/s400/1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5306768465378205202" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;fib is a basic real time cloth simulator, aimed at the design of tensile structures. Beta features basic functionality and .DXF export.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Usage: &lt;/div&gt;&lt;div&gt;Click and Drag to move points&lt;/div&gt;&lt;div&gt;Shift + Drag to fix/unfix and move points&lt;/div&gt;&lt;div&gt;Ctrl+ Drag to pan&lt;/div&gt;&lt;div&gt;Q,A to zoom in/out&lt;/div&gt;&lt;div&gt;X to export&lt;/div&gt;&lt;div&gt;R to reset&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The viewport displays left/top views simultaneously.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;made in &lt;a href="http://www.processing.org/"&gt;processing&lt;/a&gt; 0135b&lt;/div&gt;&lt;div&gt;fib is released under the terms of the &lt;a href="http://www.gnu.org/copyleft/gpl.html"&gt;GNU General Public License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Download:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;a href="http://xconst.freeshell.org/files/fib.zip"&gt;fib, beta&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;(Windows, OS X, Linux, Source Code)&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7159344780612095441?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7159344780612095441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/02/fib-beta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7159344780612095441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7159344780612095441'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/02/fib-beta.html' title='fib, beta'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dGV8k-N_JP0/SamSkgQvs6I/AAAAAAAAAE0/ZB0HaK9cCOI/s72-c/Untitled3.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4782582388065066440</id><published>2009-01-01T17:43:00.010+02:00</published><updated>2010-02-04T19:42:36.764+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eliza'/><category scheme='http://www.blogger.com/atom/ns#' term='time'/><category scheme='http://www.blogger.com/atom/ns#' term='elclok'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>elclok</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_dGV8k-N_JP0/S2sGnD9GDaI/AAAAAAAAAOE/x_hIQjd6440/s1600-h/Screen+shot+2010-02-04+at+6.40.08+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 335px; height: 400px;" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/S2sGnD9GDaI/AAAAAAAAAOE/x_hIQjd6440/s400/Screen+shot+2010-02-04+at+6.40.08+PM.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5434444643498855842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Happy new year!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;This small application is a clock that features a discussion between two extremely selfish &lt;a href="http://en.wikipedia.org/wiki/ELIZA"&gt;Eliza&lt;/a&gt; bots. No, really - the dialogue is an utmost disaster. Every minute, a new part of the dialogue is revealed along with the time and date. It is possible to edit or replace the script that directs the bot's responses in order to induce user-defined behaviors.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;UPDATE(04/02/2010): Fixed some issues, letters, variety in responses...should be a bit more fun now :P&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Developed in &lt;a href="http://www.processing.org/"&gt;processing&lt;/a&gt; and released under the &lt;a href="http://www.gnu.org/copyleft/gpl.html"&gt;GNU General Public License&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;elclok uses &lt;a href="http://codeanticode.wordpress.com/"&gt;Andreas Colubri's&lt;/a&gt; implementation of &lt;a href="http://codeanticode.wordpress.com/2007/11/12/eliza-library-for-processing/"&gt;Eliza in Processing, &lt;/a&gt;for which I am thankful.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Download:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;a href="http://xconst.freeshell.org/files/elclok2.zip"&gt;elclok&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;(Windows, Os X, Linux, Source)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4782582388065066440?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4782582388065066440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2009/01/elclok.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4782582388065066440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4782582388065066440'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2009/01/elclok.html' title='elclok'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/S2sGnD9GDaI/AAAAAAAAAOE/x_hIQjd6440/s72-c/Screen+shot+2010-02-04+at+6.40.08+PM.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-4045605758647030801</id><published>2008-10-23T20:26:00.013+03:00</published><updated>2008-11-05T18:18:26.365+02:00</updated><title type='text'>Lnk</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/SRHDCVZ_VAI/AAAAAAAAACI/HJQIGaN7E3c/s1600-h/worldWhite.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265203884246127618" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 158px" alt="" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/SRHDCVZ_VAI/AAAAAAAAACI/HJQIGaN7E3c/s400/worldWhite.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;A fairly comprehensive list of links to websites of similar interest has been compiled so far, ranging from portals related to architecture and construction, to repositories of source code, tutorials and ideas. It sould be stated that this list reflects more or less a personal preference, as I myself quite often use it as a starting point for my journey throughout the web. I hope that it will prove to be informative as well as inspirational for everyone.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-size:85%;"&gt;(The image above is a scaled down and cropped version of the Internet Map, from Chris Harrison's excellent &lt;a href="http://www.chrisharrison.net/projects/InternetMap/index.html"&gt;website&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-4045605758647030801?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/4045605758647030801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2008/10/lnk.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4045605758647030801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/4045605758647030801'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2008/10/lnk.html' title='Lnk'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_dGV8k-N_JP0/SRHDCVZ_VAI/AAAAAAAAACI/HJQIGaN7E3c/s72-c/worldWhite.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-3158236704994624498</id><published>2008-09-27T17:44:00.004+03:00</published><updated>2008-09-29T16:17:34.835+03:00</updated><title type='text'>Updates?</title><content type='html'>Since I'm currently in a state of not-being-able-to-do-anything-except-what-I'm-supposed-to (aka serving in the army), I'm having a tough time updating this site. My next planned step in transitioning from the old site to the new blog format would be to clean up older projects and update them here. However, given that this is taking like forever, I will post a temporary link to the old site. Please pay a visit and check out some of my earlier design tools/toys.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-3158236704994624498?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/3158236704994624498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2008/09/since-im-currently-in-state-of-not.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3158236704994624498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/3158236704994624498'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2008/09/since-im-currently-in-state-of-not.html' title='Updates?'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7823894231597535676</id><published>2008-08-03T13:52:00.017+03:00</published><updated>2009-10-06T04:21:22.795+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Packing'/><category scheme='http://www.blogger.com/atom/ns#' term='Manufacturing'/><category scheme='http://www.blogger.com/atom/ns#' term='L-system'/><category scheme='http://www.blogger.com/atom/ns#' term='Combinatorial Problem'/><category scheme='http://www.blogger.com/atom/ns#' term='LPacker'/><category scheme='http://www.blogger.com/atom/ns#' term='Heuristic'/><category scheme='http://www.blogger.com/atom/ns#' term='Design Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Packing up: LPacker</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_dGV8k-N_JP0/SRHGDu3Zy4I/AAAAAAAAACw/MwJ8pxTEu4c/s1600-h/3.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265207206795135874" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 300px" alt="" src="http://3.bp.blogspot.com/_dGV8k-N_JP0/SRHGDu3Zy4I/AAAAAAAAACw/MwJ8pxTEu4c/s400/3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;p style="FONT-WEIGHT: normal; FONT-SIZE: 12px; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica"&gt;LPacker is an effort towards the development of a special design tool aimed at the design and realization of simple planar storage systems. LPacker serves as an experiment and exercise in the development of computation-assisted design environments.&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; FONT-SIZE: 12px; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica"&gt;The general concept is to produce an efficient spatial arrangement for a series of user-specified items with arbitrary dimensions. In the program, any item is represented by it's bounding box. The packing process is performed by solving a two-dimensional rectangle packing problem.&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; FONT-SIZE: 12px; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica"&gt;The "&lt;a href="http://en.wikipedia.org/wiki/Bin_packing_problem"&gt;bin packing problem&lt;/a&gt;", whose derivative is the 2D rectangle packing problem, is a &lt;a href="http://en.wikipedia.org/wiki/Combinatorics"&gt;combinatorial&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/NP-hard"&gt;NP-hard&lt;/a&gt; problem, with many variations and applications in various industrial fields. The goal is to fit as many items as possible into a specified area, or to fit a given set of items into the least area possible. Such problems are approached by the use of &lt;a href="http://en.wikipedia.org/wiki/Heuristic_algorithm"&gt;heuristic algorithms&lt;/a&gt;, many of which yield near optimal solutions.&lt;/p&gt;&lt;br /&gt;&lt;p style="FONT-WEIGHT: normal; FONT-SIZE: 12px; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica"&gt;The algorithm used in LPacker is primarily based on guides, tutorials and studies at&lt;br /&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica;font-size:12px;"&gt;&lt;a href="http://www.blackpawn.com/texts/lightmaps/default.html"&gt;http://www.blackpawn.com/texts/lightmaps/default.html&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica;font-size:12px;"&gt;&lt;a href="http://www.csc.liv.ac.uk/~epa/surveyhtml.html#bib.9"&gt;http://www.csc.liv.ac.uk/~epa/surveyhtml.html#bib.9&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica;font-size:12px;"&gt;&lt;a href="http://www.devx.com/dotnet/Article/36005/0/page/1"&gt;http://www.devx.com/dotnet/Article/36005/0/page/1&lt;/a&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normalfont-family:Helvetica;font-size:12px;"  &gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="MIN-HEIGHT: 14px; MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;The result of the packing process is an arrangement of the specified items in 2D space, in a way that is considered by the algorithm as efficient. The user may intervene on the proposed arrangement in order to improve space usage or impose additional parameters, such as, for example, proximity between certain items or specific positioning in the arrangement.&lt;br /&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;The abstract spatial arrangement is then translated into components that can be used to realize a physical storage system, with spatial organization identical to that of the abstract arrangement. The ability to simply and efficiently realize a physical object from the abstract arrangement was a critical parameter in determining the nature of the packing process. In order to later on achieve simplicity in the assembly of the physical structure, the arrangement produced by the packing algorithm had to satisfy a special condition commonly referred to as 'guillotinable' packing. An arrangement of rectanglular sheets is said to be guillotinable when, for example, given a sheet of material with dimensions equal to the arrangement's dimensions, it is possible to cut out the original rectangular pieces exclusively by means of straight, uninterrupted sections parallel to one of the rectangular sheet's sides. In this way, the effort required to obtain the pieces is minimized. In the case of LPacker, the 'cuts' on the supposed sheet correspond to physical planar partitions that will eventually form the physical storage system. Guillotinable packing helps minimize the number of partitions, in this way simplifying the assembly process of the supposed physical structure. &lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;The spatial arrangement is encoded by means of a tree structure, with every individual item being a 'leaf', separated by others by using 'branches'. These branches will later on correspond to the physical planar partitions mentioned above, that will form the physical storage system.&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MIN-HEIGHT: 14px; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;LPacker is released under the terms of the &lt;a href="http://www.gnu.org/copyleft/gpl.html"&gt;GNU General Public License&lt;/a&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MIN-HEIGHT: 14px; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;&lt;br /&gt;&lt;/p&gt;&lt;a href="http://4.bp.blogspot.com/_dGV8k-N_JP0/SRHF1cynG-I/AAAAAAAAACo/3ndb_woES-I/s1600-h/2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265206961425030114" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 300px" alt="" src="http://4.bp.blogspot.com/_dGV8k-N_JP0/SRHF1cynG-I/AAAAAAAAACo/3ndb_woES-I/s400/2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;&lt;span class="Apple-style-span" style="FONT-WEIGHT: bold"&gt;Operation:&lt;/span&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="FONT-WEIGHT: normal; MARGIN: 0px; LINE-HEIGHT: normal; FONT-STYLE: normal; FONT-VARIANT: normal; font-size-adjust: none; font-stretch: normal" size="12px" face="Helvetica"&gt;The program operates in four modes:&lt;/p&gt;&lt;br /&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;1. Drawing Mode&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;In this mode, the user specifies the dimensions of the rectangles to be considered as bounding boxes for the items to be packed.&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;2. Packing Mode&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;Upon entering this mode, the collection of items is automatically packed into a mostly efficient spatial arrangement. At this point, there are some editing capabilities that help optimize the arrangement.&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;3. Perspective mode&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;In this mode, a 3D representation of the physical structure is offered, along with the ability to visualize the volume of the initial items.&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;4. Blueprint Mode (Unimplemented)&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;In this mode the planar partitions that form the supposed physical structure are laid out on the screen.&lt;/p&gt;&lt;p style="MIN-HEIGHT: 14px; MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;span class="Apple-style-span" style="FONT-WEIGHT: bold"&gt;Download:&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;span class="Apple-tab-span" style="WHITE-SPACE: pre"&gt;&lt;/span&gt;&lt;a href="http://xconst.freeshell.org/files/LPacker.zip"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;LPacker&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;span class="Apple-tab-span" style="WHITE-SPACE: pre"&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Windows, OS X, Linux. Source Code Included.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="MIN-HEIGHT: 14px; MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;span class="Apple-style-span" style="FONT-WEIGHT: bold"&gt;To be Implemented:&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;- 4th Mode&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;- The ability to export the structure arrangement for manufacturing.&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;- A feature to save and export in various formats.&lt;/p&gt;&lt;p style="MARGIN: 0px; FONT: 12px Helvetica; font-size-adjust: none; font-stretch: normal"&gt;- A little bit of tweaking the user interface.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7823894231597535676?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7823894231597535676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2008/08/packing-up-lpacker.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7823894231597535676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7823894231597535676'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2008/08/packing-up-lpacker.html' title='Packing up: LPacker'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_dGV8k-N_JP0/SRHGDu3Zy4I/AAAAAAAAACw/MwJ8pxTEu4c/s72-c/3.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-7404603314362007426</id><published>2008-06-10T23:26:00.005+03:00</published><updated>2009-05-29T20:10:49.793+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual'/><category scheme='http://www.blogger.com/atom/ns#' term='graphics'/><category scheme='http://www.blogger.com/atom/ns#' term='processing'/><title type='text'>Visual Toys: ln, gpuls</title><content type='html'>&lt;div style="TEXT-ALIGN: left"&gt;&lt;/div&gt;gpuls is a visual toy that produces patterns as a result of tracing the trajectory of a population of pulsating dots trying to survive against each other. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/files/gpuls.zip"&gt;Download gpuls (binary + source code)&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;ln is a simple experiment in processing that benefits from the environment's simplicity in creating graphics in 3-dimensional space.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://xconst.freeshell.org/files/ln.zip"&gt;Download ln (binary + source code)&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-7404603314362007426?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/7404603314362007426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2008/06/visual-toys-ln-gpuls.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7404603314362007426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/7404603314362007426'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2008/06/visual-toys-ln-gpuls.html' title='Visual Toys: ln, gpuls'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5546324682725148786.post-2249097378743453803</id><published>2008-05-19T21:21:00.004+03:00</published><updated>2010-02-11T08:31:17.477+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blog'/><category scheme='http://www.blogger.com/atom/ns#' term='strukturl'/><category scheme='http://www.blogger.com/atom/ns#' term='structurl'/><category scheme='http://www.blogger.com/atom/ns#' term='this'/><title type='text'>StructurL is born!</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#CCCCCC;"&gt;(edit: At the time of creation, this weblog was named "StructurL".)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;With much excitement this blog has been created.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It should, first of all, be mentioned that this site will act as an effort to continue and expand the author's existing web site at &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://xconst.freeshell.org/"&gt;http://xconst.freeshell.org&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you already took the time to visit the above link, then you should be more or less aware of what this is about. If not, let there be a short description.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;StructurL aims to become a means of publication of the author's experimentation on spatial structures (as in, structures manifested mainly via computer programming, that manipulate and create spatial configurations), with strong emphasis on issues of realization (such as, construction and issues of materials and technology). Whenever possible, StructurL will also try to serve as a point of information and discussion about the ongoing research in the aforementioned area.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And since there are people apparently more capable of formulating precise and concrete definitions, at this point there should be a quote from The Emergent Design Group of MIT(&lt;a href="http://mit.edu/edgsrc/www/"&gt;http://mit.edu/edgsrc/www/&lt;/a&gt;), a quote which is considered by the author to accurately outline this site's area of interest.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;"&lt;span class="Apple-style-span" style="font-style: italic;"&gt;[...]design at the intersection of architecture, engineering, artificial intelligence and materials science.&lt;/span&gt;"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That's it for now! I hope that in the future you will find this blog to be inspirational.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5546324682725148786-2249097378743453803?l=prototy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://prototy.blogspot.com/feeds/2249097378743453803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://prototy.blogspot.com/2008/05/structurl-is-born.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2249097378743453803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5546324682725148786/posts/default/2249097378743453803'/><link rel='alternate' type='text/html' href='http://prototy.blogspot.com/2008/05/structurl-is-born.html' title='StructurL is born!'/><author><name>Y C</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
