When I run this example I get the exact same picture shown here: root.cern/doc/master/eve_2arrow_8C.html
The error you get seems to be related to X11. On which machine are you running ?
Does normal ROOT 2D graphics work ?
I’d first try setting export LIBGL_ALWAYS_INDIRECT=1 on the remote machine.
Are you building root yourself? Then, can you please try inserting:
fDLCache = kFALSE; // Disable display list.
into constructor of TEveArrowGL, here: github.com/root-mirror/root/blo … GL.cxx#L33
Can you try also on some more recent remote OS? There were a bunch of issues on rhel-5 with intel graphics cards and mesa.
thanks for the help. I installed root on my local machine (openSUSE 12.3 x86_64 GNU/Linux) and was able to draw 3d arrows. The problem I have with the remote machine could be due to CentOS being an older version which I am not going to pursue any further. However, I have some more questions:
Once I draw the arrows, how do I save the images as a PNG or some other format?
Is there a way to color the arrows based on their length (say I have hundreds of arrows representing vectors of varying magnitudes and I want a gradient of colors to depict each vector)?
And for colors you can use ROOT’s palette … you just need to provide mapping functions from arrow length to palette index. Look at TColor and TStyle documentation about choosing / defining a palette.
nc = TColor::GetNumberOfColors() – returns number of colors in current palette.
ci = TColor::GetColorPalette(int c) – returns color index for color c; 0 <= c < nc
then eve_arrow->SetMainColor(ci);
I think there is a palette gallery somewhere on ROOT web.