「lmrc3Dto2D(API)」の版間の差分
提供: Eospedia
(ページの作成:「DataManip/transform/src/'''lmrc3Dto2D'''はmrc3Dto2DのためのAPI です。 == 定数 == typedef enum lmrc3Dto2DObjectAreaMode { lmrc3D2DObjectAreaModeCubic=0, ...」) |
|||
行2: | 行2: | ||
== 定数 == | == 定数 == | ||
+ | lmrc3Dto2DInfoのメンバーAreaModeの値として使用します。 | ||
typedef enum lmrc3Dto2DObjectAreaMode { | typedef enum lmrc3Dto2DObjectAreaMode { | ||
lmrc3D2DObjectAreaModeCubic=0, | lmrc3D2DObjectAreaModeCubic=0, | ||
行8: | 行9: | ||
== 構造体 == | == 構造体 == | ||
+ | このAPIの設定データとして使用します。 | ||
typedef struct lmrc3Dto2DInfo { | typedef struct lmrc3Dto2DInfo { | ||
/* Rot1 */ | /* Rot1 */ | ||
行46: | 行48: | ||
} lmrc3Dto2DInfo; | } lmrc3Dto2DInfo; | ||
+ | lmrcImage3Dto2DSingleの1軸回転に関する設定データとして使用します。 | ||
typedef struct lmrc3Dto2DSingleInfo { | typedef struct lmrc3Dto2DSingleInfo { | ||
/* Section */ | /* Section */ | ||
行55: | 行58: | ||
== API == | == API == | ||
extern void lmrcImage3Dto2D(mrcImage* out, mrcImage* in, lmrc3Dto2DInfo* linfo, int mode); | extern void lmrcImage3Dto2D(mrcImage* out, mrcImage* in, lmrc3Dto2DInfo* linfo, int mode); | ||
− | + | ||
+ | ===1軸回転=== | ||
extern void lmrcImage3Dto2DSingle(mrcImage* out, mrcImage* in, | extern void lmrcImage3Dto2DSingle(mrcImage* out, mrcImage* in, | ||
char Mat[4], | char Mat[4], | ||
行64: | 行68: | ||
lmrc3Dto2DSingleInfo* llinfo, | lmrc3Dto2DSingleInfo* llinfo, | ||
int mode); | int mode); | ||
+ | |||
+ | ===参照ファイルの角度情報を使用=== | ||
+ | 参照投影像refのトレイラと同じ角度情報で2D投影を行います。 | ||
+ | extern void lmrcImage3Dto2DFollowingTailer(mrcImage* out, mrcImage* in, mrcImage* ref, lmrc3Dto2DInfo* linfo, int mode); | ||
+ | 繰り返し([[SIRT]])で[[3次元再構成]]を行うときなどに使用します。 |
2014年5月22日 (木) 02:24時点における版
DataManip/transform/src/lmrc3Dto2Dはmrc3Dto2DのためのAPI です。
定数
lmrc3Dto2DInfoのメンバーAreaModeの値として使用します。
typedef enum lmrc3Dto2DObjectAreaMode { lmrc3D2DObjectAreaModeCubic=0, lmrc3D2DObjectAreaModeGlobular=1 } lmrc3Dto2DObjectAreaMode;
構造体
このAPIの設定データとして使用します。
typedef struct lmrc3Dto2DInfo { /* Rot1 */ double Rot1Start; double Rot1End; double Rot1Delta; int nRot1; /* Rot2 */ double Rot2Start; double Rot2End; double Rot2Delta; int nRot2; /* Rot3 */ double Rot3Start; double Rot3End; double Rot3Delta; int nRot3; /* EulerAngleMode*/ char EulerAngleMode[5]; /* InterpolationMode */ int InterpolationMode; /* */ lmrc3Dto2DObjectAreaMode AreaMode; /* PVM */ int flagPVM; /* fileListInformation */ int flagFileList; char* filenamePrefix; char* filenameSuffix; char* filenameNumberFormat; } lmrc3Dto2DInfo;
lmrcImage3Dto2DSingleの1軸回転に関する設定データとして使用します。
typedef struct lmrc3Dto2DSingleInfo { /* Section */ int section; /* Init */ int flagInit; } lmrc3Dto2DSingleInfo;
API
extern void lmrcImage3Dto2D(mrcImage* out, mrcImage* in, lmrc3Dto2DInfo* linfo, int mode);
1軸回転
extern void lmrcImage3Dto2DSingle(mrcImage* out, mrcImage* in, char Mat[4], double Rot1, double Rot2, double Rot3, lmrc3Dto2DInfo* linfo, lmrc3Dto2DSingleInfo* llinfo, int mode);
参照ファイルの角度情報を使用
参照投影像refのトレイラと同じ角度情報で2D投影を行います。
extern void lmrcImage3Dto2DFollowingTailer(mrcImage* out, mrcImage* in, mrcImage* ref, lmrc3Dto2DInfo* linfo, int mode);
繰り返し(SIRT)で3次元再構成を行うときなどに使用します。