Month: July 2015

การวัดระยะทางบน Google Earth

จากบทความที่แล้ว การทำแผนที่ Buffer 300 เมตร สถานที่หรือบริเวณห้ามขายเครื่องดื่มแอลกอฮอล์รอบ มอ. ทำให้สามารถมองเห็นภาพพื้นที่ห้ามฯ ได้ชัดเจนยิ่งขึ้น แต่ยังคงมีหลายๆท่านอยากรู้ว่าร้านนี้ ร้านนั้น จะอยู่ในเขตโซนนิ่งหรือเปล่า? วันนี้เลยมานำเสนอวิธีง่ายๆ ในการตรวจสอบด้วยตัวเอง ด้วยการวัดระยะทางจากสถานศึกษา ไปยังร้านที่เราสงสัยว่าจะอยู่ในข่ายโซนนิ่งหรือไม่? ขั้นตอน เปิดโปรแกรม Google Earth ถ้ายังไม่ได้ติดตั้งคลิกที่นี่เพื่อดาวน์โหลดโปรแกรม จากประกาศสำนักนายกฯ ในข้อ 1 ห้ามผู้ใดขายเครื่องดื่มแอลกอฮอล์ในสถานที่หรือบริเวณซึ่งอยู่ในระยะ 300 เมตร จากรั้วหรือแนวเขตของสถานศึกษาระดับอาชีวศึกษาหรือสถาบันอุดมศึกษาทั้งของรัฐและเอกชน ฉะนั้นเราต้องสร้างขอบเขตสถานศึกษาก่อน (ขั้นตอนนี้สามารถข้ามได้) คลิกไอคอน เพิ่มรูปหลายเหลี่ยม > คลิกลงบนแผนที่ที่เป็นขอบเขตสถานที่ > กำหนดให้พื้นที่เป็นแบบโปร่งแสง เพื่อแสดงเฉพาะเส้นขอบเขต > คลิก ตกลง จากนั้นจะเริ่มทำการวัดระยะทาง…

การทำแผนที่ Buffer 300 เมตร สถานที่หรือบริเวณห้ามขายเครื่องดื่มแอลกอฮอล์รอบ มอ.

ตอนนี้เป็นกระแสที่กำลังมาแรงเรื่องการจัดระเบียบสถานบันเทิงหรือสถานที่จำหน่ายเครื่องดื่มแอลกอฮอล์ที่ใกล้บริเวณสถานศึกษา วันนี้เลยจะนำเสนอการทำ buffer 300 เมตร ตามประกาศสำนักนายกรัฐมนตรี เรื่อง กำหนดสถานที่หรือบริเวณห้ามขายเครื่องดื่มแอลกอฮอล์รอบสถานศึกษา พ.ศ.2558 โดยห่างจาก มหาวิทยาลัยสงขลานครินทร์ วิทยาเขตหาดใหญ่ เพื่อเราได้ตรวจเช็คว่า ร้านหรือสถานบันเทิงใดบ้างที่อยู่ในเขตพื้นที่ห้ามฯ* * ทั้งนี้เงื่อนไขต่างๆ เป็นไปตามเงื่อนไขในประกาศสำนักนายกรัฐมนตรีฯ โดยใช้ basemaps จากบทความที่แล้ว การติดตั้ง (OpenLayers Plugin) Google Satellite บน QGIS ขั้นตอน เปิดโปรแกรม QGIS > นำเข้าขอบเขต มอ. ด้วยคำสั่ง Add Vector Layer > เลือก shape file ขึ้นมา จะปรากฏ…

การติดตั้ง (OpenLayers Plugin) Google Satellite บน QGIS

Google Maps เริ่มมีบทบาทและได้รับความนิยมในการนำไปใช้ในการแปลภาพถ่ายในด้านทรัพยากรธรรมชาติและสิ่งแวดล้อม หรือรวมไปถึงเรื่องการใช้ประโยชน์ที่ดิน เพื่อนำไปจัดทำฐานข้อมูลภูมิสารสนเทศ หรือ GIS มากยิ่งขึ้น ด้วยความที่เป็นปัจจุบันหรือ update ค่อนข้างที่จะเป็นปัจจุบันหรือใกล้เคียงปัจจุบัน อีกทั้งผู้ใช้สามารถเข้าถึงได้ง่าย ใช้งานง่าย นักภูมิสารสนเทศ หรือนัก GIS หรือคนที่ทำงานด้าน GIS จึงมักจะเลือกที่จะนำมาใช้ในการแปลภาพถ่าย หรือเรียกว่า การสำรวจระยะไกล (Remote Sensing : RS) วันนี้เลยอยากจะนำเสนอ plugin ตัวนึงที่น่าสนใจ นั่นคือ OpenLayers plugin for QGIS 2.8 เพื่อใช้ในการนำเข้า Google Satellite เป็น BaseMaps (แผนที่ฐาน) ในการแปลภาพถ่าย  …

Dual Boot Ubuntu 14.04 & Windows 8.1 in UEFI

เหตุการณ์สมมติจึงใช้ VirtualBox ตั้งค่า VirtualBox ดังภาพ (ขอข้ามวิธีการสร้างเครื่องใหม่บน VirtualBox ไปเลยนะครับ คิดซะว่าชำนาญแล้ว โดยขนาด HDD ที่ต้องการ 100GB เป็นอย่างน้อย) โดยเลือก option ที่เขียนว่า Enable EFI (special OSes Only) และในช่อง  Boot Order: ให้เลื่อนเป็น Optical แล้วตามด้วย Hard Disk แล้วกด OK เมื่อเปิดเครื่องจะได้หน้าจอดังภาพ แสดงว่า BIOS ของเรากลายเป็น UEFI เรียบร้อยแล้ว เลือกแผ่น Ubuntu…

ใช้ google script ทำ mail merge เนื้อหาเมลที่มี pre-filled form URL

จากตอนที่แล้ว “ใช้ google script ทำ mail merge เนื้อหาเมลที่มี link” เรารู้วิธีใส่ link ไปในเนื้อหาเมล ในตอนนี้เราจะมาเปลี่ยน static link เป็น dynamic link (คือ link ที่มีการอ้างชื่อ cell จึงเป็น link ที่เปลี่ยนแปลงไปตามค่าที่อยู่ใน cell) จุดประสงค์ก็เพื่อส่ง link ให้ผู้ที่รับอีเมลกรอกข้อมูลลง google form ที่มีข้อมูลให้บางส่วนแล้ว (pre-filled form) ซึ่งเป็นข้อมูลของผู้รับอีเมลแต่ละคนที่แตกต่างกัน เช่น ให้มีฟิลด์ ชื่อ และ หน่วยงาน…

ใช้ google script ทำ mail merge เนื้อหาเมลที่มี link

ผมใช้ Yet another mail merge ซึ่งเป็น add-on เพื่อส่งอีเมลเรื่องเดียวกันไปยังเพื่อนๆจำนวนหนึ่ง ก็ใช้งานได้ดีมา 5 ครั้งแล้ว แต่พอครั้งหลังนี้ ผมต้องการส่งอีเมลที่ในเนื้อหามี link ให้ผู้ที่รับอีเมลสามารถคลิกเพื่อเปิดอ่านได้ แต่ลองหลายวิธีที่จะส่งด้วยวิธีที่เคยใช้ add-on ตัวนี้ก็จะแสดงเป็นข้อความ ไม่แสดงเป็น link ในอีเมล (อันนี้ต้องบอกก่อนว่า คาดว่าผู้ใช้ส่วนใหญ่ใช้โปรแกรมอีเมลที่มีการแสดงผลมากกว่าข้อความธรรมดา) ค้นหาดูก็พบว่า ต้องเปลี่ยนวิธีทำมาเป็นวิธีเขียน google script เพื่อส่ง mail merge แทน วิธีทำ ดังนี้ 1. สร้าง google sheet ตั้งชื่อ myusers 1.1…

รู้จักกับ Algebraic Specification

สวัสดีครับ หลังจากใช้เวลานานในการคิดว่าจะเขียนอะไรดี ก็คิดได้ว่านำเอาความรู้ที่ได้จากการไปเรียนทบทวนเรื่องวิศวกรรมซอฟต์แวร์มาเล่าสู่กันฟังดีกว่า เรื่องที่จะเล่านี้ก็คือ การเขียน Specification ในรูปแบบหนึ่งซึ่งอาจจะใหม่สำหรับบางคน เรียกว่า Algebraic Specification (ชื่อภาษาไทยว่าอะไร ไปหาเอาเองนะครับ) Algebraic Specification เป็นรูปแบบหนึ่งของ Formal Specification (อย่าเพิ่งงงนะครับ) ในการเขียน specification รูปแบบนี้จะใช้คณิตศาสตร์เข้ามาช่วยเพื่อให้เห็นการติดต่อระหว่าง module หรือ component ที่ชัดเจน แล้วมันต่างจากที่เขียนอยู่ยังไง? ถ้าคุณเขียน specification พรรณนาด้วยภาษามนุษย์ยาวเป็นหน้า ๆ อันนั้นเรียกว่า form-based specification ครับ เป็นวิธีการเขียนที่มนุษย์อ่านแล้วเข้าใจมากกว่า แต่ในการใช้ภาษาเขียนนั้น อาจจะเกิดความกำกวมได้ครับ ประเภทที่คนอ่าน อ่านแล้วงง อ่านแล้วรู้สึกว่ามีหลายความหมายหรือเข้าใจไม่ชัดเจนซึ่งอาจเป็นผลมาจาก…

Icon Font

บทความนี้จะพูดถึงคำ 2 คำ คือ Icon และ Font ที่ใช้งานบนเว็บ ซึ่งทุกคนคงจะรู้จัก Web Icon กันดีอยู่แล้วว่ามันคือรูปภาพขนาดเล็กที่ปรากฏบนหน้าเว็บไซต์ ใช้เป็นสัญลักษณ์แทนความหมายต่างๆ เช่น รูปแว่นขยายมีความหมายถึงการค้นหาข้อมูล รูปแผ่นดิสก์ใช้แทนความหมายของการบันทึกข้อมูล เป็นต้น รูปภาพเหล่านี้ส่วนใหญ่จะเป็นไฟล์นามสกุล .png ซึ่งสามารถทำเป็นรูปที่มีพื้นหลังโปร่งใสได้       ในส่วนของการใช้งาน Font บนเว็บไซต์นั้นสามารถอ่านได้จากบทความ @font-face ครับ กล่าวโดยสรุปแบบง่ายๆ คือ Font เป็นข้อความที่ใช้นำเสนอข้อมูลบนเว็บไซต์ครับ และการพัฒนาเว็บไซต์ในปัจจุบันนี้ได้มีสิ่งที่น่าสนใจเกิดขึ้น เมื่อมีการนำ Icon และ Font มารวมกัน คือการทำ Icon…

@FONT-FACE

การใช้ฟอนต์นำเสนอข้อมูลข่าวสารบนเว็บไซต์ หรือ Web Typography ในยุคแรก นั้น Browser จะเป็นตัวกำหนดว่าจะนำเสนอด้วยฟอนต์อะไร ทำให้การแสดงผลในแต่ละ Browser ไม่เหมือนกัน ต่อมาใน HTML2 ได้มีการเพิ่มแท็ก <font> เข้ามา และใน CSS2 ก็อนุญาตให้เราสามารถกำหนดฟอนต์ได้เอง แต่ปัญหาที่เจอคือฟอนต์ที่เราเลือกใช้จะต้องถูกติดตั้งบนเครื่องฝั่งผู้ใช้ด้วย ดังตัวอย่างการกำหนดรูปแบบ font ด้วย CSS2 ดังนี้ body { font-family: Gill, Helvetica, sans-serif } เมื่อ Web Browser อ่านเจอ CSS ดังกล่าว อันดับแรกก็จะดูว่าฟอนต์ที่ชื่อ Gill…