ftp.nice.ch/pub/next/developer/resources/classes/ContourView.0.92.N.bs.tar.gz#/ContourView

CVtest.app/
 
CVtest.iconheader
 
CVtest.nib/
 
CVtestApp.h
[View CVtestApp.h] 
CVtestApp.m
[View CVtestApp.m] 
CVtest_main.m
[View CVtest_main.m] 
ContourView.h
[View ContourView.h] 
ContourView.m
[View ContourView.m] 
English.lproj/
 
Makefile
 
Makefile.dependencies
 
Makefile.postamble
 
PB.gdbinit
 
PB.project
 
README
 
computeContour.m
[View computeContour.m] 
contour.h
[View contour.h] 
fdata.c
[View fdata.c] 
sortContour.c
[View sortContour.c] 
splin2.c
[View splin2.c] 
splin2.h
[View splin2.h] 

README

ContourView class (a subclass of View)
     Contour Plot object with optional color fills.
     OS requirement: Release 3.0 or later.
     Version: V0.92 92-12-03
     [Archive maintainer, please put this into Objects/Classes directory.]

    -------------------------------------------------------------------------------
     Distinguishing features of this ContourView class are:
     [1] It does color fills within contours just like colored geographical maps.
	 I am not aware of any other free source code that does this. (That's
	 why I had to write this.)
     [2] It is a pretty self contained object in the form of a View subclass.
     [3] PostScript may be copied onto pasteboard and pasted into other apps that
	 accept EPS date.  Try pasting it into Yap document.

     There is really no documentation.  Look at the class implementation file
     ContourView.m and an example test application CVtestApp.m for usage
     information.  The app included here is just for testing ContourView
     class.  ContourView is meant to be included in your apps like any other
     objects.

     It is pretty easy to use.  If instantiated within IB, all you need to do
     to get a plot is to call the following two method to get a default
     plot.  If you understand the following method, you can use the
     ContourView object easily.

     - setCartesianGridData:(float *)f :(float)xmin :(float)xmax
				  :(float)ymin :(float)ymax
				  ofSize:(int)nx :(int)ny
				  withInterpolationTo:(int)n1x :(int)n1y;
 
    f[nx*ny] is a 1-d array containing 2-d grid data such that f[iy*nx+ix]
    contains the value at (ix, iy).
    Typicall, just 3 messages below will produce a contour plot with color
    fills.

    [contourView setCartesianGridData: fdata :1.0 :5.0 :1.0 :5.0
				ofSize: 20 :20
				withInterpolationTo: 50 :50];
    [contourView setFillEnable:YES];
    [contourView display];
 
    -------------------------------------------------------------------------------

    This can use a lot more optimizations which should speed up the drawing
    significantly.  Some of these are:
    [1] All parameter changes currently trigger recomputation of all contour paths,
	because almost everything is done in drawSelf:: method.
	This should not be necessary for some.  E.g., changing fill colors, line
	width etc should not cause recomputation of contour paths.
    [2] Use DoUserPath() etc to optimize drawing.
    [3] Some methods are not yet implemented (It does what I wanted now).
    -------------------------------------------------------------------------------
    Send comments, bug reports, suggestions and improvements to below:

---
Izumi Ohzawa, Ph.D.            [ 大澤五住 ]
USMail: University of California, 360 Minor Hall, Berkeley, CA 94720
Telephone: (510) 642-6440     Fax:  (510) 642-3323
Internet: izumi@pinoko.berkeley.edu (NeXT Mail OK)

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