Documentación de Flash CS3 |
|||
| Programación con ActionScript 3.0 > Utilización de la geometría > Utilización de objetos Point | |||
Un objeto Point define un par de coordenadas cartesianas. 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;
Se 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);
Si 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(circle1.x, circle1.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);
Se 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 grados:
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;
Los objetos Point se pueden usar con los métodos y las propiedades siguientes:
|
Clase |
Métodos o propiedades |
Descripción |
|---|---|---|
|
DisplayObjectContainer |
|
Se usa para devolver una lista de objetos bajo un punto en un contenedor de objetos de visualización. |
|
BitmapData |
|
Se usa para definir el píxel en el objeto BitmapData, así como el punto en el que se busca una zona activa. |
|
BitmapData |
|
Se usa para definir las posiciones de los rectángulos que definen las operaciones. |
|
Matrix |
|
Se usa para definir los puntos para los que se desea aplicar una transformación. |
|
Rectangle |
|
Se usa para definir estas propiedades. |
Flash CS3
Enviarme un mensaje de correo electrónico cuando se añadan comentarios a esta página | Informe de comentarios
Página actual: http://livedocs.adobe.com/flash/9.0_es/main/00000186.html