From: Maurice L. <mj...@ga...> - 2002-11-10 01:13:28
|
Alan W. Irwin writes: > On Sat, 9 Nov 2002, Maurice LeBrun wrote: > > > p.s. as far as allowing a nx(j) or ny(i) dependence, I have no idea. Never > > thought about it before, and after a quick look at the code I'm not hopeful > > that there's an easy way to support it. > > I haven't looked at the code in detail, but I am just going on the > documentation here. All pltr2 seems to do is interpolate (with boundary > checks). So shouldn't it be straightforward to make variations on pltr2 > that accept and use a PLPointer which includes either the nx(j) information > or ny(i) information? I realize that such variations are not all that needs > to be done by a long shot, but if these fundamental bits are possible, then > I think the rest should be straightforward for all 3D API's that currently > reference an interpolater such as pltr2. I don't think this belongs in pltr(), because it is called so deep in the loop. You need something that can influence the control structure, so we're probably talking about function arguments e.g. (*fnx)(j) & (*fny)(i), for which the default is to return a constant (nx & ny, respectively). The bigger problem is reordering the loops in order to support *both* nx(j) and ny(i) -- the varying one needs to be in the inner loop of course. So in general you'll need two versions of each plotter. One of those will have the loop order swapped from what it is now, which means lots of logic changes in the interior of the loop (go look). An additional complication is that the shade & contour plotters use different loop ordering already. I haven't looked at the 3d plotters. Looks like an awful lot of work. -- Maurice LeBrun mj...@ga... Research Organization for Information Science and Technology of Japan (RIST) |