2009-02-03 32 views
24

में quaternion पुस्तकालय quaternion सी/सी ++ में गणना के लिए कोई भी अच्छी पुस्तकालय?सी/सी ++

साइड नोट: कोई अच्छा ट्यूटोरियल/उदाहरण? मैंने इसे Google किया है और पहले कुछ पृष्ठों पर गया है, लेकिन हो सकता है कि आपके पास कंपसीसी या गणित पाठ्यक्रमों से कुछ डेमो/प्रयोगशालाएं हों जिन्हें आप साझा/साझा कर सकते हैं?

धन्यवाद

+5

+1। वे कमाल हैं। – jtbandes

+0

http://cqrlib.sourceforge.net/ – sastanin

उत्तर

9

मैं इरलिच क्वाटरनियन क्लास का प्रशंसक हूं। यह zlib लाइसेंस प्राप्त है और Irrlicht से निकालने के लिए काफी आसान है:

8

आपको बूस्ट के साथ की कोशिश कर सकते - आम तौर पर अच्छी जगह के साथ शुरू करने के लिए। उनके लिए dedicated sublibrary है।

उदाहरण के लिए दस्तावेज और यूनिट परीक्षण जो बूस्ट के साथ आते हैं।

4

डायरेक्टएक्स का अपना अन्य quaternion functions है, जैसा कि कई अन्य 3 डी पुस्तकालय हैं।

मेरी राय में, सीखने का सबसे अच्छा तरीका गणित के माध्यम से कैसे काम करना है। quaternions और conversion पर विकिपीडिया पृष्ठ आपको आवश्यक सभी सूत्रों को शामिल करता है। मैंने उस से अपनी खुद की quaternion लाइब्रेरी लिखी है :) (यह हैस्केल में है, इसलिए मैं इसे पोस्ट करने के लिए परेशान नहीं होगा।)

+0

डायरेक्टएक्स और ग्राफिक्स के साथ अच्छा विचार। सीखना कुछ आकर्षक दृश्य प्रभाव उत्पन्न कर सकता है। – Anonymous

+0

यदि आप पुस्तकालयों को नहीं ढूंढ पा रहे हैं तो यह वास्तव में करना मुश्किल नहीं है। मुझे इसके साथ कोई समस्या नहीं थी और मेरा आईटी गणित प्रशिक्षण बहुत सीमित था (कंप्यूटर विज्ञान व्यवसाय की डिग्री, शुद्ध विज्ञान नहीं)। –

3

quaternions पर प्रलेखन के लिए, 3 डी ग्राफिक्स टेक्स्ट पुस्तकें देखें। वे केवल matrices हैं जो कम्प्यूटेशनल महंगा त्रिकोणमिति के बजाय गुणा का उपयोग कर 3 डी रोटेशन के प्रभाव का उत्पादन करते हैं।

9

वहाँ Eigen, ब्लेंडर में और केडीई प्रोग्राम द्वारा उपयोग गणित और ज्यामिति चीज़ें टेम्प्लेटेड पुस्तकालय है, जिसमें एक एकल .h फ़ाइल में परिभाषित एक slick Quaternion वर्ग है।

जानकारी http://eigen.tuxfamily.org/index.php?title=Main_Page पर और http://www.ohloh.net/p/5393

7

आप अपने खुद के रोल करना चाहते हैं, या वास्तव में कोड के पीछे का गणित (डिबगिंग के लिए उपयोगी) को समझने के लिए चाहते हैं, मैं अत्यधिक Martin Baker's website सलाह देते हैं। यह आदिम दिखता है, लेकिन स्पष्टीकरण पूरी तरह से पालन करने में आसान और आसान है, और वह स्थानों में कोड भी प्रदान करता है।

2

यह वेब, euclideanspace, यदि आप quaternions के साथ काम कर रहे हैं तो बहुत महत्वपूर्ण है। इसमें विभिन्न भाषाओं में चरण, समकक्ष, सरलीकरण, कोड नमूने द्वारा सभी अंकगणितीय कदम हैं। इस पृष्ठ के बाद मैंने अपने अधिकांश कार्यों को अपने आप में बनाया है। मैं पुस्तकालय को डाउनोड करने से पसंद करता हूं। कार्य कार्यक्रम के लिए आसान हैं और आप रास्ते पर सीखते हैं।

एक उदाहरण के रूप में मैं आप इस C++ एक चौका गुणा के बारे में समारोह की जाँच करने के लिए सुझाव: Efficient C++ quaternion multiplication using cv::Mat

2

है graphene जो कि एक साधारण सी/GObject विभिन्न वेक्टर, मैट्रिक्स, चार का समुदाय, आदि की गणना के लिए SIMD अनुकूलन के साथ पुस्तकालय है जो 3 डी ग्राफिक्स में आम हैं। Quaternions के लिए

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