71 lines
1.6 KiB
C
71 lines
1.6 KiB
C
/*
|
|
* wind3d.h --
|
|
*
|
|
* Interface definitions for the 'glue' between the window
|
|
* manager and the 3D rendering window
|
|
*
|
|
* Copyright 2003 Open Circuit Design, Inc., for MultiGiG Ltd.
|
|
*
|
|
*/
|
|
|
|
#ifndef _MAGIC__GRAPHICS__WIND3D_H
|
|
#define _MAGIC__GRAPHICS__WIND3D_H
|
|
|
|
#include "windows/windows.h"
|
|
|
|
/* Data structures */
|
|
|
|
typedef struct
|
|
{
|
|
float view_x; /* View angle around x axis */
|
|
float view_y; /* View angle around y axis */
|
|
float view_z; /* View angle around z axis */
|
|
|
|
float trans_x; /* Translation in x */
|
|
float trans_y; /* Translation in y */
|
|
float trans_z; /* Translation in z */
|
|
|
|
float scale_xy; /* Size scaling */
|
|
float prescale_z; /* Depth scaling */
|
|
float scale_z; /* Depth scaling */
|
|
|
|
int width; /* Window width */
|
|
int height; /* Window height */
|
|
|
|
int level; /* rendering level (0 = coarse) */
|
|
|
|
bool cif; /* If TRUE, draw CIF layers */
|
|
|
|
bool clipped; /* If TRUE, set clipping */
|
|
Rect cutbox; /* Clip to this box, if clipping is set */
|
|
|
|
TileTypeBitMask visible; /* Layers to see */
|
|
|
|
MagWindow *boxWin; /* Render what's in this window */
|
|
} W3DclientRec;
|
|
|
|
/* Exported procedures */
|
|
|
|
extern void w3dSetProjection();
|
|
extern void W3Dcommand();
|
|
extern void W3Dinit();
|
|
|
|
/* Command procedures */
|
|
|
|
extern void w3dView();
|
|
extern void w3dScroll();
|
|
extern void w3dZoom();
|
|
extern void w3dRefresh();
|
|
extern void w3dToggleCIF();
|
|
extern void w3dDefaults();
|
|
extern void w3dLevel();
|
|
extern void w3dClose();
|
|
extern void w3dRenderValues();
|
|
extern void w3dSeeLayers();
|
|
extern void w3dHelp();
|
|
extern void w3dCutBox();
|
|
|
|
extern WindClient W3DclientID;
|
|
|
|
#endif /* _MAGIC__GRAPHICS__WIND3D_H */
|