您的位置:首页 > Web前端 > JavaScript

Raphael.js API之Raphael.getPointAtLength(),Paper.forEach(),Paper.remove(),Paper.set(),Paper.setStart(

2014-06-25 15:56 260 查看
/*API-122*/

Raphael.getPointAtLength(path, length)

给出指定路径上某长度上的点坐标

参数列表:

path

    字符串类型

    路径的字符串表达形式

length

    number类型

返回值:代表点的对象 格式为:

{

    x  number类型  x轴坐标

    y  number类型  y轴坐标

    alpha:numberangle of derivative //作用类似于截取线段上的一指定长度线段,返回该长度位置的那个点

}

示例:

var paper =  Raphael("test",500,500);

var    path = paper.path(" M 100 50 L 400 30");

console.log(Raphael.getPointAtLength(path.attr("path"),3));    

结果:

Object {x: 102.99349319247995, y: 49.800433787168004, alpha: 176.18592516570965}

/*API-87*/

Paper.forEach(callback, thisArg)

为画布上的每一个元素执行该方法

如果回调函数返回false那么停止循环

参数列表:

callback

    function

    将要执行的代码

thisArg

    Object类型

    回调函数的关联对象

返回值:画布元素对象

示例:

paper.forEach(function (el)

{

    el.attr({ stroke: "blue" });

});

/*API-97*/

Paper.remove()

从DOM中删除画布

/*API-100*/

Paper.set()

创建一个类似数组的对象用于维持和操作一些元素。但是,这个方法不会在画布上创建任何元素,它只操作已经存在的元素。数组可以被看为是伪元素。所有对元素可用的方法对数组依然可用。

返回值:用于表示元素数组的伪数组对象(个人感觉就是将画布上现有的指定元素放到set里面,元素类型可以使不同的)

示例:

var st = paper.set();

st.push(

    paper.circle(10, 10, 5),

    paper.circle(30, 10, 5)

);

st.attr({fill: "red"});

/*API-103  API-101*/

Paper.setStart()与Paper.setFinish()

可以认为是将Paper.set()方法分解

Paper.setStart()表示set开始创建,Paper.setFinish()表示set创建结束,中间执行的代码就是set所push进去的元素。

示例:

paper.setStart();

paper.circle(10, 10, 5),

paper.circle(30, 10, 5)

var st = paper.setFinish();

st.attr({fill: "red"});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  raphael
相关文章推荐