「lmrcImage3DWindowing(API)」の版間の差分
提供: Eospedia
(同じ利用者による、間の2版が非表示) | |||
行4: | 行4: | ||
== 構造体 == | == 構造体 == | ||
+ | このAPIで使用する設定です。 | ||
typedef struct lmrcImage3DWindowingInfo { | typedef struct lmrcImage3DWindowingInfo { | ||
mrcImageParaTypeRealCoord center; | mrcImageParaTypeRealCoord center; | ||
行12: | 行13: | ||
mrcImageParaTypeReal wz; | mrcImageParaTypeReal wz; | ||
} lmrcImage3DWindowingInfo; | } lmrcImage3DWindowingInfo; | ||
− | + | ||
+ | lmrcImage3DWindowingで使用するmodeの値です。 | ||
typedef enum lmrcImage3DWindowingMode { | typedef enum lmrcImage3DWindowingMode { | ||
lmrcImage3DWindowingModeGaussianRectangularSolid=0, | lmrcImage3DWindowingModeGaussianRectangularSolid=0, | ||
行54: | 行56: | ||
====ガウシアン窓==== | ====ガウシアン窓==== | ||
+ | ガウシアン窓を掛けます。 | ||
extern void lmrcImage3DWindowingGaussianRectanglularSolid(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | extern void lmrcImage3DWindowingGaussianRectanglularSolid(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | ||
+ | |||
+ | ====コサイン窓==== | ||
+ | =====円筒で区切ったコサイン窓===== | ||
+ | 2つの円筒で覆い、内部に1、中間にコサイン窓、外部に0をそれぞれ掛けます。(データ補正あり) | ||
extern void lmrcImage3DWindowingCosCylinder(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | extern void lmrcImage3DWindowingCosCylinder(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | ||
+ | |||
+ | =====球体で区切ったコサイン窓===== | ||
+ | 2つの球体で覆い、内部に1、中間にコサイン窓、外部に0をそれぞれ掛けます。 | ||
extern void lmrcImage3DWindowingCosSphere(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | extern void lmrcImage3DWindowingCosSphere(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | ||
+ | 上記に加え、内部と中間のデータによった補正をします。 | ||
extern void lmrcImage3DWindowingCosSphereOffset(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | extern void lmrcImage3DWindowingCosSphereOffset(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode); | ||
===ヘルプ=== | ===ヘルプ=== | ||
extern void lmrcImage3DWindowingUsage(FILE* fpt); | extern void lmrcImage3DWindowingUsage(FILE* fpt); |
2014年5月23日 (金) 05:31時点における最新版
DataManip/mrcImage/src/lmrcImage3DWindowingはmrcImage3DWindowingのためのAPI です。
目次
定数
構造体
このAPIで使用する設定です。
typedef struct lmrcImage3DWindowingInfo { mrcImageParaTypeRealCoord center; mrcImageParaTypeRealCoord width; mrcImageParaTypeRealCoord widthCos; mrcImageParaTypeReal radius; mrcImageParaTypeReal widthofR; mrcImageParaTypeReal wz; } lmrcImage3DWindowingInfo;
lmrcImage3DWindowingで使用するmodeの値です。
typedef enum lmrcImage3DWindowingMode { lmrcImage3DWindowingModeGaussianRectangularSolid=0, lmrcImage3DWindowingModeCosCylinder=1, lmrcImage3DWindowingModeCosSphere=2, lmrcImage3DWindowingModeCosSphereOffset=3 } lmrcImage3DWindowingMode;
API
窓関数
extern void lmrcImage3DWindowing(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode);
modeにより窓関数を選択できます。
mode | 値 | 関数 |
---|---|---|
lmrcImage3DWindowingModeGaussianRectangularSolid | 0 | lmrcImage3DWindowingGaussianRectanglularSolid |
lmrcImage3DWindowingModeCosCylinder | 1 | lmrcImage3DWindowingCosCylinder |
lmrcImage3DWindowingModeCosSphere | 2 | lmrcImage3DWindowingCosSphere |
lmrcImage3DWindowingModeCosSphereOffset | 3 | lmrcImage3DWindowingCosSphereOffset |
ガウシアン窓
ガウシアン窓を掛けます。
extern void lmrcImage3DWindowingGaussianRectanglularSolid(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode);
コサイン窓
円筒で区切ったコサイン窓
2つの円筒で覆い、内部に1、中間にコサイン窓、外部に0をそれぞれ掛けます。(データ補正あり)
extern void lmrcImage3DWindowingCosCylinder(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode);
球体で区切ったコサイン窓
2つの球体で覆い、内部に1、中間にコサイン窓、外部に0をそれぞれ掛けます。
extern void lmrcImage3DWindowingCosSphere(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode);
上記に加え、内部と中間のデータによった補正をします。
extern void lmrcImage3DWindowingCosSphereOffset(mrcImage* out, mrcImage* in, lmrcImage3DWindowingInfo* linfo, int mode);
ヘルプ
extern void lmrcImage3DWindowingUsage(FILE* fpt);