Loading:


    Obliczanie odległości pomiędzy dwoma punktami - AS3

    Skrypt wyświetla aktualną odległość pomiędzy wyśrodkowanym punktem Sprite oraz kursorem myszki. Tworzy on również linię pomiędzy obydwoma punktami.

     

    Wszystko działa na podstawie wzoru pitagorasa, który wygląda dla tego przykąłdu następująco:

     

    dystans2 = dystansX2 + dystansY2

     

    Co wygląda następująco w kodzie:

     

    var dystans:Number = Math.sqrt(dystansX * dystansX + dystansY * dystansY);



    Napisz Artyku³

    Listing

    //KOD DLA PLIKU Dystans.as
    package {
            //Skrypt pobrano z www.Funkcje.net
            import flash.display.Sprite;
            import flash.events.MouseEvent;
            import flash.text.TextField;
           
            public class Dystans extends Sprite {
                   
                    private var sprite1:Sprite;
                    private var pole_txt:TextField;
                   
                    public function Dystans() {
                            init();
                    }
                   
                    private function init():void {
                            sprite1 = new Sprite();
                            addChild(sprite1);
                            sprite1.graphics.beginFill(0x000000);
                            sprite1.graphics.drawRect(-2, -2, 4, 4);
                            sprite1.graphics.endFill();
                            sprite1.x = stage.stageWidth / 2;
                            sprite1.y = stage.stageHeight / 2;
                           
                            pole_txt = new TextField();
                            pole_txt.width = 200;
                            addChild(pole_txt);
                            stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
                    }
                   
                    public function onMouseMove(e:MouseEvent):void {
                            graphics.clear();
                            graphics.lineStyle(1, 0, 1);
                            graphics.moveTo(sprite1.x, sprite1.y);
                            graphics.lineTo(mouseX, mouseY);
                            var dystansX:Number = sprite1.x - mouseX;
                            var dystansY:Number = sprite1.y - mouseY;
                            //FORMUŁA PITAGORASA a + b = c (kwadrat wszystko)
                            var dystans:Number = Math.sqrt(dystansX * dystansX + dystansY * dystansY);
                            pole_txt.text = dystans.toString();
                    }
            }
    }




    Dodano przez: divix
    Ranga: Administrator serwisu Punktów: 0
    Komentarze użytkowników
      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors