Stap 9: Cartesiaanse tekening
Ik maakte ook een eenvoudige klasse voor tekening met Cartesiaanse coördinaten. U kunt initialiseren met:
(Dit initialiseert de Minecraft verbinding en brengt wiskunde en blok namen in de naamruimte.) Dan heb je gemak op verschillende manieren:
- d.penwidth(x): stelt dikte van punten/regels/gezichten
- d.line(x1,x2,x3,y1,y2,Y3,Block): lijn getekend vanaf (x1, x2, x3) naar (y1, y2, y3) gemaakt van het materiaal blok
- d.Face(vertexlist,Block): trekt een gezicht met de hoekpunten in de vertexlist gemaakt van het materiaal blok
Bijvoorbeeld, kan je een rechthoek op 45 graden gemaakt van glas op niveau 0 op het punt van de spawn met schuingestolde:
Voor de lol, ik aangepast Simon Tatham van echt gaaf veelvlak generatie code als de Minecraft tekening klasse wilt gebruiken. Zijn code begint met een aantal willekeurige punten op een bol, en vervolgens simuleert hen afstotende zelf totdat ze stabiliseren in een configuratie die is vaak regelmatig. Vervolgens heeft hij twee nette methoden van het maken van een veelvlak uit deze punten, een gezicht-methode en de methode van een hoekpunt. Ik leg dit in polyhedron.py. Dit script neemt commandline argument. Bijvoorbeeld, als u wilt tekenen een icosaëder gebruiken 12 punten en de bouw van het hoekpunt. Rechtstreeks uit Minecraft:
Voor een dodecaëder, kunt u het hoekpunt omzetten door gezicht. U kunt ook nog een argument voor de grootte toevoegen. Het veelvlak zal worden gemaakt van glas met stenen randen en wordt gecentreerd rond de speler.
Technische opmerking: Als u al een Minecraft object mc, initialiseren met d = Drawing(mc). In beide gevallen kunt u het object Minecraft via d.mc.