Uso de objetos PointFlash Player 9 y posterior, Adobe AIR 1.0 y posterior Un objeto Point define un par cartesiano de coordenadas. Representa una ubicación en un sistema de coordenadas bidimensional, en el que x representa el eje horizontal e y representa el eje vertical. Para definir un objeto Point, se establecen sus propiedades x e y del siguiente modo: import flash.geom.*; var pt1:Point = new Point(10, 20); // x == 10; y == 20 var pt2:Point = new Point(); pt2.x = 10; pt2.y = 20; Cálculo de la distancia entre dos puntosSe puede usar el método distance() de la clase Point para calcular la distancia entre dos puntos en un espacio de coordenadas. Por ejemplo, el código siguiente calcula la distancia entre los puntos de registro de dos objetos de visualización, circle1 y circle2, en el mismo contenedor de objetos de visualización: import flash.geom.*; var pt1:Point = new Point(circle1.x, circle1.y); var pt2:Point = new Point(circle2.x, circle2.y); var distance:Number = Point.distance(pt1, pt2); Traslación de los espacios de coordenadasSi dos objetos de visualización se encuentran en diferentes contenedores, es posible que se ubiquen en distintos espacios de coordenadas. Se puede usar el método localToGlobal() de la clase DisplayObject para trasladar las coordenadas al mismo espacio de coordenadas (global), es decir, el del escenario. Por ejemplo, el código siguiente calcula la distancia entre los puntos de registro de dos objetos de visualización, circle1 y circle2, en diferentes contenedores de objetos de visualización: import flash.geom.*; var pt1:Point = new Point(circle1.x, circle1.y); pt1 = circle1.localToGlobal(pt1); var pt2:Point = new Point(circle2.x, circle2.y); pt2 = circle2.localToGlobal(pt2); var distance:Number = Point.distance(pt1, pt2); Asimismo, para calcular la distancia del punto de registro de un objeto de visualización denominado target con respecto a un punto específico del escenario, se puede usar el método localToGlobal() de la clase DisplayObject: import flash.geom.*; var stageCenter:Point = new Point(); stageCenter.x = this.stage.stageWidth / 2; stageCenter.y = this.stage.stageHeight / 2; var targetCenter:Point = new Point(target.x, target.y); targetCenter = target.localToGlobal(targetCenter); var distance:Number = Point.distance(stageCenter, targetCenter); Desplazamiento de un objeto de visualización con un ángulo y una distancia especificadosSe puede usar el método polar() de la clase Point para desplazar un objeto de visualización una distancia específica con un ángulo determinado. Por ejemplo, el código siguiente desplaza el objeto myDisplayObject 100 píxeles por 60°: import flash.geom.*; var distance:Number = 100; var angle:Number = 2 * Math.PI * (90 / 360); var translatePoint:Point = Point.polar(distance, angle); myDisplayObject.x += translatePoint.x; myDisplayObject.y += translatePoint.y; Otros usos de la clase PointLos objetos Point se pueden usar con los métodos y las propiedades siguientes:
|
|