DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> 使用js畫圖之正弦曲線
使用js畫圖之正弦曲線
編輯:關於JavaScript     

數學式:y=Asin(ωx+φ)+k

樣例:http://www.zhaojz.com.cn/demo/draw7.html

JS函數的聲明:

復制代碼 代碼如下:
//畫正弦曲線
//dot 原點
//amplitude    振幅 -- A
//initialPhase 初相 -- φ
//setover 偏距 -- k
//palstance 角速度 -- ω
//len 周期數
function drawSinusoid(dot, amplitude,initialPhase,palstance,setover, len, opts){
    var color = opts&&opts.color?opts.color:"DarkRed"; //曲線的顏色
    var max = len*2*Math.PI/w; //x的最大值
    //var x = -2*Math.PI/w/3;
    var x = 0; //x的初值
    var pre = [dot[0]+x, dot[1]+(amplitude*Math.sin(palstance*x+initialPhase)+setover)]; //y的初值
    for(;x < max;x+=5){ //每五個單位畫一條線
        var cur = [dot[0]+x, dot[1]+(amplitude*Math.sin(palstance*x+initialPhase)+setover)];
        drawLine(pre, cur, {color: color}); // 畫線
        pre = cur;
    }
    var d = Math.PI/(2*w);
    for(var x =0;x < max;x+=d){//描點
        var cur = [dot[0]+x, dot[1]+(amplitude*Math.sin(palstance*x+initialPhase)+setover)];
        drawPoint({
            pw:3,ph:3,color:'DarkRed',point: cur
        });
    }
   
    var pend = [dot[0]+max, dot[1]+(amplitude*Math.sin(palstance*max+initialPhase)+setover)];
    drawPoint({
        pw:3,ph:3,color:'DarkRed',point: pend
    });
    drawLine(pre, pend);
}

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved