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

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

Continue Reading →

พอร์ท:โปรแกรมเครื่องมือสำหรับช่างสำรวจฉบับกระเป๋า (Surveyor Pocket Tools) มาใช้บนแมคโอเอส

สำหรับสถิติการใช้งานระบบปฏิบัติทั้งโลกนี้สำหรับคอมพิวเตอร์ตั้งโต๊ะทั้งพีซีและโน๊ตบุ๊คในปี 2020 วินโดส์ทุกรุ่นประมาณ 79% แมคโอเอสทุกรุ่น 15% ลีินุกซ์ทุกดิสโทร 2% ที่เหลืออื่นๆเช่น ChromeOS เมื่อมามองดูแมคโอเอสก็ไม่ได้น้อยอย่างที่ผมคิด โปรแกรมตัวที่แล้วที่ผมพอร์ทมาใช้งานคือโปรแกรมคำนวณวงรอบ Traverse Pro ที่พัฒนาด้วย Lazarus + Free pascal compiler…

Continue Reading →

Update: โปรแกรม Surveyor Pocket Tools เพื่อเตรียมพร้อมสำหรับไลบรารี PROJ รุ่น 7 (PROJ.7)

เนื่องจากในเดิมที Surveyor Pocket Tools โปรแกรมเครื่องมือสำหรับช่างสำรวจฉบับกระเป๋าได้ใช้ไลบรารี PROJ รุ่น 4 หรือเรียกสั้นๆว่า PROJ.4 มาโดยตลอด ในช่วงที่ผ่านมาปีที่แล้ว ปี 2018 ทางโครงการ PROJ ได้รปรับปรุงขนานใหญ่จาก PROJ.5 มาเป็น PROJ.6…

Continue Reading →

การเปลี่ยนแปลงครั้งใหญ่ของไลบรารี Proj.4

วันนี้มาพูดถึงไลบรารี Proj.4 แบบลึกๆกันหน่อย บทความตอนนี้จะเป็นเรื่องโปรแกรมมิ่งนะครับ ไลบรารีตัวนี้ผมใช้เป็นแกนหลักในโปรแกรมรวมเครื่องมือฉบับกระเป๋าสำหรับช่างสำรวจ (Surveyor Pocket Tools) เอามาแปลงพิกัดกับระบบพิกัดที่ใช้กันในโลกนี้ (อาจจะได้ไม่ทั้งหมด) และไม่นานนี้ผมได้นำมาคำนวณ Vertical Datum คือสามารถหาความสูงจีออยด์ได้ ในความเป็นจริงถ้ามี Vertical Grid Shift หลายๆอันสามารถแปลงค่าระดับข้ามไปมาได้แบบที่ใช้ในอเมริกา ก็ใช้มาหลายปีแล้ว…

Continue Reading →

Update : โปรแกรม Surveyor Pocket Tools คำนวณความสูงจีออยด์ จากไฟล์ค่าพิกัดภูมิศาสตร์

ในกรณีที่ต้องการค่าความสูงจีออยด์จากจุดที่มีจำนวนมากตัวอย่างเช่นเป็นสิบจุดขึ้นไป การมานั่งคำนวณทีละจุดคงไม่ใช่เรื่องที่สะดวกนัก ผมปรับปรุงโปรแกรมให้สามารถอ่านไฟล์ค่าพิกัดภูมิศาสตร์ (ละติจูดและลองจิจูด) ในรูปแบบ CSV ที่ใช้ตัวแบ่งด้วยเครื่องหมายคอมมา “,” ค่าพิกัดละติจูดและลองจิจูด ต้องเป็นรูปแบบทศนิยม (degree) เท่านั้น การจัดเรียงค่าพิกัดของให้ขึ้นต้นด้วยค่าลองจิจูดตามด้วยเครื่องหมายคอมม่าและค่าละติจูด ไฟล์ทดสอบ ไฟล์ที่จะมาทดสอบโปรแกรม ผมสร้างจากโค้ดภาษาไพทอน ให้สุ่มจำนวนจุดค่าพิกัดขึ้นมา 10000 จุด โดยให้ค่าพิกัดที่สุ่มอยู่ในกรอบสี่เหลี่ยมนี้คือ…

Continue Reading →

โปรแกรมรวมเครื่องมือฉบับกระเป๋าสำหรับช่างสำรวจ Surveyor Pocket Tools : Update คำนวณพื้นที่และ Scale Factor ด้วย TGM2017

สำหรับการคำนวณ Scale Factor ไม่ว่าจะเป็นจุดเดี่ยว (Point scale factor) หรือแบบเส้นตรงเฉลี่ย (Line scale factor) หรือไม่ว่าจะคำนวณพื้นที่จริงที่ทอนจากพื้นที่ตามระบบพิกัดฉากกริด ก็ตามผมเปิดโอกาสให้ผู้ใช้สามารถเลือกใช้ TGM2017 (Precise Geoid Model of Thailand 2017)…

Continue Reading →

Update : โปรแกรม Surveyor Pocket Tools คำนวณความสูงจีออยด์ TGM2017

มาตามสัญญาที่ผมบอกว่าจะอัพเดท Surveyor Pocket Tools โปรแกรมช่างสำรวจฉบับกระเป๋า ให้สามารถใช้งานคำนวณความสูงจีออยด์ TGM2017 (Thailand Precise Geoid Model 2017) ดั้งเดิมสามารถคำนวณบนโมเดล EGM96 และ EGM2008 เพียงเท่านั้น เปลี่ยนวีธีการคำนวณโดยใช้ไลบรารี Proj4 ดั้งเดิมตอนคำนวณหาความสูงจีออยด์บน…

Continue Reading →

ทดสอบเขียนโปรแกรมไพทอน (Python) บนเครื่องคิดเลข Casio fx-cg50 Prizm

ไพทอนบนเครื่องคิดเลข ช่วงนี้ผมมีโอกาสทำงานใกล้ชิดกับภาคสนาม ทำให้มีโอกาสได้จับและใช้เครื่องคิดเลขมากกว่าปกติ ในเวลาที่ผ่านมาไม่ถึงเดือนผมได้ซื้อเครื่องคิดเลข Casio fx-CG50 Prizm เคสสีขาว ที่ซื้อมาเพราะทราบว่าถ้า update OS เป็นรุ่น 3.20 จะสามารถใช้ ไพทอน (Python) ได้ ก็ขอหมายเหตุสักนิดว่าเป็นไมโครไพทอน (Micropython) ที่ทางทีมงาน…

Continue Reading →

Update: โปรแกรมคำนวณเล็งสกัดย้อนฉบับปรับปรุง (Resection) สำหรับเครื่องคิดเลขเทพ Casio fx 9860G II SD

ผมเขียนเรื่องการคำนวณเล็งสกัดย้อน (Resection) จากตอนก่อนหน้านี้ด้วยอัลกอริทีมใหม่ของ Josep M. Font-Llagunes อ่านได้ที่ ติดปีกเครื่องคิดเลขเทพ Casio fx 9860G II SD ด้วยโปรแกรมภาษาซีบน AddIn ตอนที่ 5 โปรแกรมคำนวณ Resection ด้วยอัลกอริทึ่มสมัยใหม่ ในตอนนี้ผมจะมาเรียบเรียงโปรแกรมด้วยไลบรารี…

Continue Reading →

ติดปีกเครื่องคิดเลขเทพ Casio fx 9860G II SD ด้วยโปรแกรมภาษาซีบน AddIn ตอนที่ 9 โปรแกรมคำนวณหาจุดตัด (Intersection)

งานในด้านสำรวจเป็นงานที่ต้องเกี่ยวข้องกับ Geometry บน plane เป็นส่วนใหญ่ ในบางครั้งอาจจะมีโจทย์ที่ต้องคำนวณหา จุดตัดระหว่างเส้นตรงสองเส้น หรือเส้นตรงกับวงกลม หรือวงกลมกับวงกลม โดยที่เส้นตรงอาจจะทราบค่าพิกัดหัวและท้าย หรือทราบค่าพิกัดเพียงหนึ่งจุดและค่าอะซิมัท ส่วนวงกลมนั้นจะต้องทราบค่าพิกัดจุดศูนย์กลางและรัศมี สูตรการคำนวณไม่ได้ยาก สมัยนี้โจทย์พวกนี้เราใช้โปรแกรมด้าน CAD เขียนแบบช่วยเสียเป็นส่วนใหญ่ อย่างที่ผมเคยบอกออกไปครับ ถ้าช่างสำรวจเรามีโอกาสได้ใช้สมองคิดด้าน geometry บ้างและสามารถใช้เครื่องคิดเลขเป็นตัวช่วย…

Continue Reading →