2010-09-03 6 views
9

मैं खुद को 3 डी ग्राफिक्स के बारे में सिखाने की कोशिश कर रहा हूं, लेकिन मुझे शामिल 3 डी वैक्टरों को देखने में परेशानी हो रही है।3 डी ग्राफिक्स: 3 डी वैक्टर को देखने के लिए सॉफ्टवेयर?

क्या कोई अच्छा सॉफ्टवेयर है जिसका उपयोग मैं 3 डी वैक्टर को देखने के लिए कर सकता हूं?

उदाहरण के लिए, अभी मैं कैमरा परिवर्तन के बारे में सीख रहा हूं, और यह अच्छा होगा अगर मैं आसानी से दाएं/ऊपर/देखो/आंख वैक्टरों को साजिश कर सकता हूं।

मैंने ग्रैपर.एप और gnuplot की कोशिश की है, लेकिन Grapher.app में अंक दर्ज करना बहुत मुश्किल है और gnuplot पहलू अनुपात को लॉक करने में सक्षम नहीं प्रतीत होता है।

उत्तर

8

Visual Python 3 डी विज़ुअलाइज़ेशन के लिए एक सुपर आसान लाइब्रेरी है।

उदाहरण के लिए, एक क्षेत्र दिखाने के लिए और तीर के लिए:

import time, math, visual 

ball = visual.sphere(pos=(0,2,0), radius=1, color=visual.color.red) 
vect = visual.arrow(pos=(2,0,0), axis=(2 ,2,-2)) 

visual.scene.forward = (.1, -.3, -1) # controls the camera view angle 

alt text

यह विंडो अब भी इस तरह के जूमिंग और कैमरा (अर्थात देखने कोण) रोटेशन के रूप में सामान्य माउस अन्तरक्रियाशीलता के सभी, है।

वीपीथन को एनिमेट करना भी आसान है। उदाहरण के लिए, निम्नलिखित तीर घुमाएगा:

da = 2*math.pi/100 
for timestep in range(100): 
    angle = timestep*da 
    vect.axis = (2+2*math.sin(angle), 2*math.cos(angle), -2) 
    time.sleep(.1) 
+0

बहुत बढ़िया - यह वास्तव में अच्छा लगता है। बहुत बहुत धन्यवाद। –

+0

यदि मेरे पास और समस्याएं हैं तो मैं उनके लिए नए प्रश्न खोलूंगा ... लेकिन बस वही चल रहा है जो आपको मिला है, मुझे किसी भी प्रकार की माउस इंटरएक्टिविटी नहीं मिलती है। क्या मुझे कुछ गुप्त सॉस याद आ रही है? –

+0

मैं उबंटू लिनक्स से वीपीथन का उपयोग कर रहा हूं, और वहां मध्य माउस बटन ज़ूम करता है और दायां माउस बटन घुमाता है (और मैंने इसे पाने के लिए कुछ भी विशेष नहीं किया है)। आप कहते हैं कि आपको इनमें से कोई नहीं मिला? आप सेट करने का प्रयास करना चाह सकते हैं: visual.scene.autoscale = 0, visual.scene.userzoom = 1, और visual.scene.userspin = 1 लेकिन मुझे लगता है कि डिफ़ॉल्ट इंटरैक्शन की अनुमति देना है, इसलिए यह आवश्यक नहीं होना चाहिए। – tom10

2

मुझे नहीं पता कि यह Grapher.app या gnuplot से अधिक आसान होगा, लेकिन आप अपना खुद का 3 डी ग्राफिक्स प्रोग्राम लिख सकते हैं जो केवल वैक्टर प्लॉट करता है।

Here's an example in OpenGL जो एक्स, वाई, और जेड अक्ष वैक्टर को खींचता है।

अद्यतन:Here's a Java applet विशेष रूप से कैमरे के परिवर्तनों में वैक्टरों को देखने में आपकी सहायता करने पर केंद्रित है। स्थापना निर्देशों पर ध्यान दें: आपको जावा 3 डी स्थापित करना होगा।

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

उसी साइट पर many components, such as axes है, जिसका उपयोग आप केवल वेक्टर दिखाते हुए एक साधारण एप्लेट सेट अप करने के लिए कर सकते हैं।

+0

हम्म ... मैंने यह नहीं माना था (मैं गैर-इंटरैक्टिव 3 डी ग्राफिक्स से निपट रहा हूं), लेकिन यह एक बुरा विचार नहीं है। धन्यवाद। –

+0

@ जे, आप किससे बात कर रहे थे? – LarsH

+0

@ डेविड वोलेवर, यदि आप कोई ऐप बनाते हैं और इसे खोलते हैं, तो मुझे यकीन है कि यह दूसरों के लिए भी सहायक होगा। –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^