5

मैं एक उद्देश्य-सी कोको एप्लिकेशन में दो आयामी ग्राफिक्स ड्राइंग के बारे में कई घंटे के लिए documentation पढ़ रहा हूं। कुछ कार्यों के लिए विशिष्ट कई अलग-अलग तकनीकें प्रतीत होती हैं। मेरी समझ यह है कि निम्नलिखित तकनीकें निम्नलिखित चीजें करती हैं। कृपया मुझे सुधारें अगर मैं गलत हूं।कोको 2 डी ग्राफिक्स: क्वार्ट्ज, कोर छवि या कोर एनीमेशन?

  • क्वार्ट्ज 2 डी: स्क्रीन पर आकार, टेक्स्ट और छवियों को चित्रित करने के लिए प्राथमिक पुस्तकालय।
  • कोर ग्राफिक्स: यह क्वार्ट्ज युक्त ढांचे का नाम है। इसका उपयोग क्वार्ट्ज के समानार्थी के रूप में किया जा सकता है।
  • क्वार्ट्जजीएल: क्वार्ट्ज के लिए एक जीपीयू त्वरण मोड जो डिफ़ॉल्ट रूप से सक्षम नहीं है और स्क्रीन पर चीजों को चित्रित करने के लिए necessarily faster नहीं है।
  • ओपनजीएल: सबसे निम्न स्तर की लाइब्रेरी, कोड की अधिक लाइनों की कीमत पर सीधे ग्राफिक्स कार्ड से बात करें। 3 डी ग्राफिक्स के लिए अधिक उपयुक्त है।
  • कोर छवि: छवियों और पाठ को प्रदर्शित करने के लिए एक लाइब्रेरी, लेकिन आकृति प्राइमेटिव बनाने के लिए बहुत कुछ नहीं।
  • कोर एनीमेशन: स्वचालित रूप से एनिमेटिंग ऑब्जेक्ट्स के लिए एक लाइब्रेरी। स्पष्ट रूप से moving large numbers of objects के लिए उपयुक्त नहीं है। न ही continuous animation of objects के लिए।
  • क्विकटाइम: एक लाइब्रेरी जो स्पष्ट रूप से वीडियो के अलावा छवियों और पाठ भी करती है, लेकिन संभवतः आदिम आकारों को चित्रित करने के लिए अच्छा नहीं है।

मैं कुछ विशिष्ट प्रकार के डेटा के लिए ब्राउज़र बनाना चाहता हूं। दृश्य बहुत जटिल नहीं होगा और विशिष्ट स्थानों पर ड्राइंग आयत शामिल होगा। हालांकि, उपयोगकर्ता को बाईं ओर दाईं ओर खींचकर चारों ओर स्थानांतरित करने में सक्षम होना चाहिए और यह आंदोलन द्रव होना चाहिए। यहाँ एक उदाहरण है कि बहुत करीब है है कि मैं क्या करने की कोशिश कर रहा हूँ:

http://jbrowse.org/ucsc/hg19/

क्या ड्राइंग प्रौद्योगिकी आप recommand होगा मैं साथ कोडिंग शुरू?

उत्तर

5

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

नोट: अंत में सबकुछ एपकिट (मैक) या UIKit (आईओएस) और अंततः कोर एनीमेशन द्वारा संभाला जाता है। यदि आप ग्राफिक्स कर रहे हैं, तो आप किसी बिंदु पर कोर एनीमेशन का सामना करेंगे, क्योंकि यह प्रदर्शित सब कुछ प्रबंधित करता है।

नोट: यदि आप कि अधिक डेटा ग्राफ़ रहे हैं, तो आप OpenGL का उपयोग कर सकते हैं, लेकिन फिर भी, जरूरत बहुत ज्यादा नहीं होना चाहिए जब तक आप प्रदर्शित करने, कोने या जटिल visualisations की शायद कई लाखों शुरू करते हैं।