<?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>reactions</title>
	<atom:link href="http://fishnation.de/reactions/feed/" rel="self" type="application/rss+xml" />
	<link>http://fishnation.de/reactions</link>
	<description>Ein weiteres tolles WordPress-Blog</description>
	<lastBuildDate>Mon, 02 May 2011 13:56:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>verbogen</title>
		<link>http://fishnation.de/reactions/verbogen/</link>
		<comments>http://fishnation.de/reactions/verbogen/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 23:50:11 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Idee]]></category>
		<category><![CDATA[Konzept]]></category>
		<category><![CDATA[Präsentation]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=189</guid>
		<description><![CDATA[In den Weihnachtsferien hatte ich eigentlich vor, einen boxsack zum Eingabegerät umzufunktionieren. Leider habe ich die dafür benötigten Drucksensoren erst heute bekommen, deshalb habe ich mich mit anderen Sensoren und ihren Möglichkeiten beschäftigt. In der letzten Woche habe ich einige Berichte über die CES in Las Vegas gelesen. Großes Thema dort waren neben unter anderem [...]]]></description>
			<content:encoded><![CDATA[<p>In den Weihnachtsferien hatte ich eigentlich vor, einen boxsack zum Eingabegerät umzufunktionieren. Leider habe ich die dafür benötigten Drucksensoren erst heute bekommen, deshalb habe ich mich mit anderen Sensoren und ihren Möglichkeiten beschäftigt.<span id="more-189"></span></p>
<p>In der letzten Woche habe ich einige <a href="http://www.engadget.com/tag/ces">Berichte</a> über die <a href="http://de.wikipedia.org/wiki/Consumer_Electronics_Show"><abbr title="Consumer Electronics Show">CES</abbr></a> in Las Vegas gelesen. Großes Thema dort waren neben unter anderem auch <a href="http://de.wikipedia.org/wiki/E-Book">E-Book</a> Lesegeräte. Diese mehr oder weniger flachen Geräte können Texte angenehm lesbar auf ihren Bildschirmen anzeigen und sollen (irgentwann mal) das Buch als medium ablesen. Diese Geräte haben sicher einige Vorteile gegenüber den normalen Büchern, allerdings scheint mir die Nutzung noch etwas gewöhnungsbedürftig. Die E-Book Reader haben im Moment alle noch eine feste Oberfläche, im gegensatz zum Buch, dessen Seiten man verbiegen kann. Verbiegbare Bildschirme sind technisch möglich (wenn im Moment auch noch etwas teuer) und deshalb habe ich mich mit Steuerungsmöglichkeiten von verbiegbaren Oberflächen beschäftigt.</p>
<p>Dazu habe ich mir zwei <a href="http://watterott.com/Flex-Sensor-45">Biegesensoren</a> besorgt und sie an einem Stück Papierblock befestigt. Meine Biegesensoren können nur Biegung in eine Richtung messen, weshalb ich auf jeder Seite des Blocks einen Sensor angebracht habe. Ich habe ein Stück Block verwendet, um das Papier zu stabiliesieren und um sicherzustellen, dass es wieder in die Ausgangsform zurückgeht.</p>

<a href='http://fishnation.de/reactions/verbogen/p1132458/' title='Biegesensor'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2010/01/P1132458-150x150.jpg" class="attachment-thumbnail" alt="Biegesensor" title="Biegesensor" /></a>
<a href='http://fishnation.de/reactions/verbogen/p1132459/' title='Befestigung der Sensoren'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2010/01/P1132459-150x150.jpg" class="attachment-thumbnail" alt="Befestigung der Sensoren" title="Befestigung der Sensoren" /></a>
<a href='http://fishnation.de/reactions/verbogen/p1132461/' title='Sensoren + Applikation im Hintergrund'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2010/01/P1132461-150x150.jpg" class="attachment-thumbnail" alt="Sensoren + Applikation im Hintergrund" title="Sensoren + Applikation im Hintergrund" /></a>
<a href='http://fishnation.de/reactions/verbogen/p1132464/' title='Die Anwendung'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2010/01/P1132464-150x150.jpg" class="attachment-thumbnail" alt="Die Anwendung" title="Die Anwendung" /></a>

<p><object width="550" height="413" type="application/x-shockwave-flash" data="http://vimeo.com/moogaloop.swf?clip_id=8705189&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8705189&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=0" /></object></p>
<p>Der arduino Code</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #993333;">int</span> XPin <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
<span style="color: #993333;">int</span> YPin <span style="color: #339933;">=</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #993333;">void</span> setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    Serial.<span style="color: #202020;">begin</span><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">9600</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    pinMode<span style="color: #009900;">&#40;</span>YPin<span style="color: #339933;">,</span> INPUT<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #993333;">void</span> loop<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>   
    Serial.<span style="color: #202020;">println</span><span style="color: #009900;">&#40;</span>map<span style="color: #009900;">&#40;</span>analogRead<span style="color: #009900;">&#40;</span>YPin<span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">1024</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">100</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    Serial.<span style="color: #202020;">println</span><span style="color: #009900;">&#40;</span>map<span style="color: #009900;">&#40;</span>analogRead<span style="color: #009900;">&#40;</span>XPin<span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">1024</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">101</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">200</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    delay<span style="color: #009900;">&#40;</span><span style="color: #0000dd;">50</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Der Processing Code (<a href="http://www.tom-carden.co.uk/2008/02/18/modest-maps-vs-processing/">diesen Artikel</a> zum Thema Maps in Processing sollte man ich vorher anschauen)</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">processing.serial.*</span><span style="color: #339933;">;</span>
Serial myPort<span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000066; font-weight: bold;">int</span> upperCounter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #000066; font-weight: bold;">int</span> lowerCounter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//mode: 0=start, 1=map, 2=text, 3=draw</span>
<span style="color: #000066; font-weight: bold;">int</span> mode <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
PFont font<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//map specs</span>
InteractiveMap map<span style="color: #339933;">;</span>
ZoomButton out <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> ZoomButton<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span>,<span style="color: #cc66cc;">5</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
ZoomButton in <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> ZoomButton<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">22</span>,<span style="color: #cc66cc;">5</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
PanButton up <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> PanButton<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">25</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">14</span>,UP<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
PanButton down <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> PanButton<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">57</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">14</span>,DOWN<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
PanButton left <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> PanButton<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span>,<span style="color: #cc66cc;">41</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">14</span>,LEFT<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
PanButton right <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> PanButton<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">22</span>,<span style="color: #cc66cc;">41</span>,<span style="color: #cc66cc;">14</span>,<span style="color: #cc66cc;">14</span>,RIGHT<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// all the buttons in one place, for looping:</span>
<span style="color: #003399;">Button</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> buttons <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span>in, out, up, down, left, right<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">boolean</span> gui <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    size<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1300</span>, <span style="color: #cc66cc;">800</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    smooth<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>    
    font <span style="color: #339933;">=</span> createFont<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Helvetica&quot;</span>, <span style="color: #cc66cc;">12</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//serial stuff</span>
    myPort <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Serial<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span>, Serial.<span style="color: #006633;">list</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>, <span style="color: #cc66cc;">9600</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    myPort.<span style="color: #006633;">bufferUntil</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'<span style="color: #000099; font-weight: bold;">\n</span>'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//map setup</span>
<span style="color: #666666; font-style: italic;">//http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=de&amp;geocode=&amp;q=W%C3%BCrzburg&amp;sll=40.580585,-42.890625&amp;sspn=37.44158,80.419922&amp;ie=UTF8&amp;hq=&amp;hnear=W%C3%BCrzburg,+Bayern,+Deutschland&amp;ll=49.788783,9.93284&amp;spn=0.000977,0.002454&amp;t=h&amp;z=19</span>
    map <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> InteractiveMap<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span>, <span style="color: #000000; font-weight: bold;">new</span> Microsoft.<span style="color: #006633;">AerialProvider</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    map.<span style="color: #006633;">setCenterZoom</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> Location<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">49.789</span>, <span style="color: #cc66cc;">9.933</span><span style="color: #009900;">&#41;</span>, <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    addMouseWheelListener<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #006633;">MouseWheelListener</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span> 
        <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> mouseWheelMoved<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #006633;">MouseWheelEvent</span> evt<span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span> 
            mouseWheel<span style="color: #009900;">&#40;</span>evt.<span style="color: #006633;">getWheelRotation</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
   <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> draw<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    background<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">80</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
&nbsp;
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mode <span style="color: #339933;">==</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">draw</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000066; font-weight: bold;">boolean</span> hand <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>gui<span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&lt;</span> buttons.<span style="color: #006633;">length</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                buttons<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #006633;">draw</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                hand <span style="color: #339933;">=</span> hand <span style="color: #339933;">||</span> buttons<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #009900;">&#125;</span>      
        <span style="color: #009900;">&#125;</span>
&nbsp;
        cursor<span style="color: #009900;">&#40;</span>hand <span style="color: #339933;">?</span> HAND <span style="color: #339933;">:</span> CROSS<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>keyPressed<span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> CODED<span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>keyCode <span style="color: #339933;">==</span> LEFT<span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    map.<span style="color: #006633;">tx</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">5.0</span><span style="color: #339933;">/</span>map.<span style="color: #006633;">sc</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
&nbsp;
                <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>keyCode <span style="color: #339933;">==</span> RIGHT<span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    map.<span style="color: #006633;">tx</span> <span style="color: #339933;">-=</span> <span style="color: #cc66cc;">5.0</span><span style="color: #339933;">/</span>map.<span style="color: #006633;">sc</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
&nbsp;
                <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>keyCode <span style="color: #339933;">==</span> UP<span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    map.<span style="color: #006633;">ty</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">5.0</span><span style="color: #339933;">/</span>map.<span style="color: #006633;">sc</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
&nbsp;
                <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>keyCode <span style="color: #339933;">==</span> DOWN<span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    map.<span style="color: #006633;">ty</span> <span style="color: #339933;">-=</span> <span style="color: #cc66cc;">5.0</span><span style="color: #339933;">/</span>map.<span style="color: #006633;">sc</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
            <span style="color: #009900;">&#125;</span>  
&nbsp;
            <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'+'</span> <span style="color: #339933;">||</span> key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'='</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                map.<span style="color: #006633;">sc</span> <span style="color: #339933;">*=</span> <span style="color: #cc66cc;">1.05</span><span style="color: #339933;">;</span>
            <span style="color: #009900;">&#125;</span>
&nbsp;
            <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'_'</span> <span style="color: #339933;">||</span> key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'-'</span> <span style="color: #339933;">&amp;&amp;</span> map.<span style="color: #006633;">sc</span> <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                map.<span style="color: #006633;">sc</span> <span style="color: #339933;">*=</span> <span style="color: #cc66cc;">1.0</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">1.05</span><span style="color: #339933;">;</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>gui<span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            textFont<span style="color: #009900;">&#40;</span>font, <span style="color: #cc66cc;">12</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            Location location <span style="color: #339933;">=</span> map.<span style="color: #006633;">pointLocation</span><span style="color: #009900;">&#40;</span>mouseX, mouseY<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            fill<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            noStroke<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            rect<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">5</span>, height<span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">-</span>g.<span style="color: #006633;">textSize</span>, textWidth<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mouse: &quot;</span> <span style="color: #339933;">+</span> location<span style="color: #009900;">&#41;</span>, g.<span style="color: #006633;">textSize</span><span style="color: #339933;">+</span>textDescent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            fill<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">255</span>,<span style="color: #cc66cc;">255</span>,<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            textAlign<span style="color: #009900;">&#40;</span>LEFT, BOTTOM<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            text<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mouse: &quot;</span> <span style="color: #339933;">+</span> location, <span style="color: #cc66cc;">5</span>, height<span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            location <span style="color: #339933;">=</span> map.<span style="color: #006633;">pointLocation</span><span style="color: #009900;">&#40;</span>width<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>, height<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            fill<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            noStroke<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #000066; font-weight: bold;">float</span> rw <span style="color: #339933;">=</span> textWidth<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;map: &quot;</span> <span style="color: #339933;">+</span> location<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            rect<span style="color: #009900;">&#40;</span>width<span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">-</span>rw, height<span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">-</span>g.<span style="color: #006633;">textSize</span>, rw, g.<span style="color: #006633;">textSize</span><span style="color: #339933;">+</span>textDescent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            fill<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">255</span>,<span style="color: #cc66cc;">255</span>,<span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            textAlign<span style="color: #009900;">&#40;</span>RIGHT, BOTTOM<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            text<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;map: &quot;</span> <span style="color: #339933;">+</span> location, width<span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span>, height<span style="color: #339933;">-</span><span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">/*
    location = new Location(51.500, -0.126);
    Point2f p = map.locationPoint(location);
&nbsp;
    fill(0,255,128);
    stroke(255,255,0);
    ellipse(p.x, p.y, 10, 10); */</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    smooth<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> keyReleased<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'g'</span> <span style="color: #339933;">||</span> key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'G'</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        gui <span style="color: #339933;">=</span> <span style="color: #339933;">!</span>gui<span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'s'</span> <span style="color: #339933;">||</span> key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'S'</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        save<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;modest-maps-app.png&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'z'</span> <span style="color: #339933;">||</span> key <span style="color: #339933;">==</span> <span style="color: #0000ff;">'Z'</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">sc</span> <span style="color: #339933;">=</span> pow<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span>, map.<span style="color: #006633;">getZoom</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>key <span style="color: #339933;">==</span> <span style="color: #0000ff;">' '</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">sc</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2.0</span><span style="color: #339933;">;</span>
        map.<span style="color: #006633;">tx</span> <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">128</span><span style="color: #339933;">;</span>
        map.<span style="color: #006633;">ty</span> <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">128</span><span style="color: #339933;">;</span> 
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> mouseDragged<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000066; font-weight: bold;">boolean</span> hand <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>gui<span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&lt;</span> buttons.<span style="color: #006633;">length</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            hand <span style="color: #339933;">=</span> hand <span style="color: #339933;">||</span> buttons<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>hand<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>hand<span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">mouseDragged</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> mouseWheel<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> delta<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>delta <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">sc</span> <span style="color: #339933;">*=</span> <span style="color: #cc66cc;">1.05</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>delta <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">sc</span> <span style="color: #339933;">*=</span> <span style="color: #cc66cc;">1.0</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">1.05</span><span style="color: #339933;">;</span> 
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> mouseClicked<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>in.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">zoomIn</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>out.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">zoomOut</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>up.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">panUp</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>down.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">panDown</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>left.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">panLeft</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>right.<span style="color: #006633;">mouseOver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        map.<span style="color: #006633;">panRight</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">class</span> <span style="color: #003399;">Button</span>
<span style="color: #009900;">&#123;</span>  
  <span style="color: #000066; font-weight: bold;">float</span> x, y, w, h<span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #003399;">Button</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">float</span> x, <span style="color: #000066; font-weight: bold;">float</span> y, <span style="color: #000066; font-weight: bold;">float</span> w, <span style="color: #000066; font-weight: bold;">float</span> h<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">x</span> <span style="color: #339933;">=</span> x<span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">y</span> <span style="color: #339933;">=</span> y<span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">w</span> <span style="color: #339933;">=</span> w<span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">h</span> <span style="color: #339933;">=</span> h<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span> 
&nbsp;
  <span style="color: #000066; font-weight: bold;">boolean</span> mouseOver<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #009900;">&#40;</span>mouseX <span style="color: #339933;">&gt;</span> x <span style="color: #339933;">&amp;&amp;</span> mouseX <span style="color: #339933;">&lt;</span> x <span style="color: #339933;">+</span> w <span style="color: #339933;">&amp;&amp;</span> mouseY <span style="color: #339933;">&gt;</span> y <span style="color: #339933;">&amp;&amp;</span> mouseY <span style="color: #339933;">&lt;</span> y <span style="color: #339933;">+</span> h<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">void</span> draw<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    stroke<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">80</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    fill<span style="color: #009900;">&#40;</span>mouseOver<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">?</span> <span style="color: #cc66cc;">255</span> <span style="color: #339933;">:</span> <span style="color: #cc66cc;">220</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    rect<span style="color: #009900;">&#40;</span>x,y,w,h<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
  <span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">class</span> ZoomButton <span style="color: #000000; font-weight: bold;">extends</span> <span style="color: #003399;">Button</span> <span style="color: #009900;">&#123;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">boolean</span> in <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span><span style="color: #339933;">;</span>
&nbsp;
  ZoomButton<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">float</span> x, <span style="color: #000066; font-weight: bold;">float</span> y, <span style="color: #000066; font-weight: bold;">float</span> w, <span style="color: #000066; font-weight: bold;">float</span> h, <span style="color: #000066; font-weight: bold;">boolean</span> in<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">super</span><span style="color: #009900;">&#40;</span>x, y, w, h<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">in</span> <span style="color: #339933;">=</span> in<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">void</span> draw<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">draw</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    stroke<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>in<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">class</span> PanButton <span style="color: #000000; font-weight: bold;">extends</span> <span style="color: #003399;">Button</span> <span style="color: #009900;">&#123;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">int</span> dir <span style="color: #339933;">=</span> UP<span style="color: #339933;">;</span>
&nbsp;
  PanButton<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">float</span> x, <span style="color: #000066; font-weight: bold;">float</span> y, <span style="color: #000066; font-weight: bold;">float</span> w, <span style="color: #000066; font-weight: bold;">float</span> h, <span style="color: #000066; font-weight: bold;">int</span> dir<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">super</span><span style="color: #009900;">&#40;</span>x, y, w, h<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">dir</span> <span style="color: #339933;">=</span> dir<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000066; font-weight: bold;">void</span> draw<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">draw</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    stroke<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">switch</span><span style="color: #009900;">&#40;</span>dir<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #000000; font-weight: bold;">case</span> UP<span style="color: #339933;">:</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">6</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">6</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
      <span style="color: #000000; font-weight: bold;">case</span> DOWN<span style="color: #339933;">:</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">6</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">6</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
      <span style="color: #000000; font-weight: bold;">case</span> LEFT<span style="color: #339933;">:</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span><span style="color: #cc66cc;">6</span>,y<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span><span style="color: #cc66cc;">6</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
      <span style="color: #000000; font-weight: bold;">case</span> RIGHT<span style="color: #339933;">:</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">6</span>,y<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        line<span style="color: #009900;">&#40;</span>x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">3</span>,y<span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>,x<span style="color: #339933;">+</span>w<span style="color: #339933;">-</span><span style="color: #cc66cc;">6</span>,y<span style="color: #339933;">+</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">+</span>h<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> serialEvent <span style="color: #009900;">&#40;</span>Serial myPort<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// get the ASCII string:</span>
    <span style="color: #003399;">String</span> inString <span style="color: #339933;">=</span> myPort.<span style="color: #006633;">readStringUntil</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'<span style="color: #000099; font-weight: bold;">\n</span>'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>inString <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        inString <span style="color: #339933;">=</span> trim<span style="color: #009900;">&#40;</span>inString<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000066; font-weight: bold;">float</span> inByte <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">float</span><span style="color: #009900;">&#40;</span>inString<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #666666; font-style: italic;">//println(inByte);</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>inByte <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">100</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>inByte <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">50</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>upperCounter <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    upperCounter<span style="color: #339933;">++;</span>
                    <span style="color: #666666; font-style: italic;">//println(&quot;UPPER&quot; + upperCounter);</span>
                <span style="color: #009900;">&#125;</span>
&nbsp;
                <span style="color: #000000; font-weight: bold;">else</span>
                <span style="color: #009900;">&#123;</span>
                    map.<span style="color: #006633;">sc</span> <span style="color: #339933;">*=</span> map<span style="color: #009900;">&#40;</span>inByte, <span style="color: #cc66cc;">15</span>, <span style="color: #cc66cc;">36</span>, <span style="color: #cc66cc;">1.3</span>, <span style="color: #cc66cc;">1.00</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    <span style="color: #666666; font-style: italic;">//map.zoomIn();</span>
                    upperCounter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
                    println<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;ZOOM IN&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>               
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>inByte <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">100</span> <span style="color: #339933;">&amp;&amp;</span>
                inByte <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">155</span>            
        <span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>
                inByte <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">135</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>lowerCounter <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    lowerCounter<span style="color: #339933;">++;</span>
                    <span style="color: #666666; font-style: italic;">//println(&quot;LOWER&quot; + lowerCounter);</span>
                <span style="color: #009900;">&#125;</span>
&nbsp;
                <span style="color: #000000; font-weight: bold;">else</span>
                <span style="color: #009900;">&#123;</span>
                    <span style="color: #666666; font-style: italic;">//map.zoomOut();</span>
                    map.<span style="color: #006633;">sc</span> <span style="color: #339933;">*=</span> <span style="color: #cc66cc;">1.0</span><span style="color: #339933;">/</span>map<span style="color: #009900;">&#40;</span>inByte, <span style="color: #cc66cc;">115</span>, <span style="color: #cc66cc;">137</span>, <span style="color: #cc66cc;">1.3</span>, <span style="color: #cc66cc;">1.00</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    lowerCounter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
                    println<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;ZOOM OUT&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/verbogen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Energie</title>
		<link>http://fishnation.de/reactions/energie/</link>
		<comments>http://fishnation.de/reactions/energie/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 22:45:33 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Präsentation]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=176</guid>
		<description><![CDATA[Für die Arbeit in dieser Woche habe ich mich mit dem Thema Energie beschäftigt. Da man Energie ja nicht direkt wahrnehmen kann, sondern immer nur ihre Auswirkungen, möchte ich mich in den kommenden Wochen damit weiter auseinandersetzen. Dazu habe ich mir einige Fragen gestellt. Welche physikalische Form hat Energie? Wo ist Energie? Wie lässt sich [...]]]></description>
			<content:encoded><![CDATA[<p>Für die Arbeit in dieser Woche habe ich mich mit dem Thema Energie beschäftigt. <span id="more-176"></span>Da man Energie ja nicht direkt wahrnehmen kann, sondern immer nur ihre Auswirkungen, möchte ich mich in den kommenden Wochen damit weiter auseinandersetzen. Dazu habe ich mir einige Fragen gestellt.</p>
<ul>
<li>Welche physikalische Form hat Energie?</li>
<li>Wo ist Energie?</li>
<li>Wie lässt sich Energie visualisieren und begreifen?</li>
</ul>
<p>Ich habe ich zu diesem Thema einen Versuch aufgebaut. Man kann eine kleine Lampe &#8220;ausblasen&#8221;.<br />
<object width="550" height="413" type="application/x-shockwave-flash" data="http://vimeo.com/moogaloop.swf?clip_id=8222524&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8222524&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=0" /></object><br />

<a href='http://fishnation.de/reactions/energie/pc082354/' title='Aufbau 1'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/PC082354-150x150.png" class="attachment-thumbnail" alt="Aufbau 1" title="Aufbau 1" /></a>
<a href='http://fishnation.de/reactions/energie/pc082355/' title='Aufbau 2'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/PC082355-150x150.png" class="attachment-thumbnail" alt="Aufbau 2" title="Aufbau 2" /></a>
<a href='http://fishnation.de/reactions/energie/pc092358/' title='Licht an'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/PC092358-150x150.png" class="attachment-thumbnail" alt="Licht an" title="Licht an" /></a>
<a href='http://fishnation.de/reactions/energie/pc092367/' title='Licht aus'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/PC092367-150x150.png" class="attachment-thumbnail" alt="Licht aus" title="Licht aus" /></a>
</p>
<p>Der Arduino Code:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #993333;">int</span> sensorPin <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
<span style="color: #993333;">int</span> LEDPin <span style="color: #339933;">=</span> <span style="color: #0000dd;">8</span><span style="color: #339933;">;</span>
<span style="color: #993333;">int</span> var<span style="color: #339933;">;</span>
<span style="color: #993333;">int</span> counter<span style="color: #339933;">;</span>
boolean light <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">true</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #993333;">void</span> setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span>
    Serial.<span style="color: #202020;">begin</span><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">9600</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    pinMode<span style="color: #009900;">&#40;</span>sensorPin<span style="color: #339933;">,</span> INPUT<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    pinMode<span style="color: #009900;">&#40;</span>LEDPin<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    digitalWrite<span style="color: #009900;">&#40;</span>LEDPin<span style="color: #339933;">,</span> HIGH<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #993333;">void</span> loop<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span>
    var <span style="color: #339933;">=</span> analogRead<span style="color: #009900;">&#40;</span>sensorPin<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    Serial.<span style="color: #202020;">println</span><span style="color: #009900;">&#40;</span>var<span style="color: #339933;">,</span> DEC<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>var <span style="color: #339933;">&gt;</span> <span style="color: #0000dd;">50</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        light <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">true</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #b1b100;">else</span>
    <span style="color: #009900;">&#123;</span>
        light <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">false</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
   <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>light <span style="color: #339933;">==</span> <span style="color: #000000; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span>
   <span style="color: #009900;">&#123;</span>
       digitalWrite<span style="color: #009900;">&#40;</span>LEDPin<span style="color: #339933;">,</span> HIGH<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
&nbsp;
   <span style="color: #b1b100;">else</span>
   <span style="color: #009900;">&#123;</span>
       digitalWrite<span style="color: #009900;">&#40;</span>LEDPin<span style="color: #339933;">,</span> LOW<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>   
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/energie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fühlbare Hologramme</title>
		<link>http://fishnation.de/reactions/fuehlbare-hologramme/</link>
		<comments>http://fishnation.de/reactions/fuehlbare-hologramme/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 09:45:41 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Recherche]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=169</guid>
		<description><![CDATA[Bei golem habe ich eine eine interressantes Projekt gefunden: Video: Airborne Ultrasound Tactile Display &#8211; f&#252;hlbare Hologramme (2:37)]]></description>
			<content:encoded><![CDATA[<p>Bei <a href="http://www.golem.de/0908/68901.html">golem</a> habe ich eine eine interressantes Projekt gefunden:</p>
<p><object width="550" height="413"><param name="movie" value="http://video.golem.de/player/videoplayer.swf?id=2263&#038;autoPl=false"></param><param name="allowFullScreen" value="true"></param><param name="AllowScriptAccess" value="always"><embed src="http://video.golem.de/player/videoplayer.swf?id=2263&#038;autoPl=false" type="application/x-shockwave-flash" allowfullscreen="true" AllowScriptAccess="always" width="550" height="413"></embed></object></p>
<p><a href="http://video.golem.de/wissenschaft/2263/airborne-ultrasound-tactile-display-fuehlbare-hologramme.html">Video: Airborne Ultrasound Tactile Display &#8211; f&uuml;hlbare Hologramme</a> (2:37)</p>
]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/fuehlbare-hologramme/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mail</title>
		<link>http://fishnation.de/reactions/mail/</link>
		<comments>http://fishnation.de/reactions/mail/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 23:36:36 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Idee]]></category>
		<category><![CDATA[Präsentation]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=156</guid>
		<description><![CDATA[Ich habe die Suche nach Anwendungen für das &#8220;Nagelbrett&#8221; fortgesetzt. Letzte Woche hatte ich mich mit dem Thema Wetterdaten &#38; Temperatur beschäftigt, diese Woche habe ich mit Email und Textmitteilungen beschäftigt. Dazu habe ich zunächst eine neue Email-Adresse angelegt (snorpey@gmail.com) und diese mit Hilfe eines Processing-Sketches abgefragt (Code folgt unten). Je nach dem, wie viele [...]]]></description>
			<content:encoded><![CDATA[<p>Ich habe die Suche nach Anwendungen für das &#8220;Nagelbrett&#8221; fortgesetzt. Letzte Woche hatte ich mich mit dem Thema Wetterdaten &amp; Temperatur beschäftigt, diese Woche habe ich mit Email und Textmitteilungen beschäftigt. <span id="more-156"></span>Dazu habe ich zunächst eine neue Email-Adresse angelegt (<a href="mailto:snorpey@gmail.com">snorpey@gmail.com</a>) und diese mit Hilfe eines <a href="http://www.shiffman.net/2007/11/13/e-mail-processing/">Processing-Sketches</a> abgefragt (Code folgt unten).</p>
<p><img class="alignnone size-full wp-image-157" title="Emails mit Processing abrufen" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/Bildschirmfoto-2009-12-02-um-00.35.31.png" alt="Emails mit Processing abrufen" width="430" height="252" /></p>
<p>Je nach dem, wie viele neue Mails ich bekommen habe, verformt sich die Oberfläche mehr oder weniger. Ein Klick auf das Fenster simuliert das Lesen der neuen Nachrichten, die Oberfläche ist dann glatt.</p>
<p><img class="alignnone size-full wp-image-158" title="Abrufen von Emails mit Processing" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/Bildschirmfoto-2009-12-02-um-00.49.47.png" alt="Abrufen von Emails mit Processing" width="430" height="252" /></p>
<p>Die Verformung und das &#8220;Nagelbrett&#8221; sind natürlich nur ein unfertiges, fehlerhaftes Modell und stehen für die Überlegung, was passieren würde, wenn mobile Endgeräte ihre Form bei Erhalt von Nachrichten änderten. Dabei wäre sicher auch interressant, ob und wie die Verformung auf den Inhalt und den Absender der Nachricht Bezug nimmt.</p>

<a href='http://fishnation.de/reactions/mail/bildschirmfoto-2009-12-02-um-00-35-31/' title='Emails mit Processing abrufen'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/Bildschirmfoto-2009-12-02-um-00.35.31-150x150.png" class="attachment-thumbnail" alt="Emails mit Processing abrufen" title="Emails mit Processing abrufen" /></a>
<a href='http://fishnation.de/reactions/mail/bildschirmfoto-2009-12-02-um-00-49-47/' title='Abrufen von Emails mit Processing'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/Bildschirmfoto-2009-12-02-um-00.49.47-150x150.png" class="attachment-thumbnail" alt="Abrufen von Emails mit Processing" title="Abrufen von Emails mit Processing" /></a>
<a href='http://fishnation.de/reactions/mail/pc022346/' title='Oberfläche bei 2 empfangenen Nachrichten'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/PC022346-150x150.png" class="attachment-thumbnail" alt="Oberfläche bei 2 empfangenen Nachrichten" title="Oberfläche bei 2 empfangenen Nachrichten" /></a>
<a href='http://fishnation.de/reactions/mail/pc022353/' title='Oberfläche bei keinen neuen Nachrichten'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/12/PC022353-150x150.png" class="attachment-thumbnail" alt="Oberfläche bei keinen neuen Nachrichten" title="Oberfläche bei keinen neuen Nachrichten" /></a>

<p>Es folgt der Code zum Email-Abrufen Sketch (funktioniert leider nur mit <a href="http://www.gmail.com">gmail</a>-Adressen, für andere Mailadressen sind andere Sicherheitseinstellungen nötig, die ich leider nicht ermitteln konnte.)</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.mail.*</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.mail.internet.*</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.mail.Authenticator</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.mail.PasswordAuthentication</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">int</span> mailCount<span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">int</span> mailUnread <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">int</span> mailNew <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">int</span> counter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
PFont font<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    frameRate<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">30</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    size<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">350</span>, <span style="color: #cc66cc;">150</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    mailCount <span style="color: #339933;">=</span> mailCount<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    font <span style="color: #339933;">=</span> createFont<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;LucidaGrande&quot;</span>, <span style="color: #cc66cc;">24</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> draw<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    background<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>counter <span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;=</span> <span style="color: #cc66cc;">500</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #000066; font-weight: bold;">int</span> mailsChecked <span style="color: #339933;">=</span> mailCount<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mailsChecked <span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span> mailCount<span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            mailNew<span style="color: #339933;">++;</span>
            mailUnread <span style="color: #339933;">=</span> mailNew<span style="color: #339933;">;</span>
            mailCount <span style="color: #339933;">=</span> mailsChecked<span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        counter <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    stroke<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">80</span>, <span style="color: #cc66cc;">30</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    strokeWeight<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">150</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    strokeCap<span style="color: #009900;">&#40;</span>SQUARE<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    line<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span>, height<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span>, map<span style="color: #009900;">&#40;</span>counter, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">500</span>, <span style="color: #cc66cc;">0</span>, width<span style="color: #009900;">&#41;</span>, height<span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    noStroke<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    counter<span style="color: #339933;">++;</span>
&nbsp;
    fill<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">80</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    textFont<span style="color: #009900;">&#40;</span>font<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mailUnread <span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        text<span style="color: #009900;">&#40;</span>mailUnread <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; neue Emails&quot;</span>, <span style="color: #cc66cc;">50</span>, <span style="color: #009900;">&#40;</span>height <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">else</span>
    <span style="color: #009900;">&#123;</span>
        text<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;keine neuen Emails&quot;</span>, <span style="color: #cc66cc;">50</span>, <span style="color: #009900;">&#40;</span>height <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">void</span> mouseClicked<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>mailUnread <span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        mailUnread <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Auth <span style="color: #000000; font-weight: bold;">extends</span> <span style="color: #003399;">Authenticator</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">public</span> Auth<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">super</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">PasswordAuthentication</span> getPasswordAuthentication<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #003399;">String</span> username, password<span style="color: #339933;">;</span>
        username <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;YOURNAME@gmail.com&quot;</span><span style="color: #339933;">;</span>
        password <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;YOURPASSWORD&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;authenticating. . &quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">PasswordAuthentication</span><span style="color: #009900;">&#40;</span>username, password<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">int</span> mailCount<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000066; font-weight: bold;">int</span> returnValue <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">try</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #003399;">Properties</span> props <span style="color: #339933;">=</span> <span style="color: #003399;">System</span>.<span style="color: #006633;">getProperties</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        props.<span style="color: #006633;">put</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mail.pop3.host&quot;</span>, <span style="color: #0000ff;">&quot;pop.gmail.com&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        props.<span style="color: #006633;">put</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mail.pop3.port&quot;</span>, <span style="color: #0000ff;">&quot;995&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        props.<span style="color: #006633;">put</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mail.pop3.starttls.enable&quot;</span>, <span style="color: #0000ff;">&quot;true&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        props.<span style="color: #006633;">setProperty</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mail.pop3.socketFactory.fallback&quot;</span>, <span style="color: #0000ff;">&quot;false&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        props.<span style="color: #006633;">setProperty</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;mail.pop3.socketFactory.class&quot;</span>,<span style="color: #0000ff;">&quot;javax.net.ssl.SSLSocketFactory&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        Auth auth <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Auth<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        Session session <span style="color: #339933;">=</span> Session.<span style="color: #006633;">getDefaultInstance</span><span style="color: #009900;">&#40;</span>props, auth<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        Store store <span style="color: #339933;">=</span> session.<span style="color: #006633;">getStore</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;pop3&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        store.<span style="color: #006633;">connect</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        Folder folder <span style="color: #339933;">=</span> store.<span style="color: #006633;">getFolder</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;INBOX&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        folder.<span style="color: #006633;">open</span><span style="color: #009900;">&#40;</span>Folder.<span style="color: #006633;">READ_ONLY</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        returnValue <span style="color: #339933;">=</span> folder.<span style="color: #006633;">getMessageCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        folder.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        store.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> 
&nbsp;
    <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">Exception</span> e<span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">return</span> returnValue<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/mail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Online-Daten</title>
		<link>http://fishnation.de/reactions/online-daten/</link>
		<comments>http://fishnation.de/reactions/online-daten/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 17:41:18 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Idee]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=146</guid>
		<description><![CDATA[In der vorletzten Woche hatte ich mit online-Datenquellen für meine Ausgabemedien beschäftigt. Dabei habe ich zum einen die Google Weather API und zum anderen die GeoNames API ausprobiert. Dabei ist folgender Sketch entstanden (auf das Bild klicken). Man kann einen Ort auf der Weltkarte per Klick auswählen, zu dem dann (soweit möglich) die Temperatur angezeigt [...]]]></description>
			<content:encoded><![CDATA[<p>In der vorletzten Woche hatte ich mit online-Datenquellen für meine Ausgabemedien beschäftigt. Dabei habe ich zum einen die <a href="http://www.google.de/ig/api?weather=W%C3%BCrzburg">Google Weather API</a> und zum anderen die <a href="http://ws.geonames.org/search?q=w%C3%BCrzburg">GeoNames API</a> ausprobiert. <span id="more-146"></span>Dabei ist folgender Sketch entstanden (auf das Bild klicken).</p>
<p><a href="http://www.fishnation.de/processing/2009-11-28-world-temperature"><img class="alignnone size-medium wp-image-148" title="world temperature" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/Bildschirmfoto-2009-11-30-um-18.40.40-494x300.png" alt="world temperature" width="494" height="300" /></a></p>
<p>Man kann einen Ort auf der Weltkarte per Klick auswählen, zu dem dann (soweit möglich) die Temperatur angezeigt wird. Die Zuordnung der Punkte stimmt teilweise noch nicht ganz, das liegt an der Verzerrung der <a href="http://commons.wikimedia.org/wiki/File_talk:BlankMap-World6.svg">Weltkarte</a>, die ich verwendet habe.</p>
<p>Ich habe mich dann weiter damit beschäftigt, wie ich meine Ausgabemedien sinnvoll einsetzen kann, ob und wie ich es in Zusammenhang mit den Daten aus dem Internet bringen kann. Dabei hatte ich die Idee, eine große, &#8220;fühlbare&#8221; Weltkarte zu bauen und dabei das Prinzip zu verwenden, dass ich schon beim Nagelbrett genutzt hatte. So wäre eine Region, je nach ihrer aktuellen Temperatur herausgehoben bzw. heruntergesetzt.</p>
<p>Übrigens: Um einem Java-Applet, das Online ist den Zugriff auf das Internet zu erlauben muss man es signieren. Dazu gibt es eine Anleitung bei <a href="http://processing.org/hacks/hacks:signapplet">processing:hacks</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/online-daten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Servo Productions Ltd.</title>
		<link>http://fishnation.de/reactions/servo-productions-ltd/</link>
		<comments>http://fishnation.de/reactions/servo-productions-ltd/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 22:01:03 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Präsentation]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=131</guid>
		<description><![CDATA[Im Anschluss an die Arbeit der letzten Woche habe ich mir diese Woche Gedanken zum Thema Oberflächen gemacht. Dabei habe ich diesmal versucht das &#8220;(Nacken)haare aufstellen&#8221; zu simulieren. Dazu habe ich zunächst einen einfachen Test gemacht, und dann die Fläche vergrößert und sie an einen Servo angeschlossen. Leider ist der Servo heute abend kaputt gegangen, [...]]]></description>
			<content:encoded><![CDATA[<p>Im Anschluss an die Arbeit der letzten Woche habe ich mir diese Woche Gedanken zum Thema <em>Oberflächen</em> gemacht. Dabei habe ich diesmal versucht das &#8220;(Nacken)haare aufstellen&#8221; zu simulieren.<span id="more-131"></span> Dazu habe ich zunächst einen einfachen Test gemacht, und dann die Fläche vergrößert und sie an einen Servo angeschlossen.
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172318/' title='Test mit Papier und Faden'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172318-150x150.jpg" class="attachment-thumbnail" alt="Test mit Papier und Faden" title="Test mit Papier und Faden" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172319/' title='Test mit gezogenem Faden'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172319-150x150.jpg" class="attachment-thumbnail" alt="Test mit gezogenem Faden" title="Test mit gezogenem Faden" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172321/' title='Testaufbau'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172321-150x150.jpg" class="attachment-thumbnail" alt="Testaufbau" title="Testaufbau" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172322/' title='Testaufbau'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172322-150x150.jpg" class="attachment-thumbnail" alt="Testaufbau" title="Testaufbau" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172323/' title='Testaufbau'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172323-150x150.jpg" class="attachment-thumbnail" alt="Testaufbau" title="Testaufbau" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172324/' title='Testaufbau'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172324-150x150.jpg" class="attachment-thumbnail" alt="Testaufbau" title="Testaufbau" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172325/' title='Testaufbau'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172325-150x150.jpg" class="attachment-thumbnail" alt="Testaufbau" title="Testaufbau" /></a>
<a href='http://fishnation.de/reactions/servo-productions-ltd/pb172326/' title='Testaufbau'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB172326-150x150.jpg" class="attachment-thumbnail" alt="Testaufbau" title="Testaufbau" /></a>
</p>
<p>Leider ist der Servo heute abend kaputt gegangen, das Zahnrad aussen dreht sich nicht mehr. Für die beiden Servos aus der Villa, die ich ausgeliehen habe, braucht man einen Adapter, um sie ans Arduino anzuschließen, den ich (noch) nicht habe.</p>
<p>Ich hatte eigentlich geplant, den Servo an einen Bewegungssensor anzuschliessen, so dass die Oberfläche ähnlich reagiert wie eine Mimose: Bei Erschütterungen richten sich die &#8220;Haare&#8221; und fallen dann langsam wieder zusammen. Die neuen Servos sind schon auf dem Weg, ich hoffe, dass ich die Simulation bis nächste Woche fertig bekomme.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/servo-productions-ltd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nagelbrett</title>
		<link>http://fishnation.de/reactions/nagelbrett/</link>
		<comments>http://fishnation.de/reactions/nagelbrett/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 21:24:32 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Idee]]></category>
		<category><![CDATA[Programmierung]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=103</guid>
		<description><![CDATA[Im Anschluss an die Arbeit der letzten Woche habe ich mir weiter Gedanken über thermorektive Interfaces gemacht. Dazu habe ich versucht, die im Kurs schon mehrfach angesprochene Gänsehaut bei kalter Temperatur mit den mir zu Verfügung stehenden (sehr einfachen) Mitteln zu bauen. Einige Bilder vom Zusammenbau: Das &#8220;Gerät&#8221; ist noch nicht fertig; zum einen fehlt [...]]]></description>
			<content:encoded><![CDATA[<p>Im Anschluss an die Arbeit der letzten Woche habe ich mir weiter Gedanken über thermorektive Interfaces gemacht. Dazu habe ich versucht, die im Kurs schon mehrfach angesprochene <em>Gänsehaut</em> bei kalter Temperatur mit den mir zu Verfügung stehenden (sehr einfachen) Mitteln zu bauen.<br />
<span id="more-103"></span> Einige Bilder vom Zusammenbau:
<a href='http://fishnation.de/reactions/nagelbrett/pb102269/' title='Schwamm'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102269-150x150.jpg" class="attachment-thumbnail" alt="Schwamm" title="Schwamm" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102270/' title='geteilter Schwamm'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102270-150x150.jpg" class="attachment-thumbnail" alt="geteilter Schwamm" title="geteilter Schwamm" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102274/' title='Marierungen für Löcher auf dem Schwamm'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102274-150x150.jpg" class="attachment-thumbnail" alt="Marierungen für Löcher auf dem Schwamm" title="Marierungen für Löcher auf dem Schwamm" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102275/' title='Löcher im Schwamm'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102275-150x150.jpg" class="attachment-thumbnail" alt="Löcher im Schwamm" title="Löcher im Schwamm" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102278/' title='Karton mit Löchern'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102278-150x150.jpg" class="attachment-thumbnail" alt="Karton mit Löchern" title="Karton mit Löchern" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102281/' title='Schwamm mit Löchern'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102281-150x150.jpg" class="attachment-thumbnail" alt="Schwamm mit Löchern" title="Schwamm mit Löchern" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102284/' title='Nägel im Schwamm'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102284-150x150.jpg" class="attachment-thumbnail" alt="Nägel im Schwamm" title="Nägel im Schwamm" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102285/' title='Nagelbrett'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102285-150x150.jpg" class="attachment-thumbnail" alt="Nagelbrett" title="Nagelbrett" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102286/' title='Nagelbrett im Schwamm'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102286-150x150.jpg" class="attachment-thumbnail" alt="Nagelbrett im Schwamm" title="Nagelbrett im Schwamm" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102288/' title='Vorlage für Box 1'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102288-150x150.jpg" class="attachment-thumbnail" alt="Vorlage für Box 1" title="Vorlage für Box 1" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102292/' title='Servomotor'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102292-150x150.jpg" class="attachment-thumbnail" alt="Servomotor" title="Servomotor" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102294/' title='Servomotor integriert in Box 1'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102294-150x150.jpg" class="attachment-thumbnail" alt="Servomotor integriert in Box 1" title="Servomotor integriert in Box 1" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102296/' title='Innenleben von Box 2'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102296-150x150.jpg" class="attachment-thumbnail" alt="Innenleben von Box 2" title="Innenleben von Box 2" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102299/' title='Box 1 und Box 2 zusammengebaut'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102299-150x150.jpg" class="attachment-thumbnail" alt="Box 1 und Box 2 zusammengebaut" title="Box 1 und Box 2 zusammengebaut" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102300/' title='Übersicht ohne Stoffbezug'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102300-150x150.jpg" class="attachment-thumbnail" alt="Übersicht ohne Stoffbezug" title="Übersicht ohne Stoffbezug" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102301/' title='Übersicht mit Stoffbezug'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102301-150x150.jpg" class="attachment-thumbnail" alt="Übersicht mit Stoffbezug" title="Übersicht mit Stoffbezug" /></a>
<a href='http://fishnation.de/reactions/nagelbrett/pb102303/' title='Rückansicht'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB102303-150x150.jpg" class="attachment-thumbnail" alt="Rückansicht" title="Rückansicht" /></a>
</p>
<p>Das &#8220;Gerät&#8221; ist noch nicht fertig; zum einen fehlt im Moment noch die Kopplung mit einem Wärmesensor, zum anderen noch ein vernünftiges, nachvollziehbares Verhalten. Beim Zusammenbau sind mir noch einige Ideen gekommen, die ich gerne ausprobieren würde:</p>
<p>Wie wäre es, wenn die Oberfläche nicht nur zittern und Gänsehaut bekommen, sondern auch schwitzen,  die Farbe und die Oberflächentemperatur ändern könnte?</p>
<p>Einige technische Details: Im Moment macht der Servo eine Vierteldrehung vorwärts und rückwärts, um das Nagelbrett zu heben und zu senken. Wenn das Nagelbrett anghoben ist, kann man die Gänsehaut sehen (und noch besser spüren). Ist das Nagelbrett gesenkt, sieht und spürt man nur eine weiche Oberfläche. Der Code im Arduino entspricht im wesentlichen dem <a href="http://arduino.cc/en/Tutorial/Sweep">Beispiel</a> auf der Arduino-Webseite, lediglich die Gradzahl habe ich angepasst.</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// Sweep</span>
<span style="color: #666666; font-style: italic;">// by BARRAGAN &lt;http://barraganstudio.com&gt; </span>
&nbsp;
<span style="color: #339933;">#include &lt;Servo.h&gt; </span>
&nbsp;
Servo myservo<span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;">// create servo object to control a servo </span>
&nbsp;
<span style="color: #993333;">int</span> pos <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>    <span style="color: #666666; font-style: italic;">// variable to store the servo position </span>
&nbsp;
<span style="color: #993333;">void</span> setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span> 
  myservo.<span style="color: #202020;">attach</span><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">9</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;">// attaches the servo on pin 9 to the servo object </span>
<span style="color: #009900;">&#125;</span> 
&nbsp;
<span style="color: #993333;">void</span> loop<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span> 
  <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>pos <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> pos <span style="color: #339933;">&lt;</span> <span style="color: #0000dd;">90</span><span style="color: #339933;">;</span> pos <span style="color: #339933;">+=</span> <span style="color: #0000dd;">1</span><span style="color: #009900;">&#41;</span>  <span style="color: #666666; font-style: italic;">// goes from 0 degrees to 90 degrees </span>
  <span style="color: #009900;">&#123;</span>                                  <span style="color: #666666; font-style: italic;">// in steps of 1 degree </span>
    myservo.<span style="color: #202020;">write</span><span style="color: #009900;">&#40;</span>pos<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>              <span style="color: #666666; font-style: italic;">// tell servo to go to position in variable 'pos' </span>
    delay<span style="color: #009900;">&#40;</span><span style="color: #0000dd;">15</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                       <span style="color: #666666; font-style: italic;">// waits 15ms for the servo to reach the position </span>
  <span style="color: #009900;">&#125;</span> 
  <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>pos <span style="color: #339933;">=</span> <span style="color: #0000dd;">90</span><span style="color: #339933;">;</span> pos<span style="color: #339933;">&gt;=</span><span style="color: #0000dd;">1</span><span style="color: #339933;">;</span> pos<span style="color: #339933;">-=</span><span style="color: #0000dd;">1</span><span style="color: #009900;">&#41;</span>     <span style="color: #666666; font-style: italic;">// goes from 90 degrees to 0 degrees </span>
  <span style="color: #009900;">&#123;</span>                                
    myservo.<span style="color: #202020;">write</span><span style="color: #009900;">&#40;</span>pos<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>              <span style="color: #666666; font-style: italic;">// tell servo to go to position in variable 'pos' </span>
    delay<span style="color: #009900;">&#40;</span><span style="color: #0000dd;">15</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                       <span style="color: #666666; font-style: italic;">// waits 15ms for the servo to reach the position </span>
  <span style="color: #009900;">&#125;</span> 
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/nagelbrett/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Würfel</title>
		<link>http://fishnation.de/reactions/wuerfel/</link>
		<comments>http://fishnation.de/reactions/wuerfel/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 00:11:07 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Idee]]></category>
		<category><![CDATA[Konzept]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=69</guid>
		<description><![CDATA[Ich habe mir die letzte Woche über weiter Gedanken zum Thema thermoaktive und thermoreaktive Interfaces gemacht. Dabei habe ich mich insbesondere mit der Wirkung von Wärme und Kälte auf Menschen beschäftigt. Um einen Nutzer einzuladen, sich mit einer Sache zu näher beschäftigen, ist es sinnvoll, wenn diese Sache &#8220;lebendig&#8221; wird, oder zumindest Verhaltensweisen von Lebewesen [...]]]></description>
			<content:encoded><![CDATA[<p>Ich habe mir die letzte Woche über weiter Gedanken zum Thema thermo<em>aktive</em> und thermo<em>reaktive</em> Interfaces gemacht. Dabei habe ich mich insbesondere mit der Wirkung von Wärme und Kälte auf Menschen beschäftigt.</p>
<p>Um einen Nutzer einzuladen, sich mit einer Sache zu näher beschäftigen, ist es sinnvoll, wenn diese Sache &#8220;lebendig&#8221; wird, oder zumindest Verhaltensweisen von Lebewesen imitiert. So bekommt es der Nutzer mit vertrautem Verhalten zu tun und reagiert (hoffentlich) intuitiv darauf.<br />
<span id="more-69"></span><br />
Dazu habe ich folgenden Versuch vorbereitet: Ein Würfel wird mit einem <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=8468">Vibrationsmotor</a> und einem <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=8777">Wärmesensor</a> ausgestattet. Sobald die Umgebungstemperatur auf einen bestimmten Wert fällt, &#8220;friert&#8221; der Würfel, steigt die Temperatur wieder, geht der Motor aus.</p>
<p>Hier einige Bilder von der Baustelle:</p>

<a href='http://fishnation.de/reactions/wuerfel/pb042252/' title='Würfelplan'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042252-150x150.jpg" class="attachment-thumbnail" alt="Würfelplan" title="Würfelplan" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042253/' title='Würfelplan ausgeschnitten'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042253-150x150.jpg" class="attachment-thumbnail" alt="Würfelplan ausgeschnitten" title="Würfelplan ausgeschnitten" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042254/' title='Würfelplan gefaltet'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042254-150x150.jpg" class="attachment-thumbnail" alt="Würfelplan gefaltet" title="Würfelplan gefaltet" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042257/' title='Vibrationsmotor eingebaut'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042257-150x150.jpg" class="attachment-thumbnail" alt="Vibrationsmotor eingebaut" title="Vibrationsmotor eingebaut" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042258/' title='Temperatursensor-Verkabelung'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042258-150x150.jpg" class="attachment-thumbnail" alt="Temperatursensor-Verkabelung" title="Temperatursensor-Verkabelung" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042261/' title='der komplette Würfel'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042261-150x150.jpg" class="attachment-thumbnail" alt="der komplette Würfel" title="der komplette Würfel" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042262/' title='Der Temperatursensor auf der Oberseite'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042262-150x150.jpg" class="attachment-thumbnail" alt="Der Temperatursensor auf der Oberseite" title="Der Temperatursensor auf der Oberseite" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042263/' title='Würfel am Arduino angeschlossen'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042263-150x150.jpg" class="attachment-thumbnail" alt="Würfel am Arduino angeschlossen" title="Würfel am Arduino angeschlossen" /></a>
<a href='http://fishnation.de/reactions/wuerfel/pb042264/' title='Würfel in Bewegung'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/PB042264-150x150.jpg" class="attachment-thumbnail" alt="Würfel in Bewegung" title="Würfel in Bewegung" /></a>

<p>Und ein Video mit dem Würfel in Aktion:<br />
<object width="550" height="413" type="application/x-shockwave-flash" data="http://vimeo.com/moogaloop.swf?clip_id=7507440&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7507440&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=0" /></object></p>
<p>Der Code für den Würfel:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/*
 hardware: LilyPad Vibe, LilyPad Temperature Sensor
 author:    Georg Fischer
 source:   http://www.fishnation.de/reactions/wuerfel
&nbsp;
 lilyPad vibe connected to digital pin 7 and ground,
 temperature sensor connected to analog pin 0, 5V and ground
*/</span>
&nbsp;
<span style="color: #993333;">int</span> sensorPin <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
<span style="color: #993333;">const</span> <span style="color: #993333;">int</span> vibePin <span style="color: #339933;">=</span> <span style="color: #0000dd;">7</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #993333;">int</span> sensorValue <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #993333;">void</span> setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
  Serial.<span style="color: #202020;">begin</span><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">9600</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  pinMode<span style="color: #009900;">&#40;</span>vibePin<span style="color: #339933;">,</span> OUTPUT<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #993333;">void</span> loop<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
  sensorValue <span style="color: #339933;">=</span> analogRead<span style="color: #009900;">&#40;</span>sensorPin<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  Serial.<span style="color: #202020;">println</span><span style="color: #009900;">&#40;</span>sensorValue<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>sensorValue <span style="color: #339933;">&lt;</span> <span style="color: #0000dd;">130</span><span style="color: #009900;">&#41;</span>
  <span style="color: #009900;">&#123;</span>
    digitalWrite<span style="color: #009900;">&#40;</span>vibePin<span style="color: #339933;">,</span> HIGH<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                    
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #b1b100;">else</span>
  <span style="color: #009900;">&#123;</span>
    digitalWrite<span style="color: #009900;">&#40;</span>vibePin<span style="color: #339933;">,</span> LOW<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span> 
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/wuerfel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kalt &amp; Warm</title>
		<link>http://fishnation.de/reactions/kalt-warm/</link>
		<comments>http://fishnation.de/reactions/kalt-warm/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 20:39:38 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Experiment]]></category>
		<category><![CDATA[Foto]]></category>
		<category><![CDATA[Konzept]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=1</guid>
		<description><![CDATA[Ich habe micht entschieden, das Thema Interaktion mit thermischer Komponente, das ich Letzte Woche mit dem Video vorgestellt habe, weiter zu verfolgen. Dazu habe ich mir zunächst die möglichen Akionen der &#8220;Maschine&#8221; bzw. des Computers vorgenommen und mir folgende Fragen gestellt: Wie genau können wir als Menschen Temperaturunterschiede feststellen? Spielt dabei eine Rolle, wie schnell [...]]]></description>
			<content:encoded><![CDATA[<p>Ich habe micht entschieden, das Thema <em>Interaktion mit thermischer Komponente</em>, das ich Letzte Woche mit dem Video vorgestellt habe, weiter zu verfolgen.<br />
<span id="more-1"></span><br />
Dazu habe ich mir zunächst die möglichen <em>Akionen</em> der &#8220;Maschine&#8221; bzw. des Computers vorgenommen und mir folgende Fragen gestellt:</p>
<ul>
<li>Wie genau können wir als Menschen Temperaturunterschiede feststellen?</li>
<li>Spielt dabei eine Rolle, wie schnell diese Temperaturänderungen vonstatten gehen?</li>
<li>Wird unsere Temperaturwahrnehmnung durch das Material beeinflusst?</li>
</ul>
<p>Auch mit den <em>Reaktionen</em> habe ich mich beschäftigt und mir einige Fragen gestellt:</p>
<ul>
<li>Wie ganau kann man mit dem Temperatursensor Unterschiede in der Temperatur feststellen</li>
<li>Wie schnell kann der Temperatursensor auf die Unterschiede reagieren?</li>
</ul>
<p>Um die Fragen zu beantworten habe ich einige Experimente durchgeführt. Dazu habe ich mir zunächst einen 100er-Pack Teelichter besorgt. Aus einigen Teelichtern habe ich das Wachs und den Docht herausgenommen und sie mit Wasser und Wassereis gefüllt.</p>

<a href='http://fishnation.de/reactions/kalt-warm/pa272222/' title='Schale mit wasser'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272222-150x150.jpg" class="attachment-thumbnail" alt="Eine Aluminiumschale mit Wasser" title="Schale mit wasser" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272225/' title='Wassertemperatur prüfen'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272225-150x150.jpg" class="attachment-thumbnail" alt="Wassertemperatur prüfen" title="Wassertemperatur prüfen" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272230/' title='warme Wassertemperatur testen'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272230-150x150.jpg" class="attachment-thumbnail" alt="warme Wassertemperatur testen" title="warme Wassertemperatur testen" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272231/' title='Wassertemperaturen vergleichen'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272231-150x150.jpg" class="attachment-thumbnail" alt="Wassertemperaturen vergleichen" title="Wassertemperaturen vergleichen" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272235/' title='Wärmesensor am Arduino'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272235-150x150.jpg" class="attachment-thumbnail" alt="Wärmesensor am Arduino" title="Wärmesensor am Arduino" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272236/' title='Kaltes Wasser auf dem Wärmesensor'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272236-150x150.jpg" class="attachment-thumbnail" alt="Kaltes Wasser auf dem Wärmesensor" title="Kaltes Wasser auf dem Wärmesensor" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272244/' title='Kerze auf dem Wärmesensor'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272244-150x150.jpg" class="attachment-thumbnail" alt="Kerze auf dem Wärmesensor" title="Kerze auf dem Wärmesensor" /></a>
<a href='http://fishnation.de/reactions/kalt-warm/pa272249/' title='Übertragen der Werte an den Computer'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/10/PA272249-150x150.jpg" class="attachment-thumbnail" alt="Übertragen der Werte an den Computer" title="Übertragen der Werte an den Computer" /></a>

<p>Einige Ergebnisse meiner Versuche:</p>
<ul>
<li>Ohne Hilfsmittel kann man nur relativ große Temperaturunterschiede (&gt; 5°) spüren. Ändert sich die Temperatur langsam, wird es schwierig eine Änderung festzustellen.</li>
<li>der Temperatursensor, den ich verwende, <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=8777">Lilypad Temperature Sensor</a>, reagiert auf Temperaturänderungen erst nach einigen Sekunden (Das kann aber auch mit meiner Konstuktion zusammenhängen)</li>
</ul>
<p>Bis jetzt habe ich die Versuche nur mit Wasser durchgeführt; Experimente mit anderen Materialien stehen noch aus. Auch zu einer technischen Umsetzung habe ich mir noch keine Gedanken gemacht.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/kalt-warm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Slides vom 21.10.2009</title>
		<link>http://fishnation.de/reactions/slides-vom-21-10-2009/</link>
		<comments>http://fishnation.de/reactions/slides-vom-21-10-2009/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 08:00:50 +0000</pubDate>
		<dc:creator>Georg Fischer</dc:creator>
				<category><![CDATA[Präsentation]]></category>
		<category><![CDATA[Recherche]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://fishnation.de/reactions/?p=54</guid>
		<description><![CDATA[Soft Morphing Blob Thermal Clock]]></description>
			<content:encoded><![CDATA[
<a href='http://fishnation.de/reactions/slides-vom-21-10-2009/2009-10-12-reactions2-2/' title='2009-10-12-reactions2'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/2009-10-12-reactions21-150x150.jpg" class="attachment-thumbnail" alt="2009-10-12-reactions2" title="2009-10-12-reactions2" /></a>
<a href='http://fishnation.de/reactions/slides-vom-21-10-2009/2009-10-12-reactions3-2/' title='2009-10-12-reactions3'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/2009-10-12-reactions31-150x150.jpg" class="attachment-thumbnail" alt="2009-10-12-reactions3" title="2009-10-12-reactions3" /></a>
<a href='http://fishnation.de/reactions/slides-vom-21-10-2009/2009-10-12-reactions4-2/' title='2009-10-12-reactions4'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/2009-10-12-reactions41-150x150.jpg" class="attachment-thumbnail" alt="2009-10-12-reactions4" title="2009-10-12-reactions4" /></a>
<a href='http://fishnation.de/reactions/slides-vom-21-10-2009/2009-10-12-reactions5-2/' title='2009-10-12-reactions5'><img width="150" height="150" src="http://fishnation.de/reactions/wp-content/uploads/2009/11/2009-10-12-reactions51-150x150.jpg" class="attachment-thumbnail" alt="2009-10-12-reactions5" title="2009-10-12-reactions5" /></a>

<ul>
<li><a href="http://www.youtube.com/watch?v=SbqHERKdlK8">Soft Morphing Blob</a></li>
<li><a href="http://cwwang.com/2009/05/06/thermal-clock/">Thermal Clock</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://fishnation.de/reactions/slides-vom-21-10-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

