マウス クリック イベントを使用して、マウスの座標にシンボルの子を作成する関数があります。次に、インスタンスが配列にプッシュされます。
現在、マウスが 10 ピクセル以内にあるときに子をドラッグ/ドロップできる新しい関数を作成しようとしています。子がドロップされたら、配列内の次の子に面するように回転させます。for each
現在、ループを使用して配列内の各子と通信しています。
私が問題を抱えているのは、削除された子のインデックス値を取得して変数に設定することです。
参考までに、ins_trailPoint
は子を作成する変数で、 は子をtPoint
含む配列の名前です。child
ドロップされた子のインデックス値を取得しようとする変数です。
function movePoint(Event:MouseEvent):void {
for each (var ins_trailPoint in tPoint) {
var child:int = event.target.parent.getChildIndex(event.target);
var px:Number = mouseX - ins_trailPoint.x;
var py:Number = mouseY - ins_trailPoint.y;
var dist = Math.sqrt(px*px + py*py);
if (dist<10) {
stage.removeEventListener(MouseEvent.CLICK, addPoint);
stage.addEventListener(MouseEvent.MOUSE_UP, dropPoint);
ins_trailPoint.startDrag();
function dropPoint(event:MouseEvent):void {
ins_trailPoint.stopDrag();
var dx:Number = tPoint[child+1].x - ins_trailPoint.x;
var dy:Number = tPoint[child+1].y - ins_trailPoint.y;
var radians:Number = Math.atan2(dy,dx);
ins_trailPoint.rotation = radians * 180/Math.PI;