PyMap3D یک کتابخانه متن باز در زبان پایتون برای انجام تبدیل های مختصات سه بعدی و محاسبات ژئودزی است. رابط برنامه نویسی (API) این کتابخانه از نظر ساختار و نحوه استفاده، شباهت زیادی به MATLAB Mapping Toolbox دارد، اما به صورت مستقل توسعه یافته است. این ویژگی باعث می شود کاربرانی که با متلب آشنایی دارند، بتوانند به راحتی از آن در پروژه های پایتون خود استفاده کنند.
در کتابخانه PyMap3D، واحد پیش فرض فاصله بر حسب متر (Meter) و واحد زاویه بر حسب درجه (Degree) است. همچنین توابع وابسته به زمان، از زمان UTC با نوع داده atetime.datetime استفاده می کنند. در صورت نیاز، بسیاری از توابع امکان استفاده از رادیان را نیز از طریق پارامتر deg=False فراهم می کنند.
مزایای استفاده از کتابخانه پایتون PyMap3D
این کتابخانه به صورت پیش فرض از بیضوی مرجع WGS84 استفاده می کند، اما امکان تعریف و استفاده از سایر بیضوی های مرجع نیز وجود دارد؛ بنابراین می توان از آن برای انجام محاسبات روی سایر سیارات یا اجرام آسمانی نیز استفاده کرد.
یکی دیگر از مزایای مهم کتابخانه PyMap3D، پشتیبانی از آرایه های NumPy در هر ابعاد و همچنین سازگاری با کتابخانه هایی مانند AstroPy، Pandas و Xarray است. این قابلیت باعث می شود پردازش حجم بالایی از داده های مکانی و انجام تبدیل های مختصات به صورت برداری (Vectorized) با سرعت و کارایی بالایی انجام شود.
به دلیل سادگی استفاده، دقت مناسب و پشتیبانی از انواع سیستم های مختصات مانند Geodetic، ECEF، ENU، NED، AER و بسیاری از تبدیل های دیگر،PyMap3D یکی از کتابخانه های محبوب برای توسعه نرم افزارهای GIS، ژئودزی، ناوبری ماهواره ای (GNSS)، فتوگرامتری، سنجش از دور و سیستم های ناوبری محسوب می شود.
منبع:
https://geospace-code.github.io/pymap3d
