สร้างและนำเข้าโค้ดใน library ด้วย gcc

ไฟล์ add.c นำมาสร้างเป็นไลบรารี

int add(int n) {
	return n + 1;
}

สร้างไลบรารีชื่อ libadd.a

gcc -c add.c
ar -r libadd.a add.o

ไฟล์ test.c จะเรียกใช้ libadd.a

int add(int);

main() {
    printf("%d\n", add(2));
}

คอมไพล์และลิงค์กับไลบรารี

gcc test.c -L. -ladd

กติกา MTG: Two-Headed Giant

  • 30 life (15 poison counters)
  • ทีมที่ได้เล่นก่อนไม่จั่ว
  • ใช้เฟสต่างๆร่วมกัน
  • แยก mana
  • แยก deck
  •     standard or modern ทั้งคู่ห้ามมีรวมกันเกิน 4 copies ของการ์ดแต่ละใบ
  •     draft or seal แชร์ pool
  • แต่ละคนได้ 1 ฟรี mulligan
  • equip ให้คนอื่นไม่ได้
  • keyword
  •     you ไม่ได้หมายถึง teammate
  •     each opponent หมายถึงสองคน Gray Merchant of Asphodel ลดและเพิ่ม 2X life
  •     each player หมายถึงทุกคน (ไม่ใช่ทุกทีม)
  • กติกาการ attack or block ใช้กับทั้งทีม
  •     ถ้าต้องตีพร้อมกับครีเชอร์ตัวอื่น ครีเชอร์ตัวอื่นสามารถเป็นของทีมเมทได้
  •     ถ้าถูกตีด้วย islandwalk และหนึ่งใน oppo มี island ก็จะบล็อคไม่ได้
  • damage เข้า player (โดย default เข้าที่ on the right) เลือกผู้เล่นหรือกระจาย damage ได้ (เช่น เพื่อให้ trigger สองครั้ง)

อบรม QGIS

วันที่ 6 ม.ค. 2559 ผมเป็นวิทยากรอบรม QGIS http://www.qgis.org ให้กับนิสิตภาควิชาวิทยาการคอมพิวเตอร์ ม.เกษตรศาสตร์

QGIS เป็น open source GIS software สามารถรันสคริปท์ Python ได้ ตอนเช้าผมให้นิสิตโหลดแผนที่จาก Natural Earth มาลองเล่น http://www.naturalearthdata.com/downloads/ ข้อมูลที่ดาวน์โหลดมามีข้อมูลสีที่จะใช้ระบายให้กับประเทศต่างๆ ตอนบ่ายนิสิต digitize แผนที่ ม.เกษตรศาสตร์จาก Open Street Map แล้วเขียนสคริปท์เพื่อระบายสีให้กับคณะและสำนักต่างๆ

This slideshow requires JavaScript.

โครงงาน

หา solution ที่เหมาะสมโดย survey ให้เยอะๆ

UI ต้องสื่อสารกับ user

คิดให้ครอบคลุม (กรณีที่ออกนอกลู่นอกทาง)

ประมาณเวลาทำงานแบบเผื่อๆ ต้องมี margin

คิดว่าจะสาธิตอย่างไร (ไปดูรายการทำอาหาร)

เอา library คนอื่นมาต่อยอดได้ แต่ต้องมีปริมาณงาน

คุยกับผู้ใช้บ่อยๆ จะได้ทราบเหตุผลเพื่อนำไป defend

นัตถิ เม สรณัง อัญญัง

นัตถิ เม สรณัง อัญญัง ที่พึ่งอย่างอื่นของข้าพเจ้าไม่มี
พุทโธ เม สรณัง วรัง พระพุทธเจ้าเป็นที่พึ่งอันประเสริฐของข้าพเจ้า
ธัมโม เม สรณัง วรัง พระธรรมเป็นที่พึ่งอันประเสริฐของข้าพเจ้า
สังโฆ เม สรณัง วรัง พระสงฆ์เป็นที่พึ่งอันประเสริฐของข้าพเจ้า
เอเตนะ สัจจะวัจเชนะ ด้วยการกล่าวคำสัตย์นี้
โสตถิ เม โหตุ สัพพทา ขอความสวัสดีจงมีแก่ข้าพเจ้าทุกเมื่อ ดั่งนี้ก็ได้

ข้อที่ควรปฏิบัติเป็นขั้นที่หนึ่ง
›››››
สมเด็จพระญาณสังวร
สมเด็จพระสังฆราช สกลมหาสังฆปริณายก
วัดบวรนิเวศวิหาร

http://www.dharma-gateway.com/monk/preach/somdej/sd-022.htm

Zombie Dice

เกม Zombie Dice เป็นเกมง่ายๆ ใช้ดวงพอสมควร และฝึกการตัดสินใจที่จะต่อหรือหยุด

WP_20151130_15_45_51_Pro.jpg

ผู้เล่นเป็นซอมบี้ที่ชอบกินสมองคน ใครกินสมองได้ 13 ก้อนเป็นผู้ชนะ* ก่อนเล่นลองเดินแบบซอมบี้ดู เดินเอียงๆ ช้าๆ ส่งเสียงอาา… แบบงงงง เดินหัวชนเสาแล้วก็ยังคงเดินต่อ

ลูกเต๋าในเกมคือคน ผลของลูกเต๋ามี 3 แบบ คือ 1.สมองคือเราได้กินสมองเขา 2.รอยเท้าคือคนหนีได้ 3.โดนคนยิง ถ้าเราโดนยิงสามนัดก็จะตายและอดคะแนนในตานั้น เต๋าแดงยิงเก่งสุด WP_20151130_15_48_23_Pro.jpg

สุ่มเลือกเต่ามา 3 ลูก แล้วทอย (ทอยครั้งละ 3 ลูกเสมอ)
WP_20151130_19_11_19_Pro

เรียงสมอง และจำนวนแผลที่ถูกยิงไว้ (ถ้าโดนยิงสามนัดขึ้นไปเราจะไม่ได้คะแนนในตานั้น)WP_20151130_19_11_47_Pro

ตัดสินใจว่าจะเล่นต่อ หรือหยุด

เลือกเล่นต่อ สุ่มหยิบเต๋ามาอีกสามลูก แล้วทอย สีแดงหนีได้ สีเขียวโดนกิน สีเหลืองยิงเราWP_20151130_19_12_45_Pro

นำสมอง(เขียว)และแผลถูกยิง(เหลือง)ไปรวมกับกองด้านซ้าย

เลือกว่าจะเล่นต่อหรือหยุด

สมมุติว่าเลือกเล่นต่อ จะนำคนที่หนีไปได้มาทอดใหม่ ทอดพร้อมกับเต๋าที่สุ่มหยิบมาอีกสองลูกWP_20151130_19_14_36_Pro

สีเขียวคนล่างหนีไปได้ เราได้กินสมองเขียวและแดง

นำไปรวมกันกับกองด้านซ้ายWP_20151130_19_15_01_Pro

เลือกว่าจะเล่นต่อหรือหยุด

เลือกหยุด จดคะแนนที่ได้ในตานี้ และนำเต๋าทั้งหมดไปคืน ให้ผู้เล่นอีกคนเล่นต่อ

*รอบสุดท้ายของเกมคือรอบที่ซอมบี้กินสามารถสมองได้ตั้งแต่ 13 ก้อน เมื่อจบรอบนั้น ซอมบี้ตัวที่กินสมองได้มากที่สุดจะเป็นผู้ชนะ ได้เป็นซอมบอส (Zombozz)

หากจะนำข้อความไปใช้ ต้องแสดงที่มา และห้ามใช้ในเชิงพาณิชย์

paraFoam: convert 2D to 3D

copy tutorial from /opt/openfoam30/tutorials/multiphase/interFoam/ras/damBreak

modify some parameters in system/controlDict

$ ./Allrun

$ paraFoam

Screenshot from 2015-11-18 12-24-20

click Apply

dropdown U

Screenshot from 2015-11-18 12-24-50.png

click Rescale to Data Range

Screenshot from 2015-11-18 12-27-57.png

click Play

To view in 3D, click Calculator

Screenshot from 2015-11-18 12-33-25.png

check Coordinate Results

Screenshot from 2015-11-18 12-33-36.png

enter the formula

coords + kHat*mag(U)

Screenshot from 2015-11-18 12-33-57.png

click Apply

rotate the object

Screenshot from 2015-11-18 12-34-58.png

File > Save Animation…

the output is in .ogv format

convert to mp4 that can be opened in iMovie using the following command

$ ffmpeg -i d.ogv -pix_fmt yuv420p d.mp4

หากจะนำข้อความไปใช้ ต้องแสดงที่มา และห้ามใช้ในเชิงพาณิชย์