milne@ics.uci.edu (Alastair Milne) (08/09/88)
I work for a University of California software project that develops state-of-the-art educational software. We are in the process of moving our software support into Turbo Pascal from a Pascal environment in a different operating system. However, we are encountering a particular problem with Turbo's graphics support that gives us a considerable hindrance: There appears to be no control of drawing logic for line or arc drawing. In our present system, a line or arc can be drawn: - by replacing every pixel lying on the line with a new value, no matter its original value; - or by giving each of those pixels a new value which is the exclusive or of its original value and the foreground colour value in which the line is being drawn. The latter is very useful for drawing things onto an existing display, then undrawing them later with the original display remaining intact underneath. We use this for many things, but particularly for letting our screen support use as a graphics input device a small flashing crosshairs that the user can manipulate with the cursor keys to point to a place on the screen. Using XOr logic for drawing this lets it move anywhere, over anything already drawn, and damage none of it. These varieties of drawing logic (and several more ) are all supplied for the Graph procedure PutImage. They are *not* supplied (anywhere I can find) for line drawing. 1. Why not !!?? 2. How has this problem been handled by other groups using graphics with different types of drawing logic? We are eager to get our screen support up and tested under Turbo, but this lack of a fundamental capability is a real hindrance to us. Any assistance would be much appreciated. Thanks in advance, Alastair Milne Educational Technology Center, U.C. Irvine
du>@adm.ARPA (08/10/88)
> There appears to be no control of drawing logic for line or arc drawing.
Look at the description of PutImage in the Turbo manual. It allows
you to display a saved bitmap using MOV, OR, XOR, AND and NOT operations.
It seems like this should be adequate for showing crosshairs.
Rich Winkel