<?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>A world in dk(decay/denmark)</title>
	<atom:link href="http://rotand.dk/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://rotand.dk/blog</link>
	<description>Just another pointless weblog</description>
	<lastBuildDate>Sat, 27 Jun 2009 19:17:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>DTMF dialer got new features</title>
		<link>http://rotand.dk/blog/2009/06/27/dtmf-dialer-got-new-features/</link>
		<comments>http://rotand.dk/blog/2009/06/27/dtmf-dialer-got-new-features/#comments</comments>
		<pubDate>Sat, 27 Jun 2009 17:14:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[cldc]]></category>
		<category><![CDATA[dialer]]></category>
		<category><![CDATA[dtmf]]></category>
		<category><![CDATA[J2ME]]></category>
		<category><![CDATA[jar file]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[netbeans]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=198</guid>
		<description><![CDATA[I got a comment from a reader who used my DTMF dialer but missed a feature.
It was the ability to change what prefix to remove. As i live in Denmark, whenever i make a call on a land-line there is no reason to dial +45, which is the danish country code. Actually the plus is [...]]]></description>
			<content:encoded><![CDATA[<p>I got a <a href="http://rotand.dk/blog/about-2/comment-page-1/#comment-1385">comment from a reader</a> who used my <a href="http://rotand.dk/blog/2008/03/20/dtmf-dialer/">DTMF dialer</a> but missed a feature.</p>
<p>It was the ability to change what prefix to remove. As i live in Denmark, whenever i make a call on a land-line there is no reason to dial +45, which is the danish country code. Actually the plus is converted into 00 as well.</p>
<p>But Eli needed the prefix 08 to be removed.</p>
<p>And i guess that there are a lot of other prefixes that could be removed and + shouldn&#8217;t always be converted to 00. So I decided to implement this feature.</p>
<h2>Whats new</h2>
<ul>
<li>It now remembers your settings</li>
<li>It possible to choose a prefix to remove</li>
<li>its possible to decide what + should be replaced by.</li>
<li>I slapped a GPL V3 license on it</li>
</ul>
<h3>The files</h3>
<p><a href="http://rotand.dk/blog/wp-content/dtmfdialer.jad">dtmfdialer jad file</a></p>
<p><a href="http://rotand.dk/blog/wp-content/dtmfdialer.jar">dtmfdialer jar file</a></p>
<p><a href="http://rotand.dk/blog/wp-content/dtmfdialer.zip">dtmfdialer source code</a></p>
<p>Unfortunately it wasn&#8217;t just a 5 min hack. There were two major challenges.</p>
<h3>Persistence</h3>
<p>In J2me access to the filesystem is restricted and requires all sorts of security permissions, but every application has access to a &#8220;RecordStore&#8221;. The RecordStore (RMS) only allows byte[] to be stored, so you have to marshall/unmarshall every piece of data at quite a low level. I haven&#8217;t persisted any data in the first version, as this is indeed tedious to work with. But not having persistence for a prefix remover functionality wouldn&#8217;t be of any use. You would have to enter the same data every time you used the application and then it would be faster to just edit the number to call.</p>
<h3>Netbeans mobility pack</h3>
<p>It was supposed to be so eays.</p>
<p>But the floweditor somehow did mess up and didn&#8217;t generate the code, so the flow diagram and the sourcecode were out of sync, and i didn&#8217;t see any way to &#8220;resync&#8221;/&#8221;regenerate code/diagram&#8221;. This was cause for a lot of frustrations.</p>
<p>Originally i made it with netbeans so compiling and editing the generated code were best done in netbeans. But if i ever were to mess with it again i would seriosly consider &#8220;porting&#8221; it to J2me Polish or just &#8220;vanillia&#8221; j2me. As i really really don&#8217;t like the netbeans editor.</p>
<p>update : Eli found a bug in the prefix substitution, i fixed and uploaded the new version (June 27, 2009, 21:17)</p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/06/27/dtmf-dialer-got-new-features/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CNC for summerproject</title>
		<link>http://rotand.dk/blog/2009/06/06/cnc-for-summerproject/</link>
		<comments>http://rotand.dk/blog/2009/06/06/cnc-for-summerproject/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 08:24:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CNC]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[cnc machine]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[reprap]]></category>
		<category><![CDATA[summer vacation]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=189</guid>
		<description><![CDATA[I have decided to build a CNC machine in the summer vacation. As soon as I finish the last exams i&#8217;ll start building / hacking. For the moment I&#8217;m looking into building plans and cnc in general. At first I wanted to build a reprap using a kit, but my funds are limited, so it [...]]]></description>
			<content:encoded><![CDATA[<p>I have decided to build a CNC machine in the summer vacation. As soon as I finish the last exams i&#8217;ll start building / hacking. For the moment I&#8217;m looking into building plans and cnc in general. At first I wanted to build a <a href="http://reprap.org/bin/view/Main/WebHome">reprap</a> using a kit, but my funds are limited, so it will be a three axis cnc router which hopefully will be able to act as an <a href="http://reprap.org/bin/view/Main/RepStrap">repstrap</a>.</p>
<p>The project as it looks so far :<br />
I ordered a set with steppers, motor-control and psu from ebay, and I&#8217;m waiting for it to arrive(The seller said 10-12 days, so maybe if I am lucky next week). It should be 1.7NM motors and a more or less &#8220;plug&#8217;n'play&#8221; set.</p>
<p>I intend to drive the motors using a old computer running <a href="http://www.linuxcnc.org/">linuxcnc</a>. linuxcnc looks real neat, but might prove to be hard to set up.</p>
<h3>The construction</h3>
<p>I am looking at two set of plans at the moment</p>
<h4><a href="http://www.instructables.com/id/How-to-Make-a-Three-Axis-CNC-Machine-Cheaply-and-/">How-to-Make-a-Three-Axis-CNC-Machine-Cheaply</a></h4>
<p style="padding-left: 30px;">This was the building plan that made me decide that this was a possible task. But there are some issues with the construction I don&#8217;t like, especially that it uses belts. They are hard to find and they are not cheap.</p>
<h4>JGRO&#8217;s plans</h4>
<p style="padding-left: 30px;">This is a free diy plan. it can be found here : <a href="http://www.cncroutersource.com/cnc-router-plans.html">http://www.cncroutersource.com/cnc-router-plans.html</a></p>
<p style="padding-left: 30px;">It uses threaded rod instead of belts. And the overall construction looks simpler.</p>
<h3>Materials</h3>
<p>Although I do want to do &#8220;fabbing&#8221; using a extruder at first I think that there will be enough work for a couple of days getting the mechanics and electronics up and running. Just as there is a lot to learn about g-code and all sorts of 3dmodelling.</p>
<p>To begin with I want to cut using a dremel tool, maybe a more powerful spindle(?) to be able to cut wood &#8211; if I have enough power in the steppers.</p>
<p>You might ask what do you want to make / &#8220;fab&#8221; with a 3 axis cnc machine?  I can come up with a lot of different small things like &#8220;coat hanger&#8221;, &#8220;coffee filter&#8221;, &#8220;PCBs&#8221; but I guess that it just boils down to: &#8221; I think its a very fascinating technology and want to play with it&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/06/06/cnc-for-summerproject/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CLI voip calls</title>
		<link>http://rotand.dk/blog/2009/05/03/cli-voip-calls/</link>
		<comments>http://rotand.dk/blog/2009/05/03/cli-voip-calls/#comments</comments>
		<pubDate>Sun, 03 May 2009 08:13:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[shell script]]></category>
		<category><![CDATA[sip]]></category>
		<category><![CDATA[system]]></category>
		<category><![CDATA[telephone]]></category>
		<category><![CDATA[voip connection]]></category>
		<category><![CDATA[voip phone]]></category>
		<category><![CDATA[voip service provider]]></category>
		<category><![CDATA[vps]]></category>
		<category><![CDATA[wake up call]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=178</guid>
		<description><![CDATA[
Sometimes it would be nice to use a script call somebody and play a message.
I &#8220;needed&#8221; a wake-up-call system and since I use a voip-phone and have access to a server. I thought i would be quite nifty if I could have the server call me. Furthermore i would like to be able to script [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://rotand.dk/zen/phone/front1.jpg"><img class="ZenphotoPress_thumb alignleft" title="front1" src="http://rotand.dk/zen/phone/image/thumb/front1.jpg" alt="front1" width="180" height="180" /></a><br />
Sometimes it would be nice to use a script call somebody and play a message.<br />
I &#8220;needed&#8221; a wake-up-call system and since I use a voip-phone and have access to a server. I thought i would be quite nifty if I could have the server call me. Furthermore i would like to be able to script calls, so for instance the calendar could call me with reminders rather than sending an email.</p>
<p>I googled around but weren&#8217;t able to find such a utility. But i did find cli-sip client <a href="http://www.pjsip.org/pjsua.htm">pjsua</a>, based on <a href="http://www.pjsip.org/">pjsip</a>. Its posible to use it in conjunction with a shell script.</p>
<h4>Scripting</h4>
<p><code>jacob@vps:~./control.sh sip:108329@foobar.com "wake up you lazy bastard!"</code><br />
Is the basic usage i wanted to have. In order to get this functionality there are two steps.</p>
<p><span id="more-178"></span></p>
<h5>Generating wav file</h5>
<p>I ust use text2wave, from <a href="http://www.speech.cs.cmu.edu/festival/">festival</a>, which is available as a package on ubuntu.<br />
<code>echo $2 | text2wave - -o message.wav </code></p>
<p>$2 to use the second argument, and pipe it to text2wave. Let text2wave read sdtin and output a file message.wav</p>
<h5>Call and play the wav file</h5>
<p><code>pjsua_app --config-file=test.conf --play-file message.wav $1</code><br />
Here the magic is in the conf file. Its a rather straightforward to use, and the documentation is good.<br />
<code><br />
# we don't want the host's audio device<br />
--null-audio<br />
# SIP parameters<br />
--realm domain.com<br />
--registrar sip:number@domain.dk # DNS SRV, or FQDN</code><br />
<code> --username USERNAME<br />
--password PASS<br />
# default of 55 will be rejected as being too short by sipX<br />
--reg-timeout 3600<br />
# auto-answer all calls with "200 OK"<br />
--auto-answer 200<br />
# automatically loop incoming RTP to outgoing RTP<br />
--auto-loop<br />
# mix WAV file into the audio stream</code><br />
<code> --auto-play<br />
--auto-loop<br />
--duration=60<br />
</code><br />
This is based on a config file i found somewhere, can&#8217;t remember where. There a a lot of other options, pjsua handles nat quite nicely as well. It was easy to test it at my homebox, behind a router, just be sure to set an external ip address.</p>
<p>Now this will call and play the message, but it wont stop pjsua. It will just sit around waiting for someone to call. I couldn&#8217;t find any nice way to handle this, but since pjsua reads stdin for commands, it possible to pipe commands to it.<br />
<code>echo "sleep 60000 q" | pjsua_app --config-file=test.conf --play-file message.wav $1 </code><br />
So sleep for 60 seconds, then accept the next input from stdin, the &#8220;q&#8221;uit command.</p>
<p>Generally this configuration is set for 1 minute, it might be necessary to tweak this.</p>
<h4>Frustrations</h4>
<p>There is/were a bug in the tarball, that meant that it wouldn&#8217;t run if it couldn&#8217;t find a soundcard, since it should run on a vps this is quite annoying. But in the svn version its solved, so if you want to do something like this, use the svn version. Other than this installation is straightforward.</p>
<p>When working with cron, remember to use full paths. In the <tt>control.sh</tt> script the better solution were to add a cd working directory, in order to have all the paths correct. This were quite annoying to debug, as the script would run from the shell. And just fail when added to the crontab. Furthermore mails from crontab were delayed, so i couldn&#8217;t see the output. I did get someone to look over my shoulder and spot the bug.</p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/05/03/cli-voip-calls/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Steppers</title>
		<link>http://rotand.dk/blog/2009/05/02/steppers/</link>
		<comments>http://rotand.dk/blog/2009/05/02/steppers/#comments</comments>
		<pubDate>Sat, 02 May 2009 16:49:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Weird]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[steppermotor]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/2009/05/02/steppers/</guid>
		<description><![CDATA[Just ripped apart an old scanner and printer to get the steppermotors. Unfortunatly both seems to be bipolar steppers, hence i would need a H-bridge to drive them. I only have few darlington arrays around.
It would have been fun get a quick hack up and running today. 
]]></description>
			<content:encoded><![CDATA[<p>Just ripped apart an old scanner and printer to get the steppermotors. Unfortunatly both seems to be bipolar steppers, hence i would need a H-bridge to drive them. I only have few darlington arrays around.</p>
<p>It would have been fun get a quick hack up and running today. </p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/05/02/steppers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mikroblogging</title>
		<link>http://rotand.dk/blog/2009/04/23/mikroblogging/</link>
		<comments>http://rotand.dk/blog/2009/04/23/mikroblogging/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 08:44:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[identi.ca]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=161</guid>
		<description><![CDATA[I have created a identi.ca acount and started to mikroblog.
Identi.ca is like twitter, but just better. Its open source and the system with groups and tags doesn&#8217;t seem to exist to the same degree in twitter.
I added a widget to show the latest updates from identi.ca to the blog (Identi.ca Tools)
]]></description>
			<content:encoded><![CDATA[<p>I have created a identi.ca acount and started to mikroblog.</p>
<p>Identi.ca is like twitter, but just better. Its open source and the system with groups and tags doesn&#8217;t seem to exist to the same degree in twitter.</p>
<p>I added a widget to show the latest updates from identi.ca to the blog (Identi.ca Tools)</p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/04/23/mikroblogging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linkdump III</title>
		<link>http://rotand.dk/blog/2009/03/23/linkdump-iii/</link>
		<comments>http://rotand.dk/blog/2009/03/23/linkdump-iii/#comments</comments>
		<pubDate>Mon, 23 Mar 2009 06:27:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linkdump]]></category>
		<category><![CDATA[bicycle routes]]></category>
		<category><![CDATA[brain]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[recycled materials]]></category>
		<category><![CDATA[scientific toys]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=148</guid>
		<description><![CDATA[Just a couple of links I found. Some I need to remember some are just for fun.
This is why you are fat
Wonderful collection of heart-attack-inducing-gluttony
BikeMap.net
There seems to be a lot of route planners for bicycle routes. So far I have found that this is superior. Easy to work with interface  and a topological chart feature [...]]]></description>
			<content:encoded><![CDATA[<p>Just a couple of links I found. Some I need to remember some are just for fun.</p>
<p><a href="http://thisiswhyyourefat.com/">This is why you are fat</a></p>
<p style="padding-left: 30px;">Wonderful collection of heart-attack-inducing-gluttony</p>
<p><a href="http://www.bikemap.net">BikeMap.net</a></p>
<p style="padding-left: 30px;">There seems to be a lot of route planners for bicycle routes. So far I have found that this is superior. Easy to work with interface  and a topological chart feature which gives you an easy way to see where the hills is going to be.</p>
<p><a href="http://www.arvindguptatoys.com/toys.html">Toys from trash</a></p>
<p style="padding-left: 30px;">Scientific toys are always cool, they are even cooler when they are made from recycled materials.</p>
<p><a href="http://www.boston.com/bostonglobe/ideas/graphics/011109_hacking_your_brain/">Hack Your brain</a></p>
<p style="padding-left: 30px;">Fun ways to trick your brain.</p>
<p><a href="http://www.misscellania.com/miss-cellania/2009/3/21/the-internet.html">The internet is like a penis</a></p>
<p style="padding-left: 30px;">via <a href="http://scienceblogs.com/gregladen/2009/03/link-ku.php">Greg Laden</a></p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/03/23/linkdump-iii/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lucy in the cloud with tags</title>
		<link>http://rotand.dk/blog/2009/03/21/lucy-in-the-cloud-with-tags/</link>
		<comments>http://rotand.dk/blog/2009/03/21/lucy-in-the-cloud-with-tags/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 20:03:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[meta keywords]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[search engine]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[tagcloud]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=137</guid>
		<description><![CDATA[Tags, you&#8217;ve gotta love them.
Finally I have started tagging my blog and photos. which gives me the ability to offer better searches and display nice tagclouds.
For the blog I have used the plugin Simple Tags which offers a huge range of features.
I found that the things I like most is
1. Auto tagging
The blog already had [...]]]></description>
			<content:encoded><![CDATA[<p>Tags, you&#8217;ve gotta love them.</p>
<p>Finally I have started tagging my blog and photos. which gives me the ability to offer better searches and display nice tagclouds.</p>
<p>For the blog I have used the plugin <a href="http://wordpress.org/extend/plugins/simple-tags/">Simple Tags</a> which offers a huge range of features.</p>
<p>I found that the things I like most is</p>
<h4>1. Auto tagging</h4>
<p style="padding-left: 30px;">The blog already had a lot of articles, well more than I wanted to go through and tag one by one. So <em>Simple Tags</em>&#8217;s auto tagging, was crucial. It will look at the contents of an article and select tags that seems to fit, from your current list of tags. It seems like it has done a good job, I didn&#8217;t find any tags that seemed out of order.</p>
<h4>2. Suggest tags</h4>
<p style="padding-left: 30px;">Simple tags has a feature where it will suggest tags from <em>yahoo</em> and<em> tag the net</em> based on the content of the article. This is a huge help to get som useful tags. And having a nice collection of tags fits nicely with the auto tagging feature.</p>
<h4>3. Meta keywords</h4>
<p style="padding-left: 30px;">Most people find their way  to this blog using a search engine, so why not give them a helping hand? simple tags will generate meta keywords from the tags.</p>
<p>The tagcloud that simple tags generates is more pleasing to the eye than the standard WordPress tagcloud. It varies the color as well as the size. Furthermore it is possible to customize it.</p>
<p>I have toyed a bit with the ability to only display tags from a specific category. This can be seen on the category pages ( ie <a href="http://rotand.dk/blog/category/weird/">weird</a> ), where I display the tags for a category.I really would have liked to somehow use that to further specify what to look at. For example I want everything from the category &#8220;weird&#8221; tagged with &#8220;fun&#8221;. Unfortunately I haven&#8217;t been able to figure out to go about that. I really don&#8217;t want to get my hands dirty fiddling with to much WordPress php, but it seems that it somehow has to be the only way to go?</p>
<p>Another of Simple Tags features can be seen below, the <em>related posts</em> is generated based on the tags. Just as auto tagging, it seems to work quite nicely.</p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/03/21/lucy-in-the-cloud-with-tags/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spring is in the air</title>
		<link>http://rotand.dk/blog/2009/03/12/spring-is-in-the-air/</link>
		<comments>http://rotand.dk/blog/2009/03/12/spring-is-in-the-air/#comments</comments>
		<pubDate>Thu, 12 Mar 2009 11:31:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[coppermine]]></category>
		<category><![CDATA[gallery]]></category>
		<category><![CDATA[hdr]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[Mantiuk]]></category>
		<category><![CDATA[photo]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[Tonemap]]></category>
		<category><![CDATA[tripod]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[ZenphotoPress]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=94</guid>
		<description><![CDATA[I&#8217;ve been out for a walk taking pictures of the emerging spring.
I really like the contrast between the decaying plants from the last season and the new growth. Since the the sun is hanging low, but shining brightly, there also is some very nice shadows.
The growth is still in its infancy, but in a couple [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been out for a walk taking pictures of the emerging spring.</p>
<p>I really like the contrast between the decaying plants from the last season and the new growth. Since the the sun is hanging low, but shining brightly, there also is some very nice shadows.</p>
<p>The growth is still in its infancy, but in a couple of weeks everything will explode in green.</p>
<dl class="ZenphotoPress_badge ZenphotoPress_shortcode"><dt><a href="http://rotand.dk/zen/spring/bud2.JPG"><img title="bud2" alt="bud2" src="http://rotand.dk/zen/spring/image/thumb/bud2.JPG" /></a></dt><dt><a href="http://rotand.dk/zen/spring/longing_for_summer.JPG"><img title="longing_for_summer" alt="longing_for_summer" src="http://rotand.dk/zen/spring/image/thumb/longing_for_summer.JPG" /></a></dt><dt><a href="http://rotand.dk/zen/spring/matiuk_jtp_way.jpg"><img title="matiuk_jtp_way" alt="matiuk_jtp_way" src="http://rotand.dk/zen/spring/image/thumb/matiuk_jtp_way.jpg" /></a></dt><dt><a href="http://rotand.dk/zen/spring/self_vs_yumyum.JPG"><img title="self_vs_yumyum" alt="self_vs_yumyum" src="http://rotand.dk/zen/spring/image/thumb/self_vs_yumyum.JPG" /></a></dt><dt><a href="http://rotand.dk/zen/spring/underskov.jpg"><img title="underskov" alt="underskov" src="http://rotand.dk/zen/spring/image/thumb/underskov.jpg" /></a></dt><hr /></dl>
<p>In order to show the images I installed <a href="http://www.zenphoto.org/">Zenphoto</a> and <a href="http://wordpress.org/extend/plugins/zenphotopress/">zenphotopress</a>. It seems cleaner than coppermine, both to look at and to work with. And at the same time I changed the theme for the blog, and added a widget to show random images from the gallery.</p>
<p>Some of the images are high-dynamic-range(HDR) images.</p>
<p><a href="http://rotand.dk/zen/spring/mossrooms.jpg"><img class="ZenphotoPress_thumb" title="mossrooms" src="http://rotand.dk/zen/spring/image/thumb/mossrooms.jpg" alt="mossrooms" /></a></p>
<p>I use a point and shoot camera, so I&#8217;m limited in the range and do not have access to raw images. But this is how i do it</p>
<dl>
<dt>Use autobracket</dt>
<dd>This takes 3 images. One with the default settings, two with respectively +/- 1 ev</dd>
<dt>Use a tripod and self-timer</dt>
<dd>This makes sure that the images are aligned in the best possible way.</dd>
<dt>Combine images</dt>
<dd>I use <a href="http://qtpfsgui.sourceforge.net/">Qtpfsgui</a> and i finally managed to compile and use hugins <tt>align_image_stack</tt>. Its necessary to align the images even though i use the tripod, as just a slight vibration will move the images a couple of pixels, and this results in fuzzy images. The <tt>align_image_stack</tt> is quite powerful, so handheld images is a possibility </dd>
<dt>Tonemap </dt>
<dd>I usually use the Mantiuk algorithm, but i tweak it so the colors become more vivid/surreal. </dd>
</dl>
<p style="padding-left: 30px;">
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/03/12/spring-is-in-the-air/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Collection of Processing.org hacks</title>
		<link>http://rotand.dk/blog/2009/02/27/collection-of-processingorg-hacks/</link>
		<comments>http://rotand.dk/blog/2009/02/27/collection-of-processingorg-hacks/#comments</comments>
		<pubDate>Fri, 27 Feb 2009 20:07:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[jar file]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[openGL]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[webcam]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=74</guid>
		<description><![CDATA[Its been quite a while since I last posted anything.
That doesn&#8217;t mean that i haven&#8217;t been coding small hacks, just that i haven&#8217;t posted them. But now is probably a good time to show some of the stuff.
As the title suggest it has something to do with processing.org. I have been using processing on and [...]]]></description>
			<content:encoded><![CDATA[<p>Its been quite a while since I last posted anything.</p>
<p>That doesn&#8217;t mean that i haven&#8217;t been coding small hacks, just that i haven&#8217;t posted them. But now is probably a good time to show some of the stuff.</p>
<p>As the title suggest it has something to do with processing.org. I have been using processing on and off for some time. Its is really nice when you want to make a quick hack, or as its called in processing a &#8220;sketch&#8221;.</p>
<p>In no particular order here is some of the fun stuff made using processing.</p>
<h3>General remarks</h3>
<p>The following sketches and their sourcecode have served as small hacks, hence don&#8217;t expect nice comments or optimal algorithms&#8230;</p>
<h2>shrinkImage</h2>
<p>It is possible to remove the line from a picture representing the least amount of information. The algorithm evaluates every pixels &#8220;weight&#8221; as the absolute difference between the different color channels (r,g,b). And then finds the &#8220;lightest path&#8221; from the bottom to the top.</p>
<p>This means that &#8220;prominent features&#8221; won&#8217;t be removed or change size when shrinking the image. Here the definition of &#8220;prominent features&#8221; is high difference in colors between the neighboring pixels.</p>
<p>Have a look at <a title="processing hack" href="http://rotand.dk/processing/shrinkImage" target="_self">shrinkImage</a></p>
<p>Room for optimizations :</p>
<p>Eventhough its quite quick at calculating the weights and finding the lightest path, it does so in every iteration. Letting it use a bit more memory and just recalculate the changes when removing a line should speed it up. I found a huge speedup when just having an array with the weights from the last and current line, when calculation the path, so not only would saving all weights require a bit more memory it would also slow down the first calculation. But I&#8217;m sure it would give a significant speed up in the next iterations, and a lot of +-1 frustrations <img src='http://rotand.dk/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h2>helloFoo</h2>
<p>There a some quick getting to know processing hacks, this is one off the. <a href="http://rotand.dk/processing/helloFoo" target="_self">helloFoo</a></p>
<p>One of the very cool things about processing is the ability to use openGL, so originally this sketch uses openGL. But applets and openGL isn&#8217;t exactly the best combination. It can be done, but since it doesn&#8217;t work for me (firefox, linux openJDK JRE) i just converted it to standard java graphics. And the effort required to do this, is remove an import and don&#8217;t say setup(400,400, OPENGL) but just setup(400,400). This is trivially true the other way around. If you want to use openGL its quite easy.</p>
<p>The sketch is just bouncing balls, when going away from openGL I reduced the size and number of balls, in order to get a decent animation speed.</p>
<h2>FooIII</h2>
<p>Again used openGl originally <a href="http://rotand.dk/processing/FooIII" target="_self">FooIII</a></p>
<p>Some satellites rotating around some satellites rotating around some &#8230;.</p>
<h2>sndHello</h2>
<p>yes sketches tend to have silly names : <a href="http://rotand.dk/processing/sndHello">sndHello</a></p>
<p>From Clifford Pickovers  book : Computers, Pattern, Chaos, and Beauty &#8211; graphics from an unseen world (p 39 section 4.3 snowflakes from   sound)<br />
Draw symmetrically and in &#8220;polar form&#8221; the fft of the sound, hence creating snowflakes based on the sound.<br />
Music by <a href="http://www.davidrovics.com/">David Rovics</a><br />
Choppy sound I had some problems with the sound when run as an applet. You might have better luck using the <a href="http://rotand.dk/processing/sndHello/sndHello.jar">jar</a> directly or by downloading the sourcecode and running it with processing</p>
<h2>Slit-scanning</h2>
<p>The former applet relied on an external library for the sound, ther are quite a few libraries available. I did use <a href="http://users.design.ucla.edu/~acolubri/processing/gsvideo/home/">GSvideo</a> to hook up my crappy webcam and do some video effects. I experimented with slit-scanning in different ways.Unfortunately this won&#8217;t run as an applet and it might only run on Linux.</p>
<p>By creating a cube of the images, where the z-axis represents time, its possible to play back different parts of the movie from different layers in time. Which makes for some quite interesting and dizzing effects.</p>
<p>For example a time buble where playback is delayed around a &#8220;bulge in the timespace continuum&#8221; :s (a video of some guy playing with it (<a href="http://rotand.dk/processing/timebuble1.avi">timebuble1.avi</a>) some sourcecode for a similar effect where the mouse pointer moves the buble (<a href="http://rotand.dk/processing/TimeCube.pde">TimeCube.pde</a>) another more &#8220;traditional slitscan&#8221; (<a href="http://rotand.dk/processing/CamWarpTime.pde">CamWarpTime.pde</a>) .</p>
<p>In general there is plenty of room to fiddle with the code, there a functions like selectSlice or initQueues where its decided how to slice time. its great fun to play with..</p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2009/02/27/collection-of-processingorg-hacks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://rotand.dk/processing/timebuble1.avi" length="2640804" type="video/x-msvideo" />
		</item>
		<item>
		<title>Matrix Multiplication</title>
		<link>http://rotand.dk/blog/2008/06/14/matrix-multiplication/</link>
		<comments>http://rotand.dk/blog/2008/06/14/matrix-multiplication/#comments</comments>
		<pubDate>Sat, 14 Jun 2008 16:03:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[jar file]]></category>
		<category><![CDATA[mathematics]]></category>

		<guid isPermaLink="false">http://rotand.dk/blog/?p=69</guid>
		<description><![CDATA[Who would have thought that matrix multiplication could be beautiful ?

The very short desctiption :
inspiration from an example of homogeneous coordinates in my linear algebra book and lectures about lineartransforms.
There is a jar, with sourcecode, if you want to se it &#8220;live&#8221; or twiddle with it.
tegneri
]]></description>
			<content:encoded><![CDATA[<p>Who would have thought that matrix multiplication could be beautiful ?</p>
<p><a href="http://rotand.dk/blog/wp-content/lintrans.png"><img class="alignnone size-full wp-image-70" title="lintrans" src="http://rotand.dk/blog/wp-content/lintrans.png" alt="linear tranformation by matrix multiplication" width="400" height="328" /></a></p>
<p>The very short desctiption :</p>
<p>inspiration from an example of homogeneous coordinates in my linear algebra book and lectures about lineartransforms.</p>
<p>There is a jar, with sourcecode, if you want to se it &#8220;live&#8221; or twiddle with it.</p>
<p><a href="http://rotand.dk/blog/wp-content/tegneri.jar">tegneri</a></p>
]]></content:encoded>
			<wfw:commentRss>http://rotand.dk/blog/2008/06/14/matrix-multiplication/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
