Index: trunk/psLib/src/imageops/psImageInterpolate.c
===================================================================
--- trunk/psLib/src/imageops/psImageInterpolate.c	(revision 21183)
+++ trunk/psLib/src/imageops/psImageInterpolate.c	(revision 21280)
@@ -7,6 +7,6 @@
  *  @author Paul Price, IfA
  *
- *  @version $Revision: 1.31 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2009-01-27 06:39:37 $
+ *  @version $Revision: 1.32 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2009-02-04 02:55:27 $
  *
  *  Copyright 2004-2007 Institute for Astronomy, University of Hawaii
@@ -866,6 +866,7 @@
 
 
-psImageInterpolateStatus psImageInterpolate(double *imageValue, double *varianceValue, psImageMaskType *maskValue,
-                                            float x, float y, const psImageInterpolation *interp)
+psImageInterpolateStatus psImageInterpolate(double *imageValue, double *varianceValue,
+                                            psImageMaskType *maskValue, float x, float y,
+                                            const psImageInterpolation *interp)
 {
     PS_ASSERT_PTR_NON_NULL(imageValue, PS_INTERPOLATE_STATUS_ERROR);
@@ -963,4 +964,29 @@
 
 
+psKernel *psImageInterpolationKernel(float x, float y, psImageInterpolateMode mode)
+{
+    int size = kernelSizes[mode];       // Size of kernel
+
+    // Kernel basics
+    INTERPOLATE_SETUP(x, y);
+    xExact = yExact = false;
+
+    psF32 xKernel[size], yKernel[size]; // Interpolation kernels
+    interpolationKernel(xKernel, xFrac, mode);
+    interpolationKernel(yKernel, yFrac, mode);
+
+    int min = -size/2, max = (size - 1) / 2; // Range for kernel
+    psKernel *kernel = psKernelAlloc(min, max, min, max); // Kernel to return
+
+    for (int y = 0; y < size; y++) {
+        for (int x = 0; x < size; x++) {
+            kernel->kernel[y][x] = yKernel[y] * xKernel[x];
+        }
+    }
+
+    return kernel;
+}
+
+
 psImageInterpolateMode psImageInterpolateModeFromString(const char *name)
 {
