สร้างไฟล์ยีออยด์โมเดล TGM2017 สำหรับ Hi-Target (*.grd) ด้วย Python

ผมได้แปลงแบบจำลองยีออยด์ TGM2017 ไว้หลากหลายรูปแบบเพื่อให้สามารถนำไปใช้กับเครื่องรับสัญญาณ GNSS หรือโปรแกรมไว้หลากหลายเกือบจะครอบคลุมทั้งหมด ไม่นานมานี้มีผู้ใช้ของ Hi-Target แบรนด์จากจีนต้องการยีออยด์ในรูปแบบไฟล์แอสกี้ (*.grd) สังเกตุก่อนหน้านี้ไฟล์แบบจำลองความสูงยีออยด์จะเป็นไบนารีทั้งหมด เหตุผลที่ใช้ไบนารีคือเป็นไฟล์ที่เปิดอ่านไม่ได้ด้วยโปรแกรมทั่วๆไป นอกจากจะใช้ hex editor เพื่อปิดโอกาสไม่ให้ผู้ใช้เข้ามาแก้ไขไฟล์ ด้วยความเผลอเรอ จะทำให้โครงสร้างไฟล์เสียหาย รูปแบบข้อมูลไฟล์แอสกี้ (*.grd) สำหรับไฟล์แอสกี้…

Continue Reading →

Dart & Flutter : เส้นทางขวากหนามกับไลบรารี PROJ แบบเนทีฟบนแอนดรอยด์

เริ่มต้นจากศูนย์ที่ต้นซอยด้วยการพัฒนาแอพด้วยดาร์ทและฟลัตเตอร์ จากที่ยืนหันรีหันขวางแบบยืนงงว่าจะไปทางไหน ตอนนี้ภาษาดาร์ทได้เริ่มซึมซับเข้าสมองมาบ้างแล้ว เริ่มจากคลานตอนนี้พอจะเดินได้แบบเตาะแตะ เคยบอกไปว่าบนฟลัตเตอร์มีไลบรารี Proj4 ชื่อ Proj4Dart แต่มีปัญหาแปลงพิกัดได้คลาดเคลื่อนโดยเฉพาะระบบพิกัดรถไฟความเร็วสูงไทยจีนประมาณ 27 ซม. จนต้องถอยไปตั้งหลักว่าจะเอาไงดีสำหรับการจะใช้ไลบรารี PROJ บนแฟล็ตฟอร์มแอนดรอยด์และไอโอเอส ทางเลือกแรกใช้ปลั๊กอิน “Chaquopy” ทางแรกเท่าที่ลองคือเอาไลบรารีของไพทอนมารันบนฟลัตเตอร์ด้วย plug-in ชื่อ Chaquopy…

Continue Reading →

เมื่อลมพัดหวน : Kivy framework เครื่องมือพัฒนาแอพสำหรับโทรศัพท์มือถือ

จากที่ผมรอคอยโครงการ Beeware มาจะร่วมๆสามปีแล้ว แต่พบว่าความก้าวหน้าของโครงการมีการเคลื่อนไหวน้อยมากเหมือนจะหยุดนิ่งสนิท สำหรับโครงการ Beeware คือโครงการทำเครื่องมือพัฒนาโปรแกรมข้ามแพล็ตฟอร์มเพื่อให้ผู้ใช้งานพัฒนาซอฟท์แวร์ด้วยภาษาไพธอน ให้สามารถใช้งานได้ทุกแพล็ตฟอร์มอย่างหลากหลายโดยเฉพาะบนโทรศัพท์มือถือแอนดรอยด์และ iOS เป็นโครงการเปิดโค้ด (open-source) ที่อาศัยการระดมทุนเพื่อหาเงินให้โครงการสามารถเดินหน้าต่อไปได้ สำหรับ Kivy framework (ภาษาไทยออกเสียงกีวี เป็นคำพ้องเสียง Kiwi ที่เป็นชื่อผลไม้ชนิดหนึ่ง) ผมได้ศึกษาเบื้องต้นเมื่อเกือบจะสิบปีที่แล้ว…

Continue Reading →

เพิ่มธีมมืดใน Surveyor Pocket Tools (มาสายดีกว่าไม่มา)

ตามสมัยนิยมก็ต้องมีธีมมีดว่ากันว่าช่วยกันประหยัดพลังงานของหน้าจอแบบ OLED และถนอมสายตาผู้ใช้ รวมทั้งใช้งานได้ดีในบริเวณที่มีแสงน้อย แต่ก็มีบางงานวิจัยกล่าวว่าการอ่านตัวหนังสือบนพื้นดำนานๆก็ทำให้สายตาล้าได้เหมือนกัน อย่างไรก็ตาม Surveyor Pocket Tools ก็เปิดทางเลือกให้ผู้ใช้สามารถปรับได้ว่าจะเปิดหรือปิดธีมมืด จาก PySide2 สู่ PySide6 ระบบการแสดงผลกราฟฟิค (GUI) จากเดิมที่ผมใช้ PySide2 อิมพลีเมนต์มาจาก Qt5…

Continue Reading →

ภาษาไพทอนสู่เครื่องคิดเลข HP Prime

ปกติเครื่องคิดเลข HP Prime G2 ที่ผมยกให้เป็นเทพของเครื่องคิดเลขด้านวิทยาศาสตร์ทั้งหลาย ผมเขียนโปรแกรมด้วยภาษา HP PPL หรือ Prime Programming Language คล้ายๆปาสคาลแต่บางอย่างคล้ายไพทอน จากทิศทางที่เครื่องคิดเลขระดับไฮเอ็นต์ของ Casio และ TI ได้นำร่องโดยเอาภาษาไพทอนลงเครื่องคิดเลขไปก่อนหน้านี้ โดยจริงๆแล้วไพทอนในเวอร์ชั่นของเครื่องคิดเลขจะถูกออปติไมซ์ให้ใช้กับเครื่องที่มีความเร็วซีพียูที่ช้าและแรมไม่มากนัก ที่ดังที่สุดได้แก่…

Continue Reading →

(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 4 (COGO Selected Serie 4)

ตอนนี้มาถึงโปรแกรมพื้นฐานงานสำรวจชุดที่ 4 (COGO Selected Serie 4) สำหรับเครื่องคิดเลขคาสิโอ fx-9750GIII, fx-9860GIII และ fx-cg50 PRIZM สามรุ่นที่รองรับภาษาไพทอนหรือไมโครไพทอน ได้ในขณะนี้ หาซื้อได้ในเมืองไทย ราคาย่อมเยาที่สุดคือ fx-9750GIII ที่ราคาประมาณสามพันบาท ถ้ามีงานการทำเป็นหลักเป็นแหล่งแล้วไม่น่าแพง บางทีเราซื้อโทรศัพท์มือถือได้ราคาเป็นเรือนหมื่นไม่คิดอะไรมาก…

Continue Reading →

(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 3 (COGO Selected Serie 3)

ตอนนี้มีเครื่องคิดเลขของคาสิโอสามรุ่นที่สามารถโปรแกรมด้วยภาษาไพทอนหรือไมโครไพทอน (MicroPython) ได้คือ fx-9750GIII, fx-9860GIII และ fx-cg50 ทั้งสามรุ่นสามารถหาซื้อได้ไม่ยากนัก ผมซื้อมาทางออนไลน์สะดวกดี สนนราคาเรียงตามรุ่นตอนนี้อยู่ที่ สามพันบาท สี่พันห้าร้อยบาทและเจ็ดพันกว่าบาทตามลำดับ ผมแนะนำให้สำหรับคนที่เบี้ยน้อยหอยน้อยลงทุนกับ fx-9750GIII เพราะราคาไม่แพง คุ้มค่าเกินราคา ทั้งสามรุ่นสามารถโปรแกรมด้วยภาษาคาสิโอเบสิคและภาษาไพทอน แล้วแต่ความถนัด ความชอบ ถ้าโปรแกรมด้วยไพทอนจะสามารถเขียนโปรแกรมที่ยากๆหรือคณิตศาสตร์ซับซ้อนขึ้นมาได้ นี่เป็นเหตุผลสำคัญ…

Continue Reading →

(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 2 (COGO Selected Serie 2)

ตอนนี้มีเครื่องคิดเลขของคาสิโอสามรุ่นที่สามารถโปรแกรมด้วยภาษาไพทอนหรือไมโครไพทอน (MicroPython) ได้คือ fx-9750GIII, fx-9860GIII และ fx-cg50 ข้อดีของภาษาไพทอนนั้นคือง่าย ทรงพลัง แต่ข้อจำกัดของเครื่องคิดเลขคือหน่วยความจำที่มีมาน้อย ดังนั้นบนเครื่องคิดเลขจะมีไลบรารีที่นำมาจากเครื่องคอมพิวเตอร์มาใช้งานได้น้อย ต้องปรับกันพอสมควร ไม่มีไลบรารีเทพแบบ Numpy ที่จะมาใช้คำนวณเรื่องเมตริกซ์ (Matrix) ดังนั้นถ้าใช้เมตริกซ์ก็ต้องออกแรงเขียนโค้ดเองมากหน่อย แต่ยังมี Matplotlib ฉบับย่อที่พอกล้อมแกล้มได้เล็กน้อย…

Continue Reading →

(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 1 (COGO Selected Serie 1)

ไม่กี่วันนี้ผมได้ถอยเครื่องคิดเลข fx-9860GIII มาหนึ่งเครื่องราคาประมาณสี่พันห้าร้อยบาท ส่วนน้องๆในที่ทำงานถอย fx-9750GIII มาหนึ่งเครื่องเช่นเดียวกันแต่ราคาย่อมเยากว่า ราคาเครื่องประมาณสามพันบาท สองรุ่นนี้เขียนภาษาไพทอนได้ ไพทอนที่ลงในเครื่องคิดเลขเป็นไพทอนรุ่นเล็กเรียกว่า ไมโครไพทอน (Micropython) แต่ไมโครไพทอนที่ลงในเครื่องคิดเลข ทางคาสิโอลงไลบรารีมาให้ใช้แค่สองไลบรารีคือ math และ random ที่อยากได้มากคือไลบรารี io ที่สามารถเขียนอ่านไฟล์ได้กลับไม่ลงมาให้ ทำให้การใช้งานจำกัดจำเขี่ยเหมือนโดนมัดมือมัดเท้า…

Continue Reading →

ไพทอนบนเครื่องคิดเลข Casio fx-cg50 Prizm กลับมาวิ่งฉิวเป็นเทพแล้ว

สองปีที่แล้วพอดีผมถอยเครื่องคิดเลขคาสิโอ fx-cg50 Prizm เพราะว่าสนับสนุนภาษาไพทอน อยากลองเขียนไพทอนบนเครื่องคิดเลขดู แต่เนื่องจากไพทอนไม่สามารถเรียกใช้ฟังก์ชั่นในเครื่องคิดเลขต่างๆ เช่นฟังก์ชั่นวาดรูป ฟังก์ชั่นการพล็อทกราฟ คาสิโอเองก็รีบเอาไพทอนมาลงเครื่องคิดเลขเร็วเกินไป ผมเอามาทำที่ทับกระดาษเล่นๆ จนกระทั่งสองปีให้หลังจนบัดนี้ (10 กันยายน 2020) ทางคาสิโอเพิ่งอัพเดทโอเอสของเครื่องคิดเลขจากรุ่น 3.30 มาเป็น 3.40 และได้เพิ่มฟังก์ชั่นการวาดรูปให้กับเครื่องคิดเลขรุ่นนี้ มาลองดูว่าอัพเดทแล้วมีอะไรบ้าง…

Continue Reading →