Deel 3a : controle of je de te gebruiken addon automatisch actief hebt.
Dat kun je zo doen:
1. Blender starten en Scripting klikken
2. in de Python-console type je : Vector((1.1.1)) (Enter toets)
Als er GEEN foutmelding komt zit het vrij zeker al goed
3. 2 met succes uitgevoerd dan in de onmiddelbaar volgende opdracht dit typen:
S111= _
dan moet in het 3dView dit te zien zijn:
S111 is in het 3D vieuw nu precies in de ruimte op plaats (x,y,z) = (1,1,1) te zien
Ruimtelijke plaatsen hebben (zeker in Blender) 3 getallen nodig voor x , voor y, en voor z
die men samengevat zo schrijft (x_waarde, y_waarde_, z_waarde) tussen ronde haakjes
maak maar wat voorbeelden in de python console (b.v. (34, 5/6, 0.45)) (gelukt toch?)
Overigens dit levert in de Python console een zogenoemd 'tuple' op, iets met ... python objecten tussen RONDE haakjes.
Doe maar dit : mijnEersteTupel = (1, 'ik was hier', "Ik ook") en dan maar
mijnEersteTupel[1]
en daarna : len(mijnEersteTupel) (moet een 3 afleveren)
en dan: len((0,1,2,3,4,5)) , det betekent m.b.v. de Python functie "len" kun je het aantal
objecten in een tupel (maar ook alles wat Python als een lengte hebben weet, komt zo een
bijna zelfde voorbeeld)
Nu herhalen wij het vorige voorbeeld maar vervangen ronde haakjes door vierkante haakjes:
mEL = [1, 'ik was hier', "Ik ook"]
mEL heb ik in plaats van mijnEersteLijst geschreven/gebruikt
Iets tussen 4kante haakjes levert in Python namelijk iets op, dat LIJST wordt genoemd.
lijst en tuple lijken toch eigenlijk veel op elkaar, WAT IS DAN HET VERSCHIL?
als men een tuple of lijst (De python naam is "list") heeft aangemaakt (en b.v. aan een VARIABELE heeft toegekend)
Dan is een TUPLE niet meer te veranderen, en een LIJST wel!
Oefeningetje (in de Python-console):
lijst_via_tuple = list(("ik ben het eerste element", "en ik het tweede"))
len(lijst_via_tuple)
lijst_via_tuple[0]
lijst_via_tuple[1]
Raar of niet? Oorzaak Python begin tellen met 0 !!! Moet men aan wennen en dus onthouden!
Herhalen maar nu met een lijst bij het aanmaken
lijst_via_list = list(["ik ben het eerste element", "en ik het tweede"])
(zie je het mini verschil?) en voor het afmaken van dit voorbeeld weer
de lengte het 0de en 1ste element (van lijst_via_list opvragen)
En waarvoor heb ik dit te bestuderen geschreven?
De driedimensionale punten in Python zijn wiskundig gezien Vectoren en daar moet men
helaas een klein aantal dingen weten , en wij doen dat met Python in een console van Blender
Dus als Vector((1,1,1)) of zo in de console niet werkt (de addon waar ik het over heb is NIET geactiveerd) moeten wij aan Blender het benodigde hulpmiddel binnen halen en dat gaat ZO:
from mathutils import Vector (je ziet in de naam dat het met Wiskunde = Mathmatic = Math te maken heeft) , vectoren in de wiskunde zijn dinge waarmee men het een of ander kan doen: optellen van vectoren, aftrekken van vectoren , een vector met een getal vermenigvuldigen.
Goed, dit lange verhaal sluiten we af met deze oefening:
A) Open Blender en klik Scripting
B) in de python console dwing je af dat Python nu weet wat het met iets moet doen dat een Vector met 3 getallen , zeg driedimensionale vector is, kan doen, dus:
from mathutils import Vector
v1 = Vector((1,2,3))
v1Plusv1 = v1 + v1
v1Plusv1
Gesnapt? Overigens als de addon "Math vis" actief is dan zie je er TWEE nieuw (roodachtige) punten in het 3Dvies met er bij de namen v1 (op de plaats van v1) en v1Plusv1 (op de daarbij horende plaats, waarvan in de console nu Vector((2.0, 4.0, 6.0)) te zien is.
Optellen van vectoren gaat dus ... (vul zelf in, hi hi)
lekker lang en je moet het allemaal wel onthouden, ja ja, zo is dat nu eenmaal