3d mesh in html 5 (deken tekenen)

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • nika
  • Registratie: Oktober 2003
  • Niet online
Ik wil graag een 3d mesh tekenen op een html5 canvas (zoals bijvoorbeeld hier http://www.chromeexperime...vascript-3d-model-viewer/)

Nu gaat mij vraag niet zozeer om het daadwerkelijk uitvoeren daarvan, als wel om het bepalen van de coordinaten van punten in de 3d ruimte die de mesh vormen.

Ik heb zeg 5 kegels die in een bepaalde positie t.o.v. elkaar staan op een 3d plane. De positie, de breedte van de basis en de hoogte van iedere kegel zijn dynamisch. De kegels kunnen elkaar in meer of mindere mate overlappen.

Nu wil ik graag een "deken" over deze kegels heen leggen waardoor er een 3d surface ontstaat (soort van berglandschap).

Als je 1 piek hebt dan zou je een eenvoudige mathematische functie kunnen gebruiken voor het maken van een 2d piek (sin/cos) en deze vervolgens roteren om het center point om een 3d model te krijgen.

Nu ligt dat dus lastiger aangezien ik meerdere pieken heb die op meer of minder afstand liggen en je dus snijvlakken hebt.

Iemand een idee hoe ik dit aanpak? Het gaat me dus niet zozeer om het tekenen zelf, maar om de wiskundige aanpak.

Edit: anders verwoord. Ik heb een 3d surface en op dat surface heb ik (zeg) 5 control points die ik kan "uittrekken" naar boven.

Edit 2: iemand ervaring met NURBS surfaces in javascript? :)

[ Voor 14% gewijzigd door nika op 07-01-2011 16:13 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 15:22

.oisyn

Moderator Devschuur®

Demotivational Speaker

Een grid van control points lijkt me handiger. En dan kun je wel iets als NURBS of een Catmull-Rom spline gebruiken om de mesh te genereren. Ik prefereer zelf Catmull-Rom omdat de spline dan door de control points zelf heen gaat, met andere woorden, de control points liggen altijd op het gegenereerde oppervlak.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.