Point nesnelerini kullanma

Flash Player 9 ve üstü, Adobe AIR 1.0 ve üstü

Point nesnesi bir kartezyan koordinatı çifti tanımlar. İki boyutlu koordinat sisteminde konumu temsil eder, burada x yatay ekseni temsil ederken y de dikey ekseni temsil eder.

Bir Point nesnesini tanımlamak için, nesnenin x ve y özelliklerini şu şekilde ayarlarsınız:

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;

İki nokta arasındaki mesafeyi bulma

Koordinat alanında iki nokta arasındaki mesafeyi bulmak için, Point sınıfının distance() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod, aynı görüntüleme nesnesi kabında bulunan circle1 ve circle2 adındaki iki görüntüleme nesnesinin kayıt noktaları arasındaki mesafeyi bulur:

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

Koordinat alanlarını çevirme

İki görüntüleme nesnesi, farklı görüntüleme nesnesi kabındaysa, bunlar farklı koordinat aralıklarında olabilir. Koordinatları Sahne Alanı'nın koordinat alanıyla aynı (genel) koordinat alanına çevirmek için, DisplayObject sınıfının localToGlobal() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod, farklı görüntüleme nesnesi kaplarında bulunan circle1 ve circle2 adındaki iki görüntüleme nesnesinin kayıt noktaları arasındaki mesafeyi bulur:

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

Aynı şekilde, Sahne Alanı üzerindeki belirli bir noktadan target adındaki bir görüntüleme nesnesinin kayıt noktası arasındaki mesafeyi bulmak için, DisplayObject sınıfının localToGlobal() yöntemini kullanabilirsiniz:

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

Görüntüleme nesnesini belirtilen bir açıya ve mesafeye göre taşıma

Görüntüleme nesnesini belirli bir açıya göre belirli bir mesafe boyunca taşımak için, Point sınıfının polar() yöntemini kullanabilirsiniz. Örneğin aşağıdaki kod myDisplayObject nesnesini 60°'den 100 piksel taşır.

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;

Point sınıfının diğer kullanımları

Point nesnelerini şu yöntem ve özelliklerle kullanabilirsiniz:

Sınıf

Yöntemler veya özellikler

Açıklama

DisplayObjectContainer

areInaccessibleObjectsUnderPoint()getObjectsUnderPoint()

Görüntü nesnesi kabında bir noktanın altındaki nesnelerin listesini döndürmek için kullanılır.

BitmapData

hitTest()

Vuruş için kontrol ettiğiniz noktanın yanı sıra, BitmapData nesnesinde pikseli tanımlamak için kullanılır.

BitmapData

applyFilter()

copyChannel()

merge()

paletteMap()

pixelDissolve()

threshold()

İşlemleri tanımlayan dikdörtgen konumlarını tanımlamak için kullanılır.

Matris

deltaTransformPoint()

transformPoint()

Dönüştürme uygulamak istediğiniz noktaları tanımlamak için kullanılır.

Rectangle

bottomRight

size

topLeft

Bu özellikleri tanımlamak için kullanılır.