2011-04-07 46 views
0
$(document).ready(function(){ 
    var x1 = Math.random()*$(window).width(); var y1 = Math.random()*$(window).height(); 
    var x2 = 1; var y2 = 1; 
    var paper = Raphael(document.body); 

    setInterval(function() { 
     randx = Math.random(); randy = Math.random(); 
     if (randx > 0.9) { 
      if (x2 = 1) { 
       if (randx > 0.99) x2 = -1; 
      } 
      else if (x2 = -1) { 
       if (randx > 0.99) x2 = 1; 
      } 
     } else x2 = 0; 
     if (randy > 0.9) { 
      if (y2 = 1) { 
       if (randy > 0.99) y2 = -1; 
      } 
      else if (y2 = -1) { 
       if (randy > 0.99) y2 = 1; 
      } 
     } else y2 = 0; 
     paper.path("M"+x1+" "+y1+"L"+(x1+x2)+" "+(y1+y2)); 
     x1 = x1+x2; 
     y1 = y1+y2; 
    }, 0); 
}); 

這是我的「隨機線」生成腳本。我知道它看起來很糟糕,我只是在學習。但是,我想獲得類似的東西這樣的:http://i.stack.imgur.com/R7Kkv.png平滑隨機線,帶循環,使用Raphael/JS

我會很感激的一些技巧/對算法的建議,這將使線路更順暢,更容易把做掉頭等

謝謝

回答

0

答案是在前一個點周圍的一個40x40左右的方框內生成點,然後在它們之間插入一個三次樣條。