Re: the best way to do a 'gl_putboxpartmask'

Search this archive.

From: Russell Marks (russell.marks@dtn.ntl.com)
Date: Thu 23 Mar 2000 - 15:15:12 IST


> <HTML><HEAD>
> <META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
> <META content="MSHTML 5.00.2614.3500" name=GENERATOR>
> <STYLE></STYLE>
> </HEAD>
> <BODY bgColor=#ffffff>
> <DIV><FONT face=Arial size=2>Hi,</FONT></DIV>

Hi. How about turning off HTML mail before posting to a mailing list?
Or, better, just turning it off for good? ;-)

> Can anyone suggest the best (fastest/most efficient) way to do a
> masked gl_putboxpart operation? There's no inbuilt function for it, so
> I assume you'd need to copy the area in question from the larger
> bitmap into a separate memory area and then call gl_putboxmask.
> 
> Is this right?

An alternative approach is to use a separate 1-pixel-high
gl_putboxmask() for each pixel line. This avoids having to copy twice,
which may make it faster despite the multiple calls.

Here's roughly what I mean (untested):

for(i=0;i<src_h;i++)
  gl_putboxmask(dest_x,dest_y+i,src_w,1,
  	src_pixmap+((src_y+i)*src_pixmap_real_width+src_x)*bytes_per_pixel);

Obviously you could optimise this somewhat by keeping a current
pointer for the last arg rather than recalculating it each time.

-Rus.


This archive was generated by hypermail 2.1.4 : Wed 21 Jan 2004 - 22:10:23 IST