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

<channel>
	<title>christianmeinke.com &#187; code</title>
	<atom:link href="http://www.christianmeinke.com/tag/code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.christianmeinke.com</link>
	<description>Personal blog, playground and activity aggregator</description>
	<lastBuildDate>Sat, 19 Jun 2010 16:15:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Agent-based Generative Patterns</title>
		<link>http://www.christianmeinke.com/2009/12/15/agent-based-generative-patterns/</link>
		<comments>http://www.christianmeinke.com/2009/12/15/agent-based-generative-patterns/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 03:35:51 +0000</pubDate>
		<dc:creator>CM</dc:creator>
				<category><![CDATA[Work In Progress]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[generative]]></category>
		<category><![CDATA[Interactive]]></category>
		<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://www.christianmeinke.com/?p=1017</guid>
		<description><![CDATA[A swarm simulation involving up to 250 autonomous <br/>agents of different life cycles]]></description>
			<content:encoded><![CDATA[<p>Again it&#8217;s been a while since tinkering with <a href="http://processing.org/">Processing</a> and generative design for the last time <span>(day-to-day jobs can be oppressively monotonous at times)</span>. I&#8217;m currently spinning ideas for an upcoming series of vinyl artworks <span>(possibly)</span> accompanied by large format offset prints.</p>
<div class="coda-slider-wrapper">
<div class="coda-slider preload" id="coda-slider-1">
<div class="panel">
<div class="panel-wrapper">
<h2 class="coda-title">1</h2>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2009/12/091213_201848.png" alt="_091213_201848" title="Still image from generative software" width="692" height="433" />
</div>
</div>
<div class="panel">
<div class="panel-wrapper">
<h2 class="coda-title">2</h2>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2009/12/091214_150452.png" alt="_091214_150452" title="Still image from generative software" width="692" height="433" />
</div>
</div>
<div class="panel">
<div class="panel-wrapper">
<h2 class="coda-title">3</h2>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2009/12/091215_120152.png" alt="_091215_120152" title="Still image from generative software" width="692" height="433" /></div>
</div>
</div>
<p><!-- .coda-slider --></div>
<p><!-- .coda-slider-wrapper --><span>Still images from generative software <em>(source format 8000x5000px at 300dpi)</em></span></p>
<p>While the compelling and eye-catching beauty of generative patterns based on moving <a href="http://en.wikipedia.org/wiki/Bézier_curve">beziér curves</a> are already old hat and widely cited, I&#8217;m still thinking that there&#8217;s room for conceptual enhancement and further analysis of the topic.</p>
<p>Currently, I&#8217;m testing various interfaces and input stimuli / formats <span>(i.e. sound, <a href="http://ubaa.net/shared/processing/opencv/">image-analysys</a> and various data formats &#038; <a href="http://blog.blprnt.com/blog/blprnt/quick-tutorial-twitter-processing">sources</a>)</span> to create interactive structures not only producing decorative <em>drawings</em>, but creating generative patters based on logical sequences and structures.</p>
<div class="youtube">
<object width="700" height="418"><param name="movie" value="http://www.youtube.com/v/gTGOgL-sN2w&#038;hl=de_DE&#038;fs=1&#038;rel=0&#038;hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/gTGOgL-sN2w&#038;hl=de_DE&#038;fs=1&#038;rel=0&#038;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="700" height="418"></embed></object>
</div>
<p>Current prototypes are using a simple graphic-tablet to trigger and stimulate swarm-based simulations involving up to 250 autonomous agents of different life cycles.</p>
<p>» More stills of created generative patterns are <a href="http://www.flickr.com/photos/chrmeinke/archives/date-taken/2009/12/14/detail/">available at Flickr.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.christianmeinke.com/2009/12/15/agent-based-generative-patterns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Morphing Surfaces</title>
		<link>http://www.christianmeinke.com/2009/06/01/morphing-surfaces/</link>
		<comments>http://www.christianmeinke.com/2009/06/01/morphing-surfaces/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 17:23:21 +0000</pubDate>
		<dc:creator>CM</dc:creator>
				<category><![CDATA[Designing With Code]]></category>
		<category><![CDATA[Work In Progress]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[computational design]]></category>
		<category><![CDATA[generative]]></category>
		<category><![CDATA[Interactive]]></category>
		<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://www.christianmeinke.com/?p=641</guid>
		<description><![CDATA[More colorful sketches and 3d experiments based on <a href="http://eskimoblood.de/surfacelib/">SurfaceLib for Processing</a>]]></description>
			<content:encoded><![CDATA[<p>While sorting sketch folders and workspaces some days ago, I came across some rough Processing drafts based on eskimoblood&#8217;s <a href="http://eskimoblood.de/surfacelib/">Surface library</a>. It&#8217;s more than 2 years ago, that I was utilizing this inspiring source of 3-dimensional surfaces and objects for the last time, but I couldn&#8217;t resist to give certain aspects another spin.</p>
<p>In previous experiments I completely missed out on the morphing functionality provided by the library and just after some quick testing of available surfaces I came up with some quite interesting forms and results. Combinations of two surfaces &#8211; a 1st more complex like a <a href="http://local.wasp.uwa.edu.au/~pbourke/geometry/tranguloid/">Tranguloid Trefoil</a> and more simple counterparts (i.e. Spheres) turned out to be a valuable source and basis for further sketching.</p>
<p></p>
<div class="clearfix">
<div id="mySlides">
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/01.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440" /></div>
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/02.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440" /></div>
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/03.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440" /></div>
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/04.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440"/></div>
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/05.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440"/></div>
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/051.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440" /></div>
<div><img src="http://www.christianmeinke.com/wp-content/uploads/2009/06/06.jpg" alt="Morphing Surfaces" title="Morphing Surfaces" width="440" height="440" /></div>
</div>
<p><span class="jFlowPrev">Prev</span>
<div id="myController"><span class="jFlowControl">1</span><span class="jFlowControl">2</span><span class="jFlowControl">3</span><span class="jFlowControl">4</span><span class="jFlowControl">5</span><span class="jFlowControl">6</span><span class="jFlowControl">7</span></div>
<p><span class="jFlowNext">Next</span>
</div>
<p>Current versions and prototypes are combining rotation and scaling as well as growth-like animations using the underlying mathematical structures (see <a href="http://local.wasp.uwa.edu.au/~pbourke/geometry/">Paul Bourke</a>) and qualities of certain surfaces. </p>
<div class="vimeo"><object width="440" height="330"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=4989521&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=4989521&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="440" height="330"></embed></object>
</div>
<p>While still being impressed by the aesthetic value of generated forms and artfully arranged elements, I&#8217;m already thinking about using underlying procedures and algorithms for more applied usage in upcoming projects.</p>
<p><a href="http://www.flickr.com/photos/chrmeinke/3585660301/in/photostream/">See more stills</a> of created generative forms <a href="http://www.flickr.com/photos/chrmeinke/3585660301/in/photostream/">at Flickr</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.christianmeinke.com/2009/06/01/morphing-surfaces/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenSound Control (OSC) Resources</title>
		<link>http://www.christianmeinke.com/2009/05/26/opensound-control-osc-resources/</link>
		<comments>http://www.christianmeinke.com/2009/05/26/opensound-control-osc-resources/#comments</comments>
		<pubDate>Tue, 26 May 2009 22:21:09 +0000</pubDate>
		<dc:creator>CM</dc:creator>
				<category><![CDATA[Research]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[maxmsp]]></category>
		<category><![CDATA[osc]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[sound]]></category>

		<guid isPermaLink="false">http://www.christianmeinke.com/?p=583</guid>
		<description><![CDATA[A collection of selected <a href="http://en.wikipedia.org/wiki/OpenSound_Control">OSC</a> related software, libraries and interfaces for mobile devices]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently researching for possible interfaces and options to send and receive data from/to processing and java projects as well as Max/Msp patches. Currently I&#8217;m focussing on input devices connected via wireless (mobile devices) and usb/serial connections but also on software-to-software interfaces linking between the programming environments mentioned above.<span id="more-583"></span></p>
<h3>Java &#038; Processing</h3>
<ul>
<li><a href="http://www.sciss.de/netutil/">NetUtil OSC Library for Java</a> Compact and efficient java library for sending and receiving messages using the OpenSound Control (OSC) protocol</li>
<li><a href="http://jklabs.net/maxlink/">MaxLink</a> Java libraries enabling communication between Processing (Java) and Max/MSP <span>(made quite good experiences connecting Java applications with Max (4.x &#038; 5) patches. Recommended!)</span></li>
<li><a href="http://www.sojamo.de/libraries/oscP5/">oscP5</a> OSC implementation for the programming environment Processing</li>
<li><a href="http://www.conceptualinertia.net/aoakenfo/sketch-1">OSC communication between Max and Processing</a> (triggered by Midi controller) Tutorial by Ash Oakenfold</li>
</ul>
<h3>Mobile (input) Devices</h3>
<ul>
<li><a href="http://poly.share.dj/projects/#mrmr">Mrmr for the iPhone/iPod Touch</a> mrmr is an open-source research project to develop a standardized set of protocols and syntax conventions to control live installations and multimedia performances via mobile devices <span>(<a href="http://www.youtube.com/watch?v=W4frYFfcEoA">demo video</a> on youtube)</span></li>
<li><a href="http://hexler.net/software/touchosc">TouchOSC</a> iPhone / iPod Touch application that lets you send and receive Open Sound Control messages</li>
<li><a href="http://lux.vu/blog/oscemote/">OSCemote</a> Remote control application for the iPhone and iPod Touch <span>(check the examples)</span></li>
<li><a href="http://www.osculator.net/wp/">OSCulator</a> Another software linking controllers to music and video software</li>
<li><a href="http://www.audiomulch.com/~rossb/code/oscpack/">oscpack</a> Set of C++ classes for packing and unpacking OSC packets</li>
</ul>
<h3>Misc.</h3>
<ul>
<li><a href="http://delicious.com/popular/osc">OSC-tagged bookmarks</a> at delicious.com</li>
<li><a href="http://archive.cnmat.berkeley.edu/OpenSoundControl/">OpenSound Control Home Page</a> University of California, Berkeley</li>
<li><a href="http://opensoundcontrol.org/">opensoundcontrol.org</a> Center For New Music and Audio Technology (CNMAT), UC Berkeley</li>
<li><a href="http://lusidosc.sourceforge.net/">LusidOSC</a> Open source initiative to define and support a layer for unique spatial input devices using OpenSound Control</li>
</ul>
<p>If you like to recommend projects or resources that are not listed below, drop a comment. Any recommendations and helpful hints are much appreciated.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.christianmeinke.com/2009/05/26/opensound-control-osc-resources/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>TwistingBoxes • Processing Sketch</title>
		<link>http://www.christianmeinke.com/2007/04/05/twistingboxes-%e2%80%a2-processing-sketch/</link>
		<comments>http://www.christianmeinke.com/2007/04/05/twistingboxes-%e2%80%a2-processing-sketch/#comments</comments>
		<pubDate>Thu, 05 Apr 2007 13:19:07 +0000</pubDate>
		<dc:creator>CM</dc:creator>
				<category><![CDATA[Designing With Code]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[generative]]></category>
		<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://www.christianmeinke.com/2007/04/05/twistingboxes-%e2%80%a2-processing-sketch/</guid>
		<description><![CDATA[Extruded rectangles rotating and morphing in time â€¢ <a href="http://www.eskimoblood.de/page/2/">Color pallete import</a> for Processing]]></description>
			<content:encoded><![CDATA[<p>A few days ago I made some basic experiments with 3D Primitives in Processing while keeping an eye on temporal processes and time shifting. I also tested eskimobloods <a href="http://www.eskimoblood.de/page/2/">color import class</a>, that allows you to import .cs and .act palette files into your Processing sketches.<br />
These palette files can be exported from all popular graphic programms or by the help of online services like <a href="http://www.colorschemer.com/schemes/">Color Schemer</a> and <a href="http://www.colorblender.com/">ColorBlender</a>.<span id="more-74"></span></p>
<p>The results can be seen below in the form of low-res stills and video footage &#8211;  high-res versions can be found at <a href="http://www.flickr.com/photos/chrmeinke/446268335/">Flickr</a>.<br />
<br/></p>
<h3>Related Resources&#8230;</h3>
<ul>
<li><a href="http://diary.joshuadavis.com/2006/06/28/aspen-workshop/">Color workshop</a> by Joshua Davis</li>
<li><a href="http://colorstripping.joshuadavis.com/">Colorstripping.joshuadavis.com</a> &#8211; Color Array Tool</li>
</ul>
<p><br/><br />
<img src='http://www.christianmeinke.com/wp-content/uploads/2007/04/twistingboxes02.jpg' alt='TwistingBoxes' /><br />
<img src='http://www.christianmeinke.com/wp-content/uploads/2007/04/twistingboxes01.jpg' alt='TwistingBoxes' /></p>
<p><span><small>Stills: <a href="http://flickr.com/photos/chrmeinke/446268393/">TwistingBoxes</a> sketch, 2007-04-03</small></span></p>
<p><flv href="/flv/TwistingBoxes01.flv" width="320" height="240" autostart="mouse-start-only" repeat="false" /><br />
<span><small>Video: Screencapture of <a href="http://flickr.com/photos/chrmeinke/446268393/">TwistingBoxes</a>.</small></span></p>
<p>&#8211;</p>
<p><span><small>* Update</small></span></p>
<p>Extended the TwistedBoxes sketch by the use of modified <a href="http://www.christianmeinke.com/2007/03/29/l-system-and-fractal-research/">L-system algorithms</a>. High-res stills are available in the  <a href="http://www.flickr.com/photos/chrmeinke/447260909/">Processing set</a> at Flickr.com.</p>
<p><img src='http://www.christianmeinke.com/wp-content/uploads/2007/04/tboxesfractal02.jpg' alt='TwistingBoxesFractal' /><br />
<img src='http://www.christianmeinke.com/wp-content/uploads/2007/04/tboxesfractal01.jpg' alt='TwistingBoxesFractal' /></p>
<p><span><small>Stills: <a href="http://www.flickr.com/photos/chrmeinke/447260909/">TwistingBoxesFractal</a> sketch, 2007-04-05</small></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.christianmeinke.com/2007/04/05/twistingboxes-%e2%80%a2-processing-sketch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Untitled_05</title>
		<link>http://www.christianmeinke.com/2005/05/08/untitled_05/</link>
		<comments>http://www.christianmeinke.com/2005/05/08/untitled_05/#comments</comments>
		<pubDate>Sun, 08 May 2005 09:40:40 +0000</pubDate>
		<dc:creator>CM</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Interactive]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[concept]]></category>
		<category><![CDATA[generative]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[maxmsp]]></category>

		<guid isPermaLink="false">http://www.christianmeinke.com/?p=940</guid>
		<description><![CDATA[Generative sign and interface for label and artist collective Raster-Noton]]></description>
			<content:encoded><![CDATA[<p>This degree project was submitted to  the &#8220;New Media Art and Design&#8221; class at the University of the Arts Berlin in May 2005 and supervised by <a href="http://www.joachimsauter.com/">Prof. Joachim Sauter</a>.</p>
<blockquote><p><em>&#8220;raster-noton . archiv für ton und nichtton&#8221; is meant to be a platform &#8211; a network covering the overlapping border areas of pop, art and science. Emerged from the fusion of the two labels Rastermusic and Noton (in 1999) they realize music projects, publications and installation works. common idea behind all releases is an experimental approach &#8211; an amalgamation of sound, art and design.</em> Read more at <a href="http://www.raster-noton.net/">raster-noton.net</a></p></blockquote>
<p>Main idea was to create a virtual representation of raster-noton’s artistic output since 1999 which manifests itself in a multifaceted back catalogue consisting of more than 70 releases by now. The result is a generative visual form, that utilises simulated and behaviour-driven organic structures embedded in an interactive environment.</p>
<p>In addition to it&#8217;s visual part, the software was designed as an interface to interact with Cycling’s <a href="http://www.cycling74.com/products/max5">Max/Msp</a> to provide several ways of creating generative <span>(sound)</span> compositions based on the contextual relations between individual releases and elements within the labels catalogue. </p>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2005/05/untitled_05-01.png" alt="Untitled_05" title="Untitled_05" width="440" height="540" /></p>
<h3>Sign and visual structure</h3>
<p>Based on their structuring function the catalog&#8217;s &#8220;series&#8221; are representing central clusters within the form and are shaping the basic structure of the generative sign. Each released item / format is represented by an element within the basic shape, while contextual relations between individual releases are displayed through pre-defined ring-objects and resulting combinations. </p>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2005/05/untitled_05-02.png" alt="Untitled_05" title="Untitled_05-02" width="440" height="380" /></p>
<p>Visual parameters of containing elements and ring forms are displaying specific qualities of unique releases <span>(i.e. playtime, format: CD, vinyl, catalogues &#038; books) as well as their relations to each other (same artist, same release year, same series, etc.)</span>.</p>
<h3>Generative form</h3>
<p>The dynamic form is based on a flock simulation containing all release items from the labels catalog &#8211; each of them presented by a unique element within the swarm. In random temporal intervals a single release is selected by the system itself and the relations to all remaining element are displayed through uniquely defined rings objects. </p>
<p>In combination with surrounding series elements the emerging rings forms are shaping the visual appearance of the generative sign whose underlying structure and content are continually changing with each newly released item.</p>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2005/05/untitled_05-insen.jpg" alt="Untitled_05" title="Untitled_05" width="440" height="360" /><br />
<em><span>Print-design mockup for presentation purpose</span></em></p>
<h3>software &#8211; user interface</h3>
<p>In addition to it&#8217;s formal structure, the sign can be defined as a floating map, which is abstract and concrete all at once. Graphic forms are replacing / representing real objects, which are organized within a dynamic mapping and can be perceived spatially and temporal through associative exploration.</p>
<p><img src="http://www.christianmeinke.com/wp-content/uploads/2005/05/untitled_05-03.png" alt="Untitled_05" title="Untitled_05" width="440" height="360" /></p>
<h3>software &#8211; software interface</h3>
<p>Direct communication between Java application and Max/Msp is enabling participants <span>(performers)</span> to retrieve contextual relationships within the release catalogue as numeric data that can be used for controlling and triggering sound and visual generating software. These data / signals are receivable within simple network structures &#8211; creating a collaborative layer for multi-user performances.</p>
<div class="vimeo">
<object width="440" height="330"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5336926&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5336926&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="440" height="330"></embed></object>
</div>
<h3>Generative Composition</h3>
<p>The acoustic layer is utilizing the same relationships between single catalog elements, which are now translated into sonic structures. The series clusters are shaping random, yet unique rhythmical patterns while relationships between released elements are triggering generative sound synthesis and manipulating sound attributes such as envelope, grain, frequency and stereophony.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.christianmeinke.com/2005/05/08/untitled_05/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
