KStars هو برنامج علم فلك مجاني ومفتوح المصدر ومتعدد المنصات.
فهو يوفر محاكاة رسومية دقيقة للسماء ليلاً، من أي مكان على الأرض، وفي أي تاريخ ووقت. يتضمن العرض ما يصل إلى 100 مليون نجم، و13000 جسم في السماء العميقة، وجميع الكواكب الثمانية، والشمس والقمر، وآلاف المذنبات، والكويكبات، والمستعرات الأعظم، والأقمار الصناعية.
بالنسبة للطلاب والمدرسين، فهو يدعم سرعات محاكاة قابلة للتعديل من أجل عرض الظواهر التي تحدث على فترات زمنية طويلة، والحاسبة الفلكية KStars للتنبؤ بالاقتران، والعديد من الحسابات الفلكية الشائعة. بالنسبة لهواة الفلك، فهو يوفر مخطط مراقبة وأداة تقويم السماء ومحرر مجال الرؤية لحساب مجال رؤية المعدات وعرضها. اكتشف الأشياء المثيرة للاهتمام في أداة "What's up Tonight"، ورسم الرسوم البيانية للارتفاع مقابل الوقت لأي كائن، واطبع مخططات السماء عالية الجودة، وتمكن من الوصول إلى الكثير من المعلومات والموارد لمساعدتك في استكشاف الكون!
يشتمل KStars على مجموعة Ekos للتصوير الفلكي، وهو حل كامل للتصوير الفلكي يمكنه التحكم في جميع أجهزة INDI بما في ذلك العديد من التلسكوبات وأجهزة CCD وDSLRs وأجهزة التركيز والمرشحات وغير ذلك الكثير. يدعم Ekos التتبع الدقيق للغاية باستخدام أدوات قياس الفلك عبر الإنترنت وغير متصل، وقدرات التركيز التلقائي والتوجيه التلقائي، والتقاط صور فردية أو متعددة باستخدام مدير التسلسل القوي المدمج.
حقوق الطبع والنشر (ج) 2001 - 2024 لفريق KStars:
KStars هو برنامج مجاني تم إصداره بموجب ترخيص GNU العام. راجع النسخ للحصول على معلومات ترخيص GPL.
KStars متاح لأنظمة التشغيل Windows وMacOS وLinux. يمكنك تنزيل أحدث إصدار من موقع KStars الرسمي.
في نظام التشغيل Linux، يتوفر لمعظم توزيعات Linux.
أحدث إصدار مستقر هو v3.6.8
الصفحة الرئيسية لـKStars
مستودع KStars Git
دردشة الويب KStars
المنتدى حيث تتم مناقشة KStars غالبًا
يمكن العثور على دليل KStars في دليل $(KDEDIR)/share/doc/HTML//kstars/ الخاص بك. يمكنك أيضًا الوصول إليه بسهولة من قائمة "تعليمات"، أو بالضغط على المفتاح [F1]، أو بزيارة https://docs.kde.org/?application=kstars لسوء الحظ، فهو قديم بعض الشيء. ونحن نرحب بالمتطوعين للمساعدة في تحديثه.
بالإضافة إلى ذلك، هناك ملفات README التالية:
الملف التمهيدي: هذا الملف؛ معلومات عامة README.planetmath: شرح الخوارزميات المستخدمة لحساب مواقع الكوكب README.customize: خيارات التخصيص المتقدمة README.images: معلومات حقوق النشر للصور المستخدمة في KStars. README.i18n: تعليمات للمترجمين
يمكن استنساخ الكود وعرضه وتقديم طلبات الدمج عبر مستودع KStars. إذا كنت جديدًا على مستودعات git البعيدة، فيرجى مراجعة قسم نصائح Git أدناه. ملاحظة: في السابق، استخدم KStars Phabricator لطلبات الدمج الخاصة به. هذا النظام لم يعد قيد الاستخدام.
إذا كنت تخطط لتطوير KStars، فمن المستحسن استخدام IDE. يمكنك استخدام أي بيئة تطوير متكاملة (IDE) من اختيارك، ولكن يوصى باستخدام QtCreator(https://www.qt.io/product) أو KDevelop(https://www.kdevelop.org) لأنها أكثر ملاءمة لتطوير Qt/KDE.
لفتح KStars في QtCreator، حدد ملف CMakeLists.txt في المجلد المصدر KStars ثم قم بتكوين موقع البناء والنوع.
حزم المتطلبات الأساسية
لبناء وتطوير KStars، قد تكون هناك حاجة إلى عدة حزم من التوزيعة الخاصة بك. وهنا قائمة.
التبعيات المطلوبة
GNU Make، دول مجلس التعاون الخليجي - الأدوات الأساسية للبناء
cmake - نظام البناء الذي يستخدمه KDE
مكتبة كيو تي> 5.12.0
عدة أطر كيدي: KConfig، KDocTools، KGuiAddons، KWidgetsAddons، KNewStuff، KI18n، KInit، KIO، KXmlGui، KPlotting، KIconThemes
eigen - مكتبة الجبر الخطي
زليب - مكتبة الضغط
StellarSolver - راجع https://github.com/rlancaste/stellarsolver
التبعيات الاختيارية
libcfitsio - يناسب المكتبة
libindi - الواجهة الموزعة المحايدة للأجهزة للتحكم في المعدات.
com.xplanet
astrometry.net
com.libraw
com.wcslib
libgsl
com.qtkeychain
تثبيت المتطلبات الأساسية
ديبيان/أوبونتو
هناك حاجة إلى الأمر apt-add-respository من أجل libstellarsolver-dev الخاص بـ apt-get. وبدلاً من ذلك، يمكنك تخطي مستودع apt-add، وإزالة libstellarsolver-dev من apt-get، وإنشاء وتثبيت Stellarsolver من https://github.com/rlancaste/stellarsolver.
sudo apt-add-repository ppa:mutlaqja/ppa sudo apt-get -y install build-essential cmake git libstellarsolver-dev libxisf-dev libeigen3-dev libcfitsio-dev zlib1g-dev libindi-dev extra-cmake-modules libkf5plotting-dev libqt5svg5-dev libkf5xmlgui-dev libkf5kio-dev kinit-dev libkf5newstuff-dev libkf5doctools-dev libkf5notifications-dev qtdeclarative5-dev libkf5crash-dev gettext libnova-dev libgsl-dev libraw-dev libkf5notifyconfig-dev wcslib-dev libqt5websockets5-dev xplanet xplanet-images qt5keychain-dev libsecret-1-dev breeze-icon-theme libqt5datavisualization5-dev
فيدورا
yum install cfitsio-devel eigen3-devel stellarsolver-devel cmake extra-cmake-modules.noarch xisf-devel kf5-kconfig-devel kf5-kdbusaddons-devel kf5-kdoctools-devel kf5-kguiaddons-devel kf5-ki18n-devel kf5-kiconthemes-devel kf5-kinit-devel kf5-kio-devel kf5-kjobwidgets-devel kf5-knewstuff-devel kf5-kplotting-devel kf5-ktexteditor-devel kf5-kwidgetsaddons-devel kf5-kwindowsystem-devel kf5-kxmlgui-devel libindi-devel libindi-static qt5-qtdeclarative-devel qt5-qtmultimedia-devel qt5-qtdatavis3d-devel qt5-qtsvg-devel wcslib-devel xplanet zlib-devel
تجميع
افتح وحدة التحكم وقم بتشغيل الأوامر التالية:
mkdir -p ~/Projects/build/kstars cd ~/Projects git clone https://invent.kde.org/education/kstars.git cd build/kstars cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo ~/Projects/kstars make -j16 sudo make install
لتشغيل KStars، ما عليك سوى كتابة kstars في الوحدة الطرفية.
يستخدم KStars الأسلوب الفني لتنسيق جميع ملفات مصدر C++. يرجى التأكد من تطبيق قواعد النمط التالية على أي كود يتم إرساله إلى INDI. في Linux، يمكنك إنشاء ملف ~/.astylerc يحتوي على القواعد التالية:
--style=allman --align-reference=name --indent-switches --indent-modifiers --indent-classes --pad-oper --indent-col1-comments --lineend=linux --max-code-length=124
تدعم بعض IDEs (مثل QtCreator) التنسيق التلقائي للتعليمات البرمجية في كل مرة تقوم فيها بحفظ الملف على القرص.
في نظام التشغيل Linux، قم بتشغيل ما يلي لتثبيت البرامج الضرورية:
sudo apt-get install docbook docbook-utils
مصدر الكتيب موجود في kstars/doc. يمكنك تحرير هذه الملفات وإدراجها في الالتزامات وMRs كما تفعل مع ملفات c++ (انظر أدناه). يمكنك معرفة الترميز بالقدوة، أو التعلم من مستند عبر الإنترنت لـ docbook. بشكل عام، من الأفضل أولاً نسخ دليل kstars/doc بالكامل إلى دليل مؤقت، وتحرير الكتيب وإنشاءه هناك، لأنه إذا قمت بتشغيل meinproc في الدليل المصدر الرئيسي، فسوف تقوم بإنشاء العديد من ملفات .html هناك، وستحتاج إلى ذلك. لا تريد الالتزام بالملفات التي تم إنشاؤها في مستودع git الخاص بك.
cp -pr kstars/doc ~/DOCBOOK cd ~/DOCBOOK meinproc5 index.docbook
ما ورد أعلاه يجب أن ينشئ ملفات html. بعد ذلك، في المتصفح، يمكنك ببساطة فتح DOCBOOK/index.html والتنقل في طريقك إلى الجزء الذي تريده، على سبيل المثال، فقط اكتب شيئًا مشابهًا لهذا في شريط URL في chrome: file:///home/YOUR_USER_NAME/DOCBOOK/ doc/tool-ekos.html قم بإجراء تغييرات على بعض ملفات .docbook في ~/DOCBOOK/*.docbook. قم بإعادة إنشاء ملفات html، وعرض التغييرات في المتصفح، كما كان من قبل. أعاد.
للتحقق من بناء الجملة، قد ترغب في تشغيل:
checkXML5 index.docbook
بمجرد أن تصبح سعيدًا، انسخ ملفاتك المعدلة مرة أخرى إلى kstars/doc، وتعامل مع الملفات المعدلة/الجديدة كالمعتاد باستخدام git، بما في ذلك ملفاتك المعدلة في التزام جديد وفي النهاية طلب دمج جديد.
راجع القسم أدناه، نصائح Git، حول التفاصيل الفنية لكيفية إنشاء طلب دمج. في عملية تقديم الطلب، سوف تحتاج إلى وصف الطلب. يرجى استخدام تنسيق مشابه لهذا الذي يحتوي على أقسام لملخص ما تم القيام به، وما تم تعديله في كل ملف، والملاحظات الأخرى ذات الصلة، وكيفية اختبار التغييرات.
يجب أن تكون على دراية بـ git حتى تتمكن من إجراء تغييرات على KStars، وهذا ليس المكان المناسب لمثل هذا البرنامج التعليمي. هناك العديد من الموارد الممتازة لذلك على شبكة الإنترنت. ومع ذلك، ستقدم الفقرة أدناه نظرة عامة على إحدى الطرق لتقديم طلب دمج، نظرًا لأن لديك بالفعل خبرة كافية في git لاستنساخ KStars، وإنشاء فرع محلي، وتعديل الكود كما تريد، وتنفيذ تغييراتك على فرعك المحلي، واختبار التعليمات البرمجية الخاصة بك بدقة.
إليك أحد الموارد الجيدة لسير عمل fork-branch-git-work لإجراء تغييرات KStars. الخطوات أدناه مستوحاة من تلك الصفحة.
إعداد بيئة KStars git لمرة واحدة.
اصنع هوية KDE الخاصة بك
تسجيل الدخول. انتقل إلى صفحة KStars gitlab وقم بتسجيل الدخول في الزاوية اليمنى العليا.
شوكة المشروع. ثم، لا يزال على صفحة KStars gitlab، انقر فوق FORK في الزاوية اليمنى العليا، لإنشاء شوكة خاصة بك للمشروع.
انسخ عنوان URL الخاص بك. لاحظ عنوان URL للشوكة الخاصة بك. ينبغي أن يكون https://invent.kde.org/YOUR_KDE_NAME/kstars
استنساخ KStars. مرة أخرى على جهاز الكمبيوتر الخاص بك، قم بتشغيل هذه الأوامر
mkdir -p ~/Projects
cd ~/Projects
استنساخ بوابة https://invent.kde.org/YOUR_KDE_NAME/kstars
cd kstars
أضف المنبع الخاص بك. أضف الريبو الرئيسي لـ KStars إلى الريبو المتشعب الخاص بك.
git Remote Add upstream https://invent.kde.org/education/kstars
لقد تم إعدادك الآن.
الخطوات المستخدمة لكل تغيير. بعد الإعداد لمرة واحدة (أعلاه)، يمكن استخدام الخطوات أدناه لكل إرسال ميزة جديدة. باختصار، ستنشئ فرعًا للميزات في مستودعك المحلي، وإجراء التغييرات المطلوبة هناك واختبارها، ودفعها إلى مفترقك، وإنشاء طلب لدمج تفرعك مع مستودع KStars الرئيسي، وانتظر التعليقات، وربما تكرر الأمر على التغييرات على أمل الحصول على موافقة من السلطة.
قم بإنشاء فرع الميزات الخاص بك.
git checkout -b YOUR_BRANCH_NAME
قم بإجراء التغييرات الخاصة بك
ارتكب التغييرات الخاصة بك
بوابة الالتزام -أ
دفع التغييرات إلى الريبو المتشعب الخاص بك.
git Push Origin YOUR_BRANCH_NAME
إنشاء طلب دمج
استخدم متصفحك لزيارة الريبو المتشعب الخاص بك على https://invent.kde.org/YOUR_KDE_NAME/kstars
من المفترض أن ترى خيارًا لإنشاء طلب دمج لـ YOUR_BRANCH_NAME. املأ التفاصيل (انظر القسم أعلاه).
من المفترض أن تكون قادرًا على رؤية عنوان URL الجديد المخصص لطلب الدمج هذا.
إجراء بعض التغييرات. قد تتلقى طلبات لتعديل بعض التعليمات البرمجية الخاصة بك.
إذا كان الأمر كذلك، فما عليك سوى العودة إلى فرعك المحلي وإجراء التغييرات واختبارها.
قم بإجراء تغييراتك على النحو الوارد أعلاه، داخل فرعك، باستخدام: git Commit -a
ادفع تغييرات فرعك إلى الريبو المتشعب الخاص بك كما هو مذكور أعلاه باستخدام: git Push Origin YOUR_BRANCH_NAME
يجب أن تتم إضافة تغييراتك تلقائيًا إلى طلب الدمج الخاص بك. راجع صفحة طلب الدمج للتأكد.
قد تحتاج إلى إعادة صياغة التعليمات البرمجية الخاصة بك - انظر أدناه للحصول على التفاصيل.
إعادة صياغة التغييرات الخاصة بك. قد يقوم الآخرون بإجراء تغييرات على KStars في نفس الوقت الذي تعمل فيه على الميزة الخاصة بك. إعادة التأسيس هي تحديث إصدار KStars الخاص بك وتغييراتك الخاصة لجعله كما لو قمت بتغيير أحدث إصدار من KStars، على سبيل المثال تعكس التغييرات التي تم إجراؤها على قاعدة التعليمات البرمجية التي تم إجراؤها بعد استنساخ نسخة KStars الخاصة بك أو تحديثها. يعد هذا موضوعًا مهمًا يمكنك البحث عنه في Google، ولكن الإرشادات التالية تعمل في معظم الأوقات.
لاحظ أن هذا يتم قبل إنشاء طلب الدمج الخاص بك، عندما تكون أنت الوحيد الذي يرى تغييرات التعليمات البرمجية الخاصة بك. بمجرد بدء طلب الدمج، يصبح الرمز الخاص بك "عامًا" وبدلاً من إعادة التأسيس، يجب عليك اتباع إجراء الدمج أدناه.
cd ~/Projects/kstars git checkout master git pull upstream master # Get the master from the main KStars repo onto your local clone git push origin master # Then push your updated local clone into your forked repo git checkout YOUR_BRANCH_NAME git rebase master git push origin YOUR_BRANCH_NAME -f
إذا كانت هناك تعقيدات في عملية إعادة الأساس، فسيقدم git اقتراحات حول كيفية تصحيح المشكلات.
دمج تغييرات الآخرين. بمجرد إرسال طلب دمج، يمكن للآخرين رؤية (وتحرير) الكود الخاص بك. في هذه المرحلة، على الرغم من أنك لا تزال بحاجة إلى التحديث إلى أحدث إصدار من KStars، فإن إعادة التأسيس تؤدي إلى تدمير معلومات التغيير ويمكن أن تحل محل ما يفعله الآخرون. بدلاً من ذلك، من الأفضل "دمج" الإصدار الحالي من KStars في التعليمات البرمجية الخاصة بك.
cd ~/Projects/kstars git checkout master git pull upstream master # Get the master from the main KStars repo onto your local clone git push origin master # Then push your updated local clone into your forked repo git checkout YOUR_BRANCH_NAME git merge master git push origin YOUR_BRANCH_NAME
الاختلافات عن قسم rebase هي الأمرين الأخيرين: يتم استخدام "git merge master" بدلاً من "git rebase master". كما أن "git Push" لا يستخدم الخيار -f. في المرة الأولى التي تقوم فيها بتشغيل "git Push"، قد يطلب منك git إضافة "set-upstream Origin" إلى الأمر. وفي هذه الحالة، اتبع تلك التعليمات.
إذا اتبعت هذا الإجراء، فستجد "التزام دمج" جديدًا تمت إضافته إلى سجل git الخاص بفرعك.
التغيير القادم الخاص بك . بمجرد اكتمال طلب الدمج الخاص بك (وربما دمجه في KStars)، قد ترغب في المضي قدمًا والتطوير مرة أخرى. سيستخدم التغيير التالي فرع ميزة آخر (جديد)، ويمكن حذف فرع الميزة الأول. قد ترغب في تشغيل ما يلي بانتظام لإبقاء فرعك الرئيسي محدثًا مع KStars.
cd ~/Projects/kstars git checkout master git pull upstream master # Get the master from the main KStars repo onto your local clone git push origin master # Then push your updated local clone into your forked repo
يتم تخزين الاختبارات في مجلد Tests
واستخدام QTest كإطار دعم:
يمكن العثور على الاختبارات الوحدوية في الاختبارات auxiliary
، capture
، fitsviewer
، وما إلى ذلك. وهي تحاول التحقق من سلوك مجموعة صغيرة من الفئات، كما أنها تدعم تطوير الميزات.
يمكن العثور على اختبارات واجهة المستخدم في kstars_lite_ui
و kstars_ui
. يقومون بتنفيذ حالات الاستخدام كما يفعل المستخدم النهائي من واجهة المستخدم، ويركزون على توفر التعليقات المرئية واستقرار الإجراءات.
قرر المكان الذي سيتواجد فيه اختبارك الوحدوي الجديد في Tests
. يجب أن تكون فئات KStars موجودة في مجلد مطابق لأصلها: على سبيل المثال، توجد اختبارات الفئات المساعدة في auxiliary
. ابحث عن مكان مناسب للاختبار الخاص بك، بناءً على جزء النظام الذي يتم اختباره. على سبيل المثال، مجلد اسمه thatkstarscategory
.
أنشئ فئة اختبار وحدوي جديدة، أو انسخ اختبارًا وحدويًا موجودًا والصقه في اختبار وحدوي جديد. تحقق من Tests/kstars_ui_tests/kstars_ui_tests.h
كمثال. قم بتسمية ملفات .h
و .cpp
باسم "test[lowercase kstars class]" (على سبيل المثال "testthatkstarsclass")، وقم بتحديثهما لمطابقة ما يلي:
/* [Author+Licence header] */ #ifndef TESTTHATKSTARSCLASS_H #define TESTTHATKSTARSCLASS_H #include <QtTest> #include <QObject> class TestThatKStarsClass: public QObject { Q_OBJECT public: explicit TestThatKStarsClass(QObject *parent = null); private slots: void initTestCase(); // Will trigger once at beginning void cleanupTestCase(); // Will trigger once at end void init(); // Will trigger before each test void cleanup(); // Will trigger after each test void testThisParticularFunction_data(); // Data fixtures for the test function (Qt 5.9+) void testThisParticularFunction(); // Test function } #endif // TESTTHATKSTARSCLASS_H
/* [Author+Licence header] */ #include "testthatkstarsclass.h" TestThatKStarsClass::TestThatKStarsClass(QObject* parent): QObject(parent) {} TestThatKStarsClass::initTestCase() {} TestThatKStarsClass::cleanupTestCase() {} TestThatKStarsClass::init() {} TestThatKStarsClass::cleanup() {} TestThatKStarsClass::testThisParticularFunction_data() { // If needed, add data fixtures with QTest::AddColumn/QTest::AddRow, each will trigger testThisParticularFunction } TestThatKStarsClass::testThisParticularFunction() { // Write your tests here, eventually using QFETCH to retrieve the current data fixture } QTEST_GUILESS_MAIN(TestThatKStarsClass);
يمكنك استخدام ملف واحد للاحتفاظ بكل من الإعلان والتعريف، ولكنك ستحتاج إلى #include "testthatkstarsclass.moc"
بين الإعلان والتعريف.
قم بتحديث تكوين CMake لإضافة الاختبار الخاص بك. إذا قمت بإنشاء مجلد جديد، فقم بإنشاء ملف CMakeLists.txt
جديد لإضافة الاختبار الخاص بك:
ADD_EXECUTABLE( testthatkstarsclass testthatkstarsclass.cpp ) TARGET_LINK_LIBRARIES( testthatkstarsclass ${TEST_LIBRARIES}) ADD_TEST( NAME ThatKStarsClassTest COMMAND testthatkstarsclass )
اجعل ملف CMakeLists.txt
الموجود في مجلد واحد أعلى في نظام الملفات يتضمن ملف CMakeLists.txt
عن طريق إضافة:
include_directories( ... ${kstars_SOURCE_DIR}/kstars/path/to/the/folder/of/the/kstars/class/you/are/testing ) ... add_subdirectory(thatkstarscategory)
تأكد من إضافة add_subdirectory
الخاص بك في مجموعة التبعية الصحيحة. تتطلب اختبارات Ekos INDI_FOUND
على سبيل المثال.
اكتب اختباراتك تأكد من توثيق السلوك في اختباراتك. إذا وجدت خطأ ما، فلا تقم بإصلاحه، بل قم بوضع علامة عليه باستخدام ماكرو QEXPECT_FAIL
. سيقوم الاختبار بتوثيق السلوك غير الصحيح أثناء وجود الخطأ، وسيفشل عندما يتم إصلاح الخطأ. وبعد ذلك فقط قد يتم تحديث الاختبار. انتبه أيضًا إلى دعم إصدار مكتبة Qt. على سبيل المثال، تتطلب تجهيزات البيانات كيو تي 5.9+.
اتبع نفس الخطوات المتبعة في الاختبارات الوحدوية، ولكن حدد موقع فئات الاختبار الخاصة بك في kstars_ui_tests
.
أحد الأشياء المهمة في اختبارات واجهة المستخدم هو أنها يجب أن تستخدم جميعًا QStandardPaths::setTestModeEnabled(true)
، بحيث يتم تنفيذها باستخدام تكوين مستخدم منفصل يكون فارغًا في البداية. وبالتالي، تتطلب اختبارات واجهة المستخدم إعدادًا أوليًا لتعمل بشكل صحيح، مثل استخدام معالج التكوين الجديد أو إعداد الموقع الجغرافي. لهذا السبب، تحتاج إلى إضافة تنفيذ الاختبار الخاص بك في Tests/kstars_ui_tests/kstars_ui_tests.cpp
، في main()
، بعد تنفيذ TestKStarsStartup
.
الشيء الثاني المهم في QTest بشكل عام هو أن وظائف الاختبار ليس لها رمز إرجاع. لذلك يحتاج المرء إلى كتابة وحدات الماكرو لتحليل التعليمات البرمجية المكررة. ستجد العديد من وحدات الماكرو الموجودة في الملفات الرأسية لفئات اختبار kstars_ui_tests
، لاسترداد الأدوات الذكية، أو للنقر على الأزرار، أو لملء عناصر واجهة مستخدم QComboBox
...
الشيء الثالث المهم في واجهة KStars هو أنها تمزج بين عناصر KDE وQt UI. وبالتالي، تتطلب الاختبارات في بعض الأحيان نقل رمز التحقق إلى مكالمة QTimer::singleShot
، وفي بعض الأحيان يجب أن يكون النقر على الزر غير متزامن حتى يظل الاختبار تحت السيطرة (مربعات الحوار المشروطة). ولحسن الحظ، فإن هذه الاختراقات لا تغير من تنفيذ التعليمات البرمجية التي تم اختبارها.
عند الاختبار، يجب عليك التأكد من أنك تستخدم دائمًا العناصر التي يستطيع المستخدم النهائي استخدامها. بالطبع، إذا كان الاختبار يتطلب إعدادًا لا يمثل في الواقع جزءًا من المكالمات المثيرة للاهتمام، فيمكنك اختراق مكالمة مباشرة. على سبيل المثال، بعض اختبارات Ekos التي تتطلب أن يشير Telescope Simulator إلى موقع محدد تستخدم QVERIFY(Ekos::Manager::Instance()->mountModule()->sync(ra,dec))
. تذكر أنه في بعض الأحيان تحتاج إلى ترك وقت لإصدار الإشارات غير المتزامنة والتقاطها.
جيسون هاريس [email protected]
جاسم مطلق [email protected]
أكارش سمحة [email protected]
أليكسي خودياكوف [email protected]
أرتيم فيدوسكين [email protected]
كارستن نيهاوس [email protected]
كريس رولاند [email protected]
Csaba Kertesz [email protected]
إريك ديجوهانيت [email protected]
هاري دي فالينس [email protected]
هيكو إيفرمان [email protected]
هاي مورفيت [email protected]
جيمس بولين [email protected]
جيروم سونييه [email protected]
جون إيفانز [email protected]
جوزيف ماكجي [email protected]
مارك هولومون [email protected]
مارتن بيسكيرنيج [email protected]
ميدريك بوكوين [email protected]
بابلو دي فيسنتي [email protected]
براكاش موهان [email protected]
رافاي كولاجا [email protected]
ريشاب أرورا [email protected]
روبرت لانكستر [email protected]
ساميكشان بيراجيا [email protected]
توماس كابلمان [email protected]
فالنتين بوتشر [email protected]
فيكتور كاربون [email protected]
فنسنت جاغوت [email protected]
فولفغانغ رايسنبيرجر [email protected]
يوري تشونويفان [email protected]
معظم بيانات الكتالوج جاءت من مركز البيانات الفلكية، الذي تديره وكالة ناسا. الموقع هو: http://adc.gsfc.nasa.gov/
تم تجميع بيانات NGC/IC بواسطة Christian Dersch من قاعدة بيانات OpenNGC. https://github.com/mattiaverga/OpenNGC (ترخيص CC-BY-SA-4.0)
بيانات المستعرات الأعظم مأخوذة من مشروع Open Supernova Catalog الموجود على https://sne.space، يرجى الرجوع إلى الورقة المنشورة هنا: http://adsabs.harvard.edu/abs/2016arXiv160501054G
روابط KStars لمجموعات الصور الممتازة وصفحات HTML التي جمعها الطلاب من أجل استكشاف وتطوير الفضاء، على: http://www.seds.org
ترتبط KStars بصور Digitized Sky Survey عبر الإنترنت، والتي يمكنك الاستعلام عنها على: http://archive.stsci.edu/cgi-bin/dss_form
روابط KStars للصور من مشروع التراث HST، ومن النشرات الصحفية لـ HST: http://heritage.stsci.edu http://oposite.stsci.edu/pubinfo/pr.html
ترتبط KStars بالصور من برنامج المراقب المتقدم في مرصد Kitt Peak الوطني. إذا كنت مهتمًا بالتصوير الفلكي، فقد تفكر في الاطلاع على برنامجهم: http://www.noao.edu/outreach/aop/
تم إدراج الاعتمادات الخاصة بكل صورة مستخدمة في البرنامج في README.images
KStars هو عمل الحب. لقد بدأ الأمر كهواية شخصية بالنسبة لي، ولكن بعد وقت قصير جدًا من نشر الكود لأول مرة على Sourceforge، بدأ في جذب مطورين آخرين. أنا فقط معجب وممتن تمامًا للمطورين المشاركين معي. لا أستطيع أن أطلب طاقمًا أكثر موهبة وودودًا. وغني عن القول أن KStars لن تكون قريبة مما هي عليه اليوم دون جهودهم. لقد صنعنا معًا شيئًا يمكننا أن نفخر به جميعًا.
استخدمنا (في المقام الأول) كتابين كدليل في كتابة الخوارزميات المستخدمة في KStars:
"علم الفلك العملي مع الآلة الحاسبة الخاصة بك" بقلم بيتر دوفيت سميث
"الخوارزميات الفلكية" لجان ميوس
شكرًا لمطوري Qt وKDE الذين جعلت واجهة برمجة التطبيقات الخاصة بهم منقطعة النظير KStars ممكنة. شكرًا أيضًا للجهود الدؤوبة التي تبذلها فرق ترجمة KDE، التي تقدم KStars إلى جمهور عالمي.
شكرًا للجميع في لوحات رسائل KDevelop وعلى irc.kde.org، للإجابة على أسئلتي المتكررة.
شكرًا أيضًا للعديد من المستخدمين الذين أرسلوا تقارير الأخطاء أو تعليقات أخرى.
هل ما زلت تقرأ هذا؟ :) حسنا، هذا كل ما في الأمر. آمل أن تستمتع بـ KStars!
جيسون هاريس [email protected]
القائمة البريدية لتطوير KStars [email protected]
أرسل لنا الأفكار والتعليقات!