2015-05-14 57 views
-1

我一直在嘗試創建一條曲線,並且我已經創建了它。但事情是如果我添加一個點,它將被添加到數組[最後一點-1],但如果我在第一和第二點之間添加一個點,曲線將它作爲最後一點-1,這是我的編碼,如何找到兩點之間的點

function findpoints() 
{ 
var newPt:Point = new Point(evt.stageX, evt.stageY); 
_points[poin] = newPt; 
//trace(_points) 
poin += 1; 
redrawCanvas(); 
} 

我只是想知道我是否能找到一個函數

+2

你將不得不自己處理這個問題。沒有現成的函數可以完成你要完成的任務,所以你必須遍歷數組,找出新的點是否應該在兩個現有的之間,如果是的話插入到數組中。 – Vesper

+0

是的,我知道所有我問的概念是功能 – Jeffin

回答

0

嚴重和持續的研究後,我已經找到了問題的答案,你需要找到的是終點,並將它和點陣列,然後你就可以找到它是否在使用這個公式的那些特定點之間,並且能夠根據術語將它添加到陣列中,

var pt:Point = new Point(Cmenu.x,Cmenu.y); 
     for (var i:int =0; i <= _points.length-1; i++) 
     { 
      var ss:int = (_points[i] as Point).x; 
      var sss:int = (_points[i] as Point).y; 
      if(pt.x > ss) 
      { 
       var change:int = i+1;          
      } 

     } 
     _points.splice(change,0,pt); 

我得到了期望的輸出,在此處張貼以防將來有人需要它。