เคยเกริ่นมาก่อนว่าต้องการเขียนบทความนี้ขึ้นมาเพื่อวงการศึกษาบ้านเราที่สนใจเรื่องโปรแกรมมิ่งบนเครื่องคิดเลขสามารถจะพัฒนาโปรแกรมภาษาซีบน Casio fx-9860G II SD หรือรุ่นที่ใกล้เคียงนี้ได้ โดยที่มีไม่มีข้อจำกัดด้านภาษาโปรแกรมมิ่ง เหมือนกับภาษา casio basic อาจจะส่งผลให้ในอนาคต มีโปรแกรมที่พัฒนาโดยบุคคลากรท่านอื่นๆ เข้ามาสู่วงการนี้มากขึ้น และได้ตัวโปรแกรมงานสำรวจที่มีความหลากหลายและความสามารถมากขึ้นทั้งนี้เพื่อขยายขีดความสามารถโปรแกรมบนเครื่องคิดเลขให้สามารถคิดงานที่ยาก ซับซ้อนได้ บางครั้งเกือบจะเทียบเท่าโปรแกรมที่ใช้งานบนคอมพิวเตอร์ เครื่องมือพัฒนา Software Development Kit (SDK) เครื่องมือตัวนี้เดิมทีสามารถดาวน์โหลดที่เว็บไซต์ตามลิ๊งค์นี้ได้ http://edu.casio.com/support/en/agreement.html#2 ขั้นตอนแรกยอมรับเงื่อนไขแล้วเลื่อนหน้าไปด้านล่างๆจะเห็นเครื่องคิดเลขรุ่น fx-9860 เมื่อคลิกลิ๊งค์ SDK เข้าไปจะเห็นว่าลิ๊งค์เครื่องมือพัฒนาโปรแกรมขาด แต่คู่มือยังสามารถดาวน์โหลดมาอ่านศึกษาได้ ผมอาศัยลงใต้ดินที่มีคนปล่อยให้ดาวน์โหลด (ถ้าใครอยากได้เครื่องมือตัวนี้ก็ขอมาหลังไมค์กันได้ครับ) และดาวน์โหลดโปรแกรม FA-124 มาด้วยอยู่ในหมวด Support…
Tag: เครื่องมือ
การตั้งค่า (Settings) ของ Surveyor Pocket Tools
Surveyor Pocket Tools ออกมาตั้งนานแล้วเพิ่งจะเปิดโอกาสให้ผู้ใช้ได้ตั้งค่าต่างๆเช่นจำนวนทศนิยมของค่าพิกัด จำนวนทศนิยมของระยะทาง ความสูง หรือแม้แต่ของมุม เมื่อเปิดโปรแกรม Surveyor Pocket Tools จะเห็นมีไอคอน Settings รูปเกียร์เพิ่มดังรูป เมื่อดับเบิ้ลคลิกเข้าไปจะเห็นไดอะล็อก จะมีแท็บ Unit, Linear Precision, Angular Precision, Google Maps และ Google Earth เรียงรายกันตามลำดับ เริ่มต้นที่ Unit ออกแบบเพื่ออนาคตสำหรับหน่วยอื่นที่ไม่ใช่หน่วย metric แต่ตอนนี้สนับสนุนหน่วยเมตริกอย่างเดียวครับ…
การออกแบบเส้นโครงแผนที่ความเพี้ยนต่ำ (Low Distortion Projection) ตอนที่ 1
ในตอนที่แล้วได้เกริ่นไปเรื่องเส้นโครงแผนที่ความเพี้ยนต่ำ ที่จะออกแบบประยุกต์มาใช้งานเพื่อให้ผู้ที่ออกแบบโครงการก่อสร้างบนระนาบพิกัดฉากตัวนี้สามารถทำได้ง่าย ไม่ต้องกังวลกับเรื่อง scale factor คือแบบที่ออกแบบบนระบบพิกัดฉากยาวเท่าไหร่เมื่อก่อสร้างแล้วไปวัดในสนามต้องได้เกือบเท่ากัน (แต่ต่างก้นน้อยมากๆ) และที่สำคัญที่สุดคือช่วงก่อสร้าง ช่างสำรวจสามารถวางผัง (Setting out หรือ Layout) โดยที่ไม่ต้องใช้สเกลแฟคเตอร์เข้ามาเกี่ยวข้อง เพราะสเกลแฟคเตอร์ที่ได้จากเส้นโครงแผนที่ความเพี้ยนต่ำจะมีค่าใกล้กับ 1.0 มากๆ จนสามารถละเลยไปได้ เครื่องมือช่วยในการออกแบบเส้นโครงแผนที่ต่ำ ผมเขียนทูลส์ตัวเล็กๆไว้ชื่อ “Init Design LDP” อยู่ในชุด “Surveyor Pocket Tools” เหมือนเดิม ทูลส์ตัวนี้ตามชื่อครับ “Init Design” คือเป็นตัวช่วยในเบื้องต้น…
ปลดพันธนาการ PyQt5 ด้วย PySide2
ตอนนี้ถือว่ามาเล่าสู่กันฟังจากประสบการณ์ เป็นเรื่องโปรแกรมมิ่ง ถ้าไม่สนใจเรื่องโปรแกรมมิ่งก็ผ่านไปได้ครับ PyQt5 กับลิขสิทธิ์แบบ GPL v3 ผมเขียนไพทอนด้วยการใช้ PyQt5 มาได้สักระยะเวลาหนึ่ง น่าจะสองปีกว่าได้ ยอมรับว่าชอบมากๆ ก็ไม่ได้ระแวดระวังเรื่องกฎหมายลิขสิทธิ์เท่าไหร่นัก ลิขสิทธิ์ของ PyQt5 เป็นแบบ GPL v3 ซึ่งสาระโดยรวมๆสามารถเอาไปใช้ได้สองกรณีคือ พัฒนาโปรแกรมแบบเปิดโค๊ด (open source) และแจกจ่ายฟรีพร้อมโค๊ด กรณีนี้ไม่จำเป็นต้องเสียเงินค่าลิขสิทธิ์ แต่ถ้าเป็นกรณีที่สองคือการพัฒนาโปรแกรมเพื่อการค้าและปิดโค๊ด จะต้องเสียค่าลิขสิทธิ์ประมาณ 500US$ ต่อปี ซึ่งไม่น่าจะมากมายนัก ผมเองเอา PyQt5 มาใช้และแจกจ่ายโปรแกรมของผมให้ฟรีก็จริงแต่ปิดโค๊ด…
Surveyor Pocket Tools – ทดสอบโปรแกรมการแปลงพิกัดบน State Plane Coordinate System (SPC)
ในฐานะช่างสำรวจในย่าน AEC บ้านเรา ส่วนใหญ่จะคุ้นเคยกับระบบพิกัดที่ส่วนใหญ่ใช้เส้นโครงแผนที่ Transverse Mercator กันส่วนใหญ่ แต่มาเลเซียนั้นต่างออกไปเนื่องจากมีพื้นที่ที่ยาวเฉียงๆ ทั้งสองพื้นที่คั่นด้วยทะเลจีนใต้ พื้นที่แรกอยู่บนเกาะบอร์เนียวอีกพื้นที่หนึ่งติดกับประเทศไทย ทางมาเลเซียใช้เส้นโครงแผนที่ Oblique Mercator ซึ่งเป็นเส้นโครงแผนที่ค่อนข้างซับซ้อนกว่าอันอื่น เรามาลองไปทัศนศึกษาที่หรัฐอเมริกาดูกัน สหรัฐอเมริกาเป็นประเทศใหญ่ มีระบบพิกัดและเส้นโครงแผนที่ที่หลากหลายมาก ในฐานะช่างสำรวจพอจะเป็นความรู้ประดับบ่ากันไว้นิดๆหน่อยๆ ไม่ถือว่าเหลือบ่ากว่าแรงจนต้องแบกหาม มาทัศนาผ่านทางโปรแกรมแปลงพิกัด Transform Coordinate ที่อยู่ในชุด Surveyor Pocket Tools State Plane Coordinate System (SPC) คือกลุ่มระบบพิกัดของสหรัฐอเมริกาที่รวบรวมระบบพิกัดที่ใช้ในแต่ละพื้นที่หรือรัฐทั้งหมด 124 โซน…
Surveyor Pocket Tools – Update เพิ่มโปรแกรมคำนวณสเกลแฟคเตอร์ (Point Scale Factor) – ตอนที่ 2 (ตอนจบ)
ทดสอบตัวอย่างที่ 2 บนพื้นหลักฐาน Indian 1975 ตัวอย่างนี้จะดึงจากตารางฐานข้อมูลที่ผมเตรียมไว้ หมายเหตุว่าตารางฐานข้อมูลผมบูรณาการใหม่ จากเดิมที่เคยเก็บค่าพิกัดในระบบพิกัดฉากกับระบบภูมิศาสตร์แยกกัน ตอนนี้จับมารวมอยู่ด้วยกัน พร้อมมีฟิลด์ที่เก็บระบบพิกัดด้วย เวลาต้องการใช้งานก็ลากมาคำนวณได้เลย จากรูปด้านล่างคลิกที่ไอคอนรูปหมุด จะได้ตารางข้อมูลที่เก็บค่าพิกัดและค่าระดับ(ถ้ามี) พร้อมทั้งระบบพิกัด เมื่อเปิดมาแล้วผมลากเปลียนขนาดให้ดูใหญ่ว่าแต่ละคอลัมน์มีอะไรบ้าง และเลื่อนตารางไปท้ายสุด ดูบรรทัดที่ไฮไลท์เป็นสีน้ำเงินไว้ เราจะทดสอบโดยใช้ข้อมูลนี้ ระบบพิกัดของจุดนี้อยู่บนพื้นหลักฐาน “Indian 1975” บน UTM zone 48N ดูคอลัมน์ “Point Group” จะเห็นว่าจุดนี้เป็น “Projected Coordinate System”…
Surveyor Pocket Tools – Update เพิ่มโปรแกรมคำนวณสเกลแฟคเตอร์ (Point Scale Factor) – ตอนที่ 1
โปรแกรมนี้มาตามสัญญาที่ผมเคยว่าไว้ จากบทความที่ผมเคยเขียนเรื่องการคำนวณหาพื้นที่บนระบบพิกัดกริด (grid based area) แล้วแปลงพื้นที่บนระบบกริดขึ้นมาบนทรงรี (Ellipsoidal area) แล้วจากพื้นที่บนทรงรีทอนขึ้นไปบนผิวโลก (Surfaced area) ถึงจะได้พื้นที่จริงๆ อ่านได้ตามลิ๊งค์นี้ เนื่องจากสูตรที่คำนวณเกี่ยวพันกับวิชา geodesy อยู่ทำให้การคำนวณซับซ้อนขึ้นมาพอประมาณ ผมเลยจัดทำโปรแกรมคำนวณหาสเกลแฟคเตอร์ให้ใช้งานได้สะดวก ทบทวนเรื่อง Scale Factor รายละเอียดอ่านได้ตามลิ๊งค์ที่ผมเกริ่นไว้ข้างต้น ตอนนี้จะขอรวบรัด เพื่อดูวิธีการใช้งานโปรแกรม เป็นที่ทราบกันดีว่าแผนที่บนระบบพิกัดฉากนั้นจะมีค่า scale factor แต่ละที่ไม่เท่ากัน ค่าเปลี่ยนแปลงแปรผันเป็นระบบ การวัดระยะทางบนแผนที่เมื่อนำไปวางผังบนพื้นที่จริง (setting out) จะต้องมีการหารด้วยสเกลแฟคเตอร์…
Surveyor Pocket Tools – คำนวณพื้นที่ เรื่องธรรมดาที่ไม่ธรรมดา (ตอนที่ 3 ตอนจบ)
ทดสอบข้อมูลค่าพิกัดรูปปิดบนพื้นหลักฐาน Indian 1975 ขอพูดเกี่ยวกับ work flow สักนิด เมื่ออ่านไฟล์รูปปิดจากไฟล์ CSV มาแล้ว โปรแกรมจะคำนวณหาจุด centroid หรือจุดศูนย์ถ่วงของพื้นที่ แล้วจะแปลงพิกัดเป็นค่าพิกัดในพื้นหลักฐาน WGS84 ทั้งค่าพิกัดของรูปปิดและจุดศูนย์ถ่วงด้วย จากนั้นโปรแกรมจะสร้างเส้นโครงแผนที่ Lambert Azimuthal Equal Area โดยการใช้จุดศูนย์ถ่วงเป็น latitude of origin, central meridian แล้วเรียกใช้ไลบรารี Proj4 เพื่อทำการแปลงพิกัดไปยังระบบพิกัดฉากของเส้นโครงแผนที่ LAEA สุดท้ายใช้สูตรผูกเชือกรองเท้า ทำการคำนวณหาพื้นที่ จะได้พื้นที่ออกมา แต่ยังเป็นพื้นที่บนทรงรีอยู่…
Surveyor Pocket Tools – คำนวณพื้นที่ เรื่องธรรมดาที่ไม่ธรรมดา (ตอนที่ 2)
คำนวณพื้นที่ polygon จากไฟล์ในระบบพิกัดฉาก UTM ตอนแรกได้สาธยายเรื่อง Scale factor ของเส้นโครงแผนที่ที่มีผลต่อการรังวัดของช่างสำรวจไปแบบพอหอมปากหอมคอ และท้ายสุดได้ใช้โปรแกรมเปิดไฟล์ CSV ที่เก็บค่าพิกัดแบบภูมิศาสตร์ของรูปปิด polygon คำนวณหาพื้นที่บนระนาบ UTM และพื้นที่บนทรงรี ก็เห็นไปแล้วว่าสองพื้นที่นี้มีความแตกต่างกัน เพราะสืบเนื่องจาก Scale factor เบื้องหลังการทำงานของโปรแกรมก็คือ เมื่ออ่านพิกัดภูมิศาสตร์เข้ามาก็ใช้ไลบรารี Proj4 ทำการแปลงย้อนกลับไปค่าพิกัดฉาก UTM แล้วทำการคำนวณหาพิกัดทั้งสองแบบ ตัวอย่างต่อไปจะอ่านไฟล์ที่เก็บในรูประบบพิกัดฉาก UTM บน WGS84 ที่โปรแกรมที่ทูลส์บาร์ด้านขวา คลิก “Import”…
Surveyor Pocket Tools – คำนวณพื้นที่ เรื่องธรรมดาที่ไม่ธรรมดา (ตอนที่ 1)
Surveyor Pocket Tools เป็นโปรแกรมที่รวบรวมเครื่องมือเล็กเครื่องมือน้อยสำหรับช่างสำรวจ ตอนนี้เพิ่มการคำนวณหาพื้นที่ หลากหลายประเด็นที่จะมาคุยกันว่ามันควรจะง่ายธรรมดาแต่มันไม่ธรรมดาอย่างไร ย้อนรอยสูตรคำนวณหาพื้นที่ Surveyor Pocket Tools รุ่นก่อนหน้านี้ส่วนใหญ่จะเป็นงานคำนวณในงานเซอร์เวย์เรื่อง Advance เช่นงานคำนวณหาระยะทางบน Ellipsoid งานคำนวณหาความสูงของจีออยด์ การแปลงพิกัด ตอนนี้จะกลับมาเรื่องพื้นฐานคือการคำนวณหาพื้นที่ การคำนวณหาพื้นที่ ปกติที่เราคุ้นหูคุ้นตาคือ การเอาค่าพิกัด X,Y ในระบบพิกัดฉากมาวางเรียงกันในแนวนอนหรือแนวตั้งแล้วจัดการเอาค่า X คูนค่า Y สลับแบบผูกเชือกรองเท้า คูนขึ้นเป็นบวก คูนลงเป็นลบ เรียกสูตรนี้ว่า สูตรเชือกผูกรองเท้า (Shoelace’s formula)…