ftp.nice.ch/pub/next/developer/objc/appkit/ContourPlot.1.4.NIHS.bs.tar.gz#/ContourPlot/no-interpcode.txt

This is no-interpcode.txt in view mode; [Download] [Up]

// No interpolation code taken out of ContourView

    if(nnx == n1x && nny == n1y) {
	/* ######## Same grid size indicates NO INTERPOLATION ######## */
	/* copy original domain to expanded domain while defining border areas */
	for(i=0; i<ndata; i++) {
	    ix = i % nx;
	    iy = i / nx;
	    if(ix >= N3 && ix < (nx-N3) && iy >= N3 && iy < (ny-N3))
		fd[i] = f[(iy-N3)*nnx+(ix-N3)];		/* original data */
	    else if(iy < N3 && ix >= N3 && ix <(nx-N3))
		fd[i] = f[ix-N3];
	    else if(iy >= (ny-N3) && ix >= N3 && ix <(nx-N3))
		fd[i] = f[(nny-1)*nnx+(ix-N3)];
	    else if(ix < N3 && iy >= N3 && iy <(ny-N3))
		fd[i] = f[(iy-N3)*nnx];
	    else if(ix >=(nx-N3) && iy >= N3 && iy <(ny-N3))
		fd[i] = f[(iy-N3)*nnx + nnx-1];
	    else if(ix < N3 && iy <N3)		/* lower left */
		fd[i] = f[0];
	    else if(ix < N3 && iy >= (ny-N3))	/* uppper left */
		fd[i] = f[(nny-1)*nnx];
	    else if(ix >= (nx-N3) && iy < N3)	/* lower right */
		fd[i] = f[nnx-1];
	    else if(ix >= (nx-N3) && iy >= (ny-N3))
		fd[i] = f[(nny-1)*nnx + nnx-1];

	    /* wipe 2 pixel border to base level */
	    if(ix < N2 || ix >= (nx-N2) || iy <N2 || iy >= (ny-N2))
		fd[i] = basevalue;		/* totally out */
	}
    } else {

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