[GRASS5] Re: max res. PPM image dump from NVIZ

Glynn Clements glynn.clements at virgin.net
Mon Aug 30 06:47:40 EDT 2004

Hamish wrote:

> > > I can't reproduce this.
> > 
> > However, I have re-discovered something which could cause problems:
> > 
> > 	# Set the cancel function for drawing
> > 	Nset_cancel_func update
> > 
> > Essentially, this means that Tk's event-processing code will be called
> > repeatedly throughout the drawing process. If this results in the Togl
> > widget receiving configure/expose/etc events, Togl will reinstate the
> > original (on-screen) GLX context, with unpredictable results.
> > 
> > Try commenting out the above line (in nviz2.2_script), and see if the
> > problems still occur.
> Still occurs after commenting..

Can you tell whether Tcl/Tk is using multiple threads? That could
cause problems (unless the OpenGL code is all being run within the
same thread, it will cause problems, as each thread will have its own
current GLX context.

One possible solution is to undefine both HAVE_PBUFFERS and
HAVE_PIXMAPS in config.h. In that case, do_zoom.c will just use the
existing window (and its associated GLX context).

Other than that, unless someone who can actually reproduce the error
is willing and able to debug it, it's likely to remain broken.

> (also that change has latency issues, cutting into usability badly for me)

There isn't any solution to that, other than to expend a great deal of
effort re-writing NVIZ (and possibly OGSF) so that it can actually
cope with arbitrary events being handled in the middle of rendering.

Glynn Clements <glynn.clements at virgin.net>

More information about the grass-dev mailing list