الرياضيات :: Quaternion.

الرياضيات :: QAUTERNION هي فئة بيرل لتمثيل الأوامرات.
التحميل الان

الرياضيات :: Quaternion. الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • السعر:
  • FREE
  • اسم الناشر:
  • Jonathan Chin
  • موقع ويب الناشر:
  • http://search.cpan.org/~jchin/

الرياضيات :: Quaternion. العلامات


الرياضيات :: Quaternion. وصف

الرياضيات :: المركب المتعدد هي فئة بيرل لتمثيل كواتيرنيون. الرياضيات :: المركب المتعدد هي فئة بيرل لتمثيل quaternions.SYNOPSIS استخدام الرياضيات :: المركب المتعدد QW (slerp)؛ بلدي $ ف = الرياضيات :: Quaternion-> جديد. # جعل وحدة جديدة من أربعة # إصنع دوران حول محور (0،1،0) ي $ Q2 = الرياضيات :: Quaternion-> جديد ({محور => ، زاوية => 0.1}) . بلديv = (1،2،3)؛ # A النواقل. بلديvrotated = $ q2-> rotate_vector (v)؛ # تدويرv حوالي (0،1،0). بلدي $ Q3 = الرياضيات :: :: المركب المتعدد دوران (0.7،2،1،4)؛ # A دوران مختلفة. بلدي $ Q4 = slerp ($ Q2، $ q3،0.5)؛ # محرف التناوب. بلديvinterp = $ Q4.> rotate_vector (v)؛ هذه الحزمة يتيح لك إنشاء والتلاعب كواتيرنيون. A من أربعة هو كائن الرياضية وضعت كنوع من التعميم الأعداد المركبة، ممثلة عادة من قبل مجموعة من أربعة أرقام حقيقية، وغالبا ما يستخدم لتمثيل تناوب في space.See ثلاثي الأبعاد، على سبيل المثال http: // موقع ماثوورلد. wolfram.com/Quaternion.html لمزيد من التفاصيل حول الرياضيات من quaternions.Quaternions يمكن أن تضاف، طرح، وتحجيم تماما مثل الأعداد المركبة أو ناقلات - أنها يمكن أيضا أن تتضاعف، ولكن من أربعة الضرب لا سافر. وهذا يعني، إذا كان لديك كواتيرنيون $ Q1 و Q2 $، ثم في العام $ Q1 * $ Q2! = $ Q2 * $ Q1. ويرتبط هذا لاستخدامها في تمثيل التناوب، والتي أيضا لا commute.If كنت ترغب فقط لتمثيل تناوب ولا يهتمون التفاصيل الرياضية الداخلية، وهذا ينبغي أن يكون كل ما تحتاج إلى معرفته: جميع كواتيرنيون وتسمى كمية من "القاعدة"، على غرار طول المتجه. ويطلق على من أربعة مع القاعدة تساوي 1 "وحدة من أربعة". كل كواتيرنيون التي تمثل التناوب هي وحدة quaternions.If استدعاء جديد () دون أي حجج، وسوف تعطيك من أربعة الوحدة التي لا تمثل الدوران: $ ف = الرياضيات :: Quaternion-> جديد، يمكنك جعل من أربعة وهو ما يمثل دوران بزاوية معينة (بالراديان) حول محور معين: $ qrot = الرياضيات :: Quaternion-> جديد ({محور => 0.1، وزاوية => })؛ قل لديك اثنين من التناوب، $ Q1 و Q2 $، وأنت تريد أن تجعل من من أربعة يمثل دوران $ Q1 تليها $ Q2. بعد ذلك، يمكنك القيام به: $ Q3 = $ Q2 * $ Q1. # تدوير كتبها $ Q1، تليها $ q2.Remember أن هذه ليست هي نفسها كما $ Q1 * $ Q2، والتي سوف عكس ترتيب rotations.If إجراء العديد من العمليات من أربعة التكرارية، والنتيجة قد لا تكون تماما وحدة من أربعة بسبب عدم الدقة العددية. يمكنك التأكد من أي من أربعة لديها وحدة طول، عن طريق القيام: $ unitquat = $ anyquat-> تطبيع، وإذا كان لديك من أربعة التناوب، وكنت ترغب في العثور على مصفوفة 3X3 الذي يمثل دوران المقابلة، ثم:matrix = $ ف -> matrix3x3، وبالمثل، يمكنك إنشاء مصفوفة 4X4 من هذا القبيل كنت تمريرها إلى برنامج OpenGL:glmatrix = $ Q-> matrix4x4، وإذا كان لديك متجه يمثل الاتجاه، وتريد لتدوير متجه من قبل من أربعة $ س: myvector = (0،0،1)؛ # المتجهات لافتا في الاتجاه Z. بلديnewvec = $ Q-> rotate_vector (vector)؛ # جديد direction.Say كنت تستخدم كواتيرنيون لتمثيل اتجاه الكاميرا، وكان لديك اثنين من كواتيرنيون: واحد لتمثيل التوجه ابتداء، وآخر لتمثيل موقف التشطيب. إذا كنت تريد أن تجد كل كواتيرنيون تمثل التوجهات بين، مما يسمح للكاميرا الخاصة بك للانتقال بسلاسة من البداية وحتى النهاية، استخدم slerp () روتين: استخدام الرياضيات :: المركب المتعدد QW (slerp)؛ بلدي ($ qstart، $ qend) = ...؛ # مجموعة $ توين الى 9 نقاط بين بداية ونهاية، الحصري. لبلدي $ ر (1..9) {يا $ توين = slerp ($ qstart، $ qend، 0.1 * $ ر). ... } متطلبات: perl.


الرياضيات :: Quaternion. برامج ذات صلة

cvsstat.

cvsstat هو برنامج بيرل الذي يحول إخراج "حالة السيرة الذاتية" إلى جدول ASCII الذي تم فرزه بعد حالة الملفات. ...

66

تحميل