วันจันทร์ที่ 15 พฤศจิกายน พ.ศ. 2553

หลักการสร้างเสียงดนตรีในโปรแกรมภาษาMSWLogo2

การสร้างเสียงดนตรี หมายถึง การที่ผู้ใช้โปรแกรม Microsoft Windows Logo ได้กำหนดเสียงตัวโน้ตขึ้น เพื่อที่จะนำเสียงตัวโน้ตดังกล่าวมาประกอบกันเป็นเพลงตามที่ผู้ใช้ต้องการ ซึ่งผู้ใช้จะต้องมีการกำหนดชุดคำสั่ง หรือกระบวนความการสร้างเสียงตัวโน้ต (สร้างโน้ต) และเสียงเพลง (คีย์เพลง) ไว้ใน Edall โดยสามารถเขียนเป็นแผนภาพแสดงขั้นตอนและวิธีการสร้างเสียงดนตรีได้ ดังนี้
                                    สร้างโน๊ต --> คีย์เพลง
            ในการสร้างเสียงดนตรีจากลำโพงของคอมพิวเตอร์ ได้มีการกำหนดความถี่สำหรับการสร้างเสียงสำหรับตัวโน้ตไว้ดังตาราง (ตารางแสดงความถี่มาตรฐานของตัวโน้ต) ซึ่งสามารถแบ่งเสียงออกได้เป็น 3 ระดับ ได้แก่ เสียงระดับต่ำ เสียงระดับกลางและเสียงระดับสูง
คำสั่งหยุดรอ
ตารางแสดงความถี่มาตรฐานของตัวโน้ต
เสียงระดับต่ำ
เสียงระดับกลาง
เสียงระดับสูง
ตัวโน้ต
ความถี่
ตัวโน้ต
ความถี่
ตัวโน้ต
ความถี่
C (โด)
262
C (โด)
523
C (โด)
1047
D (เร)
294
D (เร)
587
D (เร)
1175
E (มี)
330
E (มี)
659
E (มี)
1319
F (ฟา)
349
F (ฟา)
698
F (ฟา)
1397
G (ซอล)
392
G (ซอล)
748
G (ซอล)
1568
A (ลา)
440
A (ลา)
880
A (ลา)
1760
B (ที)
494
B (ที)
988
B (ที)
1975
รูปแบบคำสั่ง
                             คือ Sound [ความถี่ ช่วงเวลา]
                               *ความถี่ หมายถึง คลื่นความถี่ของเสียงในหน่วยรอบต่อวินาที **ช่วงเวลา หมายถึง ระยะเวลาที่ต้องการให้แสดงเสียงนั้น
                                    ทั้งนี้ ตัวเลขตัวแรกเป็นค่าระดับความถี่ของเสียงตัวโน้ต (เสียงสูง-ต่ำ) ถ้าตัวเลขมีค่ามากเสียงจะแหลม ตัวเลขตัวที่สอง
เป็นระยะเวลาในการออกเสียงตามตัวโน้ต (เสียงสั้น-ยาว) ถ้าตัวเลขนี้มีค่ามากขึ้น เสียงจะดังนานขึ้น
ตัวอย่างรูปแบบคำสั่ง
                             Sound [523 20]
                                    หมายถึง เสียง C (โด) - เสียงระดับกลาง ในช่วงเวลา 20 หน่วย
                                การสร้างเสียงเพลง (คีย์ เพลง)
                        การสร้างเสียงเพลง หมายถึง การเลือกใช้เสียงตัวโน้ตหลายๆ มาเรียงต่อกันเป็นเพลง โดยที่ผู้ใช้จะต้องมีการกำหนดระยะเวลาในการแสดงเสียงตัวโน้ต เพื่อให้เต่าโลโกสามารถเล่นเสียงเพลงได้อย่างถูกต้องและใกล้เคียงกับเสียงจริงมากที่สุด
ตัวอย่างเพลง แมงมุมลาย

เพลง แมงมุมลาย
                        แมง      มุม        ลาย      ตัว        นั้น
โด15     โด15     โด15     เร15      ฟา25
                        ฉัน        เห็น       มัน        ซม        ซาน      เหลือ     ทน
                        มี15      มี15      เร15      โด15     เร15      มี15      โด40
                        วัน        หนึ่ง      มัน        เปียก     ฝน
                      มี15      มี15      มี15      ฟา15    ซอล25
                        ไหล      ร่วง       หล่น     จาก      บน        หลัง      คา
                        ซอล15   ซอล15   ฟา15    มี15      ฟา15    ซอล15   มี40
พระ      อา        ทิตย์      ส่อง      แสง
                        โด15     โด15     โด15     เร15      ฟา25
                        น้ำ        เหือด     แห้ง      ไป         พริบ      ตา
                        มี15      มี15      เร15      โด15     เร15      มี15      โด40
                        มัน        รีบ        ไต่         ขึ้น        ฝา
                        มี15      มี15      มี15      ฟา15    ซอล25
                        หัน        หลัง      มา        ทำ        ตา        ลุก        วาว
                      ซอล15   ซอล15   ฟา15    มี15      ฟา15    ซอล15   มี40


การสร้างเสียงตัวโน้ต (สร้างโน้ต)
* กำหนดกระบวนการสร้างตัวโน้ต (เสียงระดับกลาง) ในช่วงเวลา 120 หน่วย*

to C (โด)
      Sound [523 120]
end
to D (เร)
      Sound [587 120]
End
to E (มี)
      Sound [659 120]
end
to F (ฟา)
      Sound [698 120]
end
to G (ซอล)
      Sound [748 120]
End
to A (ลา)
      Sound [880 120]
end
to B (ที)
      Sound [988 120]
end
to CC (โด-เสียงระดับสูง)
      Sound [1047 120]
End



การสร้างเสียงเพลง (คีย์เพลง)
to spider
            C wait 15 C wait 15 C wait 15 D wait 15 F wait 15
            E wait 15 E wait 15 D wait 15 C wait 15 D wait 15 E wait 15 C wait 40
            E wait 15 E wait 15 E wait 15 F wait 15 G wait 25
G wait 15 G wait 15 F wait 15 E wait 15 F wait 15 G wait 15 E wait 40
C wait 15 C wait 15 C wait 15 D wait 15 F wait 25
E wait 15 E wait 15 D wait 15 C wait 15 D wait 15 E wait 15 C wait 40
E wait 15 E wait 15 E wait 15 F wait 15 G wait 25
G wait 15 G wait 15 F wait 15 E wait 15 F wait 15 G wait 15 E wait 40
end
 .
คำสั่งหยุดรอ หมายถึง การสร้างชุดคำสั่งเพื่อสั่งให้เต่าโลโกหยุดรอเป็นระยะเวลาหนึ่งก่อนที่เต่าโลโกจะแสดงภาพกราฟิกถัดไปที่ผู้ใช้ได้สร้างขึ้น
                        รูปแบบคำสั่ง
                                    คือ Wait ตัวเลข (กำหนดระยะเวลาในการหยุดรอ)
                       ตัวอย่างรูปแบบคำสั่ง
                                    1) Wait 20
    หมายถึง การให้เต่าโลโกหยุดรอเป็นระยะเวลา 20 หน่วย
2) Wait 50
    หมายถึง การให้เต่าโลโกหยุดรอเป็นระยะเวลา 50 หน่วย

คำสั่งพิมพ์ตัวอักษร

การพิมพ์ตัวอักษร หมายถึง การกำหนดรูปแบบ ความสูงและความกว้างของตัวอักษร เพื่อใช้สำหรับการสร้างภาพกราฟิก หรือภาพเคลื่อนไหว
ในโปรแกรม
Microsoft Windows Logo ซึ่งมีขั้นตอนและวิธีการใช้คำสั่งพิมพ์ตัวอักษร ดังนี้
           การตั้งค่าตัวอักษร
            การตั้งค่าตัวอักษร คือ การพิมพ์คำสั่ง Setlabelfont [[ชื่อ Font] ความสูง ความกว้าง] เช่น Setlabelfont [[AngsanaUPC] 50 50] หมายถึง การสร้างแบบอักษร AngsanaUPC โดยมีความสูงเป็น 50 หน่วยและความกว้างเป็น 50 หน่วย
            การพิมพ์คำ หรือข้อความที่ต้องการ
            การพิมพ์คำ หรือข้อความที่ต้องการ หมายถึง การเลือกพิมพ์คำสั่ง Label “คำที่ต้องการ เช่น Label ”Love หมายถึง การสั่งให้เต่าโลโกพิมพ์ข้อความว่า Love

กระบวนความ

คำสั่งต่างๆ ที่ใช้คำสั่งเต่าให้ทำงาน สามารถนำมารวมกันสร้างเป็นชุดคำสั่งเพื่อทำงานตามต้องการ และตั้งชื่อชุดคำสั่งไว้เพื่อความสะดวกในการเรียกใช้
ชุดคำสั่งในลักษณะนี้ เรียกว่า กระบวนความ เมื่อกระบวนความถูกสร้างขึ้น ชื่อของกระบวนความจะเป็นคำสั่งที่เต่ารู้จักชุดคำสั่งของกระบวนความจะถูกเก็บไว้ในหน่วยความจำขณะทำงาน และจะถูกลบทิ้งเมื่อเลิกใช้โปรแกรมโลโก หรือสั่งลบทิ้ง หากต้องการเก็บกระบวนความไว้อย่างถาวร สามารถทำได้โดยการบันทึกกระบวนความเป็นแฟ้มไว้ในหน่วยคำจำสำรอง เช่น แผ่นบันทึก และฮาร์ดดิสก์

รูปแบบของกระบวนความ คือ
        
To ชื่อกระบวนความ
                คำสั่ง 1
                คำสั่ง2
                .
                .
                .
           End


หมายเหตุ      
1.      กระบวนความในภาษาโลโกจะเริ่มต้นด้วย To ตามด้วยชื่อกระบวนความ และจบด้วย End
2.      ชื่อของกระบวนความที่ตั้งจะต้องไปซ้ำกับคำสั่งในภาษาโลโก
ในการทำงานครั้งหนึ่งๆนั้น อาจมีการสร้างกระบวนความหลายๆ กระบวนความ โดยเต่าจะรู้จักชื่อกระบวนความที่สร้างขึ้นเป็นคำสั่งเสมอ และเมื่อมีการสั่งบันทึกกระบวนความลงแผ่นบันทึกในชื่อใดชื่อหนึ่ง แฟ้มกระบวนความที่จะได้จะประกอบด้วยกระบวนความต่างๆ ที่ถูกจำไว้ในหน่วยความจำขณะทำงานในขณะนั้น
            สำหรับกรณีที่เราบรรจุ (load) แฟ้มกระบวนความเข้ามาใช้งาน กระบวนความต่างๆในแฟ้มกระบวนความจะเข้ามาเพิ่มเติมให้กับกระบวรความที่มีอยู่เดิม โดยจำไว้ในหน่วยความจำแรม และเต่าจะรู้จักชื่อกระบวนความทั้งหมดเป็นคำสั่งแต่ละคำสั่ง

การบันทึกไฟล์งาน (MSWLogo)

           การบันทึกไฟล์ผลงาน หมายถึง การจัดเก็บผลงาน หรือชุดคำสั่งต่างๆ ที่ผู้สร้างได้กระทำการต่างๆ ไว้ในโปรแกรม ซึ่งจะสามารถเรียกใช้ไฟล์งานดังกล่าวในการใช้งานครั้งต่อไปได้ ทั้งนี้ประกอบไปด้วย 4 ขั้นตอน ได้แก่
                             1. เลือก File > save as
                             2. เลือกที่พักพิงให้ไฟล์
                                    3. ตั้งชื่อไฟล์ (File name)
4. คลิกปุ่ม Save
อ้างอิงจาก   http://logoteachera.spaces.live.com/ 

1 ความคิดเห็น: