###############################################################################
# #
# Copyright © 1989-1991 by Artificial Horizons®, Inc. All rights reserved. #
# #
# This material constitutes the trade secrets and confidential, #
# proprietary information of Bruce Factor and Curtis Priem, and is #
# under license to Artificial Horizons, Inc. The material is not #
# to be disclosed, reproduced, copied, or used in any manner not #
# permitted under license from Artificial Horizons, Inc. For more #
# information email "ahi-interest@ahi.com". #
# #
###############################################################################
PATTERN(3GC) AVIATOR GRAPHICS INTERFACE CLASSES PATTERN(3GC)
NAME
FB_CLASS__PATTERN_16X16_1BIT_MONOCHROME - pattern class
SYNOPSIS
#include <agi.h>
register Fbuffer fbp;
fbstart(fbp, FB_CLASS__PATTERN_16X16_1BIT_MONOCHROME) {
} fbend(fbp);
DESCRIPTION
The class FB_CLASS__PATTERN_16X16_1BIT_MONOCHROME is used for defining
the pattern which is used when rendering points, lines, triangles,
quadrilaterals, and rectangles. The pattern repeats continuously
across the screen and can be offset from the corner of the paint
canvas (or screen). Defining the pattern always starts with the top
line.
MEMBERS
The following public members can be accessed by using routines
fbput(3G) and fbget(3G):
FB_MEMBER__X__INTEGER
FB_MEMBER__X__FIXED
FB_MEMBER__X__FLOAT
X is the number of pixels in the horizontal direction that
the pattern is offset by from the left edge of the paint
canvas (or screen if running without a windowing system).
This 32 bit number can be signed integer, signed 16.16 fixed
point, or IEEE single precision floating point format.
FB_MEMBER__Y__INTEGER
FB_MEMBER__Y__FIXED
FB_MEMBER__Y__FLOAT
Y is the number of pixels in the vertical direction that the
pattern is offset by from the top of the paint canvas (or
screen if running without a windowing system). This 32 bit
number can be signed integer, signed 16.16 fixed point, or
IEEE single precision floating point format.
FB_MEMBER__DATA__W32P16N2
DATA is a 32 bit number (Width 32) which contains two rows
(Number 2) of 16 one bit deep pixels (Packed 16).
FUNCTIONS
The following public functions can be called by using the fbcall(3G)
routine:
FB_FUNCTION__STORE
STORE stores the current X and Y into the frame buffer.
FB_FUNCTION__STORE_INCREMENT
STORE_INCREMENT stores the DATA into the frame buffer. The
pattern pointer is then incremented to point to the next data
location in the pattern (next line below the one just
defined).
SEE ALSO
fbcall(3G), fbend(3G), fbget(3G), fbput(3G), fbstart(3G)
WARNING
agi does not check to see how many lines of the pattern are stored.
It is up to the user to store only 16.
PERFORMANCE
INTEGER is the fastest format for X and Y.
AGI Release 1.8 Last change: 25 December 1991