由於path有自帶的api可獲得總長度,和某個長度返回的坐標。
var total = d.path.getTotalLength();//返回總長度
var point = d.path.getPointAtLength(num);//返回一個對象,包括x,y
想着進行了line的位置找尋:
svg中《line》的路徑上的點的位置找尋方法
//根據line的起始點坐標返回一個對象,得到線段的長度
function GetLineLength(x1,y1,x2,y2){
var obj ={};
obj.x = x1;
obj.y = y1;
obj.length = Math.sqrt((x2 - x1)*(x2 - x1) + (y2- y1)*(y2- y1));
obj.sin = (y1-y2)/obj.length;
obj.cos = (x1-x2)/obj.length;
return obj;
};
//根據上變的函數得到的對象,傳入某一長度,返回此長度在line上的x,y的坐標
function GetLintPoint(obj,number){
var point = {};
point.x = obj.x - number*obj.cos;
point.y = obj.y - number*obj.sin;
return obj1;
};
