<script>
"use strict";
OB_ready(OB_doWhenReady);

function OB_doWhenReady() {
    // localize everything
    var ooohBoi = window.ooohBoi || {};
    // local scope variables
    ooohBoi.prev_scroll_pos = window.scrollY || document.body.scrollTop;
    ooohBoi.cur_scroll_pos;
    ooohBoi.scroll_direction = 'init';
    ooohBoi.prev_scroll_direction = 0;
    ooohBoi.header = document.querySelector('#show-hide-header'); // header ID
    ooohBoi.header_pos = {
        top: ooohBoi.header.offsetTop,
        left: ooohBoi.header.offsetLeft,
    };
    ooohBoi.header_height = OB_outerHeight(ooohBoi.header);
    // show-hide header with ease/transition
    ooohBoi.header.style.transition = 'all 0.3s ease';
    // update header height on window resize
    ooohBoi.updateHeaderHeight = function() {
        ooohBoi.header_height = OB_outerHeight(ooohBoi.header);
    }
    // listen "scroll" event and decide what to do
    ooohBoi.checkScroll = function() {
        ooohBoi.cur_scroll_pos = window.scrollY || document.body.scrollTop;

        if (ooohBoi.cur_scroll_pos > ooohBoi.prev_scroll_pos) ooohBoi.scroll_direction = 'down';
        else if (ooohBoi.cur_scroll_pos < ooohBoi.prev_scroll_pos) ooohBoi.scroll_direction = 'up';

        if (ooohBoi.scroll_direction !== ooohBoi.prev_scroll_direction) ooohBoi.toggleHeader(ooohBoi.scroll_direction, ooohBoi.cur_scroll_pos);
        ooohBoi.prev_scroll_pos = ooohBoi.cur_scroll_pos;
    }
    // add or remove class based on the scrolling direction
    ooohBoi.toggleHeader = function(scroll_direction, scroll_current) {
        if (scroll_direction === 'down' && scroll_current > ooohBoi.header_height) {
            OB_addClass(ooohBoi.header, 'im-hidden'); // for styling
            ooohBoi.header.style.top = -1 * ooohBoi.header_height + "px";
            ooohBoi.prev_scroll_direction = scroll_direction;
        } else if (scroll_direction === 'up') {
            OB_removeClass(ooohBoi.header, 'im-hidden');
            ooohBoi.header.style.top = ooohBoi.header_pos.top + "px";
            ooohBoi.prev_scroll_direction = scroll_direction;
        }
    }
    // listen "scroll" and "resize" window events
    window.addEventListener('scroll', ooohBoi.checkScroll);
    window.addEventListener('resize', ooohBoi.updateHeaderHeight);
}

function OB_outerHeight(el) {
    var height = el.offsetHeight;
    var style = getComputedStyle(el);
    height += parseInt(style.marginTop) + parseInt(style.marginBottom);
    return height;
}

function OB_addClass(el, className) {
    if (el.classList) el.classList.add(className);
    else {
        var current = el.className,
            found = false;
        var all = current.split(' ');
        for (var i = 0; i < all.length, !found; i++) found = all[i] === className;
        if (!found) {
            if (current === '') el.className = className;
            else el.className += ' ' + className;
        }
    }
}

function OB_removeClass(el, className) {
    if (el.classList) el.classList.remove(className);
    else el.className = el.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' ');
}

function OB_ready(fn) {
    if (document.readyState != 'loading') fn();
    else if (document.addEventListener) document.addEventListener('DOMContentLoaded', fn);
    else {
        document.attachEvent('onreadystatechange', function() {
            if (document.readyState != 'loading') fn();
        });
    }
}
</script>
				
			
De woonopgave is één van de grootste uitdagingen voor ontwerpers in deze tijd. Wisselende gezinssamenstellingen, betaalbaarheid, ruimtebeslag en klimaatbestendigheid maken de huisvesting tot een complexe opgave die om slimme oplossingen en een multidisciplinaire aanpak vraagt. Met meer dan 300 gerealiseerde wooneenheden, van eengezinswoningen tot sociale huisvesting en grote dorpskernontwikkelingen, zit het wonen in ons DNA verweven.

Dorpskernontwikkeling De Kwint, Zonhoven

Midden in het centrum van Zonhoven, tegenover het marktplein en de kerk, wordt een gebied van een kleine 7.000m² vrijgemaakt…
1613.HAMA

Trichterhof, Hasselt

De 20e-eeuwse gordel rondom het historische centrum van de stad is de voorbije jaren grondig getransformeerd. Kleine, veelal uitgeleefde arbeiderswoningen…

Gemeenteplein, Keerbergen

De projectsite is gelegen in het centrum van Keerbergen, op de hoek van de Haachtsebaan en het Gemeenteplein. Het project…
VIVA+HEFT

Vivos Artes, Sint-Truiden

Het project is gelegen in de stedelijke kern van Sint-Truiden op de zorgcampus langs de Montenakenweg, Het betreft de bouw…

Woonwijk Slakken, Dilsen-Stokkem

Een uitgeleefde woonwijk aan de rand van het dorp wordt gesloopt. Het terrein wordt volledig onthard, enkel een aantal beeldbepalende…

Tabaart, Bilzen

De stad Bilzen schreef een verkoopsprocedure (met ontwerpwedstrijd) uit voor een site aan de rand van de stad. We ontwierpen…
2213.LADR

Dreelveld, Bree

In Opitter, een klein landbouwdorp ten zuiden van Bree, maakt men zich op voor een dorpskernuitbreiding met meer dan honderd…

Aan de Bascule, Genk

De projectsite is gelegen aan het kruispunt van de Wiemesmeerstraat en de Weg naar As. Bovenop de handelsplint bevinden zich…
0912.AGVC

Statielei, Antwerpen

In het kader van het Grond- en Pandenbeleid van de Stad Antwerpen koopt AG Vespa (Autonoom Gemeentebedrijf Vastgoed en stadsprojecten…
1800.KIR

Woning KIR, Hasselt

De woning is te klein geworden voor een gezin met kinderen en heeft dringend nood aan een grondige opsmuk. De…
1010.TOTO

Wijkmolenweg, Tongeren

Het masterplan voor de site voorziet in een schakeling van (semi-)publieke ruimtes rond een centrale toegangsas, die de verbinding maakt…
0911.JVDS

Huis van de boswachter, Lanklaar

Deze woning voor een alleenstaande wordt gebouwd op een erg smal perceel en heeft bijgevolg slechts een bewoonbare oppervlakte van…
1111.BOOR

Grotestraat, Boorsem

In het centrum van Boorsem, vlak langs de kerk, wordt een relatief compact perceel (4a 59ca) vrij gemaakt. De voormalige…
AGVD

Woning AGVD, Antwerpen

De relatie met de straat is bij stadswoningen een cruciale ontwerpopgave: de woonfunctie op bel-étageniveau (in dit geval de keuken)…
1506.CADX

Bouwblok A5-Cadix, Antwerpen

Bouwblok A5 in de Antwerpse Cadixwijk kondigt een nieuw stadsdeel aan. We ontwerpen het bouwblok als een ensemble, samengesteld uit…
0702.AFGA

Woning AGVA, Antwerpen

In het kader van het Grond- en Pandenbeleid van de Stad Antwerpen koopt AG Vespa verkrotte panden op in achtergestelde…

Sleedoornstraat, Houthalen-Oost

Op een site aan de noordelijke rand van het dorp Houthalen-Oost wordt een bestaande sociale woonwijk afgeboord met 12 wooneenheden:…