ArcGIS के लिए पायथन में GUI का विकास करना


13

मैं आर्कगिस जियोप्रोसेसिंग के लिए पायथन में एक जीयूआई विकसित करना चाहता हूं।

क्या मैं ArcGIS में GUI प्रोग्रामिंग के लिए PyQT का उपयोग कर सकता हूं?

मैंने टिंकर और wxPython का उपयोग करने पर भी विचार किया है।

जवाबों:


21

मैं जियोप्रोसेसिंग के लिए अपने स्वयं के जीयूआई का उपयोग करने की आवश्यकता पर सवाल उठाऊंगा।

एक जियोप्रोसेसिंग टूल का विचार यह है कि यह मानक इंटरफेस (जीपी प्रगति संवाद अगर संदेशों के लिए सक्षम है और एक प्रगति संवाद, जीपी उपकरण डायलॉग पैरामीटर सेट करने और उपकरण चलाने के लिए सक्षम है), आदि से गुजरता है और मैं सुनना चाहता हूं। सभी को दरकिनार करने के लिए मामले का उपयोग करें।

सब सब में: यह सब आप के लिए सबसे अच्छा काम करता है की बात है।

  1. Tkinter में कुछ भी परिष्कृत और चलाने के लिए बदसूरत लेकिन कठिन और अंतर्निहित है, लेकिन अगर आप इसमें UI लिखते हैं, तो यह कहीं भी बहुत ज्यादा चलेगा ।
  2. Wx और PyQT दोनों कार्यात्मक रूप से समतुल्य के करीब हैं , हालाँकि wxPython के उदाहरणों से सीखना बहुत अच्छा है और qt के डेवलपर टूल थोड़े अच्छे हैं। दोनों के एपीआई को देखें और निर्धारित करें कि कौन सा उपयोग करने के लिए आपको अच्छा लग रहा है।

मैं इस बात का उल्लेख करने में विफल रहा कि PyQT आर्कप और अन्य कार्यक्रमों में Wx या Tk की तुलना में अपने स्वयं के इवेंट लूप के साथ कुछ अधिक स्थिर फैशन में काम करता है। Wx और Tk प्रोग्राम एक प्रक्रिया में चलने वाले केवल ui धागे होने की उम्मीद करते हैं और अन्य GUI कार्यक्रमों में इवेंट लूप के साथ दुर्व्यवहार करते हैं।


8

मैं जेसन के साथ हूं - आपको वास्तव में जियोप्रोसेसिंग जीयूआई की आवश्यकता पर विचार करना चाहिए, क्योंकि आर्कगिस जियोप्रोसेसिंग प्रगति संवाद (कम से कम 9.3.1 में, 10 के बारे में नहीं जानते) को अपनी आवश्यकताओं को समायोजित करने के लिए थोड़ा अनुकूलित किया जा सकता है (जोड़कर संदेश, लॉगफ़ाइल्स, प्रगतिकर्ता बार और ऐसे)।

मेरे अनुभव से, टिंकर को समझना बहुत आसान है, लेकिन बहुत ही आउट-ऑफ-द-बॉक्स डिज़ाइन चाहते हैं। इसके अलावा, कई बार यह आर्कगिस (विंडोज़ गायब और इस तरह) के साथ बहुत अच्छी तरह से बातचीत नहीं करता है। एक "सरलीकृत" जीयूआई पुस्तकालय है, जिसे ईएएसजीयूयूआई कहा जाता है जो कि टिंकर पर आधारित है, और यह बहुत अच्छे और नियंत्रित करने में आसान है। मैंने इसके साथ थोड़ा सा खेला और इसे टिंकर की तुलना में बहुत अधिक मित्रवत पाया।


4

मैंने कोशिश की है कि आप क्या करना चाहते हैं, और जेसन का अधिकार - निर्मित उपकरणों का उपयोग करें। यदि आप आर्कमैप प्रक्रिया के अंदर अजगर अजगर विगेट्स के किसी भी सेट के बारे में कोशिश करते हैं और चलाते हैं, तो आप विभिन्न प्रकार की परेशानी में चलेंगे - मैंने कोशिश की है। अपने GUI को बाहर की प्रक्रिया में चलाने के लिए सबसे अच्छा है, और टूल को चलाने के लिए IGeoprocessor का उपयोग करके COM Arcobjects के माध्यम से आर्कमैप पर वापस बात करें। लेकिन अगर आपकी वस्तु बस जियोप्रोसेसिंग टूल और स्क्रिप्ट चला रही है, तो आप वास्तव में अपने टूलबॉक्स टूल के निर्माण और मानक टूल इंटरफेस का उपयोग करने से बेहतर नहीं कर सकते।


2

आप बस .NET या मोनो में GUI का निर्माण कर सकते हैं और फिर प्रक्रिया ऑब्जेक्ट के माध्यम से पायथन स्क्रिप्ट चला सकते हैं ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.