Index: /trunk/psLib/src/imageops/psImageMap.c
===================================================================
--- /trunk/psLib/src/imageops/psImageMap.c	(revision 21171)
+++ /trunk/psLib/src/imageops/psImageMap.c	(revision 21172)
@@ -7,6 +7,6 @@
  *  @author Eugene Magnier, IfA
  *
- *  @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2008-11-17 02:37:28 $
+ *  @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2009-01-27 00:00:21 $
  *
  *  Copyright 2007 Institute for Astronomy, University of Hawaii
@@ -353,5 +353,5 @@
 }
 
-psVector *psImageMapEvalVector(const psImageMap *map, const psVector *x, const psVector *y)
+psVector *psImageMapEvalVector(const psImageMap *map, const psVector *mask, psMaskType maskValue, const psVector *x, const psVector *y)
 {
     PS_ASSERT_IMAGE_MAP_NON_NULL(map, NULL);
@@ -365,5 +365,9 @@
 
     for (int i = 0; i < x->n; i++) {
-        result->data.F32[i] = psImageUnbinPixel(x->data.F32[i], y->data.F32[i], map->map, map->binning);
+      if (mask && (mask->data.U8[i] & maskValue)) {
+	result->data.F32[i] = 0.0;
+      } else {	
+	result->data.F32[i] = psImageUnbinPixel(x->data.F32[i], y->data.F32[i], map->map, map->binning);
+      }
     }
 
Index: /trunk/psLib/src/imageops/psImageMap.h
===================================================================
--- /trunk/psLib/src/imageops/psImageMap.h	(revision 21171)
+++ /trunk/psLib/src/imageops/psImageMap.h	(revision 21172)
@@ -7,6 +7,6 @@
  *  @author Eugene Magnier, IfA
  *
- *  @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2008-10-07 22:23:06 $
+ *  @version $Revision: 1.9 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2009-01-27 00:00:21 $
  *
  *  Copyright 2007 Institute for Astronomy, University of Hawaii
@@ -77,5 +77,5 @@
 
 // apply the psImageMap to the given coordinate vectors (fine image pixels)
-psVector *psImageMapEvalVector (const psImageMap *map, const psVector *x, const psVector *y);
+psVector *psImageMapEvalVector (const psImageMap *map, const psVector *mask, psMaskType maskValue, const psVector *x, const psVector *y);
 
 /// @}
Index: /trunk/psLib/src/imageops/psImageMapFit.c
===================================================================
--- /trunk/psLib/src/imageops/psImageMapFit.c	(revision 21171)
+++ /trunk/psLib/src/imageops/psImageMapFit.c	(revision 21172)
@@ -7,6 +7,6 @@
  *  @author Eugene Magnier, IfA
  *
- *  @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2008-10-13 01:55:48 $
+ *  @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2009-01-27 00:00:21 $
  *
  *  Copyright 2007 Institute for Astronomy, University of Hawaii
@@ -397,5 +397,5 @@
         }
 
-        psVector *fit = psImageMapEvalVector(map, x, y);
+        psVector *fit = psImageMapEvalVector(map, mask, maskValue, x, y);
         if (fit == NULL) {
             psError(PS_ERR_UNKNOWN, false, "Failure in psImageMapEvalVector().\n");
Index: /trunk/psModules/src/objects/pmTrend2D.c
===================================================================
--- /trunk/psModules/src/objects/pmTrend2D.c	(revision 21171)
+++ /trunk/psModules/src/objects/pmTrend2D.c	(revision 21172)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.10 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2008-10-07 22:47:04 $
+ *  @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2009-01-27 00:00:44 $
  *  Copyright 2004 Institute for Astronomy, University of Hawaii
  *
@@ -234,5 +234,5 @@
 }
 
-psVector *pmTrend2DEvalVector(const pmTrend2D *trend, const psVector *x, const psVector *y)
+psVector *pmTrend2DEvalVector(const pmTrend2D *trend, psVector *mask, psMaskType maskValue, const psVector *x, const psVector *y)
 {
     PM_ASSERT_TREND2D_NON_NULL(trend, NULL);
@@ -244,9 +244,10 @@
       case PM_TREND_POLY_ORD:
       case PM_TREND_POLY_CHEB:
+	// XXX supply a mask here as well.
         result = psPolynomial2DEvalVector (trend->poly, x, y);
         break;
 
       case PM_TREND_MAP:
-        result = psImageMapEvalVector (trend->map, x, y);
+        result = psImageMapEvalVector (trend->map, mask, maskValue, x, y);
         break;
 
Index: /trunk/psModules/src/objects/pmTrend2D.h
===================================================================
--- /trunk/psModules/src/objects/pmTrend2D.h	(revision 21171)
+++ /trunk/psModules/src/objects/pmTrend2D.h	(revision 21172)
@@ -5,6 +5,6 @@
  * @author EAM, IfA
  *
- * @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
- * @date $Date: 2008-10-07 22:47:04 $
+ * @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2009-01-27 00:00:45 $
  * Copyright 2004 Maui High Performance Computing Center, University of Hawaii
  */
@@ -90,5 +90,5 @@
                      float x, float y
     );
-psVector *pmTrend2DEvalVector(const pmTrend2D *trend,
+psVector *pmTrend2DEvalVector(const pmTrend2D *trend, psVector *mask, psMaskType maskValue, 
                               const psVector *x, const psVector *y
     );
