Rust Geodesy คือไลบรารีสำหรับงานยีออเดซี ตอนที่แล้วผมคอมไพล์โค้ดของ Rust ที่ใช้ไลบรารี Rust Geodesy หรือเรียกสั้นๆว่า RG ถึงแม้ผู้พัฒนา RG จะย้ำว่าไม่ใช่มาแทนไลบรารี PROJ ก็ตาม แต่ผมก็คิดว่าถ้าใช้ภาษา Rust การนำ RG มาใช้แทน…
เส้นโครงความคลาดเคลื่อนต่ำแบบ TM ของโครงการรถไฟความเร็วสูง ไทย-จีน เส้นโครงแผนที่แบบคลาดเคลื่อนต่ำ (Low Distortion Projection: LDP) บ้านเราได้นำมาใช้หลายโครงการแล้ว ยกตัวอย่างคือรถไฟความเร็วสูง ไทย-จีน ซึ่งเป็นแบบเส้นโครงแผนที่แบบ TM ที่เป็นกรณีพิเศษที่นำทรงรีมาขยายขนาดทรงรี WGS84 ทำให้กลายเป็น Datum ตัวใหม่ไปโดยปริยาย ส่งผลให้การคำนวณยุ่งยากซับซ้อน…
เมื่อวันอังคารที่ 21 พย. 2566 ศกนี้ ผมได้เข้าไปสอบทดสอบความรู้ความสามารถทางด้านวิศวกรรมสำรวจที่ทางสภาวิศวกรแห่งประเทศไทยได้จัดขึ้น ซึ่งได้แค่ Certificate นะครับไม่ถึงกว. ผมสอบสามวิชาคือ Surveying and Engineering surveingy (วิชาบังคับ), GNSS & Geodesy (วิชาเลือก) และ…
นานมากแล้วไม่ได้จับภาษาไพทอนอีกเลยเกือบจะร่วมๆสองปีแล้ว เพราะผมใช้เวลาว่างพัฒนาแอพด้วย Dart/Flutter ส่วนใหญ่ขลุกอยู่กับภาษาดาร์ทตลอดมาสองปี ไม่นานมานี้ได้กลับมาใช้ไพทอนอีกครั้ง นั่งงงกับโค้ดไพทอนที่เขียนไว้ว่าตัวเองมาทำอะไรที่นี่ สักพักใหญ่ๆค่อยๆรื้อฟื้นความจำ ในครั้งนี้ใช้ Visual Studio Code (VS Code) เพื่อแก้ไขโค้ดโปรแกรมแทนเดิมๆที่เคยใช้ Pycharm เพราะหลังจากใช้ VS Code ในการพัฒนาแอพด้วยภาษาดาร์ททำให้ติดใจ ชอบในความเบาและรองรับได้หลากหลายภาษามาก…
โครงการ PROJ. ถ้าใช้ในไพทอนจะเรียกว่า PyProj ผมนำมาใช้เป็นไลบรารีหลักใน Surveyor Pocket Tools ถ้าผู้อ่านเคยดาวน์โหลดไปใช้งานจะพบว่าโปรแกรมมีขนาดใหญ่มาก ที่ขนาดใหญ่เพราะว่าต้องขนไฟล์จีออยด์เช่น EGM96, EGM2008 และ TGM2017 ไปใช้งาน เมื่อติดตั้งเสร็จจะพบว่าขนาดโดยรวมมีขนาด 1.1 GB ผมไม่แฮปปี้ตั้งแต่แรกเพราะถ้าอินเทอร์เน็ตไม่ดีการดาวน์โหลดโปรแกรมก็ต้องใช้เวลามาก แถมยังเสียพื้นที่ฮาร์ดดิสค์ในการติดตั้งมากอีกต่างหาก…
ผมคนหนึ่งที่ต้องใช้งาน Docker ผมเอามาคำนวณประมวลผลภาพโดรนด้วยโปรแกรม OpenDroneMap ที่พัฒนาบนลีนุกซ์ แต่สามารถเอามาใช้งานได้ผ่าน Docker ได้และสะดวก ง่ายต่อการใช้งานพอสมควร ส่วน VirtualBox ก็มีความจำเป็นต้องใช้ ผมติดตั้งวินโดส์ 7 บนนี้ เพื่อทดสอบติดตั้งโปรแกรมเช่นโปรแกรมคำนวณวงรอบ Traverse Pro หรือไม่ก็ Surveyor…
ในกรณีที่ต้องการค่าความสูงจีออยด์จากจุดที่มีจำนวนมากตัวอย่างเช่นเป็นสิบจุดขึ้นไป การมานั่งคำนวณทีละจุดคงไม่ใช่เรื่องที่สะดวกนัก ผมปรับปรุงโปรแกรมให้สามารถอ่านไฟล์ค่าพิกัดภูมิศาสตร์ (ละติจูดและลองจิจูด) ในรูปแบบ CSV ที่ใช้ตัวแบ่งด้วยเครื่องหมายคอมมา “,” ค่าพิกัดละติจูดและลองจิจูด ต้องเป็นรูปแบบทศนิยม (degree) เท่านั้น การจัดเรียงค่าพิกัดของให้ขึ้นต้นด้วยค่าลองจิจูดตามด้วยเครื่องหมายคอมม่าและค่าละติจูด ไฟล์ทดสอบ ไฟล์ที่จะมาทดสอบโปรแกรม ผมสร้างจากโค้ดภาษาไพทอน ให้สุ่มจำนวนจุดค่าพิกัดขึ้นมา 10000 จุด โดยให้ค่าพิกัดที่สุ่มอยู่ในกรอบสี่เหลี่ยมนี้คือ…
ผมกลับมาอัพเดทโปรแกรมคำนวณวงรอบ Traverse Pro อีกครั้งหลังจากรุ่นล่าสุดคือรุ่น 2.63 ที่ทิ้งไว้หลายปี ก็ถือโอกาสมาปรับปรุงเพื่อฉลองครบรอบวันเกิดโปรแกรมนี้ 20 ปี ซึ่งเริ่มพัฒนาเมื่อปี 1999 ด้วย Delphi ในขณะนั้น ก่อนที่จะย้ายมาพัฒนาด้วย free pascal + Lazarus ในภายหลัง…
มาถึงตอนที่ 3 ขอนำเสนอโปรแกรมคำนวณหาระยะทางที่สั้นที่สุดบนทรงรีด้วยสูตรการคำนวณของ Vincenty และระยะทางที่สั้นที่สุดบนทรงกลมด้วยสูตรของ Haversine โดยที่กำหนดค่าพิกัดภูมิศาสตร์ (แลตติจูด/ลองจิจูด) มาให้ 2 จุด Geodesic Distance ระยะทางที่สั้นที่สุดบนทรงรี (Ellipsoid) จะเรียกว่า Geodesic distance ผมใช้ไลบรารี GeographicLib ที่พัฒนาโดย Charles…
Spot Fire V2.10 รุ่นล่าสุด และแล้วก็ได้เวลา upgrade โปรแกรมอีกตัว ซึ่งโปรแกรมเขียนตัวเลขค่าระดับส่งเข้า Autocad โดยตรง เป็นโปรแกรมเล็กมากๆ เรียกว่าเป็นทูลส์ (tools) ก็ได้ครับ ขนาดไฟล์ติดตั้ง 1.5 MB แค่นั้นเอง เดิมทีโปรแกรมพัฒนาด้วย Delphi…