Articles



Adding colour to a black & white photo

This post reveals one method of adding colour to a black and white photograph with photoshop. We use a harbour side shot taken in the 1930’s. Of course we don’t know exactly what colour might have been present when this shot was taken so we have to use some artistic licence in order to reproduce the scene.

This technique requires a good knowledge of photoshop, clipping masks, colour curves and the ability to make selections.
…continue reading


Recursive iteration through Display Objects – Flash

NOTE: Please click here for a HTML DOM version of this technique.

Sometimes it is useful to be able to iterate through our entire display list–or all of the display objects within a specific display object container–and either perform an operation on each object or access a property of each object. We need to use recursion in order to do this because child elements of a display object container may themselves be a display object container. WARNING! It can become quite processor intensive using recursion to iterate through a large number of objects. Below is an Actionscript 3 example which puts this technique into practice. All source files can be downloaded here.
…continue reading



Recursive iteration through the HTML DOM

NOTE: Please click here for a flash/actionscript version of this technique.

Sometimes it is useful to be able to iterate through every element in a HTML document–or all of the children of a specific HTML node–and either perform an operation on each element or access a property of each element. We need to use recursion in order to do this because child elements of a html node may themselves contain more child nodes. WARNING! It can become quite processor intensive using recursion to iterate through a large number of elements. Below is a javascript example which puts this technique into practice. All source files can be downloaded here.
…continue reading


3D Augmented Reality

“Augmented Reality” allows us to super impose our own digital art on top of a live video stream.

In the example below we augment a live web camera feed with a 3D animation .


…continue reading



Variable Data Publishing with Video

Adobe Flash technology is very useful in the field of variable data publishing. We can embed fonts, dynamically adjust and resize variable elements and apply a large amount of filters and effects to create seamless compositions of both static and dynamic elements.

Below is an interactive demonstration which shows an example of dynamic imaging applied to video footage. Here we dynamically include the following graphic in our video:


…continue reading




Google Web Toolkit: Order In Chaos

Most of Google’s technlogies run in a we browser. For example Gmail, Google Reader etc. Google’s client side web services are Ajax based and rely on javascript. Javascript is a single threaded light weight scriptiing laguage, it’s implementation, speed and efficiency vary acrross web browsers. Yet Google’s web applications are fast and work in all of the modern web browsers.


…continue reading




Concurrency / Threading with Flash & Actionscript 3

NOTE: Please click here for a gwt/javascript version of this technique.

Flash applications do not support concurrency. All code must be executed within a single thread. This means that any large calculations or processor intensive tasks will cause the flash player to stall very quickly. We have to rely on server side operations or other technologies to perform large calculations.

Fortunately it is possible to simulate threading using the flash platform. The flex example below demonstrates psuedo-threading using actionscript 3. The sample application increments an integer from zero to one hundred million, displaying the count on the screen as it increments. If this code was executed in a for loop–or even a frame loop–our application would quickly become unresponsive.


…continue reading


Concurrency / Threading with Javascript & GWT

NOTE: Please click here for a flash/actionscript version of this technique.

Javascript does not support concurrency. All code must be executed within a single thread. This means that processor intensive tasks could cause a web page to stall very quickly. This forces us to rely on server side operations for any large calculations.

Fortunately it is possible to simulate threading using javascript. The example below demonstrates psuedo-threading using the google web toolkit. The sample increments an integer from zero to one hundred million, displaying the count on the screen as it increments. If this code was executed in a for loop the web page would quickly become unresponsive.

…continue reading



© B.J de Haan Solutions 2018