[R-pkg-devel] how to make "r-release-osx-x86_64-mavericks" machine support rgl 3D plots

Duncan Murdoch murdoch.duncan at gmail.com
Thu Oct 8 23:10:26 CEST 2015


On 08/10/2015 4:41 PM, Dr Gregory Jefferis wrote:
> Dear Duncan,
> 
> Could I just revive this one more time
> 
> On 16 Aug 2015, at 17:21, Duncan Murdoch wrote:
> 
>> It is harder for you to implement this yourself, because CRAN frowns 
>> on
>> tests that try to detect whether they're running under CRAN or not.
>>
>> You could put in "if (interactive())" checks around your displays.  If
>> you want to check whether the rgl calls are okay, you could do 
>> something
>> like this:
>>
>> library(rgl)
>> options(rgl.useNULL = TRUE)
> 
> I have a package which imports rgl i.e. rgl is loaded on package 
> startup. A number of examples (not tests) use rgl features and I do not 
> want these to be run on CRAN.
> 
> Is there a way to configure rgl.useNULL to handle this situation?
> 

I don't think so, but I don't think you really want that.

options(rgl.useNULL = TRUE)

doesn't stop rgl from running, it just stops it from trying to display
anything.  So you could put code like

if (!interactive())
  options(rgl.useNULL = TRUE)

into your .onLoad function for your package, and it wouldn't try to open
a display on CRAN, or anywhere else that wasn't interactive.

Duncan



More information about the R-package-devel mailing list