Raphael.js API之Raphael.pathIntersection(),aphael.pathToRelative(),Set.clear(),Set.exclude(element)
/*API-141*/
Raphael.pathIntersection(path1, path2)
获取两条线的交点
参数列表:
path1
字符串类型
路径的字符串表达形式
path2
字符串类型
路径的字符串表达形式
返回值:交点集合,格式如下:
[{
x: //number类型 点的x坐标
y: //number类型 点的y坐标
t1: //number类型 value for segment of path1(不太确定中文表达方法)
t2: //number类型 value for segment of path2(不太确定中文表达方法)
segment1: //number类型 order number for segment of path1(不太确定中文表达方法)
segment2: //number类型 order number for segment of path2(不太确定中文表达方法)
bez1: //数组 用8个点代表曲线
bez2: //数组 用8个点代表曲线
}]
示例:
var ppath = paper.path("M 300 400 l 200 500");
var ppath1 = paper.path("M 250 400 l 400 150");
var result = Raphael.pathIntersection(ppath.attr("path"), ppath1.attr("path"));
如果调用结果可以写成result[0].x即可取到交点x坐标
返回结果为:
0: Object
bez1: Array[8]
bez2: Array[8]
segment1: 1
segment2: 1
t1: 0.12666743349882026
t2: 0.24168959150532024
x: 308.8235294117614
y: 422.0588235294119
__proto__: Object
length: 1
__proto__: Array[0]
/*API-142*/
Raphael.pathToRelative(pathString)
将路径转变为相对应的形式
参数列表:
pathString
字符串数组
线段数组
返回值:线段数组
/*API-156 API-157*/
Set.clear()
删除set中的所有元素
/*API-157*/
Set.exclude(element)
从set中删除选定元素
参数列表:
element
Object类型
待删除的元素
返回值:布尔类型 (如果待删除的元素在set中找到,并删除返回true)