You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(19) |
Nov
(45) |
Dec
(80) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(58) |
Feb
(127) |
Mar
(74) |
Apr
(34) |
May
(117) |
Jun
(14) |
Jul
(26) |
Aug
(13) |
Sep
(1) |
Oct
(38) |
Nov
(13) |
Dec
(5) |
| 2005 |
Jan
(108) |
Feb
(134) |
Mar
(54) |
Apr
(133) |
May
(16) |
Jun
(54) |
Jul
(128) |
Aug
(99) |
Sep
(157) |
Oct
(182) |
Nov
(236) |
Dec
(212) |
| 2006 |
Jan
(86) |
Feb
(76) |
Mar
(121) |
Apr
(27) |
May
(7) |
Jun
(1) |
Jul
(6) |
Aug
(28) |
Sep
(1) |
Oct
(27) |
Nov
(5) |
Dec
|
| 2007 |
Jan
(32) |
Feb
(22) |
Mar
(22) |
Apr
(11) |
May
(3) |
Jun
(12) |
Jul
(11) |
Aug
(9) |
Sep
(37) |
Oct
(4) |
Nov
(9) |
Dec
(51) |
| 2008 |
Jan
(7) |
Feb
(31) |
Mar
(46) |
Apr
(31) |
May
(5) |
Jun
(27) |
Jul
(12) |
Aug
(5) |
Sep
(13) |
Oct
(24) |
Nov
(112) |
Dec
(15) |
| 2009 |
Jan
(6) |
Feb
(103) |
Mar
(66) |
Apr
(9) |
May
(8) |
Jun
(1) |
Jul
(20) |
Aug
(9) |
Sep
(2) |
Oct
(81) |
Nov
(88) |
Dec
(30) |
| 2010 |
Jan
(65) |
Feb
(57) |
Mar
(22) |
Apr
(12) |
May
(4) |
Jun
(12) |
Jul
(43) |
Aug
(6) |
Sep
(6) |
Oct
(4) |
Nov
(6) |
Dec
(3) |
| 2011 |
Jan
(10) |
Feb
(27) |
Mar
(11) |
Apr
(9) |
May
(69) |
Jun
(73) |
Jul
(67) |
Aug
(116) |
Sep
(40) |
Oct
(11) |
Nov
(34) |
Dec
(19) |
| 2012 |
Jan
|
Feb
(4) |
Mar
(28) |
Apr
(18) |
May
(9) |
Jun
(7) |
Jul
(4) |
Aug
(155) |
Sep
(264) |
Oct
(172) |
Nov
(15) |
Dec
(40) |
| 2013 |
Jan
(1) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
(20) |
Jul
(76) |
Aug
(67) |
Sep
(49) |
Oct
(27) |
Nov
(3) |
Dec
(3) |
| 2014 |
Jan
(7) |
Feb
(7) |
Mar
(16) |
Apr
|
May
(4) |
Jun
(1) |
Jul
(18) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2015 |
Jan
(6) |
Feb
(5) |
Mar
(3) |
Apr
(23) |
May
(5) |
Jun
|
Jul
(2) |
Aug
(4) |
Sep
|
Oct
|
Nov
(2) |
Dec
(4) |
| 2016 |
Jan
(2) |
Feb
(7) |
Mar
(2) |
Apr
(1) |
May
(14) |
Jun
(3) |
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
(1) |
Dec
(3) |
| 2017 |
Jan
(6) |
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(12) |
Sep
(6) |
Oct
|
Nov
(3) |
Dec
|
| 2018 |
Jan
(4) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(8) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2019 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(8) |
Oct
|
Nov
(2) |
Dec
(25) |
| 2020 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(3) |
Oct
(53) |
Nov
(33) |
Dec
|
| 2021 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
(5) |
| 2022 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(5) |
Jul
(93) |
Aug
(206) |
Sep
(39) |
Oct
(19) |
Nov
(11) |
Dec
|
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
(150) |
Jul
(124) |
Aug
(14) |
Sep
(5) |
Oct
|
Nov
(1) |
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(12) |
Jul
(62) |
Aug
|
Sep
(7) |
Oct
|
Nov
(7) |
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
(14) |
May
(3) |
Jun
|
Jul
|
Aug
(76) |
Sep
(214) |
Oct
(6) |
Nov
|
Dec
|
|
From: <kin...@us...> - 2004-02-09 07:05:24
|
Update of /cvsroot/teem/teem/src/limn In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28099 Modified Files: GNUmakefile Log Message: added simple OFF to EPS rendering tool Index: GNUmakefile =================================================================== RCS file: /cvsroot/teem/teem/src/limn/GNUmakefile,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** GNUmakefile 7 Jan 2004 15:34:30 -0000 1.15 --- GNUmakefile 9 Feb 2004 07:02:05 -0000 1.16 *************** *** 48,55 **** $(L).PRIVATE_HEADERS = $(L).OBJS = defaultsLimn.o qn.o light.o env.o cam.o methodsLimn.o obj.o io.o \ ! hestLimn.o transform.o renderLimn.o shapes.o \ splineMisc.o splineMethods.o splineEval.o $(L).TESTS = test/map test/light test/tcam test/tps test/tspline test/tbc \ ! test/tcamanim test/soid #### #### --- 48,55 ---- $(L).PRIVATE_HEADERS = $(L).OBJS = defaultsLimn.o qn.o light.o env.o cam.o methodsLimn.o obj.o io.o \ ! hestLimn.o transform.o shapes.o renderLimn.o \ splineMisc.o splineMethods.o splineEval.o $(L).TESTS = test/map test/light test/tcam test/tps test/tspline test/tbc \ ! test/tcamanim test/soid test/off2eps #### #### |
|
From: <kin...@us...> - 2004-02-09 07:05:17
|
Update of /cvsroot/teem/teem/src/limn/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28099/test Added Files: off2eps.c Log Message: added simple OFF to EPS rendering tool --- NEW FILE: off2eps.c --- /* teem: Gordon Kindlmann's research software Copyright (C) 2004, 2003, 2002, 2001, 2000, 1999, 1998 University of Utah This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include "../limn.h" char *info = ("Renders an OFF file to an EPS file."); int main(int argc, char *argv[]) { char *me, *err, *inS, *outS; limnCamera *cam; float winscale, edgeWidth[5], creaseAngle; hestOpt *hopt=NULL; airArray *mop; limnObj *obj; limnSP *sp; limnWin *win; Nrrd *nmap; FILE *file; int si, wire; mop = airMopNew(); cam = limnCameraNew(); airMopAdd(mop, cam, (airMopper)limnCameraNix, airMopAlways); me = argv[0]; hestOptAdd(&hopt, "i", "input OFF", airTypeString, 1, 1, &inS, NULL, "input OFF file"); hestOptAdd(&hopt, "fr", "from point", airTypeDouble, 3, 3, cam->from,"4 4 4", "position of camera, used to determine view vector"); hestOptAdd(&hopt, "at", "at point", airTypeDouble, 3, 3, cam->at, "0 0 0", "camera look-at point, used to determine view vector"); hestOptAdd(&hopt, "up", "up vector", airTypeDouble, 3, 3, cam->up, "0 0 1", "camera pseudo-up vector, used to determine view coordinates"); hestOptAdd(&hopt, "rh", NULL, airTypeInt, 0, 0, &(cam->rightHanded), NULL, "use a right-handed UVN frame (V points down)"); hestOptAdd(&hopt, "or", NULL, airTypeInt, 0, 0, &(cam->orthographic), NULL, "use orthogonal projection"); hestOptAdd(&hopt, "ur", "uMin uMax", airTypeDouble, 2, 2, cam->uRange, "-1 1", "range in U direction of image plane"); hestOptAdd(&hopt, "vr", "vMin vMax", airTypeDouble, 2, 2, cam->vRange, "-1 1", "range in V direction of image plane"); hestOptAdd(&hopt, "e", "envmap", airTypeOther, 1, 1, &nmap, "", "16checker-based environment map", NULL, NULL, nrrdHestNrrd); hestOptAdd(&hopt, "ws", "winscale", airTypeFloat, 1, 1, &winscale, "200", "world to points (PostScript) scaling"); hestOptAdd(&hopt, "wire", NULL, airTypeInt, 0, 0, &wire, NULL, "just do wire-frame rendering"); hestOptAdd(&hopt, "wd", "5 widths", airTypeFloat, 5, 5, edgeWidth, "0.0 0.0 3.0 2.0 0.0", "width of edges drawn for five kinds of " "edges: back non-crease, back crease, " "silohuette, front crease, front non-crease"); hestOptAdd(&hopt, "ca", "angle", airTypeFloat, 1, 1, &creaseAngle, "30", "dihedral angles greater than this are creases"); hestOptAdd(&hopt, "o", "output PS", airTypeString, 1, 1, &outS, "out.ps", "output file to render postscript into"); hestParseOrDie(hopt, argc-1, argv+1, NULL, me, info, AIR_TRUE, AIR_TRUE, AIR_TRUE); airMopAdd(mop, hopt, (airMopper)hestOptFree, airMopAlways); airMopAdd(mop, hopt, (airMopper)hestParseFree, airMopAlways); cam->neer = -0.000000001; cam->dist = 0; cam->faar = 0.0000000001; cam->atRelative = AIR_TRUE; if (limnCameraUpdate(cam)) { fprintf(stderr, "%s: trouble:\n%s\n", me, err = biffGet(LIMN)); free(err); return 1; } obj = limnObjNew(10, AIR_TRUE); airMopAdd(mop, obj, (airMopper)limnObjNix, airMopAlways); if (!(file = airFopen(inS, stdin, "r"))) { fprintf(stderr, "%s: couldn't open \"%s\" for reading\n", me, inS); return 1; } airMopAdd(mop, file, (airMopper)airFclose, airMopAlways); si = airArrayIncrLen(obj->sA, 2); sp = obj->s + si + 0; ELL_4V_SET(sp->rgba, 1, 1, 1, 1); /* this is kind of silly */ ELL_3V_SET(sp->k, 0.2, 0.8, 0); sp->spec = 0; if (limnObjOFFRead(obj, file)) { airMopAdd(mop, err = biffGetDone(LIMN), airFree, airMopAlways); fprintf(stderr, "%s: trouble:\n%s\n", me, err); airMopError(mop); return 1; } win = limnWinNew(limnDevicePS); win->ps.lineWidth[limnEdgeTypeBackFacet] = edgeWidth[0]; win->ps.lineWidth[limnEdgeTypeBackCrease] = edgeWidth[1]; win->ps.lineWidth[limnEdgeTypeContour] = edgeWidth[2]; win->ps.lineWidth[limnEdgeTypeFrontCrease] = edgeWidth[3]; win->ps.lineWidth[limnEdgeTypeFrontFacet] = edgeWidth[4]; win->ps.wireFrame = wire; win->ps.creaseAngle = creaseAngle; win->file = airFopen(outS, stdout, "w"); airMopAdd(mop, win, (airMopper)limnWinNix, airMopAlways); win->scale = winscale; if (limnObjRender(obj, cam, win) || limnObjPSDraw(obj, cam, nmap, win)) { airMopAdd(mop, err = biffGetDone(LIMN), airFree, airMopAlways); fprintf(stderr, "%s: trouble:\n%s\n", me, err); airMopError(mop); return 1; } fclose(win->file); airMopOkay(mop); return 0; } |
|
From: <kin...@us...> - 2004-02-09 06:53:58
|
Update of /cvsroot/teem/teem/src/ell In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25496 Modified Files: vecEll.c Log Message: clarified comment in ell_3v_perp_f,_d Index: vecEll.c =================================================================== RCS file: /cvsroot/teem/teem/src/ell/vecEll.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** vecEll.c 7 Jan 2004 15:34:29 -0000 1.4 --- vecEll.c 9 Feb 2004 06:50:48 -0000 1.5 *************** *** 44,49 **** ** Given a 3-vector, produce one which is perpendicular. ** Output length won't be same as input length, but it will always ! ** be non-zero, if input length is non-zero. This will NOT produce ! ** a unit-length vector if the input is unit length. */ void --- 44,49 ---- ** Given a 3-vector, produce one which is perpendicular. ** Output length won't be same as input length, but it will always ! ** be non-zero, if input length is non-zero. This does NOT try to ! ** produce a unit-length vector, regardless of the length of the input. */ void |
|
From: <kin...@us...> - 2004-02-09 06:53:02
|
Update of /cvsroot/teem/teem/src/nrrd/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25008/test Modified Files: tkernel.c Log Message: const correctness Index: tkernel.c =================================================================== RCS file: /cvsroot/teem/teem/src/nrrd/test/tkernel.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** tkernel.c 7 Jan 2004 15:34:31 -0000 1.12 --- tkernel.c 9 Feb 2004 06:49:52 -0000 1.13 *************** *** 42,46 **** main(int argc, char *argv[]) { char *me, *kS, *minS, *stepS, *maxS, *outS; ! NrrdKernel *k; double parm[NRRD_KERNEL_PARMS_NUM], min, step, max, integral, *dom_d, *ran_d; --- 42,46 ---- main(int argc, char *argv[]) { char *me, *kS, *minS, *stepS, *maxS, *outS; ! const NrrdKernel *k; double parm[NRRD_KERNEL_PARMS_NUM], min, step, max, integral, *dom_d, *ran_d; |
|
From: <kin...@us...> - 2004-02-09 06:52:39
|
Update of /cvsroot/teem/teem/src/nrrd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24946 Modified Files: enumsNrrd.c Log Message: added some synonyms in nrrdBinaryOp Index: enumsNrrd.c =================================================================== RCS file: /cvsroot/teem/teem/src/nrrd/enumsNrrd.c,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** enumsNrrd.c 7 Jan 2004 15:34:30 -0000 1.28 --- enumsNrrd.c 9 Feb 2004 06:49:29 -0000 1.29 *************** *** 646,651 **** _nrrdUnaryOpDesc[NRRD_UNARY_OP_MAX+1][AIR_STRLEN_MED] = { "unknown unary op", ! "negative, additive inverse", ! "reciprocal, multiplicative inverse", "sin", "cos", --- 646,651 ---- _nrrdUnaryOpDesc[NRRD_UNARY_OP_MAX+1][AIR_STRLEN_MED] = { "unknown unary op", ! "negative; additive inverse", ! "reciprocal; multiplicative inverse", "sin", "cos", *************** *** 823,827 **** "comp", "compare", "eq", "=", "==", "equal", ! "neq", "!=", "notequal", "exists", "" --- 823,827 ---- "comp", "compare", "eq", "=", "==", "equal", ! "neq", "ne", "!=", "notequal", "exists", "" *************** *** 846,850 **** nbCmp, nbCmp, nbEq, nbEq, nbEq, nbEq, ! nbNeq, nbNeq, nbNeq, nbExt }; --- 846,850 ---- nbCmp, nbCmp, nbEq, nbEq, nbEq, nbEq, ! nbNeq, nbNeq, nbNeq, nbNeq, nbExt }; |
|
From: <kin...@us...> - 2004-02-09 06:51:01
|
Update of /cvsroot/teem/teem/src/air In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24515 Modified Files: air.h sane.c Log Message: added sanity check to make sure that unsigned char is really 8 bits Index: air.h =================================================================== RCS file: /cvsroot/teem/teem/src/air/air.h,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** air.h 7 Jan 2004 15:34:27 -0000 1.34 --- air.h 9 Feb 2004 06:47:50 -0000 1.35 *************** *** 367,374 **** airInsane_dio, /* 7: airMyDio set to something invalid */ airInsane_32Bit, /* 8: airMy32Bit is wrong */ ! airInsane_FISize, /* 9: sizeof(float), sizeof(int) not 4 */ ! airInsane_DLSize /* 10: sizeof(double), sizeof(airLLong) not 8 */ }; ! #define AIR_INSANE_MAX 10 extern const char *airInsaneErr(int insane); extern int airSanity(); --- 367,375 ---- airInsane_dio, /* 7: airMyDio set to something invalid */ airInsane_32Bit, /* 8: airMy32Bit is wrong */ ! airInsane_UCSize, /* 9: unsigned char isn't 8 bits */ ! airInsane_FISize, /* 10: sizeof(float), sizeof(int) not 4 */ ! airInsane_DLSize /* 11: sizeof(double), sizeof(airLLong) not 8 */ }; ! #define AIR_INSANE_MAX 11 extern const char *airInsaneErr(int insane); extern int airSanity(); Index: sane.c =================================================================== RCS file: /cvsroot/teem/teem/src/air/sane.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** sane.c 7 Jan 2004 15:34:27 -0000 1.7 --- sane.c 9 Feb 2004 06:47:50 -0000 1.8 *************** *** 33,36 **** --- 33,37 ---- int tmpI, sign, exp, frac, size; char endian; + unsigned char uc0, uc1; static int _airSanity=0; *************** *** 54,58 **** } ! /* checks on sizes of float, int, double, airLLong */ /* these justify the AIR_EXISTS_F and AIR_EXISTS_D macros */ if (!( (sizeof(float) == sizeof(int)) && (4 == sizeof(int)) )) { --- 55,64 ---- } ! /* checks on sizes of uchar, float, int, double, airLLong */ ! uc0 = 255; ! uc1 = uc0 + 1; /* to avoid compiler warnings */ ! if (!( 255 == uc0 && 0 == uc1 )) { ! return airInsane_UCSize; ! } /* these justify the AIR_EXISTS_F and AIR_EXISTS_D macros */ if (!( (sizeof(float) == sizeof(int)) && (4 == sizeof(int)) )) { *************** *** 128,131 **** --- 134,138 ---- "TEEM_DIO has invalid value", "TEEM_32BIT is wrong", + "unsigned char isn't 8 bits", "sizeof(float), sizeof(int) not both == 4", "sizeof(double), sizeof(airLLong) not both == 8", |
|
From: <kin...@us...> - 2004-01-16 17:52:40
|
Update of /cvsroot/teem/teem/src/bin
In directory sc8-pr-cvs1:/tmp/cvs-serv26997
Modified Files:
overrgb.c
Log Message:
background image will now be resized if necessary, with linear interpolation
Index: overrgb.c
===================================================================
RCS file: /cvsroot/teem/teem/src/bin/overrgb.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** overrgb.c 16 Jan 2004 16:15:41 -0000 1.11
--- overrgb.c 16 Jan 2004 17:52:37 -0000 1.12
***************
*** 32,36 ****
"if it is fixed point, the values interpreted as having "
"been quantized (so that 8-bit RGBA images will act as "
! "you expect).");
int
--- 32,38 ----
"if it is fixed point, the values interpreted as having "
"been quantized (so that 8-bit RGBA images will act as "
! "you expect). When compositing with a background image, the given "
! "background image does not have to be the same size as the input "
! "image; it will be resampled (with linear interpolation) to fit. ");
int
***************
*** 39,43 ****
Nrrd *nin, *nout, /* initial input and final output */
*ninD, /* input converted to double */
! *nbg, /* background image (optional) */
*nrgbaD; /* rgba input as double */
char *me, *outS, *errS;
--- 41,46 ----
Nrrd *nin, *nout, /* initial input and final output */
*ninD, /* input converted to double */
! *_nbg, /* given background image (optional) */
! *nbg, /* resampled background image */
*nrgbaD; /* rgba input as double */
char *me, *outS, *errS;
***************
*** 46,49 ****
--- 49,53 ----
int E, min[3], max[3], i, rI, gI, bI, sx, sy;
unsigned char *outUC, *bgUC;
+ NrrdResampleInfo *rinfo;
me = argv[0];
***************
*** 56,60 ****
"background color to composite against; white is "
"1 1 1, not 255 255 255.");
! hestOptAdd(&hopt, "bi", "nbg", airTypeOther, 1, 1, &nbg, "",
"8-bit RGB background image to composite against",
NULL, NULL, nrrdHestNrrd);
--- 60,64 ----
"background color to composite against; white is "
"1 1 1, not 255 255 255.");
! hestOptAdd(&hopt, "bi", "nbg", airTypeOther, 1, 1, &_nbg, "",
"8-bit RGB background image to composite against",
NULL, NULL, nrrdHestNrrd);
***************
*** 78,91 ****
sx = nin->axis[1].size;
sy = nin->axis[2].size;
! if (nbg) {
! if (!(3 == nbg->dim
! && 3 == nbg->axis[0].size
! && sx == nbg->axis[1].size
! && sy == nbg->axis[2].size
! && nrrdTypeUChar == nbg->type)) {
! fprintf(stderr, "%s: background image not %dx%d 8-bit RGB\n",
! me, sx, sy);
airMopError(mop); return 1;
}
}
--- 82,122 ----
sx = nin->axis[1].size;
sy = nin->axis[2].size;
! if (_nbg) {
! if (!(3 == _nbg->dim
! && 3 == _nbg->axis[0].size
! && 2 <= _nbg->axis[1].size
! && 2 <= _nbg->axis[2].size
! && nrrdTypeUChar == _nbg->type)) {
! fprintf(stderr, "%s: background not an 8-bit RGB image\n", me);
airMopError(mop); return 1;
}
+ nbg = nrrdNew();
+ airMopAdd(mop, nbg, (airMopper)nrrdNuke, airMopAlways);
+ if (sx == _nbg->axis[1].size && sy == _nbg->axis[2].size) {
+ /* no resampling needed, just copy */
+ E = nrrdCopy(nbg, _nbg);
+ } else {
+ /* have to resample background image to fit ... */
+ rinfo = nrrdResampleInfoNew();
+ airMopAdd(mop, rinfo, (airMopper)nrrdResampleInfoNix, airMopAlways);
+ rinfo->kernel[0] = NULL;
+ nrrdKernelParse(&(rinfo->kernel[1]), rinfo->parm[1], "tent");
+ rinfo->min[1] = _nbg->axis[1].min = 0;
+ rinfo->max[1] = _nbg->axis[1].max = _nbg->axis[1].size-1;
+ rinfo->samples[1] = sx;
+ nrrdKernelParse(&(rinfo->kernel[2]), rinfo->parm[2], "tent");
+ rinfo->min[2] = _nbg->axis[2].min = 0;
+ rinfo->max[2] = _nbg->axis[2].max = _nbg->axis[2].size-1;
+ rinfo->samples[2] = sy;
+ rinfo->renormalize = AIR_TRUE;
+ rinfo->round = AIR_TRUE;
+ E = nrrdSpatialResample(nbg, _nbg, rinfo);
+ }
+ if (E) {
+ fprintf(stderr, "%s: trouble:\n%s", me, errS = biffGetDone(NRRD));
+ free(errS); return 1;
+ }
+ } else {
+ nbg = NULL;
}
|
|
From: <kin...@us...> - 2004-01-16 17:40:17
|
Update of /cvsroot/teem/teem/src/moss
In directory sc8-pr-cvs1:/tmp/cvs-serv24152/moss
Modified Files:
moss.h sampler.c
Log Message:
NrrdKernels now const-correct
Index: moss.h
===================================================================
RCS file: /cvsroot/teem/teem/src/moss/moss.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** moss.h 7 Jan 2004 15:34:30 -0000 1.18
--- moss.h 16 Jan 2004 17:40:14 -0000 1.19
***************
*** 60,64 ****
typedef struct {
Nrrd *image; /* the image to sample */
! NrrdKernel *kernel; /* which kernel to use on both axes */
double kparm[NRRD_KERNEL_PARMS_NUM]; /* kernel arguments */
float *ivc; /* intermediate value cache */
--- 60,64 ----
typedef struct {
Nrrd *image; /* the image to sample */
! const NrrdKernel *kernel; /* which kernel to use on both axes */
double kparm[NRRD_KERNEL_PARMS_NUM]; /* kernel arguments */
float *ivc; /* intermediate value cache */
***************
*** 91,95 ****
extern int mossSamplerImageSet(mossSampler *smplr, Nrrd *image, float *bg);
extern int mossSamplerKernelSet(mossSampler *smplr,
! NrrdKernel *kernel, double *kparm);
extern int mossSamplerUpdate(mossSampler *smplr);
extern int mossSamplerSample(float *val, mossSampler *smplr,
--- 91,95 ----
extern int mossSamplerImageSet(mossSampler *smplr, Nrrd *image, float *bg);
extern int mossSamplerKernelSet(mossSampler *smplr,
! const NrrdKernel *kernel, double *kparm);
extern int mossSamplerUpdate(mossSampler *smplr);
extern int mossSamplerSample(float *val, mossSampler *smplr,
Index: sampler.c
===================================================================
RCS file: /cvsroot/teem/teem/src/moss/sampler.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** sampler.c 7 Jan 2004 15:34:30 -0000 1.9
--- sampler.c 16 Jan 2004 17:40:14 -0000 1.10
***************
*** 48,52 ****
int
! mossSamplerKernelSet (mossSampler *smplr, NrrdKernel *kernel, double *kparm) {
char me[]="mossSamplerKernelSet", err[AIR_STRLEN_MED];
int i;
--- 48,53 ----
int
! mossSamplerKernelSet (mossSampler *smplr,
! const NrrdKernel *kernel, double *kparm) {
char me[]="mossSamplerKernelSet", err[AIR_STRLEN_MED];
int i;
|
|
From: <kin...@us...> - 2004-01-16 17:35:16
|
Update of /cvsroot/teem/teem/src/nrrd
In directory sc8-pr-cvs1:/tmp/cvs-serv23315/nrrd
Modified Files:
kernel.c methodsNrrd.c nrrd.h
Log Message:
NrrdKernels now const-correct
Index: kernel.c
===================================================================
RCS file: /cvsroot/teem/teem/src/nrrd/kernel.c,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -d -r1.30 -r1.31
*** kernel.c 7 Jan 2004 15:34:30 -0000 1.30
--- kernel.c 16 Jan 2004 17:35:12 -0000 1.31
***************
*** 1174,1178 ****
int
! nrrdKernelParse(NrrdKernel **kernelP,
double *parm, const char *_str) {
char me[]="nrrdKernelParse", err[128], str[AIR_STRLEN_HUGE],
--- 1174,1178 ----
int
! nrrdKernelParse(const NrrdKernel **kernelP,
double *parm, const char *_str) {
char me[]="nrrdKernelParse", err[128], str[AIR_STRLEN_HUGE],
***************
*** 1286,1290 ****
nrrdKernelSpecParse(NrrdKernelSpec *ksp, const char *str) {
char me[]="nrrdKernelSpecParse", err[AIR_STRLEN_MED];
! NrrdKernel *kern;
double kparm[NRRD_KERNEL_PARMS_NUM];
--- 1286,1290 ----
nrrdKernelSpecParse(NrrdKernelSpec *ksp, const char *str) {
char me[]="nrrdKernelSpecParse", err[AIR_STRLEN_MED];
! const NrrdKernel *kern;
double kparm[NRRD_KERNEL_PARMS_NUM];
Index: methodsNrrd.c
===================================================================
RCS file: /cvsroot/teem/teem/src/nrrd/methodsNrrd.c,v
retrieving revision 1.38
retrieving revision 1.39
diff -C2 -d -r1.38 -r1.39
*** methodsNrrd.c 7 Jan 2004 15:34:30 -0000 1.38
--- methodsNrrd.c 16 Jan 2004 17:35:12 -0000 1.39
***************
*** 155,159 ****
void
! nrrdKernelSpecSet (NrrdKernelSpec *ksp, NrrdKernel *k,
double kparm[NRRD_KERNEL_PARMS_NUM]) {
int p;
--- 155,159 ----
void
! nrrdKernelSpecSet (NrrdKernelSpec *ksp, const NrrdKernel *k,
double kparm[NRRD_KERNEL_PARMS_NUM]) {
int p;
***************
*** 168,172 ****
void
! nrrdKernelParmSet (NrrdKernel **kP, double kparm[NRRD_KERNEL_PARMS_NUM],
NrrdKernelSpec *ksp) {
int p;
--- 168,172 ----
void
! nrrdKernelParmSet (const NrrdKernel **kP, double kparm[NRRD_KERNEL_PARMS_NUM],
NrrdKernelSpec *ksp) {
int p;
Index: nrrd.h
===================================================================
RCS file: /cvsroot/teem/teem/src/nrrd/nrrd.h,v
retrieving revision 1.131
retrieving revision 1.132
diff -C2 -d -r1.131 -r1.132
*** nrrd.h 7 Jan 2004 15:34:30 -0000 1.131
--- nrrd.h 16 Jan 2004 17:35:12 -0000 1.132
***************
*** 359,363 ****
*/
typedef struct {
! NrrdKernel *kernel;
double parm[NRRD_KERNEL_PARMS_NUM];
} NrrdKernelSpec;
--- 359,363 ----
*/
typedef struct {
! const NrrdKernel *kernel;
double parm[NRRD_KERNEL_PARMS_NUM];
} NrrdKernelSpec;
***************
*** 494,500 ****
extern NrrdResampleInfo *nrrdResampleInfoNix(NrrdResampleInfo *info);
extern NrrdKernelSpec *nrrdKernelSpecNew();
! extern void nrrdKernelSpecSet(NrrdKernelSpec *ksp, NrrdKernel *k,
double kparm[NRRD_KERNEL_PARMS_NUM]);
! extern void nrrdKernelParmSet(NrrdKernel **kP,
double kparm[NRRD_KERNEL_PARMS_NUM],
NrrdKernelSpec *ksp);
--- 494,500 ----
extern NrrdResampleInfo *nrrdResampleInfoNix(NrrdResampleInfo *info);
extern NrrdKernelSpec *nrrdKernelSpecNew();
! extern void nrrdKernelSpecSet(NrrdKernelSpec *ksp, const NrrdKernel *k,
double kparm[NRRD_KERNEL_PARMS_NUM]);
! extern void nrrdKernelParmSet(const NrrdKernel **kP,
double kparm[NRRD_KERNEL_PARMS_NUM],
NrrdKernelSpec *ksp);
***************
*** 874,878 ****
*const nrrdKernelGaussianD, /* 1st derivative of Gaussian */
*const nrrdKernelGaussianDD; /* 2nd derivative of Gaussian */
! extern int nrrdKernelParse(NrrdKernel **kernelP,
double *parm,
const char *str);
--- 874,878 ----
*const nrrdKernelGaussianD, /* 1st derivative of Gaussian */
*const nrrdKernelGaussianDD; /* 2nd derivative of Gaussian */
! extern int nrrdKernelParse(const NrrdKernel **kernelP,
double *parm,
const char *str);
|
|
From: <kin...@us...> - 2004-01-16 17:35:16
|
Update of /cvsroot/teem/teem/src/ten
In directory sc8-pr-cvs1:/tmp/cvs-serv23315/ten
Modified Files:
epireg.c fiberMethods.c ten.h tenGage.c
Log Message:
NrrdKernels now const-correct
Index: epireg.c
===================================================================
RCS file: /cvsroot/teem/teem/src/ten/epireg.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** epireg.c 7 Jan 2004 15:34:31 -0000 1.23
--- epireg.c 16 Jan 2004 17:35:12 -0000 1.24
***************
*** 52,56 ****
int reference,
float bwX, float bwY, float DWthr,
! NrrdKernel *kern, double *kparm) {
char me[]="_tenEpiRegCheck", err[AIR_STRLEN_MED];
int ni;
--- 52,56 ----
int reference,
float bwX, float bwY, float DWthr,
! const NrrdKernel *kern, double *kparm) {
char me[]="_tenEpiRegCheck", err[AIR_STRLEN_MED];
int ni;
***************
*** 760,764 ****
int
_tenEpiRegSliceWarp(Nrrd *nout, Nrrd *nin, Nrrd *nwght, Nrrd *nidx,
! NrrdKernel *kern, double *kparm,
double hh, double ss, double tt, double cx, double cy) {
float *wght, *in, pp, pf, tmp;
--- 760,764 ----
int
_tenEpiRegSliceWarp(Nrrd *nout, Nrrd *nin, Nrrd *nwght, Nrrd *nidx,
! const NrrdKernel *kern, double *kparm,
double hh, double ss, double tt, double cx, double cy) {
float *wght, *in, pp, pf, tmp;
***************
*** 812,816 ****
_tenEpiRegWarp(Nrrd **ndone, Nrrd *npxfr, Nrrd *nhst, Nrrd *ngrad,
Nrrd **nin, int ninLen,
! int reference, NrrdKernel *kern, double *kparm,
int verb) {
char me[]="_tenEpiRegWarp", err[AIR_STRLEN_MED];
--- 812,816 ----
_tenEpiRegWarp(Nrrd **ndone, Nrrd *npxfr, Nrrd *nhst, Nrrd *ngrad,
Nrrd **nin, int ninLen,
! int reference, const NrrdKernel *kern, double *kparm,
int verb) {
char me[]="_tenEpiRegWarp", err[AIR_STRLEN_MED];
***************
*** 879,883 ****
float bwX, float bwY, float fitFrac,
float DWthr, int doCC,
! NrrdKernel *kern, double *kparm,
int progress, int verbose) {
char me[]="tenEpiRegister3D", err[AIR_STRLEN_MED];
--- 879,883 ----
float bwX, float bwY, float fitFrac,
float DWthr, int doCC,
! const NrrdKernel *kern, double *kparm,
int progress, int verbose) {
char me[]="tenEpiRegister3D", err[AIR_STRLEN_MED];
***************
*** 1015,1019 ****
float bwX, float bwY, float fitFrac,
float DWthr, int doCC,
! NrrdKernel *kern, double *kparm,
int progress, int verbose) {
char me[]="tenEpiRegister4D", err[AIR_STRLEN_MED];
--- 1015,1019 ----
float bwX, float bwY, float fitFrac,
float DWthr, int doCC,
! const NrrdKernel *kern, double *kparm,
int progress, int verbose) {
char me[]="tenEpiRegister4D", err[AIR_STRLEN_MED];
Index: fiberMethods.c
===================================================================
RCS file: /cvsroot/teem/teem/src/ten/fiberMethods.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** fiberMethods.c 7 Jan 2004 15:34:31 -0000 1.12
--- fiberMethods.c 16 Jan 2004 17:35:12 -0000 1.13
***************
*** 59,63 ****
tenFiberContext *tfx;
gagePerVolume *pvl;
! NrrdKernel *kernel;
double kparm[NRRD_KERNEL_PARMS_NUM];
--- 59,63 ----
tenFiberContext *tfx;
gagePerVolume *pvl;
! const NrrdKernel *kernel;
double kparm[NRRD_KERNEL_PARMS_NUM];
***************
*** 232,236 ****
int
tenFiberKernelSet(tenFiberContext *tfx,
! NrrdKernel *kern,
double parm[NRRD_KERNEL_PARMS_NUM]) {
char me[]="tenFiberKernelSet", err[AIR_STRLEN_MED];
--- 232,236 ----
int
tenFiberKernelSet(tenFiberContext *tfx,
! const NrrdKernel *kern,
double parm[NRRD_KERNEL_PARMS_NUM]) {
char me[]="tenFiberKernelSet", err[AIR_STRLEN_MED];
Index: ten.h
===================================================================
RCS file: /cvsroot/teem/teem/src/ten/ten.h,v
retrieving revision 1.69
retrieving revision 1.70
diff -C2 -d -r1.69 -r1.70
*** ten.h 7 Jan 2004 15:34:31 -0000 1.69
--- ten.h 16 Jan 2004 17:35:12 -0000 1.70
***************
*** 409,413 ****
extern int tenFiberTypeSet(tenFiberContext *tfx, int type);
extern int tenFiberKernelSet(tenFiberContext *tfx,
! NrrdKernel *kern,
double parm[NRRD_KERNEL_PARMS_NUM]);
extern int tenFiberIntgSet(tenFiberContext *tfx, int intg);
--- 409,413 ----
extern int tenFiberTypeSet(tenFiberContext *tfx, int type);
extern int tenFiberKernelSet(tenFiberContext *tfx,
! const NrrdKernel *kern,
double parm[NRRD_KERNEL_PARMS_NUM]);
extern int tenFiberIntgSet(tenFiberContext *tfx, int intg);
***************
*** 427,431 ****
float bwX, float bwY, float fitFrac, float DWthr,
int doCC,
! NrrdKernel *kern, double *kparm,
int progress, int verbose);
extern int tenEpiRegister4D(Nrrd *nout, Nrrd *nin, Nrrd *ngrad,
--- 427,431 ----
float bwX, float bwY, float fitFrac, float DWthr,
int doCC,
! const NrrdKernel *kern, double *kparm,
int progress, int verbose);
extern int tenEpiRegister4D(Nrrd *nout, Nrrd *nin, Nrrd *ngrad,
***************
*** 433,437 ****
float bwX, float bwY, float fitFrac,
float DWthr, int doCC,
! NrrdKernel *kern, double *kparm,
int progress, int verbose);
--- 433,437 ----
float bwX, float bwY, float fitFrac,
float DWthr, int doCC,
! const NrrdKernel *kern, double *kparm,
int progress, int verbose);
Index: tenGage.c
===================================================================
RCS file: /cvsroot/teem/teem/src/ten/tenGage.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** tenGage.c 7 Jan 2004 15:34:31 -0000 1.9
--- tenGage.c 16 Jan 2004 17:35:12 -0000 1.10
***************
*** 160,164 ****
tensor + J, tgrad + J*3, NULL, \
pvl->needD[0], pvl->needD[1], AIR_FALSE)
! DOIT_2(0); DOIT_2(1); DOIT_2(2); DOIT_2(3); DOIT_2(4); DOIT_2(5); DOIT_2(6);
break;
case 4:
--- 160,165 ----
tensor + J, tgrad + J*3, NULL, \
pvl->needD[0], pvl->needD[1], AIR_FALSE)
! DOIT_2(0); DOIT_2(1); DOIT_2(2); DOIT_2(3);
! DOIT_2(4); DOIT_2(5); DOIT_2(6);
break;
case 4:
***************
*** 168,172 ****
tensor + J, tgrad + J*3, NULL, \
pvl->needD[0], pvl->needD[1], AIR_FALSE)
! DOIT_4(0); DOIT_4(1); DOIT_4(2); DOIT_4(3); DOIT_4(4); DOIT_4(5); DOIT_4(6);
break;
default:
--- 169,174 ----
tensor + J, tgrad + J*3, NULL, \
pvl->needD[0], pvl->needD[1], AIR_FALSE)
! DOIT_4(0); DOIT_4(1); DOIT_4(2); DOIT_4(3);
! DOIT_4(4); DOIT_4(5); DOIT_4(6);
break;
default:
***************
*** 178,182 ****
tensor + J, tgrad + J*3, NULL, \
pvl->needD[0], pvl->needD[1], AIR_FALSE)
! DOIT_N(0); DOIT_N(1); DOIT_N(2); DOIT_N(3); DOIT_N(4); DOIT_N(5); DOIT_N(6);
break;
}
--- 180,185 ----
tensor + J, tgrad + J*3, NULL, \
pvl->needD[0], pvl->needD[1], AIR_FALSE)
! DOIT_N(0); DOIT_N(1); DOIT_N(2); DOIT_N(3);
! DOIT_N(4); DOIT_N(5); DOIT_N(6);
break;
}
|
|
From: <kin...@us...> - 2004-01-16 17:35:16
|
Update of /cvsroot/teem/teem/src/gage
In directory sc8-pr-cvs1:/tmp/cvs-serv23315/gage
Modified Files:
ctx.c gage.h
Log Message:
NrrdKernels now const-correct
Index: ctx.c
===================================================================
RCS file: /cvsroot/teem/teem/src/gage/ctx.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** ctx.c 7 Jan 2004 15:34:29 -0000 1.11
--- ctx.c 16 Jan 2004 17:35:12 -0000 1.12
***************
*** 157,161 ****
int
gageKernelSet (gageContext *ctx,
! int which, NrrdKernel *k, double *kparm) {
char me[]="gageKernelSet", err[AIR_STRLEN_MED];
int numParm;
--- 157,161 ----
int
gageKernelSet (gageContext *ctx,
! int which, const NrrdKernel *k, double *kparm) {
char me[]="gageKernelSet", err[AIR_STRLEN_MED];
int numParm;
Index: gage.h
===================================================================
RCS file: /cvsroot/teem/teem/src/gage/gage.h,v
retrieving revision 1.57
retrieving revision 1.58
diff -C2 -d -r1.57 -r1.58
*** gage.h 7 Jan 2004 15:34:29 -0000 1.57
--- gage.h 16 Jan 2004 17:35:12 -0000 1.58
***************
*** 651,655 ****
extern int gagePerVolumeDetach(gageContext *ctx, gagePerVolume *pvl);
extern int gageKernelSet(gageContext *ctx,
! int which, NrrdKernel *k, double *kparm);
extern void gageKernelReset(gageContext *ctx);
extern int gageProbe(gageContext *ctx, gage_t x, gage_t y, gage_t z);
--- 651,655 ----
extern int gagePerVolumeDetach(gageContext *ctx, gagePerVolume *pvl);
extern int gageKernelSet(gageContext *ctx,
! int which, const NrrdKernel *k, double *kparm);
extern void gageKernelReset(gageContext *ctx);
extern int gageProbe(gageContext *ctx, gage_t x, gage_t y, gage_t z);
|
|
From: <kin...@us...> - 2004-01-16 17:35:16
|
Update of /cvsroot/teem/teem/src/bane
In directory sc8-pr-cvs1:/tmp/cvs-serv23315/bane
Modified Files:
bane.h
Log Message:
NrrdKernels now const-correct
Index: bane.h
===================================================================
RCS file: /cvsroot/teem/teem/src/bane/bane.h,v
retrieving revision 1.41
retrieving revision 1.42
diff -C2 -d -r1.41 -r1.42
*** bane.h 7 Jan 2004 15:34:27 -0000 1.41
--- bane.h 16 Jan 2004 17:35:11 -0000 1.42
***************
*** 292,296 ****
int k3pack;
int renormalize; /* use gage's mask renormalization */
! NrrdKernel *k[GAGE_KERNEL_NUM];
double kparm[GAGE_KERNEL_NUM][NRRD_KERNEL_PARMS_NUM];
baneClip *clip;
--- 292,296 ----
int k3pack;
int renormalize; /* use gage's mask renormalization */
! const NrrdKernel *k[GAGE_KERNEL_NUM];
double kparm[GAGE_KERNEL_NUM][NRRD_KERNEL_PARMS_NUM];
baneClip *clip;
|
|
From: <kin...@us...> - 2004-01-16 17:34:28
|
Update of /cvsroot/teem/teem/src
In directory sc8-pr-cvs1:/tmp/cvs-serv23152
Modified Files:
GNUmakefile
Log Message:
build order of libraries has changed
Index: GNUmakefile
===================================================================
RCS file: /cvsroot/teem/teem/src/GNUmakefile,v
retrieving revision 1.49
retrieving revision 1.50
diff -C2 -d -r1.49 -r1.50
*** GNUmakefile 7 Jan 2004 15:34:27 -0000 1.49
--- GNUmakefile 16 Jan 2004 17:34:25 -0000 1.50
***************
*** 96,100 ****
## {R}NUM/LIBS: used for craziness below
##
! LIBS = air hest biff nrrd ell unrrdu dye moss gage bane limn hoover mite alan echo ten
NUMS = 0 1 2 3 4 5 6 7 8 9 A B C D E F
RNUMS = F E D C B A 9 8 7 6 5 4 3 2 1 0
--- 96,100 ----
## {R}NUM/LIBS: used for craziness below
##
! LIBS = air hest biff nrrd ell unrrdu dye moss gage bane limn hoover alan echo ten mite
NUMS = 0 1 2 3 4 5 6 7 8 9 A B C D E F
RNUMS = F E D C B A 9 8 7 6 5 4 3 2 1 0
|
|
From: <kin...@us...> - 2004-01-16 16:15:45
|
Update of /cvsroot/teem/teem/src/bin
In directory sc8-pr-cvs1:/tmp/cvs-serv5756
Modified Files:
overrgb.c
Log Message:
little bugfixes
Index: overrgb.c
===================================================================
RCS file: /cvsroot/teem/teem/src/bin/overrgb.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** overrgb.c 16 Jan 2004 16:10:27 -0000 1.10
--- overrgb.c 16 Jan 2004 16:15:41 -0000 1.11
***************
*** 128,138 ****
b = pow(b, 1.0/gamma);
if (bgUC) {
r = a*r + (1-a)*back[0];
g = a*g + (1-a)*back[1];
b = a*b + (1-a)*back[2];
- } else {
- r = a*r + (1-a)*bgUC[0 + 3*i]/255;
- g = a*g + (1-a)*bgUC[0 + 3*i]/255;
- b = a*b + (1-a)*bgUC[0 + 3*i]/255;
}
AIR_INDEX(0.0, r, 1.0, 256, rI);
--- 128,138 ----
b = pow(b, 1.0/gamma);
if (bgUC) {
+ r = a*r + (1-a)*bgUC[0 + 3*i]/255;
+ g = a*g + (1-a)*bgUC[1 + 3*i]/255;
+ b = a*b + (1-a)*bgUC[2 + 3*i]/255;
+ } else {
r = a*r + (1-a)*back[0];
g = a*g + (1-a)*back[1];
b = a*b + (1-a)*back[2];
}
AIR_INDEX(0.0, r, 1.0, 256, rI);
|
|
From: <kin...@us...> - 2004-01-16 16:10:30
|
Update of /cvsroot/teem/teem/src/bin
In directory sc8-pr-cvs1:/tmp/cvs-serv4082
Modified Files:
overrgb.c
Log Message:
now accepts -bi option for given a background image to composite against
Index: overrgb.c
===================================================================
RCS file: /cvsroot/teem/teem/src/bin/overrgb.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** overrgb.c 7 Jan 2004 15:34:28 -0000 1.9
--- overrgb.c 16 Jan 2004 16:10:27 -0000 1.10
***************
*** 23,35 ****
#include <teem/nrrd.h>
! char *overInfo = ("Composites an RGBA nrrd over "
! "a background color, after doing gamma correction, "
! "then quantizes to an 8-bit ppm. Actually, the "
! "input nrrd can have more than 4 values per pixel, "
! "but only the first four are used. If the RGBA nrrd "
! "is floating point, the values are taken at face value; "
! "if it is fixed point, the values interpreted as having "
! "been quantized (so that 8-bit RGBA images will act as "
! "you expect).");
int
--- 23,36 ----
#include <teem/nrrd.h>
! char *overInfo = (
! "Composites an RGBA nrrd over "
! "a background color (or image), after doing gamma correction, "
! "then quantizes to an 8-bit image. Actually, the "
! "input nrrd can have more than 4 values per pixel, "
! "but only the first four are used. If the RGBA nrrd "
! "is floating point, the values are taken at face value; "
! "if it is fixed point, the values interpreted as having "
! "been quantized (so that 8-bit RGBA images will act as "
! "you expect).");
int
***************
*** 38,47 ****
Nrrd *nin, *nout, /* initial input and final output */
*ninD, /* input converted to double */
*nrgbaD; /* rgba input as double */
char *me, *outS, *errS;
double gamma, back[3], *rgbaD, r, g, b, a;
airArray *mop;
! int E, N, min[3], max[3], i, rI, gI, bI;
! unsigned char *outUC;
me = argv[0];
--- 39,49 ----
Nrrd *nin, *nout, /* initial input and final output */
*ninD, /* input converted to double */
+ *nbg, /* background image (optional) */
*nrgbaD; /* rgba input as double */
char *me, *outS, *errS;
double gamma, back[3], *rgbaD, r, g, b, a;
airArray *mop;
! int E, min[3], max[3], i, rI, gI, bI, sx, sy;
! unsigned char *outUC, *bgUC;
me = argv[0];
***************
*** 54,57 ****
--- 56,62 ----
"background color to composite against; white is "
"1 1 1, not 255 255 255.");
+ hestOptAdd(&hopt, "bi", "nbg", airTypeOther, 1, 1, &nbg, "",
+ "8-bit RGB background image to composite against",
+ NULL, NULL, nrrdHestNrrd);
hestOptAdd(&hopt, "o", "filename", airTypeString, 1, 1, &outS,
NULL, "file to write output PPM image to");
***************
*** 66,74 ****
}
if (nrrdTypeBlock == nin->type) {
! fprintf(stderr, "%s: can't use a %s nrrd", me,
airEnumStr(nrrdType, nrrdTypeBlock));
airMopError(mop); return 1;
}
ninD = nrrdNew();
airMopAdd(mop, ninD, (airMopper)nrrdNuke, airMopAlways);
--- 71,93 ----
}
if (nrrdTypeBlock == nin->type) {
! fprintf(stderr, "%s: can't use a %s nrrd\n", me,
airEnumStr(nrrdType, nrrdTypeBlock));
airMopError(mop); return 1;
}
+ sx = nin->axis[1].size;
+ sy = nin->axis[2].size;
+ if (nbg) {
+ if (!(3 == nbg->dim
+ && 3 == nbg->axis[0].size
+ && sx == nbg->axis[1].size
+ && sy == nbg->axis[2].size
+ && nrrdTypeUChar == nbg->type)) {
+ fprintf(stderr, "%s: background image not %dx%d 8-bit RGB\n",
+ me, sx, sy);
+ airMopError(mop); return 1;
+ }
+ }
+
ninD = nrrdNew();
airMopAdd(mop, ninD, (airMopper)nrrdNuke, airMopAlways);
***************
*** 88,95 ****
min[0] = min[1] = min[2] = 0;
max[0] = 3;
! max[1] = nin->axis[1].size-1;
! max[2] = nin->axis[2].size-1;
if (!E) E |= nrrdCrop(nrgbaD, ninD, min, max);
! if (!E) E |= nrrdPPM(nout, nin->axis[1].size, nin->axis[2].size);
if (E) {
fprintf(stderr, "%s: trouble:\n%s", me, errS = biffGetDone(NRRD));
--- 107,114 ----
min[0] = min[1] = min[2] = 0;
max[0] = 3;
! max[1] = sx-1;
! max[2] = sy-1;
if (!E) E |= nrrdCrop(nrgbaD, ninD, min, max);
! if (!E) E |= nrrdPPM(nout, sx, sy);
if (E) {
fprintf(stderr, "%s: trouble:\n%s", me, errS = biffGetDone(NRRD));
***************
*** 98,104 ****
outUC = (unsigned char*)nout->data;
rgbaD = (double *)nrgbaD->data;
! N = nin->axis[1].size * nin->axis[2].size;
! for (i=0; i<N; i++) {
r = AIR_CLAMP(0, rgbaD[0], 1);
g = AIR_CLAMP(0, rgbaD[1], 1);
--- 117,123 ----
outUC = (unsigned char*)nout->data;
+ bgUC = nbg ? nbg->data : NULL;
rgbaD = (double *)nrgbaD->data;
! for (i=0; i<sx*sy; i++) {
r = AIR_CLAMP(0, rgbaD[0], 1);
g = AIR_CLAMP(0, rgbaD[1], 1);
***************
*** 108,114 ****
g = pow(g, 1.0/gamma);
b = pow(b, 1.0/gamma);
! r = a*r + (1-a)*back[0];
! g = a*g + (1-a)*back[1];
! b = a*b + (1-a)*back[2];
AIR_INDEX(0.0, r, 1.0, 256, rI);
AIR_INDEX(0.0, g, 1.0, 256, gI);
--- 127,139 ----
g = pow(g, 1.0/gamma);
b = pow(b, 1.0/gamma);
! if (bgUC) {
! r = a*r + (1-a)*back[0];
! g = a*g + (1-a)*back[1];
! b = a*b + (1-a)*back[2];
! } else {
! r = a*r + (1-a)*bgUC[0 + 3*i]/255;
! g = a*g + (1-a)*bgUC[0 + 3*i]/255;
! b = a*b + (1-a)*bgUC[0 + 3*i]/255;
! }
AIR_INDEX(0.0, r, 1.0, 256, rI);
AIR_INDEX(0.0, g, 1.0, 256, gI);
|
|
From: <kin...@us...> - 2004-01-11 22:31:26
|
Update of /cvsroot/teem/teemdoc/html/download
In directory sc8-pr-cvs1:/tmp/cvs-serv24348
Modified Files:
index.html
Log Message:
update version 1.7.0 release date
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/download/index.html,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** index.html 9 Jan 2004 19:46:44 -0000 1.19
--- index.html 11 Jan 2004 22:31:23 -0000 1.20
***************
*** 123,127 ****
<td align=left valign=middle>
<font size="+1">teem-1.7.0</font><br>
! <small>(Planned released: Jan 12, 2003)</small><br>
<td>
--- 123,127 ----
<td align=left valign=middle>
<font size="+1">teem-1.7.0</font><br>
! <small>(Planned released: real soon now)</small><br>
<td>
|
|
From: <kin...@us...> - 2004-01-11 00:39:00
|
Update of /cvsroot/teem/teem/src/nrrd
In directory sc8-pr-cvs1:/tmp/cvs-serv22376
Modified Files:
formatVTK.c
Log Message:
updated handling of VTK format, to include new verion 3.0 magic, and more types
Index: formatVTK.c
===================================================================
RCS file: /cvsroot/teem/teem/src/nrrd/formatVTK.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** formatVTK.c 7 Jan 2004 15:34:30 -0000 1.6
--- formatVTK.c 11 Jan 2004 00:38:54 -0000 1.7
***************
*** 23,26 ****
--- 23,27 ----
#define MAGIC1 "# vtk DataFile Version 1.0"
#define MAGIC2 "# vtk DataFile Version 2.0"
+ #define MAGIC3 "# vtk DataFile Version 3.0"
int
***************
*** 54,70 ****
}
if (!( nrrdTypeUChar == nrrd->type
! || nrrdTypeShort == nrrd->type
|| nrrdTypeUShort == nrrd->type
|| nrrdTypeInt == nrrd->type
|| nrrdTypeFloat == nrrd->type
|| nrrdTypeDouble == nrrd->type )) {
! sprintf(err, "%s: type must be %s, %s, %s, %s, %s, or %s (not %s)", me,
! airEnumStr(nrrdType, nrrdTypeUChar),
! airEnumStr(nrrdType, nrrdTypeShort),
! airEnumStr(nrrdType, nrrdTypeUShort),
! airEnumStr(nrrdType, nrrdTypeInt),
! airEnumStr(nrrdType, nrrdTypeFloat),
! airEnumStr(nrrdType, nrrdTypeDouble),
! airEnumStr(nrrdType, nrrd->type));
biffMaybeAdd(NRRD, err, useBiff);
return AIR_FALSE;
--- 55,67 ----
}
if (!( nrrdTypeUChar == nrrd->type
! || nrrdTypeChar == nrrd->type
|| nrrdTypeUShort == nrrd->type
+ || nrrdTypeShort == nrrd->type
+ || nrrdTypeUInt == nrrd->type
|| nrrdTypeInt == nrrd->type
|| nrrdTypeFloat == nrrd->type
|| nrrdTypeDouble == nrrd->type )) {
! sprintf(err, "%s: type %s doesn't fit in VTK (as currently implemented)",
! me, airEnumStr(nrrdType, nrrd->type));
biffMaybeAdd(NRRD, err, useBiff);
return AIR_FALSE;
***************
*** 85,89 ****
return (!strcmp(MAGIC1, nio->line)
! || !strcmp(MAGIC2, nio->line));
}
--- 82,87 ----
return (!strcmp(MAGIC1, nio->line)
! || !strcmp(MAGIC2, nio->line)
! || !strcmp(MAGIC3, nio->line));
}
***************
*** 194,201 ****
--- 192,203 ----
} else if (!strcmp(three[2], "unsigned_char")) {
nrrd->type = nrrdTypeUChar;
+ } else if (!strcmp(three[2], "char")) {
+ nrrd->type = nrrdTypeChar;
} else if (!strcmp(three[2], "unsigned_short")) {
nrrd->type = nrrdTypeUShort;
} else if (!strcmp(three[2], "short")) {
nrrd->type = nrrdTypeShort;
+ } else if (!strcmp(three[2], "unsigned_int")) {
+ nrrd->type = nrrdTypeUInt;
} else if (!strcmp(three[2], "int")) {
nrrd->type = nrrdTypeInt;
***************
*** 205,208 ****
--- 207,213 ----
nrrd->type = nrrdTypeDouble;
} else {
+ /* "unsigned_long" and "long" fall in here- I don't know what
+ the VTK people mean by these types, since always mean different
+ things on 32-bit versus 64-bit architectures */
sprintf(err, "%s: type \"%s\" not recognized", me, three[2]);
biffAdd(NRRD, err); airMopError(mop); return 1;
***************
*** 294,297 ****
--- 299,305 ----
strcpy(type, "unsigned_char");
break;
+ case nrrdTypeChar:
+ strcpy(type, "char");
+ break;
case nrrdTypeUShort:
strcpy(type, "unsigned_short");
***************
*** 300,303 ****
--- 308,314 ----
strcpy(type, "short");
break;
+ case nrrdTypeUInt:
+ strcpy(type, "unsigned_int");
+ break;
case nrrdTypeInt:
strcpy(type, "int");
***************
*** 314,318 ****
biffAdd(NRRD, err); airMopError(mop); return 1;
}
! fprintf(file, "%s\n", MAGIC2);
/* there is a file-format-imposed limit on the length of the "content" */
if (nrrd->content) {
--- 325,329 ----
biffAdd(NRRD, err); airMopError(mop); return 1;
}
! fprintf(file, "%s\n", MAGIC3);
/* there is a file-format-imposed limit on the length of the "content" */
if (nrrd->content) {
|
|
From: <kin...@us...> - 2004-01-09 20:01:20
|
Update of /cvsroot/teem/teemdoc/html/gmake
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/gmake
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/gmake/index.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** index.html 22 Jul 2003 22:44:12 -0000 1.2
--- index.html 9 Jan 2004 19:46:45 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 20:01:20
|
Update of /cvsroot/teem/teemdoc/html/gage
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/gage
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/gage/index.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** index.html 22 Jul 2003 22:44:12 -0000 1.2
--- index.html 9 Jan 2004 19:46:45 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 20:01:20
|
Update of /cvsroot/teem/teemdoc/html/echo
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/echo
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/echo/index.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** index.html 22 Jul 2003 22:44:12 -0000 1.2
--- index.html 9 Jan 2004 19:46:45 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 20:01:20
|
Update of /cvsroot/teem/teemdoc/html/ell
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/ell
Modified Files:
func.html index.html macro.html
Log Message:
happy new year
Index: func.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/ell/func.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** func.html 22 Jul 2003 22:44:12 -0000 1.2
--- func.html 9 Jan 2004 19:46:45 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/ell/index.html,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** index.html 31 Aug 2003 18:37:25 -0000 1.3
--- index.html 9 Jan 2004 19:46:45 -0000 1.4
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
Index: macro.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/ell/macro.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** macro.html 22 Jul 2003 22:44:12 -0000 1.2
--- macro.html 9 Jan 2004 19:46:45 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 20:01:19
|
Update of /cvsroot/teem/teemdoc/html/dye
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/dye
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/dye/index.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** index.html 22 Jul 2003 22:44:12 -0000 1.2
--- index.html 9 Jan 2004 19:46:45 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 19:47:18
|
Update of /cvsroot/teem/teemdoc/html/bin/vprobe
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/bin/vprobe
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/bin/vprobe/index.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** index.html 22 Jul 2003 22:44:12 -0000 1.2
--- index.html 9 Jan 2004 19:46:44 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 19:47:18
|
Update of /cvsroot/teem/teemdoc/html/bin/ungantry
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/bin/ungantry
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/bin/ungantry/index.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** index.html 22 Jul 2003 22:44:12 -0000 1.2
--- index.html 9 Jan 2004 19:46:44 -0000 1.3
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|
|
From: <kin...@us...> - 2004-01-09 19:47:18
|
Update of /cvsroot/teem/teemdoc/html/download
In directory sc8-pr-cvs1:/tmp/cvs-serv2601/download
Modified Files:
index.html
Log Message:
happy new year
Index: index.html
===================================================================
RCS file: /cvsroot/teem/teemdoc/html/download/index.html,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** index.html 23 Dec 2003 09:37:13 -0000 1.18
--- index.html 9 Jan 2004 19:46:44 -0000 1.19
***************
*** 1,5 ****
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
--- 1,5 ----
<!--
Documentation for "teem: Gordon Kindlmann's research software"
! Copyright (C) 2004, 2003, 2002, 2001, 2000 University of Utah
This documentation may not be modified or redistributed in any
form, except by the copyright holder.
|