Point-objecten gebruiken

Flash Player 9 of hoger, Adobe AIR 1.0 of hoger

Een Point -object definieert een Cartesisch-coördinatenpaar. Het vertegenwoordigt een locatie in een tweedimensionaal coördinatensysteem waarbij x de horizontale as vertegenwoordigt en y de verticale as.

U definieert een object Point door de eigenschappen x en y ervan als volgt te definiëren:

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;

De afstand tussen twee punten herleiden

U kunt de methode distance() van de klasse Point gebruiken om de afstand tussen twee punten in een coördinaatruimte te herleiden. Met de volgende code wordt de afstand herleid tussen de registratiepunten van twee weergaveobjecten, circle1 en circle2 , in dezelfde weergaveobjectcontainer:

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);

Coördinaatruimten transleren

Als twee weergaveobjecten zich in verschillende objectcontainers bevinden, kunnen ze zich in verschillende coördinaatruimten bevinden. U kunt de methode localToGlobal() van de klasse DisplayObject gebruiken om de coördinaten naar dezelfde (algemene) coördinaatruimte te transleren, die van het werkgebied. Met de volgende code wordt de afstand gevonden tussen de registratiepunten van twee weergaveobjecten, circle1 en circle2 , in de verschillende weergaveobjectcontainers:

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);

U kunt de methode localToGlobal() van de klasse DisplayObject ook gebruiken om erachter te komen wat de afstand is tussen het registratiepunt van een weergaveobject met de naam target en een specifiek punt in het werkgebied:

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);

Een weergaveobject verplaatsen met een opgegeven hoek en afstand

U kunt de methode polar() van de klasse Point gebruiken om een weergaveobject een bepaalde afstand onder een bepaalde hoek te verplaatsen. Met de volgende code wordt bijvoorbeeld het object myDisplayObject met 100 pixels en een hoek van 60 graden verplaatst:

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;

Andere toepassingen van de klasse Point

U kunt Point-objecten gebruiken met de volgende methoden en eigenschappen:

Klasse

Methoden of eigenschappen

Beschrijving

DisplayObjectContainer

areInaccessibleObjectsUnderPoint()getObjectsUnderPoint()

Hiermee wordt een lijst met objecten onder een punt in een weergaveobjectcontainer geretourneerd.

BitmapData

hitTest()

Hiermee definieert u de pixel in het object BitmapData plus het punt dat u controleert als raakgebied.

BitmapData

applyFilter()

copyChannel()

merge()

paletteMap()

pixelDissolve()

threshold()

Hiermee definieert u de posities van rechthoeken die de bewerkingen definiëren.

Matrix

deltaTransformPoint()

transformPoint()

Hiermee definieert u punten waarvoor u een transformatie wilt toepassen.

Rechthoek

bottomRight

size

topLeft

Hiermee definieert u deze eigenschappen.