2014-05-19 52 views
0

我想在一个盒子内随机显示一个三角形(目前用拉斐尔制作)。整个三角形应该始终在盒子内。让我们想象一下,在显示后,必须尽快点击三角形的实验。但是您可以轻松想象其他场景,只需在一个框中显示图片即可。随机显示拉斐尔画布内的三角形

<div id="area"></div> 
var paper = Raphael("area",300,300); 

任意三角形:

var triangle = paper.path("M 100,100 L 70,50 L 40, 100").attr({"fill":"green"}); 

关于圆,这成为因为事实上,有一个功能,即paper.circle(相当容易)与给定的x和y坐标和半径。但是对于三角形,有三个角落需要考虑x和y坐标。

有什么建议吗?也许是完全不同的方法?

小提琴:http://jsfiddle.net/6bV9A/

回答

0

这可以通过使用三角物体上的转换函数来完成。首先,你需要这样的三角形是在矩形的左上角一路来改变你的道路一点点:

var triangle = paper.path("M 60,50 L 30,0 L 0, 50").attr({"fill":"green"}); 

下一页使用tranlsate功能来随机翻译你的三角形:

triangle.translate(Math.random() * 240, Math.random() * 250); 

这里是小提琴:http://jsfiddle.net/6bV9A/1/