[HOpenGL] (not?) using preservingMatrix
jamin1001
jamin1001 at yahoo.com
Fri Jan 5 14:54:18 EST 2007
My last post was eaten by this "Nabble Forums" web page!
...
Ah, you're right. What didn't compile for me was this additional line after
the preservingMatrix call:
putStr $ "Result matrix: " ++ (show rs) ++ "\n"
Instead, I want to return that value to use outside the call. This is what
I was after, I think:
rs2 <- preservingMatrix $ do
loadIdentity
-- do whatever you want with your your matrix
rs <- get ((matrix $ Just $ Modelview 0)::StateVar(GLmatrix GLdouble))
return (rs)
putStr $ "Result matrix: " ++ (show rs2) ++ "\n"
Now, as for question #2, are there any pre-made ways to transform a vector
with a matrix, or do I have to do it by hand (same goes for cross product!)
(see the post
http://groups.google.com/group/comp.graphics.api.opengl/browse_thread/thread/831ee85b6f97eb15/2de3e6d9c6a1a9e5)
jamin1001 wrote:
>
>
>
> Sebastian Sylvan wrote:
>>
>> On 1/5/07, jamin1001 <jamin1001 at yahoo.com> wrote:
>>>
>>> Right, I buy that. But I don't see how the C line
>>>
>>> glGetFloatv (GL_MODELVIEW_MATRIX, your_matrix_result) ;
>>>
>>> can be done, since it writes a result into your_matrix_result, so I
>>> would
>>> need something like:
>>>
>>> preservingMatrix $ do
>>> loadIdentity
>>> -- do whatever you want with your your matrix
>>> rs <- get ((matrix $ Just $ Modelview 0)::StateVar(GLmatrix
>>> GLdouble))
>>
>> This does indeed compile for me. GHC 6.6.
>>
>> --
>> Sebastian Sylvan
>> +46(0)736-818655
>> UIN: 44640862
>> _______________________________________________
>> HOpenGL mailing list
>> HOpenGL at haskell.org
>> http://www.haskell.org/mailman/listinfo/hopengl
>>
>>
>
>
--
View this message in context: http://www.nabble.com/%28not-%29-using-preservingMatrix-tf2926697.html#a8184711
Sent from the Haskell - HOpenGL mailing list archive at Nabble.com.
More information about the HOpenGL
mailing list