[R-sig-Fedora] rgl.snapshot only captures a small portion what's visible in the RGL device window on CentOS 7

Wittner, Ben, Ph.D. Wittner.Ben at mgh.harvard.edu
Mon Jan 11 16:55:41 CET 2016


Dear R-SIG-Fedora,

I'm finding that on CentOS 7, rgl.snapshot (a function in the R package rgl, which provides an R interface to the OpenGL 3-d graphics library) only captures a small portion what's visible in the RGL device window. This does not happen with the same R and rgl versions on CentOS 5.3 (see details below).

The maintainer of rgl, Duncan Murdoch, responded (see below) that the rgl code has not changed in a long time, so it's likely, although not certain, that the problem lies with CentOS 7.

I know very little about graphics, but it seems to me from looking at the rgl source code that the fundamental work of rgl.snapshot is done by calls to glReadBuffer, glPixelStorei, and glReadPixels, which seem to be functions in the OpenGL library.

Can anyone take a look at this or advise me on how to proceed?

Thanks very much in advance.

-Ben

-----Original Message-----
From: Duncan Murdoch [mailto:murdoch.duncan at gmail.com] 
Sent: Friday, January 08, 2016 8:13 PM
To: Wittner, Ben, Ph.D.; r-help at r-project.org
Subject: Re: [R] rgl.snapshot only captures a small portion what's visible in the RGL device window on CentOS 7

On 08/01/2016 4:13 PM, Wittner, Ben, Ph.D. wrote:
> Hello,
>
> As an example, I ran the following code:
>
> library("rgl")
> example(plot3d)
> rgl.snapshot("test.png")
>
> The full plot is visible in the window titled RGL device 1 [Focus], 
> but only a small portion of the upper left part of the plot is visible 
> in test.png (see attached test.png, if the list server attaches it. 
> Otherwise, email me if you like and I'll send it directly to you.)
>
> The output of sessionInfo() is as follows:
>
> R version 3.2.3 (2015-12-10)
> Platform: x86_64-pc-linux-gnu (64-bit) Running under: CentOS Linux 7 
> (Core)
>
> locale:
>   [1] LC_CTYPE=en_US.utf8       LC_NUMERIC=C
>   [3] LC_TIME=en_US.utf8        LC_COLLATE=en_US.utf8
>   [5] LC_MONETARY=en_US.utf8    LC_MESSAGES=en_US.utf8
>   [7] LC_PAPER=en_US.utf8       LC_NAME=C
>   [9] LC_ADDRESS=C              LC_TELEPHONE=C
> [11] LC_MEASUREMENT=en_US.utf8 LC_IDENTIFICATION=C
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
>
> other attached packages:
> [1] rgl_0.95.1441
>
> loaded via a namespace (and not attached):
> [1] tools_3.2.3
>
> In addition to the CentOS 7 machine, I have a CentOS 5.3 machine, which has R 3.0.2 and rgl 0.93.996. I tried the code above on it and it captured the full window in the output of rgl.snapshot (i.e., it worked properly).
>
> To see whether the difference could be attributed to the CentOS version or the R/rgl version, I put R 3.0.2 with rgl 0.93.996 on the CentOS 7 machine and ran the code above. As with the earlier CentOS 7 run, only a small portion of the plot was visible in the output of rgl.snapshot. So it seems the difference is due to a difference in the CentOS versions and not the R/rgl versions.
>
> Thanks in advance for any help.
>

I think you'll need to contact CentOS about this.  That code hasn't changed in rgl in a long time.  It's possible that rgl is wrong, but I'd need more information from them to convince me.

Duncan Murdoch



The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.png
Type: image/png
Size: 968 bytes
Desc: test.png
URL: <https://stat.ethz.ch/pipermail/r-sig-fedora/attachments/20160111/ddb795d6/attachment.png>


More information about the R-SIG-Fedora mailing list