paquette@cpsc.ucalgary.ca (Trevor Paquette) (06/27/90)
Is there a cheap and dirty way to get XOR mode when doing a draw(), sboxf() or even bgnline()..endline()? I am porting an application that uses alot of the sunview 'PIX_SRC|PIX_DST' modes when writing to the screen. As far as I know about the sgi there is no 'built in' XOR mode for doing lines and/or block writes. I really don't want to write my own bres' algorithm for lines, checking for pixels along the way and XORing them myself, nor do I want to do that for each pixel in a block write. Can this be done easily? or should have have another go through the manuals and see what I missed. Trev ___________________________________________/No man is a failure who has friends Trevor Paquette ICBM:51'03"N/114'05"W|I accept the challange, body and soul, {ubc-cs,utai,alberta}!calgary!paquette|to seek the knowledge of the ones of old paquette@cpsc.ucalgary.ca | - engraved on the Kersa Blade of Esalon
blbates@AERO4.LARC.NASA.GOV ("Brent L. Bates AAD/TAB MS361 x42854") (06/27/90)
Perhaps you need to use the alpha planes. (If you have them) -- Brent L. Bates NASA-Langley Research Center M.S. 361 Hampton, Virginia 23665-5225 (804) 864-2854 E-mail: blbates@aero4.larc.nasa.gov or blbates@aero2.larc.nasa.gov
kurt@cashew.asd.sgi.com (Kurt Akeley) (06/27/90)
In article <1990Jun27.040030.17013@calgary.uucp>, paquette@cpsc.ucalgary.ca (Trevor Paquette) writes: |> |> Is there a cheap and dirty way to get XOR mode when doing a draw(), |> sboxf() or even bgnline()..endline()? I am porting an application that |> uses alot of the sunview 'PIX_SRC|PIX_DST' modes when writing to the |> screen. As far as I know about the sgi there is no 'built in' XOR |> mode for doing lines and/or block writes. I really don't want to write |> my own bres' algorithm for lines, checking for pixels along the way |> and XORing them myself, nor do I want to do that for each pixel in a |> block write. |> Can this be done easily? or should have have another go through the |> manuals and see what I missed. |> Trev The GL command logicop() allows any of the 16 logical operations to be specified for all drawing commands (points, lines, polygons, surfaces, characters, etc.). Even the syntax PIX_SRC|PIX_DST is supported: logicop (LO_SRC | LO_DST); However, logicop is supported only by the newer hardware platforms. You can use the command getgdesc(GD_LOGICOP) to determine whether logicop is supported on a given machine. I believe that the Personal Iris with the RE2 chip, recently shipped GT/GTX systems with no alpha bitplanes, and VGX systems are the only machines that support logicop(). -- kurt