LineDraw.nib
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.