<?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>Graphics &#8211; Busy Ducks</title>
	<atom:link href="/tag/graphics/feed/" rel="self" type="application/rss+xml" />
	<link>/</link>
	<description>Making You Pro&#039;duck&#039;tive</description>
	<lastBuildDate>Sat, 05 Nov 2016 14:29:49 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.8.3</generator>

<image>
	<url>/wp-content/uploads/2015/07/cropped-favicon-55963284v1_site_icon-32x32.png</url>
	<title>Graphics &#8211; Busy Ducks</title>
	<link>/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>OpenXeen</title>
		<link>/openxeen/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Sat, 05 Nov 2016 14:29:49 +0000</pubDate>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Xeen]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=816</guid>

					<description><![CDATA[Overview OpenXeen is a game engine rewrite I have been working on for Might and Magic III, IV and V . It&#8217;s opensource and still under development. Currently it brings up monsters, objects, and most of the outdoor environment. Resources: Git: here Wiki: here Development Blog: here State of openXeen features Interested in contributing Xeen &#8230;<br><a href="/openxeen/" class="more-link pen_button pen_element_default pen_icon_arrow_double">Continue reading <span class="screen-reader-text">OpenXeen</span></a>]]></description>
										<content:encoded><![CDATA[<h1>Overview</h1>
<p>OpenXeen is a game engine rewrite I have been working on for Might and Magic III, IV and V . It&#8217;s opensource and still under development.</p>
<p>Currently it brings up monsters, objects, and most of the outdoor environment.</p>
<p><a href="/wp-content/uploads/2016/11/openXeen13.png"><img loading="lazy" class="alignnone size-large wp-image-818" src="/wp-content/uploads/2016/11/openXeen13-1024x683.png" alt="openxeen13" width="640" height="427" srcset="/wp-content/uploads/2016/11/openXeen13-1024x683.png 1024w, /wp-content/uploads/2016/11/openXeen13-300x200.png 300w, /wp-content/uploads/2016/11/openXeen13-768x512.png 768w, /wp-content/uploads/2016/11/openXeen13.png 1306w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>
<p>Resources:</p>
<ul>
<li>Git: <a href="https://github.com/busyDuckman/OpenXeen">here</a></li>
<li>Wiki: <a href="https://github.com/busyDuckman/OpenXeen/wiki">here</a></li>
<li>Development Blog: <a href="https://github.com/busyDuckman/OpenXeen/wiki/A-Development-BLOG-(in-screenshots)">here</a></li>
<li>State of openXeen <a href="https://github.com/busyDuckman/OpenXeen/wiki/Features">features</a></li>
<li>Interested in <a href="https://github.com/busyDuckman/OpenXeen/wiki/Contributing">contributing</a></li>
<li>Xeen development related <a href="https://github.com/busyDuckman/OpenXeen/wiki/Xeen-related-links">links</a></li>
<li>The <a href="http://xeen.wikia.com/wiki/Xeen_Wiki">xeen wiki</a> (the groundwork reverse engineering project that OpenXeen stands on top of)</li>
</ul>
<p>Status:</p>
<ul>
<li>Software is not ready for release.</li>
<li>At the moment it can:
<ul>
<li>Parse the cc files and open some graphics and audio files</li>
<li>Parse some map info</li>
<li>Create proxies of all files in cc files.</li>
<li>Display a simple rendering of some xeen components. NB: First run will take some time, proxy files are being created.</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<h1>Might and magic III (Isles of Terra) support.</h1>
<p>I have got the MAMIII GUI up, and decoded some sprites. Not much more to show yet.</p>
<p>I am by no means a proficient at reverse engineering software, however I wrote up a quick primer on how I was using the <a href="https://github.com/busyDuckman/OpenXeen/wiki/A-Development-BLOG-(in-screenshots)#july-17th-2016-reverse-engineering-mm3">cpu logs generated by the dosbox debugger</a>, to recover some MM3 data.</p>
<p><a href="/wp-content/uploads/2016/11/openXeen12.png"><img loading="lazy" class="alignnone size-large wp-image-819" src="/wp-content/uploads/2016/11/openXeen12-1024x683.png" alt="openxeen12" width="640" height="427" srcset="/wp-content/uploads/2016/11/openXeen12-1024x683.png 1024w, /wp-content/uploads/2016/11/openXeen12-300x200.png 300w, /wp-content/uploads/2016/11/openXeen12-768x512.png 768w, /wp-content/uploads/2016/11/openXeen12.png 1306w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>
<p>&nbsp;</p>
<h1>Related Links</h1>
<p>Tools:</p>
<ul>
<li><a href="http://games.playazlounge.net/#UserUtilities">Xeen Utilities</a></li>
<li><a href="https://github.com/rwfpl/rewolf-mm3-dumper">MM3 Dumper</a></li>
</ul>
<p>Mods:</p>
<ul>
<li><a href="http://www.jeffludwig.com/xeen/download.php">respawn mod</a></li>
</ul>
<p>Xeen Info Gneral:</p>
<ul>
<li>Xeen Wiki: <a href="http://xeen.wikia.com/wiki/Xeen_Wiki">http://xeen.wikia.com/wiki/Xeen_Wiki</a></li>
<li>CC file format: <a href="http://rewiki.regengedanken.de/wiki/.CC">http://rewiki.regengedanken.de/wiki/.CC</a></li>
<li>MM3 CC file: <a href="http://rewiki.regengedanken.de/wiki/MM3.CC">http://rewiki.regengedanken.de/wiki/MM3.CC</a></li>
<li>MM3 CC file LHZ compression: <a href="http://blog.rewolf.pl/blog/?p=1202">http://blog.rewolf.pl/blog/?p=1202</a></li>
</ul>
<p>Xeen modding</p>
<ul>
<li>MM3 modding page: <a href="http://jeffludwig.com/mm3/resources.php">http://jeffludwig.com/mm3/resources.php</a></li>
</ul>
<p>Xeen Cluebooks</p>
<ul>
<li>MM3: <a href="http://www.abandonia.com/files/extras/25850_game_extra_1.pdf">http://www.abandonia.com/files/extras/25850_game_extra_1.pdf</a></li>
<li>WoX: <a href="http://www.abandonia.com/files/extras/26962_Extra%20document_Cluebooks.zip">http://www.abandonia.com/files/extras/26962_Extra%20document_Cluebooks.zip</a></li>
</ul>
<p>MM3 Releases</p>
<ul>
<li>DOS: <a href="http://www.abandonia.com/en/games/1035/Might+and+Magic+III+-+Isles+of+Terra.html">http://www.abandonia.com/en/games/1035/Might+and+Magic+III+-+Isles+of+Terra.html</a></li>
<li>Amiga: <a href="http://www.lemonamiga.com/?game_id=3142">http://www.lemonamiga.com/?game_id=3142</a></li>
<li>SNES</li>
</ul>
<p>WoX Releases</p>
<ul>
<li>Dos: <a href="http://www.abandonia.com/en/games/482/Might+and+Magic+IV+and+V+-+World+Of+Xeen.html">http://www.abandonia.com/en/games/482/Might+and+Magic+IV+and+V+-+World+Of+Xeen.html</a></li>
<li>Mac:</li>
<li>PC-98</li>
</ul>
<p>&#8220;Vintage&#8221; Computing:</p>
<ul>
<li>File Formats from the C64: <a href="http://petlibrary.tripod.com/formats.htm">http://petlibrary.tripod.com/formats.htm</a></li>
</ul>
<p>Reference Code</p>
<ul>
<li>LHZ <a href="https://github.com/rwfpl/rewolf-mm3-dumper">https://github.com/rwfpl/rewolf-mm3-dumper</a></li>
<li>Xbr</li>
</ul>
<p>Other WoX Engines:</p>
<ul>
<li>DeamMasters Xeen engine in scumvm <a href="https://github.com/dreammaster/scummvm/tree/xeen">https://github.com/dreammaster/scummvm/tree/xeen</a>and <a href="https://github.com/roguevm/roguevm/find/xeen">https://github.com/roguevm/roguevm/find/xeen</a></li>
</ul>
<p>Articles on the History of MaM</p>
<ul>
<li>5 pages covering the series:<a href="http://www.hardcoregaming101.net/mightandmagic/mightandmagic3.htm">http://www.hardcoregaming101.net/mightandmagic/mightandmagic3.htm</a></li>
</ul>
<p>Reverse Engineering Dos Games:</p>
<ul>
<li>A good primer <a href="http://wiki.scummvm.org/index.php/HOWTO-Reverse_Engineering">http://wiki.scummvm.org/index.php/HOWTO-Reverse_Engineering</a></li>
<li>Dosbox 0.74 debug build: <a href="http://source.dosbox.com/dosbox-74-debug.exe">http://source.dosbox.com/dosbox-74-debug.exe</a></li>
<li>Bridging IRA to dosbox <a href="https://github.com/wjp/idados">https://github.com/wjp/idados</a></li>
<li>Driving the dosbox debugger: <a href="http://www.vogons.org/viewtopic.php?t=3944">http://www.vogons.org/viewtopic.php?t=3944</a></li>
</ul>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h1>Code Audit, first release &#8211; v0.1.0 alpha</h1>
<p>(From my <a href="https://github.com/busyDuckman/OpenXeen/wiki/A-Development-BLOG-(in-screenshots)">dev blog</a>)</p>
<p><a href="/wp-content/uploads/2016/11/loc_chart_v0_1.png"><img loading="lazy" class="alignnone size-large wp-image-820" src="/wp-content/uploads/2016/11/loc_chart_v0_1-1024x716.png" alt="loc_chart_v0_1" width="640" height="448" srcset="/wp-content/uploads/2016/11/loc_chart_v0_1-1024x716.png 1024w, /wp-content/uploads/2016/11/loc_chart_v0_1-300x210.png 300w, /wp-content/uploads/2016/11/loc_chart_v0_1-768x537.png 768w, /wp-content/uploads/2016/11/loc_chart_v0_1.png 1101w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>
<p>With this first release I wanted to take stock of where the code is at, where I am heading and what my time is being spent on. I have a job and a family, so openXeen is largely coded in at night or when I can grab 5 minutes. This forces me to code in a manor &#8216;resistant to interruptions&#8217; (finish one logical area at a time, use a fully thought out architecture).</p>
<p>What I also need to do Is audit how much time I spend on what. Which is where this line of code by package breakdown comes into play. It breaks my 8.8k lines of code down, telling me where my effort has been spent. I aim to update this graph at every delivery milestone. What I learnt:</p>
<ul>
<li>1/3 of the code is concerned with reading and loading files contained in the .cc archives (reds)</li>
<li>1/3 of the code is &#8216;toolbox code&#8217; (oranges), stuff that is not relevant to xeen, and ideally would have been provided by java or a 3rd party library.</li>
<li>1/6 is in game mechanics (blues), arguably this is an over investment in mechanics early on. But I am prioritising having a &#8216;game&#8217; by the end of the year, not a tech demo.</li>
<li>1/6 is in rendering (greens). The rendering code has been kept as simple as possible. I love to write rendering engines, and know this is a trap. You spend far too much time on rendering &#8216;goodies&#8217;, then your engine was built without respect to the actual game (because the game did not exist yet) and you have nothing to show in your render. Your&#8217;e exhausted, and sometimes coded into a corner.</li>
</ul>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Arduino Graphing Libraries</title>
		<link>/arduino-graphing-libraries/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Mon, 08 Feb 2016 13:58:47 +0000</pubDate>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GNUPlot]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[Graphs]]></category>
		<category><![CDATA[Maths]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Sample Code]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=754</guid>

					<description><![CDATA[Here is a library to write GNUPlot output from the Arduino. Now the Arduino can produce a graph output that is directly renderable across multiple platforms and cloud services. Does not rely on some gone tomorrow software + lets you edit the plot afterward.]]></description>
										<content:encoded><![CDATA[<h1>Introduction</h1>
<p style="padding-left: 30px;">I believe strongly in plotting the data that I obtain, because plots tell you a story and they don&#8217;t mislead you like summary statistics can.</p>
<p style="padding-left: 30px;">Often I want to plot data the arduino has acquired, but I find existing solutions don&#8217;t suit my needs. So I went out and made my own solution which writes a GNUPlot script in response to plot commands. I integrated the library with my general Arduino Toolbox (WDArduinoLib) and am releasing it under the GNU 2.0 License.</p>
<h1>Goals</h1>
<ul>
<li>Professional graphics</li>
<li>Graphs manually editable after plotting for change colours etc.</li>
<li>Arduino outputs data that  other people can defiantly grab and use (just paste into a cloud based GNUPlot terminal)</li>
<li>Allow embedded linux system to offload the plotting of graphs from arduino collected data</li>
<li>Easy straight forward API</li>
<li>Linux, Windows and Mac compatible.</li>
<li>Quality API documentation</li>
</ul>
<h1>Features</h1>
<ul>
<li>Configurable output
<ul>
<li>You can use a Serial Port, SD-Card,  Telnet, TCP-IP, IrDA, whatever. So long as it derives from the Arduino Print class (ie has Print and Println()) this library can output a graph to it</li>
</ul>
</li>
<li>Uses <a href="http://www.gnuplot.info/" target="_blank" rel="noopener">GNUPlot</a> as a server to execute the plot script this API outputs.
<ul>
<li>GNUPlot is the standard for scientific publication, it outputs presentable graphics ready for both websites, and software manuals.</li>
<li>GNUPlot has been around forever (1986) and is still actively developed.</li>
<li>GNUPlot can run on the Raspberry pi, PC, Mac or even online via <a href="http://plotshare.com/" target="_blank" rel="noopener">http://plotshare.com/</a></li>
</ul>
</li>
<li>Extensible
<ul>
<li>Easily over-rideable classes to add new plot types or different output terminal (eg Matlab)</li>
</ul>
</li>
<li>Built in quality colour palettes designed for graphing.
<ul>
<li>Sample palettes for showing importance, of keeping different coloured categories at the same intensity.</li>
<li>Spectral palettes , optimised for on-white graphing.</li>
<li>Colour-blind compatible palettes .</li>
<li>Can still use arbitrary 24bit RGB colours if you like.</li>
</ul>
</li>
<li>Unit tested library to support quality software development</li>
<li>Template driven code designed for maximum data flexibility</li>
<li>Memory Efficient.
<ul>
<li>Use of progmem strings supported throughout.</li>
</ul>
</li>
<li>Useful, stable data format that does not rely on someone&#8217;s pet project still existing in 5 years time.</li>
<li>All input, including text, is validated.</li>
</ul>
<p>&nbsp;</p>
<h1>Examples</h1>
<p style="padding-left: 30px;">This library is simple to use and produces clean results with minimal configuration. I present several basic examples that show the API in use and the results obtained.</p>
<hr />
<h2>Example: Basic Line Graph</h2>
<p style="padding-left: 30px;">Line plots of time series data are probably the most important feature any graphing API targeted for micro-controllers can offer. This code creates such a plot. It demonstrates the use of multiple line styles.</p>
<pre class="height-set:true height:800 lang:c++ decode:true">//main
GNUPlotLineGraph gnuLinePlotter(&amp;Serial);
PlotDampenedSineWaves(gnuLinePlotter);

//method
void PlotDampenedSineWaves(SerialGraph&amp; plot)
{
	//setup graph
	plot.newGraph();
	plot.enableSaveImageFile(true);
	plot.setTitle(F("Dampened Sine Wave"));
	plot.setXAxisName(F("Time (Sec)"));
	plot.setYAxisName(F("Voltage (V)"));

	//setup series
	plot.setSeriesName(0, F("Slow decay"));
	plot.getLineApperance(0)-&gt;setLineStyle(LineStyles::SolidLine);
	plot.getLineApperance(0)-&gt;setLineWidth(4);
	plot.getLineApperance(0)-&gt;setRGB(GraphColorsSchemeBlues::Blue1);


	plot.setSeriesName(1, F("Medium decay"));
	plot.getLineApperance(1)-&gt;setLineStyle(LineStyles::DashedLine);
	plot.getLineApperance(1)-&gt;setLineWidth(3);
	plot.getLineApperance(1)-&gt;setRGB(GraphColorsSchemeBlues::Blue2);

	plot.setSeriesName(2, F("Quick decay"));
	plot.getLineApperance(2)-&gt;setLineStyle(LineStyles::DotedLine);
	plot.getLineApperance(2)-&gt;setLineWidth(2);
	plot.getLineApperance(2)-&gt;setRGB(GraphColorsSchemeBlues::Blue3);
	
        //plot graph
	for(int i=0; i&lt;=720; i+=3)
	{
		float c = cos(DEG_TO_RAD*(float)i); 
		float y1 = Dampen(i, c, 1, 1.0/360.0); 
		float y2 = Dampen(i, c, 1, 1.0/240.0); 
		float y3 = Dampen(i, c, 1, 1.0/180.0); 

		plot.plotDatumXYn(i, y1, y2, y3);
	}
	plot.finishGraph();
}

</pre>
<p><a href="/wp-content/uploads/2015/12/Damped-Sine-Wave.png" rel="attachment wp-att-757"><img loading="lazy" class="size-full wp-image-757 aligncenter" src="/wp-content/uploads/2015/12/Damped-Sine-Wave.png" alt="Damped Sine Wave" width="800" height="600" srcset="/wp-content/uploads/2015/12/Damped-Sine-Wave.png 800w, /wp-content/uploads/2015/12/Damped-Sine-Wave-300x225.png 300w, /wp-content/uploads/2015/12/Damped-Sine-Wave-768x576.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a></p>
<p>&nbsp;</p>
<hr />
<h2>Example: Plotting Points (Scatter Plot)</h2>
<p style="padding-left: 30px;">A scatter plots, with styles colours and trimmings.</p>
<pre class="height-set:true lang:c++ decode:true">//main
GNUPlotPointGraph gnuPointPlotter(&amp;Serial);
PlotPointNoise(gnuPointPlotter);

//method
void PlotPointNoise(SerialGraph&amp; plot)
{
	//setup graph
	plot.newGraph();
	plot.enableSaveImageFile(true);
	plot.setTitle(F("Sine Waves with Noise"));
	plot.setXAxisName(F("Time (Sec)"));
	plot.setYAxisName(F("Voltage (V)"));
	plot.setShowGrid(true);

	//setup series
	plot.setSeriesName(0, F("Pin 1"));
	plot.getLineApperance(0)-&gt;setMarkerStyle(LineMarkers::SquareMarker);
	plot.getLineApperance(0)-&gt;setRGB(0xff0000);

	plot.setSeriesName(1, F("Pin 2"));
	plot.getLineApperance(1)-&gt;setMarkerStyle(LineMarkers::CrossMarker);
	plot.getLineApperance(1)-&gt;setRGB(0x00ff00);

	plot.setSeriesName(2, F("Pin 3"));
	plot.getLineApperance(2)-&gt;setMarkerStyle(LineMarkers::CircleMarker);
	plot.getLineApperance(2)-&gt;setRGB(0x0000ff);
	
        //plot graph
	for(int i=0; i&lt;=720; i+=5)
	{
		float c = cos(DEG_TO_RAD*(float)i); 
		float y1 = c + Dampen(i, ((float)(random(100)-50)) *0.1, 1, 1.0/240.0); 
		float y2 = c + Dampen(i, ((float)(random(100)-50)) *0.1, 1, 1.0/180.0)-2; 
		float y3 = c + Dampen(i, ((float)(random(100)-50)) *0.1, 1, 1.0/90.0)-4; 

		plot.plotDatumXYn(i, y1, y2, y3);
	}
	plot.finishGraph();
}

</pre>
<p><a href="/wp-content/uploads/2015/12/Sine-Wave-with-Noise.png" rel="attachment wp-att-755"><img loading="lazy" class="size-full wp-image-755 aligncenter" src="/wp-content/uploads/2015/12/Sine-Wave-with-Noise.png" alt="Sine Wave with Noise" width="800" height="600" srcset="/wp-content/uploads/2015/12/Sine-Wave-with-Noise.png 800w, /wp-content/uploads/2015/12/Sine-Wave-with-Noise-300x225.png 300w, /wp-content/uploads/2015/12/Sine-Wave-with-Noise-768x576.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a></p>
<p>&nbsp;</p>
<hr />
<h2>Example: Plotting Arbitrary Lines</h2>
<p style="padding-left: 30px;">Sometimes your not using time series data, and need to plot lines between arbitrary x/y positions. Many solutions for the arduino breakdown at this point. Here I demonstrate such a plot (based on the logarithmic spiral). Note I am using lines with point markers to show the actual points plotted.</p>
<pre class="height-set:true lang:c++ decode:true">//main
GNUPlotLineGraph gnuLinePlotter(&amp;Serial);
PlotLogarithmicSpiral(gnuLinePlotter);

//method
void PlotLogarithmicSpiral(SerialGraph&amp; plot)
{
	//setup graph
	plot.newGraph();
	plot.enableSaveImageFile(true);
	plot.setTitle(F("Logarithmic Spiral"));

	//setup series
	plot.setSeriesName(0, F("Spiral"));
	plot.getLineApperance(0)-&gt;setLineWidth(2);
	plot.getLineApperance(0)-&gt;setMarkerStyle(LineMarkers::SolidCircleMarker);
	plot.getLineApperance(0)-&gt;setRGB(GraphColorsSchemeSpectral::Spectral7);
		
	//plot graph
	float a = 1;
	float b = 0.1759;
	for(int i=0; i&lt;(int)(10.0*20.0*M_PI); i+=5)
	{
		float t = ((float)i) * 0.1;
		float rt = a*pow(M_E, b* t);
		float x = rt*cos(t);
		float y = rt*sin(t);

		plot.plotDatumXY(x, y);
	}

	plot.finishGraph();
}</pre>
<p style="padding-left: 30px;"><a href="/wp-content/uploads/2015/12/Logarithmic-Spiral.png" rel="attachment wp-att-761"><img loading="lazy" class="size-full wp-image-761 aligncenter" src="/wp-content/uploads/2015/12/Logarithmic-Spiral.png" alt="Logarithmic Spiral" width="800" height="600" srcset="/wp-content/uploads/2015/12/Logarithmic-Spiral.png 800w, /wp-content/uploads/2015/12/Logarithmic-Spiral-300x225.png 300w, /wp-content/uploads/2015/12/Logarithmic-Spiral-768x576.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a></p>
<hr />
<h2>Example: Multi Column Bar Graph.</h2>
<p style="padding-left: 30px;">Bar graphs, for histograms and such are easy in this API. The example below shows support for multi column graphs, Note: negative values are also supported. The labels for the X-Axis are plotted as standard x values (the plot command is template driven and can support many different types of data).</p>
<pre class="height-set:true lang:c++ decode:true">//main
GNUPlotBarGraph gnuBarPlotter(&amp;Serial);
PlotSampleBarGraph(gnuBarPlotter);

//method
void PlotSampleBarGraph(SerialGraph&amp; plot)
{
	//setup graph
	plot.newGraph();
	plot.enableSaveImageFile(true);
	plot.setTitle(F("Google Results for Instruments"));
	plot.setXAxisName(F("Instrument"));
	plot.setYAxisName(F("# Google Results (millions)"));
	plot.setShowGrid(true);

	//setup series
	plot.setSeriesName(0, F("play"));
	plot.getLineApperance(0)-&gt;setRGB(GraphColorsSchemeOranges::Orange1);
	plot.setSeriesName(1, F("teach"));
	plot.getLineApperance(1)-&gt;setRGB(GraphColorsSchemeBlues::Blue1);
	plot.setSeriesName(2, F("like"));
	plot.getLineApperance(2)-&gt;setRGB(GraphColorsSchemeGreens::Green1);
	plot.setSeriesName(3, F("hate"));
	plot.getLineApperance(3)-&gt;setRGB(GraphColorsSchemeReds::Red1);

	//plot graph
	//Dataset compiled by Google-ing "I X the Y"
	//                instrument	play	teach	like	hate
	plot.plotDatumXYn("Piano",		173,	25,		211,	21);
	plot.plotDatumXYn("Guitar",		163,	22,		193,	27);
	plot.plotDatumXYn("Violin",     41,		2,		43,		1);
	plot.plotDatumXYn("Drums",		30,		8,		83,		9);
	
	plot.finishGraph();
}</pre>
<p style="padding-left: 30px;"><a href="/wp-content/uploads/2015/12/Google-Results-for-Instruments.png" rel="attachment wp-att-762"><img loading="lazy" class="size-full wp-image-762 aligncenter" src="/wp-content/uploads/2015/12/Google-Results-for-Instruments.png" alt="Google Results for Instruments" width="800" height="600" srcset="/wp-content/uploads/2015/12/Google-Results-for-Instruments.png 800w, /wp-content/uploads/2015/12/Google-Results-for-Instruments-300x225.png 300w, /wp-content/uploads/2015/12/Google-Results-for-Instruments-768x576.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></a></p>
<h1>Installation</h1>
<p>&nbsp;</p>
<ol>
<li>Get the library from its <a href="https://github.com/busyDuckman/WDArduinoLib" target="_blank" rel="noopener">github repository</a>.</li>
<li>See the official guide on how to install libraries <a href="https://www.arduino.cc/en/Guide/Libraries" target="_blank" rel="noopener">https://www.arduino.cc/en/Guide/Libraries</a></li>
<li>Run the provided example sketch</li>
<li>Install GNUPlot v5.0 or later (<a href="http://www.gnuplot.info/download.html" target="_blank" rel="noopener">here</a>).</li>
<li>Using the com port viewer, copy the output of sketch into GNUPlot.</li>
<li>Enjoy!</li>
</ol>
<p>It is very possible to get the output generated by this library to GNUPlot automatically. How you achieve this is up to you.</p>
<p>It is possible to direct the output to a SD card. See the arduino help page on the <a href="https://www.arduino.cc/en/Tutorial/Files" target="_blank" rel="noopener">file class</a>, to create you own file on a SD card. Then pass the open file object in to the constructor for your plotting class (where I used Serial in the examples).</p>
<h1></h1>
<h1>Documentation</h1>
<p style="padding-left: 30px;">Full documentation available <a href="http://www.busyducks.com/downloads/doco/WDArduinoLib/index.html" target="_blank" rel="noopener">here</a>.</p>
<p>&nbsp;</p>
<h1>License</h1>
<p style="padding-left: 30px;">GNU 2.0</p>
<h1>State</h1>
<p>Most Features are well tested, but I don&#8217;t warrant or accept liability for any of the functionality in any way.</p>
<p>NB: some dynamic memory usage , refrain from using malloc during plotting operations to prevent possible heap fragmentation.</p>
<ul>
<li>Dynamic memory usage is a design decision I made weighing pro&#8217;s and con&#8217;s of the situation.</li>
<li>Given &#8216;typical usage&#8217; scenarios of the API it should not cause heap fragmentation.</li>
</ul>
<p>&nbsp;</p>
<h1>Road-Map</h1>
<p>May happen:</p>
<ul>
<li>Second x/y axis support</li>
<li>Matlab support</li>
<li>3d plots</li>
<li>Spectrogram</li>
<li>Support for cloud based rendering for graphs</li>
<li>Sage support</li>
<li>Thousands separator (right now I could not deploy it because of a bug in the windows version of GNUPlot).</li>
</ul>
<p>Won&#8217;t Happen:</p>
<ul>
<li>Real-time visualisation (plenty of other projects to do that already)</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ASCII-Art Arduino Pinouts</title>
		<link>/ascii-art-arduino-pinouts/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Mon, 16 Nov 2015 18:09:31 +0000</pubDate>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Edcucational]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=704</guid>

					<description><![CDATA[Managing arduino projects can be a nightmare because its hard to keep track of your hardware setup in your code comments.  To enable easy documentation of pin assignments, I created a couple of ASCII art arduino pin-outs.

These come complete with ports, PWM and coms all marked. Simply paste as a comment into your code and marvel at your new found organisation.]]></description>
										<content:encoded><![CDATA[<h1>Introduction</h1>
<p style="padding-left: 30px;">Managing arduino projects can be a nightmare because you only see the software side in your code documentation, the hardware is hard to keep track off.</p>
<p style="padding-left: 30px;">To enable easy documentation of pin assignments, I created a couple of ASCII art arduinos; complete with ports, PWM and coms all marked. Simply paste as a comment into your code and marvel at your new found organisation.</p>
<p style="padding-left: 30px;">I suggest altering the image (eg. a letter or X in the [ ]) to keep track of the pins you ended up using.</p>
<p style="padding-left: 30px;">Find this project on <a href="https://github.com/busyDuckman/ascii-art-arduinos">gitHub</a></p>
<h1>Plain Text &#8211; Arduino Pinout</h1>
<p style="padding-left: 30px;">Here is copy/paste-able Arduino Pinout ASCII art ready to go (tip: you can use the copy button, at the top of each ASCII art piece, to make the process easy).<br />
<em>     <span style="color: #999999;">I place them in the Creatice Commons [Creative Commons Attribution (BY) license]. </span></em><br />
<span style="color: #999999;"><em>     Attribution via the url: &#8220;http://busyducks.com/ascii-art-arduinos&#8221;</em></span></p>
<pre class="lang:c++ decode:true">                                      +-----+
         +----[PWR]-------------------| USB |--+
         |                            +-----+  |
         |         GND/RST2  [ ][ ]            |
         |       MOSI2/SCK2  [ ][ ]  A5/SCL[ ] |   C5 
         |          5V/MISO2 [ ][ ]  A4/SDA[ ] |   C4 
         |                             AREF[ ] |
         |                              GND[ ] |
         | [ ]N/C                    SCK/13[ ] |   B5
         | [ ]IOREF                 MISO/12[ ] |   .
         | [ ]RST                   MOSI/11[ ]~|   .
         | [ ]3V3    +---+               10[ ]~|   .
         | [ ]5v    -| A |-               9[ ]~|   .
         | [ ]GND   -| R |-               8[ ] |   B0
         | [ ]GND   -| D |-                    |
         | [ ]Vin   -| U |-               7[ ] |   D7
         |          -| I |-               6[ ]~|   .
         | [ ]A0    -| N |-               5[ ]~|   .
         | [ ]A1    -| O |-               4[ ] |   .
         | [ ]A2     +---+           INT1/3[ ]~|   .
         | [ ]A3                     INT0/2[ ] |   .
         | [ ]A4/SDA  RST SCK MISO     TX&gt;1[ ] |   .
         | [ ]A5/SCL  [ ] [ ] [ ]      RX&lt;0[ ] |   D0
         |            [ ] [ ] [ ]              |
         |  UNO_R3    GND MOSI 5V  ____________/
          \_______________________/
		  
		  http://busyducks.com/ascii-art-arduinos</pre>
<pre class="lang:c++ decode:true ">                                      +-----+
         +----[PWR]-------------------| USB |--+
         |                            +-----+  |
         |           GND/RST2  [ ] [ ]         |
         |         MOSI2/SCK2  [ ] [ ]  SCL[ ] |   D0
         |            5V/MISO2 [ ] [ ]  SDA[ ] |   D1
         |                             AREF[ ] |
         |                              GND[ ] |
         | [ ]N/C                        13[ ]~|   B7
         | [ ]IOREF                      12[ ]~|   B6
         | [ ]RST                        11[ ]~|   B5
         | [ ]3V3      +----------+      10[ ]~|   B4
         | [ ]5v       | ARDUINO  |       9[ ]~|   H6
         | [ ]GND      |   MEGA   |       8[ ]~|   H5
         | [ ]GND      +----------+            |
         | [ ]Vin                         7[ ]~|   H4
         |                                6[ ]~|   H3
         | [ ]A0                          5[ ]~|   E3
         | [ ]A1                          4[ ]~|   G5
         | [ ]A2                     INT5/3[ ]~|   E5
         | [ ]A3                     INT4/2[ ]~|   E4
         | [ ]A4                       TX&gt;1[ ]~|   E1
         | [ ]A5                       RX&lt;0[ ]~|   E0
         | [ ]A6                               |   
         | [ ]A7                     TX3/14[ ] |   J1
         |                           RX3/15[ ] |   J0
         | [ ]A8                     TX2/16[ ] |   H1         
         | [ ]A9                     RX2/17[ ] |   H0
         | [ ]A10               TX1/INT3/18[ ] |   D3         
         | [ ]A11               RX1/INT2/19[ ] |   D2
         | [ ]A12           I2C-SDA/INT1/20[ ] |   D1         
         | [ ]A13           I2C-SCL/INT0/21[ ] |   D0
         | [ ]A14                              |            
         | [ ]A15                              |   Ports:
         |                RST SCK MISO         |    22=A0  23=A1   
         |         ICSP   [ ] [ ] [ ]          |    24=A2  25=A3   
         |                [ ] [ ] [ ]          |    26=A4  27=A5   
         |                GND MOSI 5V          |    28=A6  29=A7   
         | G                                   |    30=C7  31=C6   
         | N 5 5 4 4 4 4 4 3 3 3 3 3 2 2 2 2 5 |    32=C5  33=C4   
         | D 2 0 8 6 4 2 0 8 6 4 2 0 8 6 4 2 V |    34=C3  35=C2   
         |         ~ ~                         |    36=C1  37=C0   
         | @ # # # # # # # # # # # # # # # # @ |    38=D7  39=G2    
         | @ # # # # # # # # # # # # # # # # @ |    40=G1  41=G0   
         |           ~                         |    42=L7  43=L6   
         | G 5 5 4 4 4 4 4 3 3 3 3 3 2 2 2 2 5 |    44=L5  45=L4   
         | N 3 1 9 7 5 3 1 9 7 5 3 1 9 7 5 3 V |    46=L3  47=L2   
         | D                                   |    48=L1  49=L0    SPI:
         |                                     |    50=B3  51=B2     50=MISO 51=MOSI
         |     2560                ____________/    52=B1  53=B0     52=SCK  53=SS 
          \_______________________/         
         
         http://busyducks.com/ascii-art-arduinos</pre>
<p style="padding-left: 30px;">You may notice that the clean layout of these diagrams makes them very readable, personally I feel many graphical versions present too much information at once.</p>
<h3>Some Updates (new models)</h3>
<p style="padding-left: 30px;">This idea seems to have caught on quickly, so I will keep the art coming.</p>
<p style="padding-left: 30px;">Redit user <em>plasticluthier</em> adapted a nano version <a href="https://www.reddit.com/r/arduino/comments/3tb0d2/i_made_some_asciiart_arduinos_to_paste_in/" target="_blank" rel="noopener">here</a>, I thought that was spiffy, so I fixed an error tweaked it a bit and added chips and ports.</p>
<pre class="lang:c++ decode:true">                      +-----+
         +------------| USB |------------+
         |            +-----+            |
    B5   | [ ]D13/SCK        MISO/D12[ ] |   B4
         | [ ]3.3V           MOSI/D11[ ]~|   B3
         | [ ]V.ref     ___    SS/D10[ ]~|   B2
    C0   | [ ]A0       / N \       D9[ ]~|   B1
    C1   | [ ]A1      /  A  \      D8[ ] |   B0
    C2   | [ ]A2      \  N  /      D7[ ] |   D7
    C3   | [ ]A3       \_0_/       D6[ ]~|   D6
    C4   | [ ]A4/SDA               D5[ ]~|   D5
    C5   | [ ]A5/SCL               D4[ ] |   D4
         | [ ]A6              INT1/D3[ ]~|   D3
         | [ ]A7              INT0/D2[ ] |   D2
         | [ ]5V                  GND[ ] |     
    C6   | [ ]RST                 RST[ ] |   C6
         | [ ]GND   5V MOSI GND   TX1[ ] |   D0
         | [ ]Vin   [ ] [ ] [ ]   RX1[ ] |   D1
         |          [ ] [ ] [ ]          |
         |          MISO SCK RST         |
         | NANO-V3                       |
         +-------------------------------+
         
         http://busyducks.com/ascii-art-arduinos</pre>
<p style="padding-left: 30px;">I have a Pro Mini project coming up, so knocked one of these out as well.</p>
<pre class="lang:c++ decode:true">		                  D0   D1   RST
		   GND  GND  VCC  RX   TX   /DTR
        +--------------------------------+
        |  [ ]  [ ]  [ ]  [ ]  [ ]  [ ]  |
        |              FTDI              |
    D1  | [ ]1/TX                 RAW[ ] |    
    D0  | [ ]0/RX                 GND[ ] |    
        | [ ]RST        SCL/A5[ ] RST[ ] |   C6
        | [ ]GND        SDA/A4[ ] VCC[ ] |    
    D2  | [ ]2/INT0    ___         A3[ ] |   C3
    D3  |~[ ]3/INT1   /   \        A2[ ] |   C2
    D4  | [ ]4       /PRO  \       A1[ ] |   C1
    D5  |~[ ]5       \ MINI/       A0[ ] |   C0
    D6  |~[ ]6        \___/    SCK/13[ ] |   B5
    D7  | [ ]7          A7[ ] MISO/12[ ] |   B4
    B0  | [ ]8          A6[ ] MOSI/11[ ]~|   B3
    B1  |~[ ]9                  SS/10[ ]~|   B2
        |           [RST-BTN]            |    
        +--------------------------------+  
		
		http://busyducks.com/ascii-art-arduinos</pre>
<h1>How to use them</h1>
<p style="padding-left: 30px;">Just fill in the spaces, either with an X, or with a reference letter which you document below the ASCII art.</p>
<p style="padding-left: 30px;">They can be pasted into code comments, (use /* and */ in the arduino IDE to create a block comment). They can also be useful in forums, when you need a quick arduino diagram, but don&#8217;t want to fire up an image editor.</p>
<p><a href="/wp-content/uploads/2015/11/Arduino_UNO_pinout.png"><img loading="lazy" class="alignnone wp-image-705 size-full" src="/wp-content/uploads/2015/11/Arduino_UNO_pinout.png" alt="Arduino_UNO_pinout" width="473" height="533" srcset="/wp-content/uploads/2015/11/Arduino_UNO_pinout.png 473w, /wp-content/uploads/2015/11/Arduino_UNO_pinout-266x300.png 266w" sizes="(max-width: 473px) 100vw, 473px" /></a></p>
<p><a href="/wp-content/uploads/2015/11/Arduino_mega_pinout2.png"><img loading="lazy" class="alignnone size-full wp-image-714" src="/wp-content/uploads/2015/11/Arduino_mega_pinout2.png" alt="Arduino_mega_pinout2" width="585" height="786" srcset="/wp-content/uploads/2015/11/Arduino_mega_pinout2.png 585w, /wp-content/uploads/2015/11/Arduino_mega_pinout2-223x300.png 223w" sizes="(max-width: 585px) 100vw, 585px" /></a></p>
<p>&nbsp;</p>
<p>This is a snippet from a recent project. The sketch starts out with comments that set-out how the hardware is setup, this helps me a lot when I have to look at it again in a years time. Its also great if I want to share the code, as people don&#8217;t need to dig-around in the code to see how to connect the arduino to other devices.</p>
<pre class="height-set:true height:600 lang:c++ decode:true" title="Exaple usage in an arduino sketch">/*

                                      +-----+
         +----[PWR]-------------------| USB |--+
         |                            +-----+  |
         |           GND/RST2  [ ] [ ]         |
         |         MOSI2/SCK2  [ ] [ ]  SCL[ ] |   C5
         |            5V/MISO2 [ ] [ ]  SDA[ ] |   C4
         |                             AREF[ ] |
         |                              GND[ ] |
         | [ ]N/C                    SCK/13[A] |   B5
         | [ ]v.ref                 MISO/12[A] |   .
         | [ ]RST                   MOSI/11[A]~|   .
         | [ ]3V3    +---+               10[ ]~|   .
         | [ ]5v     | A |                9[ ]~|   .
         | [ ]GND   -| R |-               8[B] |   B0
         | [ ]GND   -| D |-                    |
         | [ ]Vin   -| U |-               7[A] |   D7
         |          -| I |-               6[A]~|   .
         | [ ]A0    -| N |-               5[C]~|   .
         | [ ]A1    -| O |-               4[A] |   .
         | [ ]A2     +---+           INT1/3[A]~|   .
         | [ ]A3                     INT0/2[ ] |   .
         | [ ]A4      RST SCK MISO     TX&gt;1[ ] |   .
         | [ ]A5      [ ] [ ] [ ]      RX&lt;0[ ] |   D0
         |            [ ] [ ] [ ]              |
         |  UNO_R3    GND MOSI 5V  ____________/
          \_______________________/
		  
		  http://busyducks.com/ascii-art-arduinos
*/

//------------------------------------------------------------------ 
// [A]		Adafruit music shield
//------------------------------------------------------------------ 
// Connect CLK, MISO and MOSI to hardware SPI pins. 
// SPI Clock, shared with SD card
#define CLK_PIN (13)       
// Input data, from VS1053/SD card
#define MISO_PIN (12)      
// Output data, to VS1053/SD card
#define MOSI_PIN (11)      

// VS1053 reset pin (unused!)
#define SHIELD_RESET_PIN  (-1)   
// VS1053 chip select pin (output)
#define SHIELD_CS_PIN     (7)      
// VS1053 Data/command select pin (output)
#define SHIELD_DCS_PIN    (6)      
// Card chip select pin
#define CARDCS_PIN (4)     
// VS1053 Data request, ideally an Interrupt pin
#define DREQ_PIN (3)       

//------------------------------------------------------------------  
// [B]		WS2811 LED stip
//------------------------------------------------------------------ 
#define LED_STIP_PIN  (8)

//------------------------------------------------------------------  
// [C]		Servo Motor
//------------------------------------------------------------------ 
#define SERVO_PIN (5)</pre>
<p>&nbsp;</p>
<h1>Related Projects (based on this work)</h1>
<ul>
<li>I modified a version of this for <a href="http://casual-effects.com/markdeep/" target="_blank" rel="noopener">markdeep</a> and made it available for download  <a href="http://busyducks.com/downloads/random_blog_stuff/ascii_art_arduino_markdeep.zip" target="_blank" rel="noopener">here</a>.
<ul>
<li>There is a unofficial mirror (by <a class="author may-blank id-t2_6hpwy" href="https://www.reddit.com/user/vanderZwan">vanderZwan</a>) of the markdeep work <a href="http://blindedcyclops.neocities.org/asciiino/arduino.md.html" target="_blank" rel="noopener">here</a></li>
</ul>
</li>
<li>A console version, by paulfantom, for terminal users is available <a href="https://github.com/paulfantom/Arduino-colors" target="_blank" rel="noopener">here</a>.</li>
</ul>
<p style="padding-left: 30px;"><a href="http://busyducks.com/downloads/random_blog_stuff/ascii_art_arduino_markdeep.zip"><img loading="lazy" class="alignnone wp-image-731 size-full" src="/wp-content/uploads/2015/11/md-ascii-arduino.png" alt="md-ascii-arduino" width="411" height="492" srcset="/wp-content/uploads/2015/11/md-ascii-arduino.png 411w, /wp-content/uploads/2015/11/md-ascii-arduino-251x300.png 251w" sizes="(max-width: 411px) 100vw, 411px" /></a></p>
<p style="padding-left: 90px;"><strong>Our markdeep version (click image to download)</strong></p>
<p>&nbsp;</p>
<h2>Stay Up To date and Provide Feedback</h2>
<ul>
<li>Contribute  to the project on <a href="https://github.com/busyDuckman/ascii-art-arduinos">https://github.com/busyDuckman/ascii-art-arduinos</a></li>
<li>I will check back on the facebook page for any comments, like the page to stay up to date.
<ul>
<li><a href="https://www.facebook.com/BusyDucks/" target="_blank" rel="noopener">https://www.facebook.com/BusyDucks/</a></li>
</ul>
</li>
<li>I set up a redirected URL <a href="http://busyducks.com/ascii-art-arduinos" target="_blank" rel="noopener">http://busyducks.com/ascii-art-arduinos</a>  that is both the CC-BY attribution line, and will always redirect to the latest version of these ascii art arduinos.</li>
</ul>
<p>&nbsp;</p>
<h1>Version History</h1>
<ul>
<li>18-11-2015   markdeep version added (as suggested by vanderZwan <a href="https://www.reddit.com/r/arduino/comments/3tb0d2/i_made_some_asciiart_arduinos_to_paste_in/" target="_blank" rel="noopener">here</a>)</li>
<li>19-11-2015   typos fixed (as noted by oroki <a href="https://www.reddit.com/r/arduino/comments/3tb0d2/i_made_some_asciiart_arduinos_to_paste_in/" target="_blank" rel="noopener">here</a>)</li>
<li>21-112015    Added nano (derived from <em>plasticluthier&#8217;s contributions</em> ) &amp;  Pro Mini</li>
<li>1-12-2015     Fixed typo&#8217;s spotted by Basile Laderchi. Also minor visual tweak to the arduino CPU.</li>
</ul>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Maze Making Software</title>
		<link>/maze-software/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Fri, 03 Jul 2015 09:34:35 +0000</pubDate>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Edcucational]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[Maze]]></category>
		<category><![CDATA[Puzzle]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=476</guid>

					<description><![CDATA[This software creates mazes of different sizes and configurable appearance. It is designed for teachers. It can save the output as printable sheets or bitmap images.]]></description>
										<content:encoded><![CDATA[<h3>Overview</h3>
<p>This software creates mazes of different sizes and configurable appearance. It is designed for teachers and makers. It can save the output as printable sheets or bitmap images.</p>
<p>[updated terms]</p>
<ul>
<li>This software is provided free to use for all commercial / non-commercial / educational, puzzle publication purposes.</li>
<li>The code is licensed under the MIT licence</li>
<li>see <a href="https://github.com/busyDuckman/MazeMaker">https://github.com/busyDuckman/MazeMaker</a></li>
</ul>
<p>[how to show appreciation]</p>
<ul>
<li>I super appreciate getting some credit for the work, especially if you are printing a book of puzzles. Something like &#8220;puzzles created using Maze Maker software, by Dr Warren Creemers&#8221;.</li>
<li>If you make something cool with it, I would love to see a photo/link.</li>
<li>If you make a kids book or something like that, I&#8217;d really get a kick out of getting a free copy. Gestures like that make my day <img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></li>
</ul>
<h3>Screenshot</h3>
<p><a href="/wp-content/uploads/2015/07/maze.png"><img loading="lazy" class="alignnone wp-image-477 size-full" src="/wp-content/uploads/2015/07/maze.png" alt="maze" width="715" height="453" srcset="/wp-content/uploads/2015/07/maze.png 715w, /wp-content/uploads/2015/07/maze-300x190.png 300w" sizes="(max-width: 715px) 100vw, 715px" /></a></p>
<h3>Examples of different types of output</h3>
<p><img loading="lazy" class="alignnone wp-image-480 size-full" src="/wp-content/uploads/2015/07/output_examples1.png" alt="Example Maze" width="640" height="640" srcset="/wp-content/uploads/2015/07/output_examples1.png 640w, /wp-content/uploads/2015/07/output_examples1-300x300.png 300w, /wp-content/uploads/2015/07/output_examples1-150x150.png 150w" sizes="(max-width: 640px) 100vw, 640px" /></p>
<p>Can it do large mazes, like really large mazes?&#8230; <a href="http://www.busyducks.com/Software/_relevant_downloads/big_maze.png" target="_blank" rel="noopener noreferrer">YES</a>.</p>
<h3>Download</h3>
<p style="padding-left: 30px;">Install from the latest <a href="https://github.com/busyDuckman/MazeMaker/releases">release on github</a></p>
<ul>
<li style="list-style-type: none;">
<ul>
<li>Download <a href="https://github.com/busyDuckman/MazeMaker/releases/download/v_0.9/maze_v0.9.zip">zip file</a>.</li>
<li>Unzip file</li>
<li>run setup.exe</li>
</ul>
</li>
</ul>
<p style="padding-left: 30px;">First created:  2016-9-29<br />
First published to github: 2019-09-13</p>
<h3>Limitations:</h3>
<ul>
<li>Beta software (minor bugs to iron out, but quite usable)</li>
<li>Smooth edges when wall width is set to 1 are buggy.</li>
<li>Even line widths produce a better output.</li>
</ul>
<h3>What is done:</h3>
<ul>
<li>Generates a valid maze.</li>
<li>Appearance is configurable.</li>
<li>Maze size is configurable.</li>
<li>Printing is enabled (adjust blockSize to alter print output size)</li>
<li>Zooming in, moving etc (few minor bugs still).</li>
<li>Support for DPI / block size.</li>
</ul>
<h3>Next Release</h3>
<ul>
<li>Bug fixes</li>
<li>Support for graphical inserts</li>
<li>Ascii output</li>
</ul>
<h3>Road Map</h3>
<ul>
<li>Will probably combine this with other software I have written to create a puzzle creation suite.</li>
</ul>
<h3>Update:</h3>
<p>I have tentatively started working (April 2019) on a online version of this software, to be open sourced.</p>
<h3>Contact / Feedback</h3>
<p>Please leave feedback and bug reports via: <a href="https://github.com/busyDuckman/MazeMaker/issues">https://github.com/busyDuckman/MazeMaker/issues</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>List of the best pages/software that empowers you to generate awesome procedural art.</title>
		<link>/list-pages-to-generate-procedural-art-and-graphics/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Tue, 30 Jun 2015 08:57:03 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Art]]></category>
		<category><![CDATA[Fractal]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[List_of]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=444</guid>

					<description><![CDATA[&#160; Firstly, you will find none of the &#8220;lets make homework cool&#8221; type stuff here. The Internet has become a much more stimulating place for maths, visualisation and generative images. This is in part driven by the death of those &#8220;java applets&#8221; as wonderful HTML5 based interactive maths content takes glorious hold. Trying to keep pace with &#8230;<br><a href="/list-pages-to-generate-procedural-art-and-graphics/" class="more-link pen_button pen_element_default pen_icon_arrow_double">Continue reading <span class="screen-reader-text">List of the best pages/software that empowers you to generate awesome procedural art.</span></a>]]></description>
										<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Firstly, you will find none of the &#8220;lets make homework cool&#8221; type stuff here. The Internet has become a much more stimulating place for maths, visualisation and generative images.<br />
This is in part driven by the death of those &#8220;java applets&#8221; as wonderful HTML5 based interactive maths content takes glorious hold.</p>
<p>Trying to keep pace with all that is emerging as the new generation of artistic maths geeks put their awesome skills to work.I decided to make this list of the best stuff around.</p>
<p>&nbsp;</p>
<h3>Google Julia Map:</h3>
<h3 style="padding-left: 30px;"><img loading="lazy" class="alignnone wp-image-446 size-medium" src="/wp-content/uploads/2015/06/google_julia_small-300x262.jpg" alt="google_julia_small" width="300" height="262" srcset="/wp-content/uploads/2015/06/google_julia_small-300x262.jpg 300w, /wp-content/uploads/2015/06/google_julia_small.jpg 512w" sizes="(max-width: 300px) 100vw, 300px" /></h3>
<ul>
<li>&#8220;Google maps&#8221; for exploring different fractals.</li>
<li>Allows custom palettes</li>
<li>Highly interactive</li>
<li>Lets you share your work.</li>
<li><a href="http://juliamap.googlelabs.com/#c=-0.009144752822328128,0.08941031334500188$z=0.59$p=ff0000,ff8000,ffff00,ff00,ff,a000c0$f=julia3" target="_blank" rel="noopener">here </a></li>
</ul>
<p>&nbsp;</p>
<h3>Science vs. Magic</h3>
<p><img loading="lazy" class="alignnone wp-image-447 size-medium" src="/wp-content/uploads/2015/06/svm-300x275.jpg" alt="svm" width="300" height="275" srcset="/wp-content/uploads/2015/06/svm-300x275.jpg 300w, /wp-content/uploads/2015/06/svm-768x703.jpg 768w, /wp-content/uploads/2015/06/svm.jpg 984w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<ul>
<li>Awesome website that lets you customise and generate many cool things.</li>
<li>Has animation options.</li>
<li>Very interactive</li>
<li>Highly recommend the fractal machine</li>
<li><a href="http://sciencevsmagic.net/" target="_blank" rel="noopener">http://sciencevsmagic.net/</a></li>
</ul>
<p>&nbsp;</p>
<h3>Mandelbulber</h3>
<p style="padding-left: 30px;"><img loading="lazy" class="alignnone wp-image-451 size-medium" src="/wp-content/uploads/2015/06/mandelbulber-300x223.jpg" alt="mandelbulber" width="300" height="223" srcset="/wp-content/uploads/2015/06/mandelbulber-300x223.jpg 300w, /wp-content/uploads/2015/06/mandelbulber.jpg 395w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<ul>
<li>3d Fractal rendering</li>
<li>Free cross-platform software (GNU/GPL)</li>
<li>Produces stunning results</li>
<li>Website is <a href="https://sites.google.com/site/mandelbulber/home" target="_blank" rel="noopener">here</a></li>
</ul>
<h3></h3>
<h3>Rainbow Smoke</h3>
<p style="padding-left: 30px;"><img loading="lazy" class="alignnone wp-image-448 size-medium" src="/wp-content/uploads/2015/06/dn25167-3_1200-300x300.jpg" alt="dn25167-3_1200" width="300" height="300" srcset="/wp-content/uploads/2015/06/dn25167-3_1200-300x300.jpg 300w, /wp-content/uploads/2015/06/dn25167-3_1200-150x150.jpg 150w, /wp-content/uploads/2015/06/dn25167-3_1200.jpg 512w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<ul>
<li>Algorithm by Jozsef Fejes that grew into a media and Internet sensation</li>
<li>Creates images using one of every RGB24 colour (see our own <a href="http://busyducks.com/wp_4_1/2015/06/16/images-that-use-one-of-every-colour/" target="_blank" rel="noopener">application</a> for doing this to photos)</li>
<li>Not interactive, but describes his algorithm, with an early version being downloadable.
<ul>
<li>This means get your coding pants on if you want to mess around with it!</li>
</ul>
</li>
<li>Website is <a href="http://rainbowsmoke.hu/home" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<h3>Terragen</h3>
<h3 style="padding-left: 30px;"><img loading="lazy" class="alignnone wp-image-453 size-medium" src="/wp-content/uploads/2015/06/terragen-300x259.jpg" alt="terragen" width="300" height="259" srcset="/wp-content/uploads/2015/06/terragen-300x259.jpg 300w, /wp-content/uploads/2015/06/terragen.jpg 428w" sizes="(max-width: 300px) 100vw, 300px" /></h3>
<ul>
<li>Offering a free version for non-commercial use, terragen has long been an excellent way to generate quality terrains</li>
<li>Windows / Mac support</li>
<li>Has a learning curve</li>
<li><a href="http://planetside.co.uk/" target="_blank" rel="noopener">http://planetside.co.uk/</a></li>
</ul>
<p>&nbsp;</p>
<h3>Evolvotron</h3>
<p style="padding-left: 30px;"><img loading="lazy" class="alignnone wp-image-454 size-medium" src="/wp-content/uploads/2015/06/i000003-300x300.jpg" alt="i000003" width="300" height="300" srcset="/wp-content/uploads/2015/06/i000003-300x300.jpg 300w, /wp-content/uploads/2015/06/i000003-150x150.jpg 150w, /wp-content/uploads/2015/06/i000003.jpg 512w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<ul>
<li>Evolve your artistic vision.</li>
<li>Creation by iteratively choosing what is closest to what you want.</li>
<li>Great for colourful splashes / wallpapers</li>
<li>Free and opensource</li>
<li>Linux only</li>
<li>Home page is <a href="http://www.bottlenose.net/share/evolvotron/index.htm" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>What&#8217;s inside an integrated circuit? We broke one open and scanned it for you at 12,800DPI</title>
		<link>/whats-inside-an-integrated-circuit/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Wed, 24 Jun 2015 07:09:19 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Educational]]></category>
		<category><![CDATA[Edcucational]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[Hi-Res Scan]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=368</guid>

					<description><![CDATA[Because you always wondered what was inside. See if you can guess which IC it was? Useful image for teachers, overhead slides etc. NB: This is not always a good DIY or classroom activity. Be aware that some electrical components create a seriously hazardous dust when broken open. Rectifiers, Hi Power transistors, Older IC&#8217;s &#38; IC&#8217;s with certain &#8230;<br><a href="/whats-inside-an-integrated-circuit/" class="more-link pen_button pen_element_default pen_icon_arrow_double">Continue reading <span class="screen-reader-text">What&#8217;s inside an integrated circuit? We broke one open and scanned it for you at 12,800DPI</span></a>]]></description>
										<content:encoded><![CDATA[<p>Because you always wondered what was inside. See if you can guess which IC it was?</p>
<p>Useful image for teachers, overhead slides etc.<br />
<em>NB: This is not always a good DIY or classroom activity. Be aware that some electrical components create a seriously hazardous dust when broken open. Rectifiers, Hi Power transistors, Older IC&#8217;s &amp; IC&#8217;s with certain head spreaders as well as some IC&#8217;s designed for use in microwaves contain Beryllium Oxide.  While safe to handle, the dust particles created when they are damaged will make you gravely ill.</em></p>
<p>Download large and detailed image [4096 x 5686] (1.5mb) <a href="http://www.busyducks.com/downloads/ic_[4096].jpg" target="_blank" rel="noopener">here</a><br />
Download full scan [16394 x 22761] (27mb, <strong>use save as</strong>, because <span style="text-decoration: underline;">images this large still crash some broswers</span>) <a href="http://www.busyducks.com/downloads/ic128000.jpg" target="_blank" rel="noopener">here</a></p>
<figure id="attachment_371" aria-describedby="caption-attachment-371" style="width: 800px" class="wp-caption alignnone"><a href="/wp-content/uploads/2015/06/ic_800.jpg"><img loading="lazy" class="wp-image-371 size-full" src="/wp-content/uploads/2015/06/ic_800.jpg" alt="Inside an integrated circuit." width="800" height="1110" srcset="/wp-content/uploads/2015/06/ic_800.jpg 800w, /wp-content/uploads/2015/06/ic_800-216x300.jpg 216w, /wp-content/uploads/2015/06/ic_800-738x1024.jpg 738w, /wp-content/uploads/2015/06/ic_800-768x1066.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></a><figcaption id="caption-attachment-371" class="wp-caption-text">Inside an integrated circuit.</figcaption></figure>
<p><em>What&#8217;s the white grid? Its a standard prototyping board, used to protect the scanner from the IC&#8217;s pins.</em></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>A List of projects for .NET that are better than a poke in the eye.</title>
		<link>/a-list-of-projects-for-net-that-are-better-than-a-poke-in-the-eye/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Fri, 19 Jun 2015 04:20:28 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=305</guid>

					<description><![CDATA[I propose "would you rather use this API or have a poke in the eye" as the new selection criteria for 3rd party projects. Here is what passes my poke in the eye test.]]></description>
										<content:encoded><![CDATA[<p>I propose &#8220;would you rather use this API or have a poke in the eye&#8221; as the new selection criteria for 3rd party projects.</p>
<p>Here is what passes my poke in the eye test.</p>
<h3>Json.net</h3>
<ul>
<li>XML seemed to rub a lot of people the wrong way on its meteoric rise to &#8220;total serialisation format domination&#8221;</li>
<li>Json is like someone turned the list of bad things about XML into a design specification document.</li>
<li>Newtonsofts port to c# has been popular. <a href="http://www.newtonsoft.com/json" target="_blank" rel="noopener">here</a></li>
<li>There are some gotchas and a few inelegant areas, but overall its a very good option for serialisation</li>
<li>Boasts fast performance like a teenager with a play-station</li>
</ul>
<p>&nbsp;</p>
<h3>NuGet</h3>
<ul>
<li>Bridges many of the issues associated with using 3rd party libraries in your code.</li>
<li>You probably already know about it.</li>
<li><a href="https://www.nuget.org/" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<h3>Zedgraph</h3>
<ul>
<li>Plots, quick dirty reliable</li>
<li>Examples</li>
<li><a href="http://zedgraph.sourceforge.net/" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<h3>Markdown</h3>
<ul>
<li>Because &#8220;the software should output valid html&#8221; is a system requirement that makes you frown.</li>
<li>Because you often need to output something as &#8220;plain text or html&#8221;</li>
<li>Because its just plain awesome</li>
<li>Originally made for Perl  <a href="http://daringfireball.net/projects/markdown/" target="_blank" rel="noopener">here</a></li>
<li>Ported to C# by different people. eg <a href="https://code.google.com/p/markdownsharp/" target="_blank" rel="noopener">markdownsharp</a></li>
<li>There is also an <a href="http://markdownpad.com/" target="_blank" rel="noopener">editor</a>,</li>
</ul>
<p>&nbsp;</p>
<h3>Objectlistview</h3>
<ul>
<li>A list view that you wish was part of c#</li>
<li>So pretty, you will blush at client presentations</li>
<li>Highly configurable</li>
<li>Well documented</li>
<li><a href="http://objectlistview.sourceforge.net/cs/index.html" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<h3>This Ribbon thing on Code Project</h3>
<ul>
<li>&#8220;Is there a good free ribbon for c#&#8221;&#8230; YES</li>
<li><a href="http://www.codeproject.com/Articles/364272/Easily-Add-a-Ribbon-into-a-WinForms-Application-Cs" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<h3>SFML.Net</h3>
<ul>
<li class="r">There are a lot of 2D graphics libraries So I recommend writing your own wrapper so you don&#8217;t get coded into a corner.</li>
<li class="r">SFML.NET is the current hotness for me.</li>
<li class="r">Up and going in one sitting</li>
<li class="r">Minimal head scratching.</li>
<li class="r">Well thought out.</li>
<li class="r">See more <a href="http://www.sfml-dev.org/download/sfml.net/" target="_blank" rel="noopener">here</a></li>
</ul>
<p>&nbsp;</p>
<h3>Aforge.NET</h3>
<ul>
<li>It&#8217;s been around for a while, production seems to have stalle as of a year ago.
<ul>
<li><a href="http://accord-framework.net/" target="_blank" rel="noopener">Accord.NET</a> is pickling up where Aforge left off.</li>
</ul>
</li>
<li>Plays nicely with the software development process.</li>
<li>Get it <a href="http://www.aforgenet.com/" target="_blank" rel="noopener">here</a>.</li>
</ul>
<p>&nbsp;</p>
<h3>Colin Greens Fast replacement for System.Random</h3>
<ul>
<li>There are lots of random number packages, but sometimes you Just want a drop in replacement for System.Random that&#8217;s faster.</li>
<li>This works and its all in one .cs file so you can just add it into your toolbox and forget about it.</li>
<li>Well documented, no license, no stress.</li>
<li>Get it <a href="http://www.codeproject.com/Articles/9187/A-fast-equivalent-for-System-Random" target="_blank" rel="noopener">here</a>.</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Images that use one of every colour + Free Software to make your own.</title>
		<link>/images-that-use-one-of-every-colour/</link>
		
		<dc:creator><![CDATA[duckman]]></dc:creator>
		<pubDate>Tue, 16 Jun 2015 04:57:03 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[Maths]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://busyducks.com/wp_4_1/?p=218</guid>

					<description><![CDATA[Its kinda captivating, an image that uses only one of every colour possible on your computer. It makes for an odd desktop background on a 4K screen.]]></description>
										<content:encoded><![CDATA[<p>When I got my first 4K screen and looked  at the specs I realised something. We are getting very close to the point where a screen will be able to show every possible (24 bit) pixel colour at once.</p>
<p>Testing this out on screen with a big colour palate would be kinda boring, so I made some software to take a large image and convert it to use one of every colour.<br />
I am using  4096 * 4096  = 16,777,216 (or 2<sup>24</sup>) images to do this.</p>
<p>I played around with a few algorithms, but found the best results came from a very simple idea:</p>
<ol>
<li>Start with a image containing all colours.</li>
<li>Inspect two pixels</li>
<li>Swap the two pixels, if that would make If the image more like the target.</li>
<li>Repeat steps 2 &#8211; 4, until the image looks good.</li>
</ol>
<p>Immediately I was stunned by the results.</p>
<ul>
<li>The Images actually worked, they looked like the source image.</li>
<li>Parts of the image which where pulled toward a different colour and showed a very interesting (and accurate) image segmentation,</li>
<li>The algorithm handled both photographs and solid colour cartoons well.</li>
</ul>
<h2>Example Images:</h2>
<p>Firstly these files, produced by this method are are 50mb, and don&#8217;t compress well. I scaled them down for the website. If you want the verbatim image; you will have to download the software and make your own. (BTW: Did you notice the unusual beverage flavor in the vending machine pic, when you see it&#8230;).</p>

<img width="1024" height="1024" src="/wp-content/uploads/2015/06/bottles_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/bottles_1024.jpg 1024w, /wp-content/uploads/2015/06/bottles_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/bottles_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/bottles_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/bottles_done_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/bottles_done_1024.jpg 1024w, /wp-content/uploads/2015/06/bottles_done_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/bottles_done_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/bottles_done_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/clackline_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/clackline_1024.jpg 1024w, /wp-content/uploads/2015/06/clackline_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/clackline_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/clackline_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/clackline_done_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/clackline_done_1024.jpg 1024w, /wp-content/uploads/2015/06/clackline_done_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/clackline_done_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/clackline_done_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/mass_fort_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/mass_fort_1024.jpg 1024w, /wp-content/uploads/2015/06/mass_fort_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/mass_fort_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/mass_fort_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/mass_fort_done_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/mass_fort_done_1024.jpg 1024w, /wp-content/uploads/2015/06/mass_fort_done_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/mass_fort_done_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/mass_fort_done_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/cassette-tape_small.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/cassette-tape_small.jpg 1024w, /wp-content/uploads/2015/06/cassette-tape_small-300x300.jpg 300w, /wp-content/uploads/2015/06/cassette-tape_small-150x150.jpg 150w, /wp-content/uploads/2015/06/cassette-tape_small-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/cassette-tape_done_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/cassette-tape_done_1024.jpg 1024w, /wp-content/uploads/2015/06/cassette-tape_done_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/cassette-tape_done_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/cassette-tape_done_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/tasmania_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/tasmania_1024.jpg 1024w, /wp-content/uploads/2015/06/tasmania_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/tasmania_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/tasmania_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/tasmania_done.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/tasmania_done.jpg 1024w, /wp-content/uploads/2015/06/tasmania_done-300x300.jpg 300w, /wp-content/uploads/2015/06/tasmania_done-150x150.jpg 150w, /wp-content/uploads/2015/06/tasmania_done-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/Fly_Agaric_1024.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/Fly_Agaric_1024.jpg 1024w, /wp-content/uploads/2015/06/Fly_Agaric_1024-300x300.jpg 300w, /wp-content/uploads/2015/06/Fly_Agaric_1024-150x150.jpg 150w, /wp-content/uploads/2015/06/Fly_Agaric_1024-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />
<img width="1024" height="1024" src="/wp-content/uploads/2015/06/Fly_Agaric_done.jpg" class="attachment-full size-full" alt="" loading="lazy" link="none" size="full" type="slideshow" ids="231,232,233,234,235,236,227,237,242,241,244,243" orderby="post__in" include="231,232,233,234,235,236,227,237,242,241,244,243" srcset="/wp-content/uploads/2015/06/Fly_Agaric_done.jpg 1024w, /wp-content/uploads/2015/06/Fly_Agaric_done-300x300.jpg 300w, /wp-content/uploads/2015/06/Fly_Agaric_done-150x150.jpg 150w, /wp-content/uploads/2015/06/Fly_Agaric_done-768x768.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" />

<p>&nbsp;</p>
<h2>Download the software:</h2>
<p style="padding-left: 30px;">Install file:  <a href="http://www.busyducks.com/Software/ImageOfEveryColor/publish.htm" target="_blank" rel="noopener">here</a><br />
Oneclick: <a href="http://www.busyducks.com/Software/ImageOfEveryColor_oneclick/publish.htm" target="_blank" rel="noopener">here</a></p>
<h2></h2>
<h2>Screen Shot</h2>
<p style="padding-left: 30px;"><a href="/wp-content/uploads/2015/06/application.jpg"><img loading="lazy" class="alignnone wp-image-230 " src="/wp-content/uploads/2015/06/application.jpg" alt="Application Screen Shot" width="819" height="453" srcset="/wp-content/uploads/2015/06/application.jpg 1070w, /wp-content/uploads/2015/06/application-300x166.jpg 300w, /wp-content/uploads/2015/06/application-1024x567.jpg 1024w, /wp-content/uploads/2015/06/application-768x425.jpg 768w" sizes="(max-width: 819px) 100vw, 819px" /></a></p>
<h2>Software usage note(s):</h2>
<ul>
<li>Application works on high DPI screens.</li>
<li>Some images prefer that I choose one of the pixels in a structured sequential fashion, others prefer both to be picked at random.
<ul>
<li>I solved this by doing n iterative rounds, followed by x minutes of random swapping.</li>
<li>The software lets you set these options.</li>
<li>Iterative rounds produce good results very quickly, but will leave some lines on cartoons.</li>
<li>Random rounds are slow to improve the image. A minute is a good buffer to clean up an image, but consider 40+ minutes for cleaner results.</li>
</ul>
</li>
<li>Uses many threads, and hogs the system bus. Will give the CPU a quick workout.</li>
<li>Can be used in a command line mode, Suit batch processing.
<ul>
<li>To do this, provide one optional parameter (directory with images).</li>
<li>Finds all pictures in directory that don&#8217;t have &#8220;_done&#8221; or &#8220;_ignore&#8221; in the name.</li>
<li>Saves a new image with _done added to the file name.</li>
<li>Overrides that image without prompting!</li>
</ul>
</li>
<li>Save as bitmap If you don&#8217;t want the jpeg compression to alter the validity of the &#8220;every single colour&#8221; image.</li>
</ul>
<p>On images heavily biased to one colour, the iterative pass may exhaust that colour to the top of its run.<br />
eg..</p>
<p><a href="/wp-content/uploads/2015/06/working.jpg"><img loading="lazy" class="alignnone wp-image-240 " src="/wp-content/uploads/2015/06/working.jpg" alt="working" width="779" height="432" srcset="/wp-content/uploads/2015/06/working.jpg 1036w, /wp-content/uploads/2015/06/working-300x166.jpg 300w, /wp-content/uploads/2015/06/working-1024x567.jpg 1024w, /wp-content/uploads/2015/06/working-768x426.jpg 768w" sizes="(max-width: 779px) 100vw, 779px" /></a><a href="/wp-content/uploads/2015/06/working.jpg"> </a></p>
<p>In this case, set &#8220;Iteration Runs&#8221; to 0. This will disable the iterative passes and go strait to random passes.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3>Contact / Feedback</h3>
<p>[contact-form subject=&#8217;All Colour Software (via website)&#8217;][contact-field label=&#8217;Name&#8217; type=&#8217;name&#8217; required=&#8217;1&#8217;/][contact-field label=&#8217;Email&#8217; type=&#8217;email&#8217; required=&#8217;1&#8217;/][contact-field label=&#8217;Type of comment&#8217; type=&#8217;select&#8217; options=&#8217;Support,Bug Report,Feature Request,Sales Enquiry,Other&#8217;/][contact-field label=&#8217;Comment&#8217; type=&#8217;textarea&#8217; required=&#8217;1&#8217;/][/contact-form]</p>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
