Jump to content

  • Log In with Google      Sign In   
  • Create Account


hbdevelop1

Member Since 28 Nov 2012
Offline Last Active Nov 02 2013 07:21 PM
-----

Topics I've Started

glPopMatrix does not get what was pushed

08 October 2013 - 07:43 AM

Hello,

 

I have noticed that I don't get the same matrix I pushed !!

Does anybody have an idea ?

Thank you

 

Here is the code I am using:

 

#include <assert.h>

 

int DrawGLScene(GLvoid)
{
      rtri+=.2f;
      GLdouble mat5[16],mat6[16];
 
      glMatrixMode(GL_MODELVIEW);
      glLoadIdentity();
 
      glRotatef(rtri,0.0f,1.0f,0.0f);
 
      glGetDoublev(GL_MODELVIEW_MATRIX, (GLdouble *)&mat5);
 
      glPushMatrix();
      glPopMatrix();
 
      glGetDoublev(GL_MODELVIEW_MATRIX, (GLdouble *)&mat6);
      assert(matequal(mat5,mat6));                                                               <----- execution breaks here
}
 
bool matequal(GLdouble *N,GLdouble *M)
{
      if(
            M[0]==N[0] && M[1]==N[1] && M[2]==N[2] && M[3]==N[3] && 
            M[4]==N[4] && M[5]==N[5] && M[6]==N[6] && M[7]==N[7] && 
            M[8]==N[8] && M[9]==N[9] && M[10]==N[10] && M[11]==N[11] && 
            M[12]==N[12] && M[13]==N[13] && M[14]==N[14] && M[15]==N[15]  )
            return true;
 
      return false;
}
 

Basic rotation matrices are clockwise !

10 January 2013 - 08:18 PM

Hello,

I have noticed that the basic 3D rotation matrices in  http://en.wikipedia.org/wiki/Rotation_matrix

rotate vectors clockwise and not counter-clockwise, when the axis about which they occur points toward me !


For example: the following operation yields the vector (0,1,0)
[1      0      0     ]   [0]
[0  cos(90)  sin(90) ] X [0]
[0  -sin(90) cos(90) ]   [1]


Am I missing something ?

Thank you for your help


Quaternions concatenation is the sum of angles ? (2)

28 November 2012 - 08:46 AM

Hello,

With the two quaterions q1=q2=(cos theta/2, sin theta/2, 0, 0)
Does the product q1q2 yield a third quaternion q3 equals (cos theta, sin theta, 0, 0) ?

This is the result I am expecting to have from my quaternion class, but I don't have it.
My expectation is based on the fact that the concatenation of q1 and q2 will yield a quaternion representing both rotations. That means, for me, the sum of the angles each quaternion represents if the rotations are around the same vector.

So, does the product q1q2 yield a third quaternion q3 equal (cos theta, sin theta, 0, 0) ?
Or is there anything wrong with my assumption ?

Thank you in advance

Quaternions concatenation is the sum of angles ?

28 November 2012 - 08:01 AM

Hello,

With the two quaterions q1=q2=(pi/8, 1, 0, 0)
Does the product q1q2 yield a third quaternion q3 equal (pi/4, 1, 0, 0) ?

This is the result I am expecting to have from my quaternion class, but I don't have it.
My expectation is based on the fact that the concatenation of q1 and q2 will yield a quaternion representing both rotations. That means, for me, the sum of the angles each quaternion represents if the rotations are around the same vector.

So, does the product q1q2 yield a third quaternion q3 equal (pi/4, 1, 0, 0) ?
Or is there anything wrong with my assumption ?

Thank you in advance

PARTNERS