Skip to content

Prajuab Riabroy's Blog

Survey Application – GNSS – UAV – Programing – Python – Dart&Flutter – Rust

Menu
  • Home
  • About Us
  • Survey Application
    • Surveyor Pocket Tools
    • Traverse Pro
    • XSection Plot
    • Geoid Height Pro
    • Spot Fire
    • โปรแกรมงานสำรวจสำหรับเครื่องคิดเลข Casio fx-5800P
    • โปรแกรมงานสำรวจสำหรับเครื่องคิดเลข Casio fx-9860G II SD
  • Download
  • Privacy Policy
Menu

Category: Programming

คอมไพล์และบิวท์ไลบราลี PROJ4 รุ่น 9.3.0 แบบเนทีฟสำหรับแอนดรอยด์

Posted on 21/09/2023

ตอนนี้น่าจะเป็นตอนที่ต่อจาก Dart & Flutter : เส้นทางขวากหนามกับไลบรารี PROJ แบบเนทีฟบนแอนดรอยด์ ครั้งก่อนผมคอมไพล์และบิวท์รุ่น 9.1.0 เพื่อนำไลบรารีมาใช้กับแอพ Ezy Geo Pro สำหรับแอนดรอยด์ ตอนนี้ผ่านมาหนึ่งปีผมต้องการอัพเดทไลบรารี PROJ4 รุ่น 9.3.0 ที่ตัวไลบรารีเองมีการแก้บั๊กซ์และเพิ่มฟีเจอร์ใหม่ๆ ทั้งนี้นำมาคอมไพล์และบิวท์ด้วยเครื่องมือที่อัพเดทใหม่เช่นกันเช่น Android NDK, CMake มาดูกันครับ สุดยอดไลบรารี PROJ สำหรับไลบรารี PROJ หรือชื่อเดิมที่เรียกกัน PROJ4 นั้นเป็นทั้งซอฟท์แวร์และไลบรารีด้าน…

พัฒนาแอพตัวที่ 2 SurveyStar COGO

Posted on 01/06/2023

กำเนิดคำว่า “COGO” คำว่า “COGO” เป็นคำย่อรัสพจน์ที่เกิดจากการนำเอาอักษรย่อของชื่อเฉพาะหรือวลีมารวมกัน โดยคำว่า CO คำแรกย่อมาจาก Coordinate คำที่สอง GO ย่อมาจาก Geometry ย้อนไปในราวปี 1950 – 1960 ศาสตราจารย์ชารล์ แอล มิลเลอร์ (Charles L. Miller) แห่ง MIT ได้พัฒนาโปรแกรมที่คำนวณพิกัดเรขาคณิต เรียกว่า COGO (Coordinate Geometry) เมื่อ 60…

เปิดตัวแอพ “Ezy Geo Pro” บนไอโอเอส

Posted on 11/02/2023

คล้อยหลังการปล่อยแอพ Ezy Geo Pro บนแอนดรอยด์ได้หนึ่งเดือนกว่าๆ และแล้วผมก็พบกับความวิบากเลย สำหรับการเข็นแอพให้ผ่านการรีวิวจากแอปเปิ้ลสโตร์ มีทั้งหยุมหยิมและเรื่องใหญ่ เรื่องใหญ่ๆเช่นจะต้องมี Priavy policy จะต้องมี Term of use ให้ผู้ใช้อ่านได้สะดวก ต้องมีข้อความเตือนผู้ใช้ก่อนจะกด subscribe ผมส่งไปประมาณ 8 ครั้งถึงจะผ่าน ด่านที่โหดที่สุดคือ “Restore purchases” จะช่วยผู้ใช้ที่กรณีเปลี่ยนเครื่องใหม่ หรือติดตั้งแอพใหม่ แล้วต้องการใช้แอพที่เคยซื้อ subscribe คือต้องสามารถคืนสิทธิ์ได้โดยไม่ต้องมีการซื้อเพิ่มแต่อย่างใด เรื่องหยุมหยิมคือห้ามมีคำว่า “Test” อยู่ในแอพเด็ดขาด…

เปิดตัวแอพแรก “Ezy Geo Pro” บนแอนดรอยด์

Posted on 15/01/2023

เปลี่ยนชื่อแอพ ในที่สุดผมก็เข็นครกดันเอาแอพรุ่นแรกสำหรับแอนดรอยด์ออกมาได้สำเร็จ “Ezy Geo Pro” เมื่อวันที่ 9 มกราคม 2023 ที่ผ่านมาก ตัวแอพผ่านการเปลี่ยนชื่อมาแล้วหลายครั้งจาก “Thai Easy Geo” เป็น “A Ezy Geo” สุดท้ายเป็น “Ezy Geo Pro” ครั้งแรกตั้งใจจะทำแอพใช้กันเองในประเทศไทยของเรา แต่ก็มีแฟนเพจเป็นอาจารย์สอนวิชาสำรวจที่สปป.ลาว ที่อยากใช้แอพด้วย ผมก็เลยคิดว่าไหนๆจะทำใช้ที่สปป.ลาวด้วย ก็ทำให้มันใช้ได้ทั้งอาเซียนเลยจะดีกว่า ก็เลยกลายเป็นที่มาของการเปลี่ยนชื่อแอพ เปลี่ยนภาษาและเครื่องมือพัฒนา นอกจากเปลี่ยนชื่อแอพแล้ว ยังมีการเปลี่ยนเครื่องมือการพัฒนา ตอนแรกโครงการนี้เริ่มต้นจาก…

Dart&Flutter: ตกหลุมขวากกับไลบรารี PROJ แบบเนทีฟบน iOS

Posted on 09/11/2022

จะถือว่าเป็นตอนที่สองต่อจาก Dart & Flutter : เส้นทางขวากหนามกับไลบรารี PROJ แบบเนทีฟ ก็ได้ครับ หลังที่ผมปล้ำไลบรารี PROJ แบบเนทีฟตั้งแต่เขาซอร์สโค้ดภาษา C/C++ มาคอมไพล์ให้เป็นสถาปัตยกรรม Arm บนแอนดรอยด์ ไม่ง่ายครับประมาณเดินผ่านขวากหนามพอได้เลือดซิบๆ ตอนนี้มาถึงความโหดของการนำซอร์สโค้ดชุดเดียวกันมาคอมไพล์ให้เป็นสถาปัตยกรรม Arm เช่นเดียวกันแต่ไปรันบน iOS (เคอร์เนลของระบบปฏิบัติการของแอนดรอยด์และ iOS แตกต่างกัน) ถึงตอนนี้ตกไปในหลุมขวากเจ็บกว่าเดินผ่านขวากหนามที่แล้วมา คอมไพล์และบิวท์ไลบรารี Sqlite3 และ PROJ สคริปต์ที่สามารถคอมไพล์ไลบรารีบน iOS มีคนทำให้เสร็จสรรพแยกหมวดหมู่ไว้ดีมาก…

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

Posted on 25/10/2022

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

ไปกันให้สุดซอยกับ Dart & Flutter

Posted on 06/07/2022

ภาษาดาร์ท (Dart) ดาร์ท (Dart) เป็นภาษาที่อายุอานามประมาณบวกลบ 10 ปีได้ถือว่าเป็นภาษาโปรแกรมมิ่งที่ใหม่มาก ที่ประมวลเอาข้อดีของโปรแกรมรุ่นเก่าทั้งหลายทั้งมวล ส่วนฟลัตเตอร์ (Flutter) คือเฟรมเวิร์คสำหรับพัฒนาโปรแกรมแบบ cross platform ของกูเกิ้ลที่เขียนโค้ดครั้งเดียวสามารถนำไปรันได้ทั้ง วินโดส์ แมคโอเอส ลีนุกซ์ รวมทั้ง iOS และแอนดรอยด์ด้วย กีวีเฟรมเวิร์คถึงคราวต้องจากกัน หลังจากที่ลาจาก beeware ได้ไม่นาน สองสามเดือนก่อนหน้านี้ผมใช้เวลาพัฒนาแอพด้วยกีวีเฟรมเวิร์ค (Kivy framework) แต่อนิจจาอายุสั้นเหลือเกินสำหรับผมที่ต้องเท เพราะว่ามีบั๊กมากบางอย่างแก้ไม่ตก เครื่องมือบางอย่างเช่น mapview สำหรับแสดงแผนที่ก็ยังไปไม่สุดซอย…

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

Posted on 27/05/2022

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

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

Posted on 29/09/2021

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

มหาเทพ HP Prime G2 ตอนโปรแกรมคำนวณโค้งดิ่ง (Vertical Curve)

Posted on 02/05/2021

บทความเครื่องคิดเลข HP Prime G2 นับเป็นบทความที่ 3 จากโค้งราบ (Horizontal Curve) มาสู่โค้งสไปรัล (Spiral Curve) และในบทความนี้จะมาปิดที่โค้งดิ่ง (Vertical Curve) สำหรับโค้งทั้งหลายเหล่านี้นำมาประยุกต์ใช้กับงานถนน, รถไฟ และรถไฟฟ้า โค้งดิ่ง (Vertical curve) ที่ผมจะนำเสนอในบทความนี้มี 2 แบบคือแบบโค้งพาราโบลา (Parabola vertical curve) และโค้งแบบวงกลม (Circular vertical curve) ส่วนใหญ่ที่เป็นนิยมมากที่สุดคือโค้งแบบพาราโบลา…

Posts pagination

Previous 1 2 3 … 12 Next
October 2026
M T W T F S S
 1234
567891011
12131415161718
19202122232425
262728293031  
« Sep    

Blog Stats

There was an issue retrieving stats. Please try again later.

Recent Posts

  • เร็วแรงทะลุนรกกับ POCUT (POint Cloud UTils)
  • อัพเดทแอพ “SurveyStar LDP Thailand” เพื่อรับกับยกร่างมาตรฐาน “TH-LDP”
  • ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 2
  • ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 1
  • โปรแกรมอรรถประโยชน์ Pocut (POint Cloud Utils)
  • โปรแกรมแปลงไฟล์แคดข้ามระบบพิกัด (Drawing Transformer)
  • มาตรฐานระบบพิกัดแผนที่แบบแอลดีพีของประเทศไทยสำหรับงานวิศวกรรมและการก่อสร้าง (Thailand Low Distortion Map Coordinate System for Engineering and Construction)
  • ประสบการณ์ใช้งาน Kimi K3 Code เขมือบแบบสยอง
  • สร้างแพลตฟอร์มดู Point Cloud บนเว็บด้วย Potree + CesiumJS — เรื่องเล่าจากสนามบินอู่ตะเภา
  • เมื่อวิศวกรสำรวจคำนวณเรื่องน้ำ – วิเคราะห์ระบบระบายน้ำบริเวณ RESA
  • แนะนำหนังสือ “จีออเดซี” ที่ยอดเยี่ยมของดร.พุทธิพล
  • ESPrtk ทำให้ ESP32 ใช้ไม่ได้? วิธีกู้คืน
  • กรณีศึกษา – คืนชีพ SDL30 ปี 2000 ด้วย ESP32 และแอพทำเอง SDL30 Collector
  • DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
  • รีวิวกูปรี (CoPre2) โปรแกรมประมวลผลไลดาร์จากค่าย CHCNav
  • DIY RTK Base Station (survey-grade) รุ่น V3.2 ด้วย Orange Pi 3 Zero + UM980 ตอนที่ 3
  • DIY RTK Base Station (survey-grade) รุ่น V3 ด้วย Orange Pi 3 Zero + UM980 ตอนที่ 2
  • เส้นทางและไทม์ไลน์ของใบรับรองความรู้ความชำนาญในการประกอบอาชีพวิศวกรรม(สำรวจ)ระดับวิศวกรวิชาชีพ
  • มัดแหนมรวมสามโปรแกรมไปใช้บนสโตร์ Snap ฝั่งลีนุกซ์
  • ปัดฝุ่น Traverse Pro เพิ่มรายละเอียดรายการคำนวณใหม่แบบแนวนอน (Landscape) และธีมมืด
  • DIY RTK Base Station (Survey-Grade) ด้วยชิป UM980 และบอร์ด ESP32 ตอนที่ 1
  • สร้าง NTRIP Caster ด้วย BNC บนคลาวด์แบบ DIY สำหรับ RTK Base Station ใช้ CHCNav P5
  • จับ AI มาไตรกรีฬา สร้างตัวติดตั้ง Snap สำหรับ Surveyor Pocket Tools กับประเด็นแฝงเร้นความเป็นส่วนตัวของผู้ใช้
  • ทดสอบรีด QGIS แบบโหดสัสด้วยชุดข้อมูล Open Building V3 โพลีกอน 74 ล้านหลัง
  • เมื่อ AI เป็นพิษชักจูงผู้ใช้ด้วยข้อมูลผิดๆ

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 122 other subscribers

Archives

  • October 2026
  • September 2026
  • August 2026
  • July 2026
  • May 2026
  • April 2026
  • March 2026
  • January 2026
  • December 2025
  • November 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • July 2024
  • May 2024
  • April 2024
  • January 2024
  • November 2023
  • October 2023
  • September 2023
  • July 2023
  • June 2023
  • May 2023
  • March 2023
  • February 2023
  • January 2023
  • November 2022
  • October 2022
  • September 2022
  • July 2022
  • May 2022
  • December 2021
  • October 2021
  • September 2021
  • August 2021
  • May 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • September 2019
  • August 2019
  • July 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • January 2018
  • November 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • August 2016
  • November 2015
  • March 2015
  • August 2014
  • March 2014
  • January 2014
  • December 2013
  • February 2012
  • January 2012
  • November 2011
  • October 2011
  • August 2011
  • April 2011
  • February 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • June 2010
  • April 2010
  • March 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009

Recent Comments

  • priabroy on DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
  • richard on DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
  • priabroy on ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 1
  • Konexana Yomleuangsa on ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 1
  • เฟือง เถา on DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
©2026 Prajuab Riabroy's Blog | Design: Newspaperly WordPress Theme