Changeset 18298 for trunk/psLib/src/imageops/psImageInterpolate.c
- Timestamp:
- Jun 23, 2008, 4:01:55 PM (18 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/imageops/psImageInterpolate.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/imageops/psImageInterpolate.c
r18297 r18298 7 7 * @author Paul Price, IfA 8 8 * 9 * @version $Revision: 1.1 3$ $Name: not supported by cvs2svn $10 * @date $Date: 2008-06-24 0 1:47:14$9 * @version $Revision: 1.14 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2008-06-24 02:01:55 $ 11 11 * 12 12 * Copyright 2004-2007 Institute for Astronomy, University of Hawaii … … 386 386 } 387 387 } else { 388 double norm 3= 0.0; // Normalisation388 double norm4 = 0.0; // Normalisation 389 389 double norm1 = 2.0 / PS_SQR(M_PI); // Normalisation for laczos 390 double norm2 = 4.0 / (float)num; // 2.0 / (num / 2); // Normalisation for sinc functions 390 double norm2 = M_PI * 4.0 / (float)num; // Normalisation for sinc function 1 391 double norm3 =M_PI_2 * 4.0 / (float)num; // Normalisation for sinc function 2 391 392 double pos = - (num - 1)/2 - frac; // Position of interest 392 393 for (int i = 0; i < num; i++, pos += 1.0) { 393 norm 3 += values[i] = norm1 * sin(M_PI * pos * norm2) * sin(M_PI_2 * pos * norm2) / PS_SQR(pos);394 } 395 norm 3 = 1.0 / norm3;396 for (int i = 0; i < num; i++ , pos += 1.0) {397 values[i] *= norm 3;394 norm4 += values[i] = norm1 * sin(pos * norm2) * sin(M_PI_2 * pos * norm3) / PS_SQR(pos); 395 } 396 norm4 = 1.0 / norm4 397 for (int i = 0; i < num; i++) { 398 values[i] *= norm4; 398 399 } 399 400 }
Note:
See TracChangeset
for help on using the changeset viewer.
