<?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>ARULABS</title>
	<atom:link href="http://arulabs.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://arulabs.com</link>
	<description>iPhone, iPad apps, Experimente und Projekte. HTML5 und Flash RIAs</description>
	<lastBuildDate>Tue, 15 May 2012 13:04:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Brushes Experiment mit JavaScript und HTML5</title>
		<link>http://arulabs.com/2012/03/html5-brushes-experiment/</link>
		<comments>http://arulabs.com/2012/03/html5-brushes-experiment/#comments</comments>
		<pubDate>Fri, 30 Mar 2012 13:56:23 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[brush]]></category>
		<category><![CDATA[easeljs]]></category>
		<category><![CDATA[pinsel]]></category>
		<category><![CDATA[simulation]]></category>
		<category><![CDATA[zeichnen]]></category>

		<guid isPermaLink="false">http://arulabs.com/?p=503</guid>
		<description><![CDATA[Vor einiger Zeit habe ich ein Experiment gestartet, um das Zeichnen mit verschiedenen Pinselspitzen möglichst realistisch zu simulieren (&#8220;Das Malen mit Stift und Pinselspitzen grafisch simulieren&#8220;). Dieses Experiment wurde damals mit Adobe Flex und ActionScript3 umgesetzt. Aus diesem Grund war das Ergebnis auf Geräten wie dem iPad, oder allgemeiner, auf Geräten ohne FlashPlayer nicht verfügbar. [...]]]></description>
			<content:encoded><![CDATA[<p>Vor einiger Zeit habe ich ein Experiment gestartet, um das Zeichnen mit verschiedenen Pinselspitzen möglichst realistisch zu simulieren (&#8220;<a title="Das Malen mit Stift und Pinselspitzen grafisch simulieren" href="http://arulabs.com/2010/11/das-malen-mit-stift-und-pinselspitzen-grafisch-simulieren/">Das Malen mit Stift und Pinselspitzen grafisch simulieren</a>&#8220;). Dieses Experiment wurde damals mit Adobe Flex und ActionScript3 umgesetzt. Aus diesem Grund war das Ergebnis auf Geräten wie dem iPad, oder allgemeiner, auf Geräten ohne FlashPlayer nicht verfügbar.<span id="more-503"></span></p>
<p>Weil ich der Meinung bin, dass HTML5 mittlerweile relativ verbreitet und stabil geworden ist, habe ich das Experiment (leicht vereinfacht) mit JavaScript und dem Canvas Element neu implementiert. Zum Einsatz kam dabei die JS Library <a title="easeljs" href="http://http://easeljs.com/" target="_blank">easeljs</a>, welche die Arbeit mit dem Canvas Element deutlich beschleunigt. Dennoch war es relativ überraschend, wie schnell das Ergebnis fertig war. Auch die Performance des Ganzen ist sehr gut – selbst auf dem iPad gibt es keinerlei Ruckler oder kantige Striche.</p>
<p>Hier das Ergebnis:</p>
<ul>
<li><a class="popup" popupWidth="980" popupHeight="650" title="Brushes Experiment in JS und HTML5" href="/experiments/js_html5_brushesExperiment">JS/HTML5 Stiftsimulation öffnen (Popup)</a></li>
<li><a title="Brushes Experiment JS HTML5 Dateien" href="http://arulabs.com/wp-content/uploads/2012/03/Brushes-Experiment_JSHtml5.zip">Dateien herunterladen</a></li>
</ul>
<p>Welche Gedanken hinter dem Ganzen stehen, ist auf der Seite des <a title="Das Malen mit Stift und Pinselspitzen grafisch simulieren" href="http://arulabs.com/2010/11/das-malen-mit-stift-und-pinselspitzen-grafisch-simulieren/">ursprünglichen Experiments</a> nachzulesen.</p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2012/03/html5-brushes-experiment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Großes Update: auto-compress.py</title>
		<link>http://arulabs.com/2012/02/groses-update-auto-compress-py/</link>
		<comments>http://arulabs.com/2012/02/groses-update-auto-compress-py/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 11:37:16 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[css]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://arulabs.com/?p=483</guid>
		<description><![CDATA[Nachdem auto-compress.py nun etwa zwei Wochen produktiv bei der Entwicklung einer Webapplikation genutzt wurde, sind über den Zeitraum immer wieder kleine und große Änderungen eingeflossen. Jetzt ist es zum Beispiel wieder möglich, seine JS Applikation trotz der Verwendung von auto-compress.py produktiv zu Debuggen. Konfigurationsdateien können nun übersichtlicher gestaltet werden. Änderungen auto-compress.py gibt nun aus, welche [...]]]></description>
			<content:encoded><![CDATA[<p>Nachdem auto-compress.py nun etwa zwei Wochen produktiv bei der Entwicklung einer Webapplikation genutzt wurde, sind über den Zeitraum immer wieder kleine und große Änderungen eingeflossen.</p>
<p>Jetzt ist es zum Beispiel wieder möglich, seine JS Applikation trotz der Verwendung von auto-compress.py produktiv zu Debuggen. Konfigurationsdateien können nun übersichtlicher gestaltet werden.<span id="more-483"></span></p>
<h1>Änderungen</h1>
<p>auto-compress.py gibt nun aus, welche Aktion aktuell durchgeführt wird. Falls ein Problem beim Ausführen einer Instruktion auftritt, etwa durch einen Syntaxfehler in einer JS-Datei, so wird das nun klarer angezeigt als in der vorherigen Version.</p>
<h2>Neue Instruktionen</h2>
<pre>[compression-disabled]</pre>
<p>Für die darauf folgenden Instruktionen ist die Kompression deaktiviert. Es werden lediglich die Inputdateien konkateniert, und anschließend an den Zielort bewegt. Dieses Vorgehen empfiehlt sich zu Anfang der Entwicklungsphase, oder wenn man seinen JS Code debuggen möchte.</p>
<pre>[compression-enabled]</pre>
<p>Die Kompression wird für die darauf folgenden Instruktionen wieder aktiviert.</p>
<pre>chdir path/absolute/or/relative/to/current/path</pre>
<p>Ändert den aktuellen Ordner. Dies bietet sich an, wenn man seine JS-Sourcefiles in einem Unterordner (etwa src/js) speichert, denn so kann man das ständige Wiederholen des Ordnerprefix weglassen.</p>
<h1>Download</h1>
<p><a href="http://arulabs.com/wp-content/uploads/2012/02/auto-compress.py.zip">auto-compress.py</a></p>
<p>Wie auch bei Version 1: Eine kleine Demo ist beigefügt. Wie man <em>auto-compress.py</em> aufruft, kann der readme.rtf entnommen werden.<br />
<a href="http://www.python.org" target="_blank"><img class="noborder aligncenter size-full wp-image-468" title="python" src="http://arulabs.com/wp-content/uploads/2012/01/python-logo.png" alt="" width="200" height="68" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2012/02/groses-update-auto-compress-py/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>auto-compress.py</title>
		<link>http://arulabs.com/2012/01/auto-compress-py/</link>
		<comments>http://arulabs.com/2012/01/auto-compress-py/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 10:23:50 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[css]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://arulabs.com/?p=457</guid>
		<description><![CDATA[Schon mal an einer Website gearbeitet, bei der JS und CSS Code minified werden soll? Den Compressor, in diesem Fall YUI-Compressor, bei jeder Änderung der Quelldateien selbst aufzurufen, das kann auf Dauer sehr anstrengend sein. Hier ist die Lösung: auto-compress.py ist ein kleines Python Script das Änderungen an den Quelldateien erkennt, und die betroffenen, komprimierten [...]]]></description>
			<content:encoded><![CDATA[<p>Schon mal an einer Website gearbeitet, bei der JS und CSS Code minified werden soll? Den Compressor, in diesem Fall <a title="YUI-Compressor" href="http://developer.yahoo.com/yui/compressor/" target="_blank">YUI-Compressor</a>, bei jeder Änderung der Quelldateien selbst aufzurufen, das kann auf Dauer sehr anstrengend sein.</p>
<p>Hier ist die Lösung: <em>auto-compress.py</em> ist ein kleines Python Script das Änderungen an den Quelldateien erkennt, und die betroffenen, komprimierten Dateien neu erstellt. Dabei geht es nach einem Pattern vor, das man selbst definieren kann.<span id="more-457"></span> Zum Beispiel:</p>
<pre>#auto-compress.config
DateiA.js + DateiB.js =&gt; DateiAB.min.js
style.css =&gt; style.min.css</pre>
<p style="text-align: left;">Hier wird <em>DateiA.js</em> mit <em>DateiB.js</em> zusammen in eine gemeinsame, komprimierte js Datei umgewandelt. <em>style.css</em> wird nach <em>style.min.css</em> komprimiert. Jedes mal wenn man eine Änderung an <em>DateiA.js</em> oder <em>DateiB.js</em> macht, wird <em>DateiAB.min.js</em> neu erstellt. Bei Änderung von <em>style.css</em> wird auch <em>style.min.css</em> aktualisiert.</p>
<p>Hier kannst Du das Script herunterladen:</p>
<ul>
<li><a href="http://arulabs.com/wp-content/uploads/2012/02/auto-compress.py.zip">Neue Version vom 10.02.2012</a></li>
<li><a href="http://arulabs.com/wp-content/uploads/2012/01/auto-compress.py_.zip">Alte Version vom 19.01.2012</a></li>
</ul>
<p>Eine kleine Demo ist beigefügt. Wie man <em>auto-compress.py</em> aufruft, kannst Du der readme.rtf entnehmen.<br />
<a href="http://www.python.org" target="_blank"><img class="noborder aligncenter size-full wp-image-468" title="python" src="http://arulabs.com/wp-content/uploads/2012/01/python-logo.png" alt="" width="200" height="68" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2012/01/auto-compress-py/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML5 Animationen &#8211; Adobe Edge</title>
		<link>http://arulabs.com/2011/11/html-animation-adobe-edge/</link>
		<comments>http://arulabs.com/2011/11/html-animation-adobe-edge/#comments</comments>
		<pubDate>Sat, 12 Nov 2011 16:16:50 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[flash]]></category>
		<category><![CDATA[html]]></category>

		<guid isPermaLink="false">http://arulabs.com/?p=367</guid>
		<description><![CDATA[In den letzten Tagen hat man es ja durchaus öfter gelesen: &#8220;Das Ende von Flash ist eingeläutet&#8220;, oder &#8220;Flash ist tot&#8220;. Denn Adobe hat bekannt gegeben, dass sie die Entwicklung des FlashPlayer für mobile Endgeräte nicht mehr fortsetzen wollen. Durchaus richtig ist die Annahme, dass die Verwendung von Flash im Web kontinuierlich abnehmen wird. Diesen [...]]]></description>
			<content:encoded><![CDATA[<p>In den letzten Tagen hat man es ja durchaus öfter gelesen: &#8220;<em>Das Ende von Flash ist eingeläutet</em>&#8220;, oder &#8220;<em>Flash ist tot</em>&#8220;. Denn Adobe hat bekannt gegeben, dass sie die Entwicklung des FlashPlayer für mobile Endgeräte nicht mehr fortsetzen wollen.</p>
<p>Durchaus richtig ist die Annahme, dass die Verwendung von Flash <strong>im Web</strong> kontinuierlich abnehmen wird. Diesen Trend hat man auch schon vor der Ankündigung durch Adobe sehen können. Dennoch habe ich die Ankündigung zum Anlass genommen, wieder nach einer HTML(5) IDE für Animationen (wie Flash Pro) zu suchen.<span id="more-367"></span></p>
<p>Ich bin eigentlich direkt auf <a title="Adobe Edge @ Adobe Labs" href="http://labs.adobe.com/technologies/edge/" target="_blank">Adobe Edge</a><strong>*</strong> gestoßen. Ein Kollege hat mir vor einiger Zeit relativ euphorisch davon erzählt. Ich für meinen Teil denke immer <em>Grafik+HTML5=Canvas</em>, was aber in diesem Fall nicht stimmt. Die Animationsbühne (stage) wird in Edge mithilfe von div-Containern aufgebaut, Animationen sind mit jQuery und CSS3 transformations realisiert.</p>
<p>Das primäre Ziel von solchen IDE sollte es aktuell sein, einfache Animationen auch möglichst einfach umsetzen zu können. Beispielsweise simple Werbebanner. Dort geht es hauptsächlich darum, in wenigen Sekunden Animationszeit das Interesse des Users zu wecken. Und tatsächlich — mit Edge konnte ich ohne Vorkenntnisse innerhalb von ca. 45 Minuten einen kleinen Banner herstellen (seitlich eingebunden). Hauptsächlich weil einige Konzepte und UI Elemente von Flash Pro übernommen wurden. Die Timeline ist kein Unbekannter, und auch Features wie Labels, zu denen man zur Laufzeit springen kann, sind vorhanden. Natürlich hat Edge noch viele Fehler und der Funktionsumfang ist recht eingeschränkt. Es produziert aber relativ sauberen Code, was allgemein enorm wichtig ist.</p>
<p>Man darf gespannt sein, wie die Entwicklung voranschreitet. Gibt es erst einmal etablierte, verbreitete HTML5 IDEs für interaktive und animierte Inhalte, so steht einem flächendeckenden Einsatz von HTML5 und Ersatz von Flash nichts mehr im Wege. Ich würde auf jeden Fall empfehlen Edge im Auge zu behalten.</p>
<p>Hier noch <a title="Adobe Edge Banner" href="http://arulabs.com/wp-content/uploads/2011/11/Adobe-Edge-Banner.zip">die Quelldateien des Banners</a>.</p>
<div id="attachment_422" class="wp-caption alignleft" style="width: 210px"><a href="http://arulabs.com/wp-content/uploads/2011/11/edge1.jpg"><img class="size-medium wp-image-422" title="Adobe Edge #1" src="http://arulabs.com/wp-content/uploads/2011/11/edge1-300x231.jpg" alt="Adobe Edge Preview 3 Screenshot #1" width="200" height="154" /></a><p class="wp-caption-text">Adobe Edge Preview 3 Screenshot #1</p></div>
<div id="attachment_423" class="wp-caption alignleft" style="width: 210px"><a href="http://arulabs.com/wp-content/uploads/2011/11/edge2.jpg"><img class="size-medium wp-image-423" title="Adobe Edge #2" src="http://arulabs.com/wp-content/uploads/2011/11/edge2-300x231.jpg" alt="Adobe Edge Preview 3 Screenshot #2" width="200" height="154" /></a><p class="wp-caption-text">Adobe Edge Preview 3 Screenshot #2</p></div>
<p><span style="color: #808080; display: block; clear: both;">*<a title="Adobe Edge @ Adobe Labs" href="http://labs.adobe.com/technologies/edge/" target="_blank">Adobe Edge</a> ist momentan als &#8220;preview&#8221; in den Adobe Labs. Es befindet sich also aktuell in Entwicklung, und kann vor Veröffentlichung einen anderen Namen erhalten.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2011/11/html-animation-adobe-edge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Update: Live Visitors for Piwik 2.0</title>
		<link>http://arulabs.com/2011/07/update-live-visitors-for-piwik-2-0/</link>
		<comments>http://arulabs.com/2011/07/update-live-visitors-for-piwik-2-0/#comments</comments>
		<pubDate>Sat, 02 Jul 2011 12:28:42 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://arulabs.com/?p=352</guid>
		<description><![CDATA[Vor Kurzem ist das Update der Live Visitors for Piwik app auf die neue Version 2.0 von Apple freigegeben worden. Es bietet einige Neuigkeiten und Verbesserungen. So zum Beispiel: Überarbeitete Menüstruktur Neue Overview Ansicht Änderung an der Authentifizierung: Es wird nun statt AuthToken die Username+Passwort Kombination abgefragt Du kannst die app wie gewohnt aus dem [...]]]></description>
			<content:encoded><![CDATA[<p>Vor Kurzem ist das Update der Live Visitors for Piwik app auf die neue Version 2.0 von Apple freigegeben worden. Es bietet einige Neuigkeiten und Verbesserungen. So zum Beispiel:</p>
<ul>
<li>Überarbeitete Menüstruktur</li>
<li>Neue Overview Ansicht</li>
<li>Änderung an der Authentifizierung: Es wird nun statt AuthToken die Username+Passwort Kombination abgefragt</li>
</ul>
<p><span id="more-352"></span></p>
<p>Du kannst die app wie gewohnt aus dem AppStore laden: <a title="Live visitors for Piwik im AppStore" href="http://itunes.apple.com/app/live-visitors-for-piwik/id439511638" target="_blank">Live Visitors for Piwik</a></p>
<p><a title="Live Visitors for Piwik" href="http://arulabs.com/projekte/live-visitors-for-piwik/">Zur Projektseite</a></p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2011/07/update-live-visitors-for-piwik-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Live Visitors for Piwik&#8221; im AppStore!</title>
		<link>http://arulabs.com/2011/06/live-visitors-piwik-appstore/</link>
		<comments>http://arulabs.com/2011/06/live-visitors-piwik-appstore/#comments</comments>
		<pubDate>Wed, 15 Jun 2011 14:16:51 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://www.arulabs.com/?p=326</guid>
		<description><![CDATA[Bereits Mitte letzten Jahres wurde dieses Projekt gestartet. Damals war es das Ziel, eine iPad app für das Web Analytics System Piwik zu schaffen die nahezu alle Features des Piwik Web Interfaces in einer nativen app vereint. Durch den enormen Aufwand eine solche app zu erstellen, und in Hinblick auf die offizielle Piwik app, die ja [...]]]></description>
			<content:encoded><![CDATA[<p>Bereits Mitte letzten Jahres wurde dieses Projekt gestartet. Damals war es das Ziel, eine iPad app für das <a title="Open Source Web Analytics" href="http://www.piwik.org">Web Analytics System Piwik</a> zu schaffen die nahezu alle Features des Piwik Web Interfaces in einer nativen app vereint.</p>
<p>Durch den enormen Aufwand eine solche app zu erstellen, und in Hinblick auf die <a href="http://http://piwik.org/mobile/">offizielle Piwik app</a>, die ja genau das selbe Ziel hat, entschied ich mich dazu den Funktionsumfang und das Ziel der app deutlich abzuändern.<span id="more-326"></span></p>
<p>Die neue app erkennt live alle Besucher der Websites, und visualisiert diese entsprechend. Sobald ein User eine Aktion durchführt, etwa das Öffnen einer Unterseite, wird das von der app registriert und angezeigt. Eine Besonderheit dabei ist, dass die Websites nicht einzeln betrachtet werden müssen. Es werden vielmehr die Besucher aller Websites im Piwik System gemeinsam in einer einzigen Liste dargestellt.</p>
<p>Version 1.0 wurde vor circa einer Woche im AppStore veröffentlicht und ist zur Zeit nur für das iPhone verfügbar. Aktuell wird aber bereits an Version 2.0 Entwickelt, wobei die Entwicklung schon sehr weit fortgeschritten ist. In der neuen Version wird ein Übersichtsview, sowie eine neue Navigation eingeführt. Außerdem gibt es viele Detailverbesserungen.</p>
<p><a title="Live Visitors for Piwik" href="http://www.arulabs.com/projekte/live-visitors-for-piwik/">Mehr zur app</a></p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2011/06/live-visitors-piwik-appstore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AS3 ParticleSystem</title>
		<link>http://arulabs.com/2011/01/as3-particlesystem/</link>
		<comments>http://arulabs.com/2011/01/as3-particlesystem/#comments</comments>
		<pubDate>Wed, 05 Jan 2011 15:50:22 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[flash]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[projekt]]></category>

		<guid isPermaLink="false">http://arulabs.de/?p=232</guid>
		<description><![CDATA[Eines meiner beliebtesten Programmierthemen waren bisher immer Partikelsysteme, denn das Erstellen, Manipulieren und Löschen von gleichartigen Objekten in hoher Zahl erzeugt immer einen faszinierenden Effekt. In den vergangenen Jahren hatte ich mehrere verschiedene eigene Anläufe, ein Partikelsystem für Flash und ActionScript3 zu schreiben. Jede Version hat dabei mehr Features gebracht. Die letzte Umsetzung ist dabei [...]]]></description>
			<content:encoded><![CDATA[<p>Eines meiner beliebtesten Programmierthemen waren bisher immer Partikelsysteme, denn das Erstellen, Manipulieren und Löschen von gleichartigen Objekten in hoher Zahl erzeugt immer einen faszinierenden Effekt. In den vergangenen Jahren hatte ich mehrere verschiedene eigene Anläufe, ein Partikelsystem für Flash und ActionScript3 zu schreiben. Jede Version hat dabei mehr Features gebracht.</p>
<p>Die letzte Umsetzung ist dabei einen neuen Weg gegangen: Es wird ein generelles Design vorgegeben, und einige Basiselemente sind fertig programmiert. Das umfasst etwa einen Standardemitter, einige Partikelarten und Bitmap- sowie Spriterenderer.</p>
<p><span id="more-232"></span>Manipulieren kann man die Partikel indem man der ParticleCollection (Emitter basieren auf der ParticleCollection) sog. ParticleActions hinzufügt. Auch hier sind die essentiellen Actions schon vorprogrammiert (Actions zum Entfernen von Partikeln, gravity, acceleration etc.).</p>
<p>Alles, was benötigt wird um einfache Effekte zu erstellen, ist also schon vorhanden. Das generelle Design zielt allerdings darauf ab, dass man das Partikelsystem leicht <em>erweitern</em> kann um so <em>komplexe, einzigartige</em> Aufgaben gut umzusetzen. Es ist beispielsweise außerordentlich einfach eigene Actions zu implementieren. Man kann dabei unter Anderem jedem Partikel eine neue Eigenschaft hinzufügen und diese dann manipulieren und auswerten. Natürlich kann man auch eigene Partikelarten, Renderer und Emitter schreiben. Da diese jeweils das entsprechende Interface implementieren müssen, ist die Kompatibilität stets gegeben.</p>
<p>Ich werde hier bald eine Download- oder Projekt-Section einführen. Wenn es so weit ist, wird das ParticleSystem dort auch vertreten sein. Dort werde ich dann auch Updates und Tutorials oder Beispiele veröffentlichen.</p>
<p>Die aktuellen Sources findest Du hier: <a title="ParticleSystem - current release" href="http://arulabs.com/wp-content/uploads/2011/01/release-1.0.0.zip">release-1.0.0</a> (mit ASDoc Dokumentation)</p>
<p>Eine Demo (die hier eingesetzte Headeranimation) ist hier zu finden: <a title="ParticleSystem - demo1" href="http://arulabs.com/wp-content/uploads/2011/01/AruLabsParticleSystemDemo1.zip">AruLabsParticleSystemDemo1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2011/01/as3-particlesystem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kleines, simples WordPress Twitter Widget</title>
		<link>http://arulabs.com/2010/11/wordpress-twitter-widget/</link>
		<comments>http://arulabs.com/2010/11/wordpress-twitter-widget/#comments</comments>
		<pubDate>Sat, 13 Nov 2010 17:22:06 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://arulabs.de/?p=200</guid>
		<description><![CDATA[Ich glaube es gibt sie wie Sand am Meer, die WordPress Twitter Widgets. Dummerweise laden die meisten Plugins die Tweets des Users per PHP und liefern das Ergebnis dann gleichzeitig mit der ganzen Seite aus. Das wäre ja bei &#8220;normalen&#8221; Seiten gar kein großes Problem — wenn die Twitter Server etwas schneller wären. Allerdings sind [...]]]></description>
			<content:encoded><![CDATA[<p>Ich glaube es gibt sie wie Sand am Meer, die WordPress Twitter Widgets. Dummerweise laden die meisten Plugins die Tweets des Users per PHP und liefern das Ergebnis dann gleichzeitig mit der ganzen Seite aus. Das wäre ja bei &#8220;normalen&#8221; Seiten gar kein großes Problem — wenn die Twitter Server etwas schneller wären. Allerdings sind sie so langsam, dass es dann eben die komplette Auslieferung einer Seite bremst, und zwar nicht unwesentlich. Genau das Phänomen habe ich nämlich entdeckt als das alte Plugin hier noch aktiv war.<br />
<span id="more-200"></span></p>
<p>Also habe ich nach einem Plugin gesucht, was die Tweets per AJAX nachlädt und das Ganze schön darstellt, mit dezenten Animationen und einem Lade-Indikator. Alle Plugins die ich gefunden habe fand ich entweder nicht simpel genug, denn ich will nur den Text des Tweets und das Datum anzeigen,  oder hatten keine bzw. schlechte Animationen.</p>
<p>Deswegen habe ich einfach schnell ein eigenes kleines Widget geschrieben, was genau meinen Wünschen entspricht. Falls jemand Interesse hat: Die Sources gibt es hier: <a href="http://arulabs.de/wp-content/uploads/2010/11/twitter-sidebar.zip">WordPress Twitter Widget</a>. Benötigt wird zudem jQuery.</p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2010/11/wordpress-twitter-widget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Das Malen mit Stift und Pinselspitzen grafisch simulieren</title>
		<link>http://arulabs.com/2010/11/das-malen-mit-stift-und-pinselspitzen-grafisch-simulieren/</link>
		<comments>http://arulabs.com/2010/11/das-malen-mit-stift-und-pinselspitzen-grafisch-simulieren/#comments</comments>
		<pubDate>Tue, 09 Nov 2010 18:30:58 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[brushes]]></category>
		<category><![CDATA[pinselspitzen]]></category>
		<category><![CDATA[simulation]]></category>

		<guid isPermaLink="false">http://arulabs.de/?p=135</guid>
		<description><![CDATA[Das Experiment wurde mit Adobe Flash bzw. dem Flex Framework umgesetzt. Du findest das Ergebnis hier: Stiftsimulation; Quellcodedateien. Gedanken Will man ein simples Malprogramm für den Computer entwickeln, so wird man meistens Dicke, Intensität und Farbe eines Stifts oder Pinsels definieren. Beim Zeichenprozess zieht man dann eine Linie mit genau diesen Eigenschaften vom letzten bekannten [...]]]></description>
			<content:encoded><![CDATA[<p>Das Experiment wurde mit Adobe Flash bzw. dem Flex Framework umgesetzt. Du findest das Ergebnis hier: <a class="fancyboxBigFrame" title="Brushes Experiment" href="/experiments/brushesExperiment/brushes.html" target="_blank">Stiftsimulation</a>; <a title="Bushes Quellcodedateien" href="/experiments/brushesExperiment/brushes.zip" target="_blank">Quellcodedateien</a>.</p>
<h2>Gedanken</h2>
<p>Will man ein simples Malprogramm für den Computer entwickeln, so wird man meistens Dicke, Intensität und Farbe eines Stifts oder Pinsels definieren. Beim Zeichenprozess zieht man dann eine Linie mit genau diesen Eigenschaften vom letzten bekannten Punkt der Maus bis zur aktuellen Position des Stifts. Möchte man nun allerdings realistische Zeichnungen simulieren, ist dieses Konzept unbrauchbar. Was muss man also anders machen um mehr Realismus zu erreichen?<span id="more-135"></span></p>
<p>Es liegt eigentlich auf der Hand: Der Pinsel muss mehr Parameter als bloß die Farbe, Dicke und Intensität besitzen. Zwei weitere Parameter wären zum Beispiel eine Textur und Skalierungsänderung über Zeit. Wenn man dem Stift also genug Parameter gibt und anschließend ein wenig mit ihnen herumexperimentiert, sollten sich schnell gute Ergebnisse erzielen lassen.</p>
<h2>Definition des Pinsels für das Experiment</h2>
<p>Es gibt verschiedene Parameter die eine Pinselspitze definieren können. Die wahrscheinlich charakteristischste Eigenschaft ist die Textur. Auf die Textur werden diverse Transformationen angewandt bevor sie auf die Arbeitsfläche / Canvas gezeichnet wird. Eine Wiederholrate beeinflusst den Zeitabstand zwischen zwei Textur-Zeichenoperationen. Eine Basistextur ist also <em>essenziell</em> um den Pinsel/Stift zu definieren. Auch die Zeichen-Wiederholrate ist notwendig. Diese kann allerdings durch das nahtlose Zeichnen ersetzt werden. Transformationseigenschaften dagegen sind <em>optional</em>.</p>
<p>Eine erste Transformationseigenschaft ist die Skalierung der Pinselspitze. Diese kann statisch definiert werden oder sich über Zeit oder Bewegungsgeschwindigkeit* ändern. Ähnliches gilt für eine Rotation. Diese kann ebenfalls statisch gegeben sein, oder durch Bewegungsrichtung beeinflusst werden. Eine Definition der Intensität sollte ebenfalls statisch vorgenommen werden können, allerdings kann ein Pinsel über Zeit* oder zurückgelegten Weg seit Aufsetzen an Intensität ab- oder zunehmen (z.B. Wasserfarb Pinsel).</p>
<p>Für all diese Eigenschaften, mir Ausnahme von Textur und Wiederholrate, kann es sinnvoll sein einen Delta Wert zu definieren um (z.B. natürliche) Schwankungen zu erzeugen. Zudem kann ein Delta für die Positionierung der Textur einen sogenannten &#8220;jitter&#8221;, also einen Streuungseffekt, hervorrufen, welcher hochgradig unregelmäßige Pinselspitzen charakterisiert.</p>
<p><span style="color: #808080;">* in dem Experiment nicht implementiert</span></p>
<h2>Anmerkungen</h2>
<p>In dem Experiment implementiert der Pinsel direkt Funktionen zum Zeichnen auf ein BitmapData Objekt, wahlweise nahtlos oder mit Wiederholrate. Dieses Vorgehen war bewusst so gewählt, da es das Experiment kompakter hält. Eine Auslagerung solcher Methoden macht bei komplexeren Projekten allerdings durchaus Sinn.</p>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2010/11/das-malen-mit-stift-und-pinselspitzen-grafisch-simulieren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Projekt: iPad Piwik App</title>
		<link>http://arulabs.com/2010/10/ipad-piwik-app-vorstellung/</link>
		<comments>http://arulabs.com/2010/10/ipad-piwik-app-vorstellung/#comments</comments>
		<pubDate>Mon, 25 Oct 2010 09:26:16 +0000</pubDate>
		<dc:creator>Andreas Rücklé</dc:creator>
				<category><![CDATA[iOS]]></category>
		<category><![CDATA[projekt]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[Piwik]]></category>

		<guid isPermaLink="false">http://arulabs.de/wip/?p=8</guid>
		<description><![CDATA[Mein aktuelles Projekt ist eine iPad Piwik App (bislang ohne wirklichen Namen) um Piwik Statistiken auszulesen und zu visualisieren. Wer Piwik nicht kennt: Piwik ist ein Web Analytics Tool vergleichbar zu Google Analytics, allerdings komplett OpenSource und lässt sich daher auf einem eigenen Server betreiben. Da ich selber Piwik für diverse Websites einsetze, habe ich [...]]]></description>
			<content:encoded><![CDATA[<p>Mein aktuelles Projekt ist eine iPad Piwik App (bislang ohne wirklichen Namen) um Piwik Statistiken auszulesen und zu visualisieren. Wer <a title="Piwik: Open Source Web Analytics" href="http://piwik.org" target="_blank">Piwik</a> nicht kennt: Piwik ist ein Web Analytics Tool vergleichbar zu Google Analytics, allerdings komplett OpenSource und lässt sich daher auf einem eigenen Server betreiben.</p>
<p>Da ich selber Piwik für diverse Websites einsetze, habe ich vor Kurzem nach einer brauchbaren, <strong>kostenlosen</strong> App dazu für mein iPad gesucht. Leider erfolglos. Das Piwik Projekt bietet zwar selbst eine iPhone App an, allerdings muss man sie auf dem iPad hoch skalieren, was eher suboptimal ist.</p>
<p><span id="more-8"></span>Da ich ohnehin ein etwas größeres Projekt zum Erlernen fortgeschrittener CocoaTouch Techniken brauchte (es geht nichts über learning by doing), habe ich mich entschlossen diese Lücke im AppStore zu füllen. Angefangen habe ich mit dem Erstellen von Mockups. Das Aussehen und die Funktion der App wurden also ursprünglich in Photoshop entwickelt. Dabei hat mir das großartige <a title="iPad GUI Design Template" href="http://www.teehanlax.com/blog/2010/02/01/ipad-gui-psd/" target="_blank">iPad GUI Design Template</a> weitergeholfen.<em> </em></p>
<p>Weiter ging es mit den ersten ViewControllern und der Programmierung der Kommunikation mit der Piwik API. Weiter ins Detail gehen will ich hier nicht, allerdings sei gesagt, dass hinter den Kulissen schon viel passiert ist was man so noch nicht sieht.</p>
<p>Das spezielle an dieser App ist, dass man sich nicht auf eine Website beschränken muss von der man die aktuellen Informationen und Statistiken angezeigt bekommt sondern man kann mehrere aktive Seiten wählen. Die Statistiken dieser Seiten werden dann immer zusammen visuell aufbereitet und aggregiert sodass Zusammenhänge und Events einfacher zu interpretieren sind.</p>
<p>Einige Bilder zur Illustration und zum Überblick sind hier angehängt.</p>
<h2>Ausgewählte Mockups</h2>
<div id="attachment_84" class="wp-caption alignleft" style="width: 138px"><a title="Mockup des Overview Bildschirms" rel="mls" href="http://arulabs.de/wp-content/uploads/2010/10/piwikViewer-overview.jpg"><img class="size-medium wp-image-84  " title="Overview Bildschirm" src="http://arulabs.de/wp-content/uploads/2010/10/piwikViewer-overview-213x300.jpg" alt="Overview Bildschirm" width="128" height="180" /></a><p class="wp-caption-text">Overview Bildschirm</p></div>
<div id="attachment_101" class="wp-caption alignleft" style="width: 138px"><a rel="mls" href="http://arulabs.de/wp-content/uploads/2010/10/piwikViewer-graphs.jpg"><img class="size-medium wp-image-101" title="piwikViewer-graphs" src="http://arulabs.de/wp-content/uploads/2010/10/piwikViewer-graphs-213x300.jpg" alt="Last Visits Graphen" width="128" height="180" /></a><p class="wp-caption-text">Last Visits Graphen</p></div>
<div id="attachment_108" class="wp-caption alignleft" style="width: 138px"><a rel="mls" href="http://arulabs.de/wp-content/uploads/2010/10/piwikViewer-visitorDetails.jpg"><img class="size-medium wp-image-108" title="piwikViewer-visitorDetails" src="http://arulabs.de/wp-content/uploads/2010/10/piwikViewer-visitorDetails-213x300.jpg" alt="Visitor Log Bildschirm" width="128" height="180" /></a><p class="wp-caption-text">Visitor Log Bildschirm</p></div>
<h2>Echte Screenshots</h2>
<div id="attachment_113" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss1.jpg"><img class="size-medium wp-image-113" title="ss1" src="http://arulabs.de/wp-content/uploads/2010/10/ss1-213x300.jpg" alt="Server Settings View" width="128" height="180" /></a><p class="wp-caption-text">Server Settings View</p></div>
<div id="attachment_114" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss2.jpg"><img class="size-medium wp-image-114" title="ss2" src="http://arulabs.de/wp-content/uploads/2010/10/ss2-213x300.jpg" alt="Server Settings View -&gt; Active Site Selection" width="128" height="180" /></a><p class="wp-caption-text">Server Settings View -&gt; Active Site Selection</p></div>
<div id="attachment_115" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss3.jpg"><img class="size-medium wp-image-115" title="ss3" src="http://arulabs.de/wp-content/uploads/2010/10/ss3-213x300.jpg" alt="Server Settings View -&gt; Active Site Selection" width="128" height="180" /></a><p class="wp-caption-text">Server Settings View -&gt; Active Site Selection</p></div>
<div id="attachment_116" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss4.jpg"><img class="size-medium wp-image-116" title="ss4" src="http://arulabs.de/wp-content/uploads/2010/10/ss4-213x300.jpg" alt="Overview" width="128" height="180" /></a><p class="wp-caption-text">Overview</p></div>
<div id="attachment_117" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss5.jpg"><img class="size-medium wp-image-117" title="ss5" src="http://arulabs.de/wp-content/uploads/2010/10/ss5-213x300.jpg" alt="Date Selector" width="128" height="180" /></a><p class="wp-caption-text">Date Selector</p></div>
<div id="attachment_118" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss6.jpg"><img class="size-medium wp-image-118" title="ss6" src="http://arulabs.de/wp-content/uploads/2010/10/ss6-213x300.jpg" alt="Custom Date" width="128" height="180" /></a><p class="wp-caption-text">Custom Date</p></div>
<div id="attachment_119" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss7.jpg"><img class="size-medium wp-image-119" title="ss7" src="http://arulabs.de/wp-content/uploads/2010/10/ss7-213x300.jpg" alt="Quick Settings" width="128" height="180" /></a><p class="wp-caption-text">Quick Settings</p></div>
<div id="attachment_120" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss8.jpg"><img class="size-medium wp-image-120" title="ss8" src="http://arulabs.de/wp-content/uploads/2010/10/ss8-213x300.jpg" alt="Quick Settings: Server" width="128" height="180" /></a><p class="wp-caption-text">Quick Settings: Server</p></div>
<div id="attachment_121" class="wp-caption alignleft" style="width: 138px"><a rel="sls" href="http://arulabs.de/wp-content/uploads/2010/10/ss9.jpg"><img class="size-medium wp-image-121" title="ss9" src="http://arulabs.de/wp-content/uploads/2010/10/ss9-213x300.jpg" alt="Quick Settings: Sites" width="128" height="180" /></a><p class="wp-caption-text">Quick Settings: Sites</p></div>
]]></content:encoded>
			<wfw:commentRss>http://arulabs.com/2010/10/ipad-piwik-app-vorstellung/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

