[RQt-devel] scale of view for some primitive doesn't work

Tengfei Yin yintengfei at gmail.com
Fri Nov 12 04:32:25 CET 2010


So even when you use view$rotate(), the text direction won't change..is this
also what we expected to see?

and by the way, do you know any way to change to text size, the use case
here is sth like "tag cloud", but I guess I can draw text as path to solve
this problem.

On Thu, Nov 11, 2010 at 6:14 PM, Tengfei Yin <yintengfei at gmail.com> wrote:

>
>
> On Thu, Nov 11, 2010 at 5:39 PM, Michael Lawrence <
> lawrence.michael at gene.com> wrote:
>
>> This is by design. If this didn't work that way, then when the user zoomed
>> into a chromosome, for example, the text labels would get really stretched
>> out. Glyphs are the same way (they're essentially fancy characters). Zooming
>> into a scatterplot should not make the glyphs larger. Circles (after much
>> debate inside my head) behave the same as glyphs. This is because their
>> radius, like in a bubble plot, is derived from something other than the X
>> and Y axes.
>>
>> Shapes however, like rectangles, polygons and paths, are zoomed. You
>> expect a mosaic plot rectangle or a map polygon to scale with the plot.
>>
>>
> This make sense to me, in most cases, i guess people won't expect the
> circle or text to be  zoomed in.
>
> Are you sure you really need the text to scale with the zoom? Deepayan and
>> I decided a long time ago that zooming does not behave like a "magnifying
>> glass." It rescales the plot.
>>
>>
> No, you don't have to change that, it's convenient so far, I am just
> curious why this doesn't work for text and circle, because in other rare
> case, I will draw very small text as labels of axis for one circular track,
> or if I draw points around the circular track, I am still expecting the
> points will be zoomed in when I rescale the view. I guess I am confused the
> "rescale of the view" with the one you defined with Deepayan, but it make
> sense to me.
>
> There are some ways to get around this if you really want to:
>> - Draw the text as a path.
>> - Use the "render" method on the scene to render to a QPicture, rescale
>> that and display it. This is how I imagined someone making a magnifying
>> glass. QPicture is a vectorized representation, so no nasty scaling
>> artifacts are introduced.
>>
>
> Thanks, I think I need to do it in this way, if I really need them to be
> rescaled.  I never try QPicture before, I will take a look at it.
>
>
>> Michael
>>
>> On Thu, Nov 11, 2010 at 3:24 PM, Tengfei Yin <yintengfei at gmail.com>wrote:
>>
>>> Hi
>>>
>>> Here comes another question with text, please see the attached  code
>>> below, only rect could be resized,  when I call v$scale()
>>>
>>> text, circle doesn't change. it happens to visnab, the circular view,
>>> when I scale the view, every thing resize but the text, it's still in the
>>> same size.
>>>
>>> library(qtpaint)
>>> s <- qscene()
>>> test_layer <- qlayer(s,function(layer,painter){
>>>   qdrawRect(painter,30,30,70,70,stroke="blue")
>>>   qdrawCircle(painter,50,50,20,stroke="red")
>>>   qdrawText(painter,"TEST",50,50)
>>> },limits=qrect(0,0,100,100))
>>> v <- qplotView(s)
>>> v$show()
>>>
>>> v$scale(1.5,1.5)
>>>
>>> Thanks
>>>
>>> Tengfei
>>> --
>>> Tengfei Yin
>>> MCDB PhD student
>>> 1620 Howe Hall, 2274,
>>> Iowa State University
>>> Ames, IA,50011-2274
>>> Homepage: www.tengfei.name
>>>
>>>
>>>
>>> _______________________________________________
>>> Qtinterfaces-devel mailing list
>>> Qtinterfaces-devel at lists.r-forge.r-project.org
>>>
>>> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/qtinterfaces-devel
>>>
>>>
>>
>
>
> --
> Tengfei Yin
> MCDB PhD student
> 1620 Howe Hall, 2274,
> Iowa State University
> Ames, IA,50011-2274
> Homepage: www.tengfei.name
>
>
>


-- 
Tengfei Yin
MCDB PhD student
1620 Howe Hall, 2274,
Iowa State University
Ames, IA,50011-2274
Homepage: www.tengfei.name
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/qtinterfaces-devel/attachments/20101111/67891c74/attachment-0001.htm>


More information about the Qtinterfaces-devel mailing list