Q E P C A D - Rend Documentation

General

  1. Indices of cells are: 1 for the first actual cell in the stack, AD2D_ErrI for an undefined (e.g. uninitialized) index, AD2D_Infy for the virtual cell at positive infinity, and AD2D_N_In for the virutal cell at negative infinity. Note that AD2D_ErrI, AD2D_Infy, and AD2D_N_In are defined in adj2D.h, and that the virtual cells at +/- infinity are considered to be sections.

  2. Truth values are TRUE, FALSE, and UNDET. These are #define's appearing in qepcad.h.

  3. Graphical CAD Language Detailed Info.

Types

Rend_Cell
Defined in Rend_Cell.h and Rend_Cell.cc. An object of type Rend_Cell represents a cell in a CAD. In keeping with QEPCAD's recursive view of CAD's the entire CAD is represented by the base-cell of that CAD, in this case the Rend_Cell object corresponding to the 0-level cell.

Rend_Sample
Defined in Rend_Sample.h and Rend_Sample.cc. An object of type Rend_Sample represents a sample point for a cell. There are several subtypes of Rend_Sample

Rend_Win
Defined in Rend_Win.h and Rend_Win.cc. The model I'm using for these plotting programs distinguishes between the "view window", which is a rectangle in the cartesian plane, and the "rend window", which is rectangle on the screen. An object of type Rend_Win represents a "rend window" and includes the corresoponding "view window" coordinates.

Mapper
Defined in Mapper.h and Mapper.cc. A Mapper object represents the mapping of points from the "view rectangle" to points from the "rend rectangle".

gcmemloc
Defined in gcmemloc.h. This file is basically a hack that allows garbage collected saclib "Word"'s that are global, static local, inside arrays, or inside class definitions. It's not efficient, but it works without modifying the saclib garbage collector. The inefficiencey only shows up at deallocations, so if you leave the local variables as normal old Word objects, then there's not too much overhead.

Safe_Array
Defined in Safe_Array.h. I wrote this before I had access to a compiler with STL (and before I knew I could download implementations). It's just a bare-bones templated array class. It does bounds checking which was nice when I was hacking.

Christopher W Brown
Last modified: Tue Jul 30 15:33:31 EDT 2002