Notice that this calc "y = cnv_h-1 - y" is important to be this way. You
are inverting the coordinates from top-bottom to bottom-top. For clarity
add that offset in a separate calc "y = y + 1 -- offset from the frame
border", for instance.
Best,
Scuri
2017-07-07 10:06 GMT-03:00 Antonio Scuri <[email protected]>:
>
>
> 2017-07-06 15:54 GMT-03:00 Milind Gupta <[email protected]>:
>
>> Also in the last example you sent with the gl.Ortho function on line 26 I
>> had to change the y transformation from y = cnv_h-1 - y
>>
>> to y = cnv_h-2 - y to make it align with the frame border I think
>> because when calculating y the frm_y point is contained in the frame
>> rastersize so it is counted twice.
>>
>>
>> On Thu, Jul 6, 2017 at 11:43 AM, Milind Gupta <[email protected]>
>> wrote:
>>
>>> Hi Antonio,
>>> Is it possible that I just use the Canvas Draw library to draw on
>>> the glcanvasbox?
>>>
>>>
>>> Milind
>>>
>>>
>>> On Mon, Jul 3, 2017 at 11:57 PM, Milind Gupta <[email protected]>
>>> wrote:
>>>
>>>> Hi Antonio,
>>>> Thanks a lot. This is really helpful.
>>>>
>>>> Milind
>>>>
>>>>
>>>> On Thu, Jun 29, 2017 at 8:26 PM, Antonio Scuri <[email protected]
>>>> > wrote:
>>>>
>>>>> BTW,
>>>>>
>>>>> I know that this is just an example, but if you are going to draw
>>>>> primitives in a canvas using elements as reference points, then I would
>>>>> suggest you to use the same coordinate system as the IupGLCanvasBox
>>>>> elements. For instance, using:
>>>>>
>>>>> gl.Ortho(0, width, 0, height, -1, 1)
>>>>>
>>>>> I attached a modified version of the example with this approach.
>>>>> Just to illustrate.
>>>>>
>>>>> Best,
>>>>> Scuri
>>>>>
>>>>>
>>>>> 2017-06-30 0:20 GMT-03:00 Antonio Scuri <[email protected]>:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> You set the frame position to be 10,10. That's where the 10 pixel
>>>>>> offset came from. Experiment to set it to 50,50 and you will see that
>>>>>> difference to increase even more.
>>>>>>
>>>>>> So what's missing is to offset the desired point by the frame
>>>>>> position. For instance:
>>>>>>
>>>>>> local frm_x,frm_y = gframe.position:match("(%d+),(%d+)")
>>>>>> local frm_w,frm_h = gframe.rastersize:match("(%d+)x(%d+)")
>>>>>> local cnv_w,cnv_h = cnv.rastersize:match("(%d+)x(%d+)")
>>>>>>
>>>>>> -- calculate the bottom middle point
>>>>>> local x = frm_x + frm_w/2
>>>>>> local y = frm_y + frm_h
>>>>>>
>>>>>> local cnvx = cnv_w/2
>>>>>> local cnvy = cnv_h/2
>>>>>>
>>>>>> Best,
>>>>>> Scuri
>>>>>>
>>>>>> 2017-06-29 19:31 GMT-03:00 Milind Gupta <[email protected]>:
>>>>>>
>>>>>>> So the main thing is I am trying to use the frame box as a box in a
>>>>>>> flow almost like a flowchart. So I want to connect lines from a frame
>>>>>>> box
>>>>>>> to some other point.
>>>>>>>
>>>>>>> On Thu, Jun 29, 2017 at 3:29 PM, Milind Gupta <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> I have attached a sample code. This has a frame with just a label
>>>>>>>> and 2 lines that are drawn from the center to the the bottom line. The
>>>>>>>> red
>>>>>>>> one gets the bottom from rastersize while the blue one adds an offset
>>>>>>>> of
>>>>>>>> 10.
>>>>>>>>
>>>>>>>> On Thu, Jun 29, 2017 at 1:26 PM, Antonio Scuri <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> This is probably related to the space occupied by the TITLE area
>>>>>>>>> and in which callback you are using to draw. Can't tell you what's
>>>>>>>>> the best
>>>>>>>>> solution with just that information.
>>>>>>>>>
>>>>>>>>> To draw elements aligned with IUP elements inside a
>>>>>>>>> IupGLCanvasBox, I suggest you to use an IupGLSubCanvas element. You
>>>>>>>>> will be
>>>>>>>>> able to draw from 0 to rastersize in its GL_ACTION callback. Use the
>>>>>>>>> layout
>>>>>>>>> positioning to align the element inside the glframe.
>>>>>>>>>
>>>>>>>>> Best,
>>>>>>>>> Scuri
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2017-06-29 17:08 GMT-03:00 Milind Gupta <[email protected]>:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>> I am trying to draw a line from the mid point of the base
>>>>>>>>>> of a glframe. When I get the rastersize of the frame and use that to
>>>>>>>>>> calculate the midpoint of the base the point comes about 10px below
>>>>>>>>>> the
>>>>>>>>>> frame line. How can I remove this margin so that rastersize gives me
>>>>>>>>>> the
>>>>>>>>>> dimension to the frame line. In the x direction there does not seem
>>>>>>>>>> to be
>>>>>>>>>> any margin.
>>>>>>>>>> Or is there a way to accurately find out the margin below
>>>>>>>>>> the frame line and then offset my line coordinate by that margin and
>>>>>>>>>> then
>>>>>>>>>> touch the frame line?
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Milind
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>> ------------------
>>>>>>>>>> Check out the vibrant tech community on one of the world's most
>>>>>>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Iup-users mailing list
>>>>>>>>>> [email protected]
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ------------------------------------------------------------
>>>>>>>>> ------------------
>>>>>>>>> Check out the vibrant tech community on one of the world's most
>>>>>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>>>>>>>> _______________________________________________
>>>>>>>>> Iup-users mailing list
>>>>>>>>> [email protected]
>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------
>>>>>>> ------------------
>>>>>>> Check out the vibrant tech community on one of the world's most
>>>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>>>>>> _______________________________________________
>>>>>>> Iup-users mailing list
>>>>>>> [email protected]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>> ------------------------------------------------------------
>>>>> ------------------
>>>>> Check out the vibrant tech community on one of the world's most
>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>>>> _______________________________________________
>>>>> Iup-users mailing list
>>>>> [email protected]
>>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>>
>>>>>
>>>>
>>>
>>
>> ------------------------------------------------------------
>> ------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Iup-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>
>>
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Iup-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/iup-users