ftp.nice.ch/peanuts/GeneralData/Documents/adobe/DPS.Purple.LineDraw.tar.gz#/NX_LineDraw

DrawView.h
[View DrawView.h] 
DrawView.m
[View DrawView.m] 
DrawViewWraps.psw
 
IB.proj
 
Icon.tiff
 
LineDraw.iconheader
 

LineDraw.nib


 
LineDraw_main.m
[View LineDraw_main.m] 
Makefile
 
README
 

README

README file for the LineDraw application.

The LineDraw application is a very simple application that looks as single
operator calls and wraps. The application provides a window whereas
a set number of lines can be randomly drawn (the locations for the start
and end of the lines are chosen at random). This application times several
variations in drawing with single operator calls and wraps. The variations
include binding the operators and performing the drawing within a PostScript
loop.

This application shows two significant findings. The first is that combining frequently
invoked sets of PostScript operators into a single wrap can have a 10-20% 
improvement over calling the single operator procedure for each operator. The
second finding is that large performance gain can be obtained by delaying
stroking similar lines until it is necessary. If a group of lines have the same line
attributes (color, width, linejoin, etc.) then it pays to delay the stroking until a
limit is reached (1500 points in a path), line attributes change or no more lines
need to be drawn.


Below lies an annotated list of the files used in the application. 

DrawView		- A subclass of View. Holds arrays containing the point 
					locations of the lines and the line attributes (color,
					width, etc). Draws the lines in the window using
					single operator calls or wraps.

DrawViewWraps.psw	- Wraps for clearing the view and drawing the lines.

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.