Designing the logo for askmike.org

You’ve found a dinosaur, this post is only here for archiving purposes. The content is outdated and is not applicable anymore.

As you might have noticed I have a new logo on the right of the website. (Here ->)

I designed this logo myself, not from scratch though. This was my first encounter with Adobe Illustrator. Because of photography I can use Adobe Photoshop quite well but Illustrator is something different. I’d expected it to be very similar because they are both from Adobe and both for graphic creation / manipulation.

Because of my inexperience with the software it took me a couple of hours to create this, were most of the logo came from a vector pack. I’m glad with the results but the best part is just copied from someone else.

In the following weeks I’m getting Illustrator covered on school. When I have some basic skills I’ll redo the logo on my own.

PS. I don’t really have an afro in real life!

Posted at November 26, 2010, under design.

What does your computer usage look like?

Yesterday evening I had lots of things today behind my laptop. Wonder how it looks?

IOGraphica

It looks like this! Pure art if you ask me, and most of my evening consisted of programming Action Script for school (see my last post about a homework assignment) and tweaking my new website (see my post about my personal portfolio website). (The big dot in the top left corner was a break by the way).

How do I make this while doing other things on the computer? Well I can tell you it’s true mouse art: Every line and every circle is a made with exact precision with my own mouse. The whole image was made over a time period of almost 3 hours.

The secret is IOGraphica. This little software makes art of your mouse movements.

Leave a comment below and let me know what your computer hours look like!

Posted at November 24, 2010, under sysadmin.

Mission Impossible: Tackling Vraagstuk 6

You’ve found a dinosaur. This is one of my first posts about programming and the code quality is very poor, it is only here for archiving purposes.

Omdat vraagstuk 6 ingewikkeld is maar toch heel veel interesse wekt op twitter schrijf ik een artikel over hoe hij werkt. Action Script is nieuw voor mij dus verbeter mij daar waar nodig. Ook zijn er een hoop niet-gecommente stukken code. Snap jij dingen die er niet bij staan? Laat een comment achter met wat voor commentaar er bij welke code hoort!

Onder het script staat de /nog niet complete/ uitleg!

package {
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.Sprite;
    import flash.display.StageAlign;
    import flash.display.StageScaleMode;
    import flash.events.Event;
    import flash.filters.DisplacementMapFilter;
    import flash.geom.Point;

public class Vraagstuk6 extends Sprite {
    private var baseXPosition:Number;
    private var baseYPosition:Number;    
    private var numberOfOctaves:Number; 
    private var randomSeed:Number;
    private var backgroundStitching:Boolean;
    private var backgroundFractalNoise:Boolean;
    private var numberOfChannels:Number;
    private var backgroundGrayScale:Boolean;

    private var point1:Point;
    private var point2:Point;
    private var perlinOffset:Array;
    private var bitmapData:BitmapData;
    private var displacementFilter:DisplacementMapFilter;

    [Embed(source="pics/sunset.jpg")]
    private var SunsetPicture:Class;

    [Embed(source="pics/water.jpg")]
    private var WaterPicture:Class;

    private var water:Bitmap;
    private var sunset:Bitmap;
    private var perlin:Bitmap;

    public function Vraagstuk6()
    {

        stage.scaleMode = StageScaleMode.NO_SCALE;
        stage.align = StageAlign.TOP_LEFT;

        baseXPosition = 50;
        baseYPosition = 10;
        numberOfOctaves = 3;
        randomSeed = Math.random()*10;
        backgroundStitching = false;
        backgroundFractalNoise = false;  
        numberOfChannels = 1; 
        backgroundGrayScale = false;

        point1 = new Point(45, 34);
        point2 = new Point(50, 60);

        perlinOffset = new Array(point1, point2);

        sunset = new SunsetPicture();
        sunset.x = 0;
        sunset.y = 0;
        addChild(sunset);

        water = new WaterPicture();
        water.x = 0;
        water.y = sunset.height - water.height;
        addChild(water);

        bitmapData = new BitmapData(water.width, water.height, true, 0x00000000);

        addEventListener(Event.ENTER_FRAME, moveAndCalulatePerlinNoisePattern);
        addEventListener(Event.ENTER_FRAME, calculateDisplacementMapFilter);
    }

    private function moveAndCalulatePerlinNoisePattern(e:Event):void
    {
        perlinOffset[0].x-=.1;
        perlinOffset[0].y-=.4;

        perlinOffset[1].x+=.1;
        perlinOffset[1].y+=.4;

        bitmapData.perlinNoise(baseXPosition, baseYPosition, numberOfOctaves, randomSeed, backgroundStitching, backgroundFractalNoise, numberOfChannels, backgroundGrayScale, perlinOffset);
    }

    private function calculateDisplacementMapFilter(e:Event):void
    {
        displacementFilter = new DisplacementMapFilter(bitmapData, new Point(0, 0), 1, 1, 20, 20, "color");
        water.filters = [displacementFilter];
    }
}

regel 2 – 9 Hier importeer je alle benodigde classes, je boodschappenlijstje

regel 12 – 19 en 27 – 35 Hier defineer je de constante variabelen <- beetje tegenstrijdig, ik bedoel: de variabelen die niet veranderen.

regel 21 – 25 Hier defineer je de variabelen die per frame gaan veranderen

regel 40 – 41 Geef aan dat er geen scaling is, alles moet pixelbased. Ook ligt de 0 as linksboven.

regel 43 – 50 Geef waardes mee aan je constante variabelen.

regel 52 – 55 Geef aan wat de beginwaarden van je variabelen zijn (die ook echt gaan veranderen).

regel 67 Maak een plaatje net zo groot als het water met achtergrond kleur zwart ? (snapt iemand waarom?)

regel 69 – 70 Geef aan dat bij elk frame de onderstaande functie’s uitgevoerd moeten worden

regel 75 – 79 Vertel wat er per frame gaat veranderen aan de de elemtenten van de Array.

regel 81 Bouw de bitmap data opnieuw: je Array is veranderd, en dit is een eigenschap van de bitmap, als je dit nu opnieuw bouwt verandert je bitmap data omdat je Array ook veranderd is.

regel 86 Bouw de displacement filter opnieuw: je bitmap data is veranderd, en dit is een eigenschap van het displacement filter.

regel 87 Hetzelfde geldt voor water.filters

Samenvatting Wat er eigenlijk gebeurd is heel simpel. Je pakt een plaatje en bouwt er een filter overheen die noise aan het plaatje toevoegd. (zie photoshop – add noise). De noise heeft allemaal variabelen, en door de noise “positie” (variabele die iets zegt over waar de noise zich bevindt op het plaatje) elk frame te veranderen. Krijg je een geanimeerd beeld van het water. Elk frame zie je dus het plaatje met een noise filter eroverheen die elk frame veranderd.

Posted at November 23, 2010, under AS3.

mikevanrossum.com is live!

You’ve found a dinosaur, this post is only here for archiving purposes. The content is outdated and is not applicable anymore.

After lots and lots of redeciding, choosing, blood, sweat and tears mikevanrossum.com is a fact! I designed everything myself. I made everything except the lightbox and the smooth scrolling jQuery (I did some major adjustments to the lightbox so it would fit my needs). I’m very positive about the result, but what do you think?

Please let me know, all the criticism is welcome!

Programmeren: Action Script 3.0

You’ve found a dinosaur, this post is only here for archiving purposes. The content is outdated and is not applicable anymore.

this page is in Dutch because it is only relevant for Dutch IAM students.

We gaan programmeren! Veel studenten kijken hier tegenop, om dat zo veel mogelijk tegen te gaan zal ik op askmike.org veel informatie met betrekking tot Action Script 3.0 hosten. Ik ga proberen alle belangrijke informatie uit de hoorcolleges hier weer te geven zodat je alles nog rustig na kan lezen. Hier houd het niet bij op: als ik hoor dat veel mensen over bepaalde dingen heen struikelen zal ik ze hier uitgebreid proberen te behandelen zodat dit vak een eitje wordt.

Zelf kan ik nog niet programmeren, maar het idee trekt me heel erg en ik denk dat ik er later wel verder mee wil. de hoofdgedachte achter dit idee is “To teach is to learn twice” (wat ik onlangs in een hoorcollege hoorde), op deze manier probeer ik zelf beter te worden en ook nog iets af te geven aan anderen.

Posted at November 16, 2010, under AS3.