simulatie met behandelingen projectiel projectiel, simulatie van behandelingen 3,,,,,,,,,,,, delen, delen van,,,,,, het netwerk van maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen, een deel van de prijs van een reeks noem je wiskunde doen. Tip: Flash Game developerscreating scheppende kunst speculatie Delta, - {lettergrootte: XX kleine; verticaal: top;}, in deze les. Ik breng je door die de basis van het proces van de kogel en behandelingen..We zullen de eerste baan van de kogel van dynamische simulatie, en op grond van de follow - up van de rebound.,,,, het uiteindelijke resultaat, dat is een snel, snel, we zullen inzetten voor de invoering van:,,, een van de elementen die de video game is zo echt, hun fysieke simulatie.Het concept van ons met klassieke mechanica, flash, we kunnen leiden tot een opvallende visuele effecten, de verbetering van de algemene ervaring van de gebruikers, in deze les. Ik breng je door simulatie van de kogel gebruikt flash en gerealiseerd.We zullen de eerste baan van de kogel van dynamische simulatie, en op grond van de follow - up van de rebound.Ik heb dingen simpel te houden, met inbegrip van de weerstand van het projectiel, bijvoorbeeld, zal slechts door een kracht, de zwaartekracht.Deze les is dat je doel gerichte programma 's een basiskennis van de taal.Je kan ook profiteren van een tweede functie opgedane ervaring, en het concept van de sport, en de snelheid.Hoewel ik het grootste deel van de tijd zal betrekking hebben op de toepassing van het concept van de toepassing van deze behandelingen in een flits en, in de eerste plaats wil ik wat tijd doorbrengen met een eenvoudige verklaring van toepassing zijn in de klassieke mechanica, klassieke mechanica gebaseerd is op de wet van Newton is een onderdeel van de fysica.In deze handleiding, gaan we naar de twee klassieke mechanica concept: de kogel -, herstel - coëfficiënt.Beschrijving van het voorwerp van het projectiel in een pad (spoor) en de ervaring van de eerste snelheid, de versnelling van de zwaartekracht (en in de meeste gevallen, de weerstand van de lucht).Kent u Newton zit in een boom.De zwaartekracht op de grote rol van het projectiel, want het is een constante versnelling van 9,8 m /sec, 2, in een ontwerpresolutie van de y - richting, een goed voorbeeld is van een baseball gegooid in de lucht.Als je een honkbal gooien. Het is een eerste, de snelheid en de richting die op het moment van het uit je handen.Deze twee eigenschappen die de snelheid van de bal.Als de bal uit je handen, het volgen van een boog weg, ook bekend als van het traject.Een beschrijving van de algemene koers van het projectiel kan een tweede functie: deze functie wordt onze positie ten opzichte van de tijd (in ton), de kogel is dat standpunt na ton heeft), seconden.Een kleine driehoek betekent "veranderen", dus, Δt, betekent dat "een aantal seconden", het gebruik van deze functies moeten we weten:,, de versnelling, de,, de snelheid van de kogel; (in een bepaalde richting, snelheid), V, 1,,,., eerste positie, d.; 1. De kogel,,,,, in de X - en Y - richting van de onafhankelijkheid van de weg is de kogel.Dit betekent dat voor de berekening van de in de positie van een 2 - dimensionale ruimte, en dat we gebruik moeten maken van de functie van de andere twee keer, een concept dat we zullen zien is een zogenaamde -, herstel - coëfficiënt,.De coëfficiënt is dan de beschrijving van een herstel van de snelheid van het object voor en na de botsing tussen, bijvoorbeeld, als de reactie op de vloer van de basketbal, lengte varieert met de follow - up van de rebound.Deze veranderingen (die rechtstreeks verband houden met de hoogte van de snelheid van de veranderingen, constant is, en kan dus worden beschreven, herstel coëfficiënt.De berekening van bewegende voorwerpen en herstel van rust voor het oppervlak van de coëfficiënt is heel eenvoudig:,, hier, V, 1, is de snelheid van de kogel, gaan naar de grond, V, 2. De snelheid van de kogel, is in het op de grond, beginnen zich weer aan, weer. Omdat, voor elk van de coëfficiënt is de combinatie van verschillende voorwerpen, je moet jezelf vinden, hangt af van de simulatie, stap 1:., die in hun dossier, laten we beginnen met dit ding.Open de flash, het creëren van een nieuw document.In dit voorbeeld zou ik het gebruik van 550 * 400 standaard grootte en beeldsnelheid 50 beelden.In het kader van een naam gekozen voor het behoud van dit dossier, en we moeten tot een soort document.Het creëren van een nieuwe behandelingen en documenten, wordt het volgende toegevoegd: flash.display.movieclip. {de invoer; de uitbreiding van de movieclip natuurlijk een van de belangrijkste openbare functie:{Main () {}}} ongeldig is, dit dossier van dezelfde lijst, we noemen het Florida, heer.,., we moeten nog een ding doen de categorieën documenten in Florida is de FIA, link gevonden, eigenschappen.De volgende stap, het type document, in de naam van de belangrijkste documenten, met een soort document zie voor meer informatie de snelle waarschuwing.Het eerste wat we moeten doen, is in een vaste periode voor het creëren van een cyclus.In het algemeen zijn er twee mogelijkheden: de voor de timing van recycling, enter_frame, gebeurtenissen, of het gebruik van klasse 3, de timer.Deze twee methoden zijn verschillende voordelen en nadelen, maar in dit geval ben ik gebruik zal maken van de timer, klasse, we moeten beginnen met de invoering van twee soorten: de timer, klasse, van hun respectieve timerevent, klasse.Binnen, Main.as gewijzigd, wordt de volgende lijn, de invoer van flash.utils.timer; de invoer van Flash. Gebeurtenissen. Timerevent; als we de opbouw van een Timer, ik wil toevoegen, een methode voor de recycling, heer, type document.De naam, als we deze methode zal de lus van openbare functies, de belangrijkste circulerende (gebeurtenissen: timerevent {}): ongeldig, nu kunnen we de timer.We beginnen door de toevoeging van twee eigenschappen:,,, mastertimer, afstand.Het doel van de mastertimer moet duidelijk zijn, maar die zal worden gebruikt voor de opslag van goederen (SEC) de lengte van de tijd, de variabele mastertimer: de timer; de variabele interval: nummer, de volgende stap moeten we vullen deze eigenschap op de fabrikant daarvan, en met name de,.1 stap, die we in ons document beeldsnelheid 50 beelden.Dit percentage kan worden in het licht van de fase van vliegtuigen,. Framerate, en zal worden gebruikt als basis voor de berekening van de periode op basis van de documenten, /beeldsnelheid var FPS:int = stage.framerate; /seconden timer interval = 1 /KP 's; ///////- voorbeeld van een nieuwe te creëren, het eerste argument moet in een milliseconde mastertimer = de nieuwe timer tijdsinterval (1000 KP' s); en een gebeurtenis die Timer, timerevent.timer, elk interval (in ons geval, 50 keer, of elke 20 MW).Door de toevoeging van een luisteraar timer loopt, kunnen we onze belangrijkste circulerende, elke keer, de methode is die deze gebeurtenissen die in verband met de cyclus, //- methode de timer.Mastertimer. AddEventListener (timerevent.timer, de belangrijkste circulerende);, het enige wat over is, is de timer gestart. ///////de timer mastertimer. Start ();,, salaristrap 3: test van grote hoogte en als we de test van de film, wat nooit zal gebeuren.Omdat we willen weten als circuit werken, dan moeten we nog een lijn voor de produktie van de cyclus, de tijd is het bedrag van de SWF 's.Bij verstek, timer kan alleen terugkeren is overdracht van het huidige aantal tijdsintervallen.Want we hebben de berekening van een afstand, maar we moeten met twee waarden te krijgen.Let op, ik ben langs de resultaten berekenen, om te voorkomen dat de problemen van de berekening van de huidige tijd. ///////tijd: de hoeveelheid = int (VAR (event.target.currentcount * interval) × 1000) /1000; als we volgen, zien we dat de tijd van het werk, de Timer, //- test volgen de sporen van de huidige tijd tijd (":" +), het testen van de film.Je moet de produktie van soortgelijke:,, omdat we weten dat de timer werkt, kunnen we de verklaring zal volgen. En 4:projectile.as creëert, stappen we de volgende stap is het creëren van een klasse te vertegenwoordigen een projectiel (basketbal).Het creëren van een script, en opnieuw bij ons de fundamentele structuur van de klas.Het behoud van de bestanden, de kogel.,.,. {de invoer flash.display.movieclip; - uitbreiding van de videoclip (openbare functie projectile ():{}}} ongeldig is, we gaan nog een eigenschap van een van de kenmerken van de te volgen.Ik leg het later wel uit de animatie specifieke eigenschappen.Je moet erkennen dat de vergelijking in de les begon te rusten, ///////de beginsnelheid van particuliere var V1x: nummer; particuliere var v1y: nummer; ///////de bijl: aantal particuliere var; particuliere var: nummer; ///////oorspronkelijke standpunt: private - D1x var - nummer; D1Y: aantal specifieke tijd: particuliere /; /nummer van de beweging van de locomotief animatie werk;: Bull. 5:projectile.as, stap, eenvoudig omdat het project veel gebruik gemaakt van de berekening, hij schreef een ingewikkelde berekeningen zullen talloze eenvoudige methode.Hieronder zijn de zes die dat zal worden gegeven betreffende gedurende de rest van de geringe, de eerste voor de terugkeer van de wortels van solveQuadratic,, A kwadratische functie (min. 2 voor de bijl,, + BX + C; deze methode zal de terugkeer van de waarde van X) met behulp van de kwadratische functie. SolveQuadratic (a:Number, privé, b:Number - Array{, c:Number): ///////paramters X2 + B + C: AX var solution:Array = nieuwe array (2); var discriminant:Number = (b * b) - (4 * a * C); ///////b^2 - 4ac solution["root1"] = ((1 * b) + Math.sqrt (vergelijking)) /(2 * a); ///////(B + squareroot (b^2 - 4ac)) /2A solution["root2"] = ((1 * b) - Math.sqrt (vergelijking)) /(2 * a); ///////(B - squareroot (b^2 - 4ac)) /2A de terugkeer van de tweede oplossing;}, -Met de terugkeer van een individu, en met de X - en Y - component van de vector - functie hebben, op de particuliere (angledegrees: aantal, grootte: aantal): - {VAR onderdelen: - = nieuwe reeks (2); ///////- goniometrische functies vereist zijn (1 rad = hoek π /180 graden onderdelen [") X = de hoeveelheid"] (* * * * * * * * * * * * * * angledegrees wiskunde. Omdat math.pi /180); onderdelen [Y] = aantal wiskunde (angledegrees * * * * * * * * * * * * * *. Zonde math.pi /180); terug naar de vergadering;}, de derde methode, getposition, terug in de tijd, de aangewezen plaats.We gebruiken de positie van de invoering van de formule is; dit is, d (T), getposition., private functie (tijd: de hoeveelheid: de hoeveelheid, de snelheid en de versnelling van het oorspronkelijke standpunt: nummer: hoeveelheid: hoeveelheid) {VAR positie: nummer; ///////D (T) = (1 /2) * * * * * * * * * * * * * * (T - ^ 2) + v_1 * t + d_1 positie = (0,5 * * * * * * * * * * * * * * * de versnelling van tijd tijd) + (snelheid *) + (initiële); terug naar positie;}, een vierde, gettimes, is het tegenovergestelde, getposition,.Het gaat terug naar de kogel op de aangewezen plaats van privé - functie, gettimes (finalposition: het aantal, het oorspronkelijke standpunt: de hoeveelheid, versnelde: het aantal, de eerste snelheid: aantal): - {var: generator; op de tweede plaats /functie: 0 = (1 /2) * * * * * * * * * * * * * * (T - ^ 2 v_1) + + solvequadratic D1-D2 = (0,5 × versnelling, vertraging, het oorspronkelijke standpunt - finalposition); de tijd terug;}, een vijfde, getvelocity, gebruik maken van onze positie van de functie van een derivaat van de binnen een bepaalde tijd terug te keren naar de snelheid van de kogel, private functie getvelocity (versnelling: het aantal, de eerste snelheid: de hoeveelheid, de tijd: aantal: hoeveelheid) {VAR snelheid: nummer; ///////de snelheid als functie van de positie van de functie is een derivaat: d = * T +V1 = versnelling van de eerste tijd + * * * * * * * de snelheid van de snelheid van de terugkeer van de snelheid van de methode;}, zes, getvelocitydirection, terug richting (vooruitzichten) in een bepaalde tijd op snelheid.Met andere woorden, het is een motie in de richting van een bepaald moment. Getvelocitydirection (accelerationx, private functie: nummer, accelerationy: nummer initialvelocityx: aantal, initialvelocityy: de hoeveelheid, de tijd: de hoeveelheden: de hoeveelheden) {VAR hoek: nummer; var kloof gas: de hoeveelheid = getvelocity (accelerationx, initialvelocityx, tijd); var velocityy: = aantal getvelocity (accelerationy, initialvelocityy, tijd); - = wiskunde. Maar (velocityy, GAP - snelheid) * 180 /math.pi, de hoek van herstel;}, 6:projectile.as gestart, stap voor stap 4, in de klas toe te voegen, hebben we een stel eigenschappen van het projectiel.Als je dat al deze eigenschappen zijn privé.Ik deed het omdat we willen niet rechtstreeks toegang tot hun.We moeten ook een methode om de vereiste berekeningen en die van deze aard, dus we gaan nog een manier om dat te doen, de ondernemers, de functie ervan (velocitydirection: het aantal, de eerste snelheid: de hoeveelheid, initialpositionx: nummer, initialpositiony: hoeveelheden, met een snelheid: de hoeveelheid = 0, accelerationdirection: De hoeveelheid = 0: aantal = 9,8): ongeldig {}, de naam van de verschillende parameters moeten zeer duidelijk zijn.Voor de parameters, velocitydirection, vanuit het oogpunt van de snelheid, met mate.De versnelling van de parameters zijn facultatief.Als je een waarde, sneller, je moet een aparte waarde, accelerationdirection, ook niet velocitydirection. Ik reeds eerder heb gezegd, hebben wij te maken met de vergadering echter gestart, de methode is slechts een vector (richting en grootte).Dit is onze goedkope methoden om een rol te spelen. De samenstelling van ons krijgen, /voor de snelheid en de versnelling van de vector var vcomponents: - een (velocitydirection, snelheid); var acomponents: - een (accelerationdirection, versnelling); en nu hebben we een serie met de verschillende componenten van de vector.Nu kunnen we bewaren hun overeenkomstige eigenschappen, de overeenkomstige eigenschappen van deze vector /opslag V1x = vcomponents "X" []; v1y = vcomponents [Y]; de bijl = acomponents "X" []; - = acomponents "y" [] + zwaartekracht; ///////- voegen we de zwaartekracht in de y - richting het eerste standpunt van de extra kracht nodig, niet veranderen. ///////opslag van het oorspronkelijke standpunt 1X = initialpositionx; D1Y = initialpositiony; methoden voor de controle van 7:projectile.as, stappen, voordat we verder gaan, moet ik uitleggen wat de kenmerken van de animatie hebben gecreëerd in Stap 4.Ik zal beginnen met de mobiele en eigendom.Als we de kogels waren al met rust, we bewegen als de vlag van de eigendom van deze cyclus wordt slechts in het verkeer projectiel.Begint de tijd voor de tijd van de eigenschappen van de timer is het verschil tussen de positie van de functie van de kogel, en de lokale tijd.Niets is te ingewikkeld, en onze methode, omdat het ontbreken van een betere term, zal in de loop van de meeste, genaamd.Deze drie methoden zijn eenvoudig, en is met de animatie interactie, openbare functie begint.: (nummer): ongeldig {starttime = de tijd; de uitoefening van openbare taken (= waar;}): nietig (mobiele = vals; openbare functie ismoving (}): booleaanse {terugkeer bewegen;}, we gaan de laatste toevoeging van een van onze grootste zorg.De naam, de positionattime, de methode is de positie van de kogel op een bepaalde tijd.We kunnen gebruik maken van de positie van de film in de cyclus van de arena, een openbare taak positionattime (tijd: de hoeveelheid: -) {VAR relativetime: hoeveelheid = int ((de huidige tijd - start) × 1000) /1000; var. Positie: - = nieuwe reeks (2); de positie van [...] = X "getposition (relativetime, bijl, V1x, 1%); de positie van" y "[] = getposition (relativetime, helaas, v1y, D1Y); terug naar positie;}, als je dit leest, moet je op een paar dingen.Dit is in de eerste plaats een, relativetime variabelen.Zoals ik al eerder heb gezegd, moeten we rekening houden met de verschillen in de tijd, de timer, en projectiel.De eerste kogel traject begint in de tijd van de relatieve, dus we zijn alleen geïnteresseerd in de tijd, de baan is door de tijd.Dit is de reden waarom we de winkel begint de tijd.De tweede kwestie is van ons, het gebruik van de methode van getposition stap 5.Het gebruik van deze methode van ons twee keer voor de berekening van de positie van de aan beide zijden van de kogel redden.,.,, stap 8:projectile.as gekoppeld aan een film... Voordat we kunnen doen, moeten we een animatie.Als je merkt dat we, een kogel, klasse, klasse, film, en dit betekent dat we kunnen koppelen aan een film... En, in de bibliotheek, open de flash - document (FIA), en op het podium trekt een cirkel.Maak je niet te veel zorgen over de omvang van de afmetingen, omdat we van plan na te komen, de volgende stap, de omzetting van de code, de ring van een film...,,.De film die je moet in de bibliotheek, zodra het, wis het uit na de fase van het programma zullen worden toegevoegd aan de voor de volgende stap, en we moeten nu onze bommen en video link.Klik je bibliotheek (MAC toetsen van de film... En je kiest, koppeling van...,,, naast het vakje, de uitvoer van het script.- de bal voor de,,,, en, op de basis voor de,,,,,,,,.Je kan zien dat je een dialoog, een soort definities niet kunnen vinden, zal dit automatisch.Klik, oké,.,, de laatste documenten.,, stap 9: animatie.We hebben een cyclus, schrijven we onze munitie, we een video link.Nu is het de tijd van animatie.Ten eerste, onze documenten open, heer.,., we beginnen met de kenmerken van de variabelen nog meer, de omvang van de variabelen: int; de bal van de variabele startflag bal:;: Bull. Doel van deze eigenschappen, is heel eenvoudig.Dit is een eigenschap van de omvang van de pixels, namens de flash positie en onze positie van de verhouding tussen de voor de berekening van de meter.En de bal, het eigendomsrecht namens ons een stap op een videoclip.Misschien is het je opgevallen dat het type is die "bal", dat is wat we in de vorige stap van de naam van een categorie.Tot slot, startflag, eigendom als een vlag dat verkeer, moeten we begint op de weg, op de methode van de fabrikant, we moeten de toevoeging van de volgende rij om ons doel, de bal. ///////1 meter = "uitbreiding" van de omvang van de pixels = 100; ///////100 = een meter die pixels, pixels = 1 /1 het creëren van nieuwe bal = nieuwe voorbeelden; ///////(), die de omvang van de bal, in dit geval, het ball.height = 0,5 X 0,5 × 0,5 omvang; ball.width = 0,5 * omvang; ///////positie op het podium bal. X = 50; de bal y = 350; ///////addchild fase met de bal. (doelstellingen);, als je de test van de film, je moet de bal in de fase van de linker hoek.,, we moeten vluchten, de ondernemers, de methode van stap 6.Als je kijkt naar de verklaring van de methode, en je zult zien dat het moet ten minste vier parameters: de aanvankelijke snelheid, velocitydirection,,,,,,, initialpositiony initialpositionx,.Blijf in de fabrikant methode, laten we die!De kogel, die we voor ///////Verzameling van de prestaties ervan pinball. Ondernemers (80, 7, bal. X /omvang (stage.stageheight bal. Y) en /of schaal); op de eerste plaats, de parameters van een eenvoudige berekening moet worden doorgegeven aan de methode in ze.Op de methoden zijn gebaseerd op de meter afstand, en dus moeten we gebruik maken van onze normen.En initialpositiony, aanvullende maatregelen nodig zijn.Omdat de oorsprong van flash bestaat in de linkse hoek, en het verhogen van het aantal mobiele, neer, op het scherm van de periode, moeten we, minus onze coördinaten. Stageheight, om onze linker hoek van oorsprong en zorgt voor een toename van de y - mobiele, scherm, nu we van de patronen van de configuratie, we kunnen worden geregeld, startflag,., ///////begin tekenen, dus de ring om de bal in beweging startflag = waar;, laten we verder gaan met een ring.Het eerste wat we moeten doen is de toevoeging van een verklaring, te controleren, startflag beginnen als de vlag,, ///////verkeer worden geëtiketteerd als (startflag = = waar) {bal. Begin (tijd); startflag = vals;}, er zijn een paar dingen die het vermelden waard.Als je het nog weet, we hebben een variabele, de tijd, de maatregelen 3.Bovendien, omdat we alleen wilt bellen, voor het begin van een,, zetten we de eigendom terug, startflag, valse,, het zou zinloos zijn als in de rest van de lus, is de berekening van de positie van de kogel, dus we moeten er nog een verklaring, te controleren of de bom, //animatie als de bal. In de ontwerpresolutie als (bal. Ismoving () = = waar) {}, dat kunnen we werkelijke animatie.Het eerste wat we moeten doen, is naar de positie van de kogel, de huidige locatie. ///////- huidige positie: var = bal. Positionattime (tijd); zodra we weten dat standpunt, maar we moeten worden bijgewerkt, de positie van de film.Soortgelijke, ervan, moeten we rekening houden met de omvang van ons, en van de oorsprong van onze flash, /gewoonte videoclips bal. X =...Breng onze positie in kaart ["X"] (*) omvang; de bal. Y = stage.stageheight -...Breng onze positie in kaart ["y"] * schaal;, we hebben eindelijk een mijlpaal bereikt.Als je nu naar de film, zie je de resultaten.,,, 10: maatregelen om de bal terug, we hebben de sporen van de animatie, we de kogel, maar je ziet de bal blijven bewegen.Met het oog op de verbetering van de modellen, creëren we een, de grond, de bal kan gaan.Om het eenvoudig te houden, zullen wij ons op grond van een denkbeeldige lijn op de bodem van de fase van de methode, we zijn hier in verband met de tenuitvoerlegging van de botsing.In het algemeen, en we hebben twee opties, we botsing: op basis van de lijst en de voorspelling.Uiteindelijk zullen we de botsing te voorspellen, maar ik denk dat het bij de interpretatie van de waarde van elke optie: de theorie gebaseerd op de lijst van de botsing, achter het idee is simpel.In de loop van de bal, dan controleren we de coördinaten van de coördinatie is onder de grond.Als aan de voorwaarden is voldaan, een botsing... Klinkt goed, toch?Niet echt.Er is misschien een ongeluk gebeurt niet in een specifieke, timer interval.Dit betekent dat de tijd en de plaats van bijeenkomst is niet juist.Met deze kaart:, de feitelijke botsing zou gebeuren tussen.De botsing van de code en op basis van de lijst van de in de tweede lijst, maar in botsing kan worden vastgesteld, als de kogel is in de nieuwe baan, kunnen we door de voorspelde botsing van dit probleem op te lossen.Het kan een beetje uitdagender te realiseren, maar voor ons is het een meer nauwkeurige simulatie.De voorspelde botsing testen als volgt.In de eerste plaats voor de berekening van het projectiel, tegen de grond, zal de exacte tijd.In de loop van de tijd, we zijn door de inspectie.Als het er is, hebben we een nieuwe baan, te beginnen bij de botsing van de exacte tijd, het eerste ding, we moeten nog wat meer, we, bom, klasse.We zullen beginnen, timeofcollision,., openbare functies timeofcollision (de grond: de hoeveelheid: hoeveelheid) {var: nummer; var keer: array; = gettimes (grond, D1Y, helaas, v1y); ///////de negatieve resultaten willen we niet, dus gebruik de grote tijd = nummer leren. Max (["[]," de coëfficiënt van de "Times"]); ///////root2 moeten we rekening houden met de tijd en omdat we controles op de hoogte = + beginnen terug te keren;}, (nog gettimes, terug de tijd in de positie van de kogel wordt aangewezen.Het zal twee keer terug, een negatief positief, want dit is een element van de wortels van de kwadratische vergelijkingen.), of moeten we op dit moment weten we de omvang en de richting van de snelheid, dus om deze twee methoden voor de berekening van de openbare functie, velocityattime: (nr.): het aantal {VAR relativetime: aantal = int ((de huidige tijd - start) × 1000) /1000; var. Snelheid: enkele; var kloof gas: de hoeveelheid = getvelocity (ax, V1x, relativetime); var velocityy: hoeveelheid = getvelocity (helaas, v1y, relativetime); ///////De stelling van Pythagoras sqrt (* * * * * * * * * * * * * * = snelheid van wiskunde. Velocityy GAP - kloof gas + velocityy); de snelheid van de functie van terugkeer;} velocitydirectionattime (tijd: de hoeveelheden: de hoeveelheden) {Var relativetime: hoeveelheid = int ((de huidige tijd - start) × 1000) /1000; geen hoek: nummer; - = getvelocitydirection (ax, AY, V1x, v1y, relativetime); terug naar de hoek;}, we zijn klaar met de les in, en ik denk dat de toevoeging van een methode, getstarttime,.We zullen het gebruiken in de volgende stap in de openbare functie, getstarttime (): de hoeveelheid {terug starttime;}, redden van klasse en de terugkeer van de categorieën documenten.Het eerste wat we moeten doen, is de verhoging van de eigendom van een paar.Een, collisiontime, goederen en goederen, de longen, de vertegenwoordiger van de coëfficiënten van de variabelen het herstel van ons, collisiontime: nummer van de variabele aantal; long:;, het eerste wat we moeten doen is, de longen, de.We kunnen in deze methode wordt aan de fabrikant.Ik heb met 0,8, maar ook verschillende waarden vrij om te proberen, het effect te zien.Moet een waarde tussen 0 en 1 = 0,8, nu een deel van de lol.In de loop van de eerste lus komen, moeten we ons voor de sprong.Ten eerste, de ontdekking van de ziekte, startflag,.In de volgende lijn.Dit zal de berekening van de eerste botsing, omdat de positie van de centrale /is de bal, de grond is in feite de coördinaten van de helft van de hoogte van de bal.Collisiontime = bal. Timeofcollision ((ball.height /2) /groot); dat, onder de cheque, bal, ismoving ().Als de bal in beweging, we controle slechts de botsing, dus we gaan botsen staat daar.Toevoeging van de volgende voorwaarden, ///////controleren of een botsing als (de huidige tijd > = collisiontime) {}, bij de botsing, een situatie die we nodig hebben voor de uitvoering van de rebound.We moeten door middel van een nieuwe baan, een bom, collisiontime,.Het eerste wat we moeten doen, is de berekening van de omvang van de snelheid en richting van de collisiontime,,., var newvelocitydirection: hoeveelheid = 1 * bal. Velocitydirectionattime (collisiontime); var newvelocity: hoeveelheid = bal. Velocityattime (collisiontime) *, pulmonale, nu we die nodig zijn om de desbetreffende methoden voor Het vaststellen van de nieuwe baan.De methode, timeofcollision, we moeten ervoor zorgen dat we de helft van de hoogte van de coördinatie, de aarde.We doen dat omdat de bal is in feite de coördinaten van het centrum, in plaats van de basis, het is nieuw. ///////ervan (newvelocitydirection, de baan van de kogel. Newvelocity, bal. X /omvang (stage.stageheight bal. Y) /schaal); de bal. (collisiontime); collisiontime = bal. Timeofcollision ((ball.height /2) en /of schaal) te bereiken, hebben we een andere mijlpaal.Als je de test van deze film, moet je zien springen.Kijk, als je het voorbeeld hierboven, de bal nooit een volledige stop.Het lijkt er sprake te zijn van een snelle en gespannen.Dit verschijnsel is als gevolg van de door de volgende lijn var newvelocity:: = aantal bal. Velocityattime (collisiontime) * long, en dan zal ik het uitleggen.Dat is niet gelijk aan 0 voor de bossen, of 1, we hebben de snelheid van de kogel zal alleen, in de buurt van, nul, langzamer, maar is daar nooit aangekomen.Aangezien de realiteit is dat we de kogel uit te rusten, we moeten de tenuitvoerlegging van een oplossing voor dit probleem, hier is hoe het is.Omdat, long, ongewijzigd blijft, kunnen we kijken naar de rebound, een meetkundige reeks:,, 1.: eerst een rebound, 2: tijd voor een tweede bijeenkomst, 3, tijd voor de derde slag:,,,,,... In de volgorde van de vertegenwoordiging voor de duur van de rebound.Bedoelen we de tijd zoals:,,, 1: voor de eerste keer stuiteren, tijd, tijd, 2: voor de eerste keer de rebound, twee, s, 3: de tijd die nodig was voor het herstel van de drie keer, in het algemeen,... En, vanaf hier kunnen we het gebruik van de formule voor de wat voor een reeks van onbeperkte en voor de berekening van de tijd: we stoppen, formule, zelf is eenvoudig.,,, 1, de eerste van een reeks variabelen, vertegenwoordigers, in ons geval, voor de eerste keer de lengte van de rebound.O, het percentage van de vertegenwoordigers van de variabelen, in dit geval, de longen, de, wat de tenuitvoerlegging betreft, zullen we beginnen met de toevoeging van twee eigenschappen van het type document, de variabele stoppingtime: nummer; de risico 's terug: int, we moeten weten waar en wanneer de eerste bijeenkomst, dus, Stuiter eigendom zal worden gebruikt als een een eenvoudig tegen.In de loop van omstandigheden, startflag, (als verklaring als (startflag = = waar) {en), wordt het volgende toegevoegd onze verklaring, in de longen,: ///////- bijeenkomst, tellen rebound = 0; de volgende stap, het volgende toevoegen aan onze situatie aan het einde van de botsing, Stuiter, Stuiter. + + + + + + + /hoeveelheid voor de berekening van de extra tijd te stoppen; ///////(de eerste sprong als rebound = = 1) {///////pen oneindig meetkundige reeks: S = a_1 /1 O stoppingtime = (collisiontime bal. Getstarttime ()) /(1 - long) + bal. Getstarttime ();}, elke botsing moeten we nagaan of de stoppingtime plaatsvindt, en het is voorbij.Als het is, kunnen we een pauze, door een beroep te doen op het einde voor de,,.De plaatsing van de cyclus opnieuw voor de laatste keer, dus we moeten de bal in de juiste vaststelling van de laatste positie.De ring is vastgesteld op de bom heeft een nieuwe baan, dus we moeten door de vaststelling van deze tijd, om te voorkomen dat, getstarttime (), en de bal.Als we de tijd stoppen, /, als het verkeer (stuiteren > 1 & & collisiontime > stoppingtime) {bal. (); ///////omdat de bal heeft op een nieuwe baan te beginnen, waardoor de positie van de tijd = bal. Getstarttime ();}, is dit!En nu de volledige stopzetting van een rebound.,, een 12 - stappen: toevoeging van de bu, we spelen in de film, onmiddellijk van start.Voor de meeste toepassingen, dit is zeer slecht, dus laten we wat dingen veranderen, de toevoeging van een aantal fundamentele gebruikersinterface controles.Om het eenvoudig te houden, we moeten nog twee knopen: een startknop een reset - knop, onze eerste stap is vergelijkbaar met de stappen 8.In hun dossier beginnen en de reset - knop, die twee.Elke knop zal een symbool, deze keer heeft ze, druk op de knop, en in tegenstelling tot wat videoclips,.Deze keer, zullen we ons op het podium om de knop, dus ze gewenste positie.Ook moeten de stappen 8 en open "verband" eigenschap, als een knop.Naast de doos controleren, is gerealiseerd, maar deze keer, in de naam van de standaard klasse.Klik, herhaal dan deze knop, op het podium, de keuze van de startknop.Open de eigenschap panel.Spreek hier < voorbeeld naam > input - knop.Herhaal dit voor de reset - knop, reset - knop, Bel het behoud van,,,,, dossier.Naar binnen, we moeten MouseEvent, invoer, invoer, Flash. Het evenement in de methode voor het schrappen van de fabrikant;, een lijn die de volgende kogel. ///////werking ervan, die we voor de prestaties van ondernemers (85, pinball. 6, bal. X /omvang (stage.stageheight bal. Y) ////////-); een begin van de ring in de sport, dus startflag = echte bal;, we moeten vervangen door toevoeging van gebeurtenissen luisteraar elke knop te creëren.Er nota van te nemen dat wij kunnen leren van hun naam, < voorbeelden van >, hebben we eerder, ///////toe te voegen aan de gebeurtenissen van luisteraars voor onze start en reset - knop startbutton.addeventlistener
3
Previous:Het creëren van een flash bouwer 4