2#ifndef __JBXL_GRAPHIC_DATA_H_
3#define __JBXL_GRAPHIC_DATA_H_
170#define unset_RZxy() {ChkRZxy=OFF;}
175#define free_Graph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=0; (v)->state=JBXL_NORMAL;}}
176#define free_WSGraph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=0; (v)->state=JBXL_NORMAL;}}
177#define free_BSGraph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=0; (v)->state=JBXL_NORMAL;}}
178#define free_FSGraph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=0; (v)->state=JBXL_NORMAL;}}
179#define free_ISGraph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=0; (v)->state=JBXL_NORMAL;}}
180#define free_VSGraph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=0; (v)->state=JBXL_NORMAL;}}
181#define free_MSGraph(v) {if((v)!=NULL){if((v)->gp)free((v)->gp); (v)->gp=NULL; (v)->xs=(v)->ys=(v)->zs=(v)->depth=0; (v)->state=JBXL_NORMAL;}}
183#define del_Graph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
184#define del_WSGraph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
185#define del_BSGraph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
186#define del_FSGraph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
187#define del_ISGraph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
188#define del_VSGraph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
189#define del_MSGraph(v) {if((v)!=NULL && *(v)!=NULL) {if((*(v))->gp)free((*(v))->gp); free((*(v)); *(v)=NULL}}
191#define Lx(v, i) ((v).gp[(i)])
192#define Px(v, i, j) ((v).gp[(i)+(v).xs*(j)])
193#define Vx(v, i, j, k) ((v).gp[(i)+(v).xs*(j)+(v).xs*(v).ys*(k)])
195#define pLx(v, i) ((v)->gp[(i)])
196#define pPx(v, i, j) ((v)->gp[(i)+(v)->xs*(j)])
197#define pVx(v, i, j, k) ((v)->gp[(i)+(v)->xs*(j)+(v)->xs*(v)->ys*(k)])
199#define Lxt(v, i) ((v).gp[((i)-1)])
200#define Pxt(v, i, j) ((v).gp[((i)-1)+(v).xs*((j)-1)])
201#define Vxt(v, i, j, k) ((v).gp[((i)-1)+(v).xs*((j)-1)+(v).xs*(v).ys*((k)-1)])
203#define pLxt(v, i) ((v)->gp[((i)-1)])
204#define pPxt(v, i, j) ((v)->gp[((i)-1)+(v)->xs*((j)-1)])
205#define pVxt(v, i, j, k) ((v)->gp[((i)-1)+(v)->xs*((j)-1)+(v)->xs*(v).ys->((k)-1)])
FSGraph V2FSGraph(VSGraph vp)
BSGraph make_BSGraph(int xs, int ys, int zs)
FSGraph * new_FSGraph(int xs, int ys, int zs)
WSGraph I2WSGraph(ISGraph vp)
MSGraph make_MSGraph(int xs, int ys, int zs, int depth)
WSGraph make_WSGraph(int xs, int ys, int zs)
WSGraph grab_WSGraph(WSGraph vp, int x1, int y1, int x2, int y2)
FSGraph W2FSGraph(WSGraph vp)
WSGraph * new_WSGraph(int xs, int ys, int zs)
WSGraph zoom_WSGraph(WSGraph vp, int zm, int mode)
VSGraph * new_VSGraph(int xs, int ys, int zs)
void set_RZxy(double rzm)
BSGraph * new_BSGraph(int xs, int ys, int zs)
void init_CmnHead(CmnHead *hd)
void free_CmnHead(CmnHead *hd)
VSGraph make_VSGraph(int xs, int ys, int zs)
FSGraph make_FSGraph(int xs, int ys, int zs)
ISGraph make_ISGraph(int xs, int ys, int zs)
void copy_WSGraph(WSGraph src, WSGraph dst)
void init_DRBound(DRBound *rb)
WSGraph F2WSGraph(FSGraph vp)
WSGraph V2WSGraph(VSGraph vp)
MSGraph * new_MSGraph(int xs, int ys, int zs, int depth)
ISGraph W2ISGraph(WSGraph vp)
WSGraph B2WSGraph(BSGraph vp)
void init_IRBound(IRBound *rb)
ISGraph * new_ISGraph(int xs, int ys, int zs)
int zs
zサイズ. 4Byte. 2Dの場合は 1.
uByte * gp
グラフィックデータへのポインタ. xs*ys*zs*1Byte.
int zs
zサイズ. 4Byte. 2Dの場合は 1.
double * gp
グラフィックデータへのポインタ. xs*ys*zs*sizeof(double)
int zs
zサイズ. 4Byte. 2Dの場合は 1.
int * gp
グラフィックデータへのポインタ. xs*ys*zs*4Byte
int zs
zサイズ. 4Byte. 2Dの場合は 1.
unsigned char * gp
グラフィックデータへのポインタ. xs*ys*zs*depth.
int zs
zサイズ. 4Byte. 2Dの場合は 1.
vector * gp
グラフィックデータへのポインタ. xs*ys*zs*sizeof(vector).
int zs
zサイズ. 4Byte. 2Dの場合は 1.
sWord * gp
グラフィックデータへのポインタ. xs*ys*zs*2Byte.