[PD] GEM mapping units to pixels

altern altern2 at gmail.com
Sun May 13 19:58:19 CEST 2007


hi

just tested it under linux and it does work, so this seems to be either 
a windows issue or my laptop graphics card. any ideas?

enrike

cyrille henry(e)k dio:
> hello,
> 
> altern a écrit :
>> hi
>>
>> do you mean something like the example attached?
> yes, exactly.
> 
>> This doesnt work ok for me, the shape should be 10x10 px and is not, 
> a [rectangle 10 10] should be 20 pixel.
> 
>> also x and y pos are dont match with window size. Translating to 400, 
>> 300 should place the rect in top right corner but I get that with only 
>> 320, 190,  so the units are not mapped to pixels
> translating to 400 300 should move the center of the rectangle in the 
> top right corner.
> if your rectangle is 100 100, then you just have to move it 300 200 in 
> order to have the corner of the rectangle in the corner of the gem window.
> 
> your patch work that way here.
> 
> 
>>
>> but maybe i am missing something from what you describe?
>>
>> In opengl to achieve this 2D like-pixels to units effect i would
>> set the perspective to be orthographical with glOrtho command, is 
>> something like this possible in Gem?
> yes, insert an [ortho] after the gemhead
> 
> 
> cyrille
> 
>>
>> thanks!!
>>
>> enrike
>>
>> cyrille henry(e)k dio:
>>> hello,
>>>
>>> i tried with :
>>> dimen 400 300
>>> view 0 0 1000 // 1000 is in order to put the camera far from the view 
>>> point, to reduce space distortion
>>> perspec 0 400 0 300 999 1001 // 999 and 1001 limit the render to 
>>> primitive position is between -1 and 1 (because camera is at 1000)
>>>
>>>
>>> and everything is working as expected.
>>> i just have 1 strange thing : i need to set the [dimen<, [create<  , 
>>> then [reset< and last [view< and [perspec< if i did not do a reset, a 
>>> square is not rendered as a square but a rectangle.
>>>
>>> anyway, it's working.
>>>
>>> cyrille
>>>
>>>
>>> altern a écrit :
>>>> i tried to pass different view values to gemwin. I can see that in 
>>>> order to be able to specify location or with with pixels i should 
>>>> set view to
>>>> view 0 0 2
>>>> but as soon as i set that the shape is not there any more. This is 
>>>> an example i am using to test. If i ser view to
>>>> view 0 0 2.01
>>>> it is almost there but if i set it to 0 0 2 it is not there any 
>>>> more. I guess it might be because it is either beyond the back limit 
>>>> y or behind the camera?
>>>>
>>>> thanks
>>>>
>>>> enrike
>>>>
>>>>
>>>> altern(e)k dio:
>>>>> hi
>>>>>
>>>>> I am trying to map GEM units to pixels so that i can position some
>>>>> videos in the GEM window using pixels values. For this I understand 
>>>>> that
>>>>> i must match the projection values with the window size. So i am doing
>>>>>
>>>>> dimen 400 300
>>>>> perspect 0 400 0 300 1 20
>>>>>
>>>>> and i render all objects at z position 1
>>>>>
>>>>> translateXYZ 100 100 1
>>>>>
>>>>> However I am getting a weird result, the units are far smaller that
>>>>> pixels, so to move a video 100px in the x i need to change it x 
>>>>> position
>>>>> by 300 units or something like this. So I am not sure about what i am
>>>>> doing wrong, I am familiar with OpenGL but i never played too much 
>>>>> with
>>>>> GEM before so I am still getting into it.
>>>>>
>>>>> Another small issue is that I would also like to reverse the Y so that
>>>>> upper left is 0,0 and bottom left would be 0,200 for example, not sure
>>>>> about how to change this. I guess it is to do with the gemwin settings
>>>>> but i dont get it right.
>>>>>
>>>>> thanks
>>>>>
>>>>> enrike
>>>>>
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> PD-list at iem.at mailing list
>>>> UNSUBSCRIBE and account-management -> 
>>>> http://lists.puredata.info/listinfo/pd-list
>>>>
>>>>
>>>
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> #N canvas 393 156 429 320 10;
>> #X obj 84 210 gemwin;
>> #X obj 245 163 gemhead;
>> #X msg 173 82 create \, 1;
>> #X msg 293 106 0 \, destroy;
>> #X floatatom 309 164 5 0 0 0 - - -;
>> #X floatatom 347 164 5 0 0 0 - - -;
>> #X floatatom 288 215 5 0 0 0 - - -;
>> #X floatatom 332 215 5 0 0 0 - - -;
>> #X obj 245 190 translateXYZ 10 10 1;
>> #X msg 215 50 dimen 400 300;
>> #X msg 48 73 view 0 0 1000;
>> #X msg 9 48 perspec 0 400 0 300 999 1001;
>> #X msg 110 99 reset;
>> #X obj 50 -8 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 -1
>> -1;
>> #X obj 50 13 t b b b b b;
>> #X obj 245 234 rectangle 10 10;
>> #X connect 1 0 8 0;
>> #X connect 2 0 0 0;
>> #X connect 3 0 0 0;
>> #X connect 4 0 8 1;
>> #X connect 5 0 8 2;
>> #X connect 6 0 15 1;
>> #X connect 7 0 15 2;
>> #X connect 8 0 15 0;
>> #X connect 9 0 0 0;
>> #X connect 10 0 0 0;
>> #X connect 11 0 0 0;
>> #X connect 12 0 0 0;
>> #X connect 13 0 14 0;
>> #X connect 14 0 11 0;
>> #X connect 14 1 10 0;
>> #X connect 14 2 12 0;
>> #X connect 14 3 2 0;
>> #X connect 14 4 9 0;
>>
> 





More information about the Pd-list mailing list