สูตรทางคณิตศาสตร์: y = asin (ωx+φ)+k
ตัวอย่าง: http://www.zhaojz.com.cn/demo/draw7.html
การประกาศฟังก์ชั่น JS:
การคัดลอกรหัสมีดังนี้:
// วาดเส้นโค้งไซนัส
// จุดกำเนิด
// แอมพลิจูดแอมพลิจูด- ก
// เริ่มต้นเฟสเฟสแรก - φ
// Setover Offset- K
// palstance ความเร็วเชิงมุม- Ω
// len จำนวนรอบ
ฟังก์ชั่น Drawsinusoid (dot, แอมพลิจูด, 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]+(แอมพลิจูด*math.sin (palstance*x+initialphase)+setover)]; // ค่าเริ่มต้นของ y
สำหรับ (; x <max; x+= 5) {// วาดบรรทัดสำหรับทุก ๆ ห้าหน่วย
var cur = [dot [0]+x, dot [1]+(แอมพลิจูด*math.sin (palstance*x+initialphase)+setover)];
drawline (pre, cur, {color: color}); // วาดเส้น
pre = cur;
-
var d = math.pi/(2*w);
สำหรับ (var x = 0; x <max; x+= d) {// สแกนจุด
var cur = [dot [0]+x, dot [1]+(แอมพลิจูด*math.sin (palstance*x+initialphase)+setover)];
drawpoint ({
PW: 3, pH: 3, สี: 'Darkred', Point: Cur
-
-
var pend = [dot [0]+สูงสุด, dot [1]+(แอมพลิจูด*math.sin (palstance*max+initialphase)+setover)];
drawpoint ({
PW: 3, pH: 3, สี: 'Darkred', Point: Pend
-
drawline (ก่อน, pend);
-