2014-05-19 53 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/