有没有办法Raphael.js
根据中心坐标定位一个矩形(很像定位一个圆)?
问问题
3257 次
2 回答
0
您可以通过简单地创建自己的自定义元素来做到这一点,这是一个如何完成的示例:
Raphael.fn.MyRect = function( cx, cy, width, height ) {
var xLeftTop = cx - (width / 2);
var yLeftTop = cy - (height / 2);
this.rectObj = paper.rect( xLeftTop, yLeftTop, width, height );
return this;
};
var paper = Raphael(10, 50, 320, 200);
paper.MyRect( 95, 35, 50, 50 ); // 95 is the center in x and 35 the center in y
一个活生生的例子:http: //jsfiddle.net/7QMbH/
这样,您可以创建任意数量的矩形,并使您的代码易于理解。
于 2013-07-15T19:30:32.757 回答
0
最简单的方法是使用坐标x - rect_width/2
和创建矩形y - rect_heigth/2
:
例子:
var rect_w = 180,
rect_h = 80;
var paper = Raphael(10, 10, 500, 500);
paper.rect(100 - rect_w/2, 100 - rect_h/2, rect_w, rect_h, 5);
// The last 5 gives curved edges to you rectangle (if you need it of course).
基本上,而不是100,100
左上角,你给10,60
. 祝你好运
于 2013-07-16T01:29:43.737 回答