Toon posts:

[Flash MX] wiskundig rotatieprobeem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een klein probleem |:(

Om de 1/2 seconde vraag ik de muislocatie op en vergelijk deze met de muislocatie van de 1/2 seconde ervoor. Nu zou ik graag symbol roteren in de richting dat je muis beweegt.

Ik zoek dus eigelijk een manier om 2 coordinaten om te zetten in een hoek van 360°. Ik kan me herinneren dat ik vroeger in het secundair zo iets gezien hebben tijdens wiskunde maar ja, ik word al wat ouder ;)

Iemand enig idee hoe ik dit het beste kan aanpakken (of iemand die mij een wiskundige formule kan voorschotelen)

  • Karp
  • Registratie: Augustus 2001
  • Laatst online: 21:33
lang leve de tangens?

Afbeeldingslocatie: http://karp.dnsalias.com/images/hoek.gif

Ik weet alles over digitale toegankelijkheid, of ik weet wie het wel weet.


Verwijderd

Topicstarter
thx a lot _/-\o_

Verwijderd

als je gewoon wil dat je muis de rotatie van een item bepaald doe je dat zo.
code:
1
 setProperty(object1, _rotation, _xmouse);

zet object 1 ver van zijn center af om de straal te bepalen. zet de code in keyframe 1 en 2
code:
1
 gotoAndPlay(1);

Volgens mij heb je dan pecies wat je wilt.

Verwijderd

Topicstarter
oke, hier ben ik weer terug :)
1 probleem opgelost en ik bots weer op het volgende met mijn onwiskundige kop :9

Dit is wat ik tot nu toe heb. http://home.planetinternet.be/~maaver/test/

Nu zou ik graag hebben dat de 2 meest linkse bolletjes hun schaduw werpen op de grond. Natuurlijk moet hier een wiskundige bewerking achter zitten die de locatie van het bolletje (x,y) omzet neer zijn schaduw positie.

Nu mijn gedacht was de hoek tussen het bolletje en zijn startpositie te bereken en daar een een vast getal bij op te tellen en dan deze hoek terug vertalen naar een x en y positie voor de schaduw

Ik hoop dat iemand hier iets van snapt want ik weet zelf niet echt wat ik bedoel ;)

Iemand misschien een betere manier om die positie te vertalen?.

Verwijderd

ben ook even aan het nadenken geweest voor je probleem, en wilde even zeggen dat ik het alvast een leuk ding vindt worden :) echt heel origineel. Misschien een idee voor de schaduw; maak van de bolletjes een nieuwe instantie, plaats die op de plek waar je de schaduw zou willen hebben, en laat de x en y positie kopieren, en dan vermenigvuldigen met bijvoorbeeld 1,5. Misschien een beetje spelen met die waarden, ik weet niet of het effect is wat je zoekt, maar dat lijkt me de simpelste methode. Nog een tip, ik zou onzichtbare (grotere) buttons plaatsen over die zwarte bolletjes zodat de buttons een vaste plek hebben en zode hit-zone dus ook niet verschuift.

Verwijderd

Topicstarter
ja, naar de hitzones moet je nog even niet kijken daar ben ik dan ook nog volop aan bezig, maar dit is nog maar het beginstadium :)

Enkel de manier die jij beschrijft heb ik ook al bedacht, maar deze gaat echter niet werken zover ik heb bedacht want:

-als je bijvoorbeeld een bolletje horizontaal "beweegt" is zijn y-as verplaatsing echter 0. Zijn schaduw gaat echter een schuine beweging omhoog moeten maken, wat dus een xy beweging is. Ik denk niet dat er zo'n simpele oplossing voor mijn probleem is, ik heb er dan mijn hoofd al over gebroken :)

Verwijderd

Ik heb voor de rest niets nuttigs toe te voegen, behalve dat ook ik het er erg lollig uit vindt zien. :)

Die organische vormen doen me overigens denken aan een karakter uit het onvolprezen spelletje Half-Life :)

Anyway : Goed bezig !

  • Guillome
  • Registratie: Januari 2001
  • Niet online

Guillome

test

Waarom is dat zo moeilijk dan? Of zie ik iets over het hoofd?
Mijn idee:
Maak voor elke bol een nieuwe MC, de schaduw dus. Zet die op de goeie plek.
En onthou voor elke bol en schaduw de start x- en y-positie (dus 1 malig als ie wordt geladen).
En bij het bewegen van het balletje schuif je de schaduw mee.
En met de Y is het ietsje lastiger. Je begint hetzelfde.
Maar... Dan moet je eerst even zien wat de x-y verhouding is van de richting (Dus 2 naar links, 1 omhoog bijv.)
En dan bij elke Y verschil doe je x-pixels naar links en x-pixels omhoog.
Zoiets.

En anders is het zeer raadzaam om het 'bij de buren' (goh, dat ik dat ook eens zou zeggen:P) vragen. Die zijn geniaal in dit soort dingen _/-\o_

[ Voor 13% gewijzigd door Guillome op 30-03-2003 23:34 ]

If then else matters! - I5 12600KF, Asus Tuf GT501, Gigabyte Gaming OC 16G 5080 RTX, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
is niet moelijk als je het correct wil doen

voor elk punt:

screenx = worldx * zoom / worldz (ditto for y)

een klein (en heel oud shockwave voorbeeldje):

http://www.onnos.com/shock/3D.htm

edit: nog wat 'mathematish play-spul' LMB/RMB...

http://www.onnos.com/shock/Contain.htm

[ Voor 20% gewijzigd door hobbit_be op 31-03-2003 01:22 ]


Verwijderd

Topicstarter
hobbit_be schreef op 31 March 2003 @ 01:21:
is niet moelijk als je het correct wil doen

voor elk punt:

screenx = worldx * zoom / worldz (ditto for y)

een klein (en heel oud shockwave voorbeeldje):

http://www.onnos.com/shock/3D.htm

edit: nog wat 'mathematish play-spul' LMB/RMB...

http://www.onnos.com/shock/Contain.htm
thx, ik zie dat je weet waar je over praat :) , ik jammer genoeg niet 8)7 (ik weet het, ik ben redelijk noob)

Zou je misschien iets meer uitleg kunnen geven, misschien zelfs een klein prentje _/-\o_ . Ik zou je zeer dankbaar zijn.

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Hmm aangezien dat al te moeilijk lijkt ben ik geneigd te zeggen dat je het dan maar beter animeert - ie het moet niet correct zijn als het er maar goed uitziet dus: voor elke x of y beweging doe je een zelfde beweging op een corresponderende (shaduw) mc.

dus:
Flash ActionScript:
1
2
3
OrigeneleBal_mc.x = OriginaleX + Springbeweging; //ik neem aan dat je dit ergens doet
ShaduwBal_mc.x = ShadowBalOrigX + (Springbeweging*aGoodLookingvalue) 
//same for y maar andere value


deze goodlooking value hangt af van hoe het perspectief is - en dat heeft in jouw MC te maken met de shaduw-casting waaruit blijkt dat het licht ver staat en dat aGoodLooking Value += 1.0 zal zijn... Deze goodlookingvalue zal voor x / y anders zijn... (en y zal in jouw perspectief < 1.0.

Maak anders een paar simpele test knopjes die deze value veranderen terwijl de movie played en maak dat je de shadowtjes kunt draggen. Design in realtime dus. Voor de mathematische method moet je exact weten wara de camera is, de positie van elk vlak,
en het lichtpunt. En daarmee moet dan ook jouw shaduw ook echt 'gerenderd zijn' en niet zoals ik vernoed mooi getekent...

het bovenstaand principe is trouwens mathematish correct in een iso-perspectief (geen kat die daat gaat opmerken tenzij je shaduws tot aan de horizon zouden komen)..

Geen tekening - geen tijd

Verwijderd

Topicstarter
Yo bedankt _/-\o_ , met deze info zal het wel lukken
Pagina: 1