2022-02-07: Blender ======================== .. sectnum:: Opgave: Lees data uit CSV -------------------------------------------- In gebouwen.csv staat informatie over de 400 hoogste gebouwen. Lees dit bestand regel voor regel in en plaats voor elk gebouw een kubus. .. literalinclude:: ./examples/blender/build00.py :language: python :linenos: .. image:: images/blender/build00.png :width: 600 Opgave: Grootte kubus -------------------------------------------- Met behulp van de "size" parameter kunnen we de grootte van de kubus aanpassen. Door deze op 1 in te stellen, vergemakkelijken we latere berekeningen. .. literalinclude:: ./examples/blender/build01.py :language: python :linenos: .. image:: images/blender/build01.png :width: 600 Opgave: Hoogte kubus -------------------------------------------- Laat de hoogte overeenkomen met de hoogte van het gebouw. Haal hiervoor de hoogte uit de 5-de kolom van de spreadsheet. .. literalinclude:: ./examples/blender/build02.py :language: python :linenos: .. image:: images/blender/build02.png :width: 600 Opgave: Correctie z-positie kubus -------------------------------------------- De onderkant van de kubus komt niet overeen met het grondvlak. Pas de code aan zodat de kubussen allemaal beginnen op z-positie 0. Je kan dit oplossen door de z-positie bij het aanmaken van de kubussen aan te passen. .. literalinclude:: ./examples/blender/build030.py :language: python :linenos: .. image:: images/blender/build03.png :width: 600 Opgave: Materiaal met basis kleur -------------------------------------------- Tot nu toe konden we de kleuren van de objecten niet aanpassen. We voorzien nu de hulp-functie "add_material" waarmee je een materiaal aan een object kunt toevoegen. Zorg ervoor dat de kubussen een materiaal hebben. .. literalinclude:: ./examples/blender/build032.py :language: python :linenos: .. image:: images/blender/build032.png :width: 600 Opgave: Materiaal met roughness -------------------------------------------- We voorzien nu een nieuwe hulpfunctie add_material die buiten de basiskleur ook twee andere materiaaleigenschappen laat aanpassen. Zorg ervoor dat de kubussen een materiaal hebben dat goud voorstelt. .. literalinclude:: ./examples/blender/build033.py :language: python :linenos: .. image:: images/blender/build033.png :width: 600 Opgave: Animeren van de hoogte van de kubus -------------------------------------------- .. literalinclude:: ./examples/blender/build040.py :language: python :linenos: .. image:: images/blender/build04.webm :width: 600 Opgave: Correctie z-positie kubus bij animatie ---------------------------------------------- .. literalinclude:: ./examples/blender/build050.py :language: python :linenos: .. image:: images/blender/build05.webm :width: 600