Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!decvax!decwrl!flairvax!turtleva!ken From: ken@turtleva.UUCP (Ken Turkowski) Newsgroups: net.sources Subject: Oops, forgot scn_assmblr.h in Graphics Source distribution Message-ID: <311@turtleva.UUCP> Date: Wed, 28-Dec-83 00:57:59 EST Article-I.D.: turtleva.311 Posted: Wed Dec 28 00:57:59 1983 Date-Received: Sat, 24-Dec-83 01:54:27 EST Lines: 52 echo x - hsalgs/scn_assmblr.h cat >hsalgs/scn_assmblr.h <<'!Funky!Stuff!' /* ---------------------------------------------------------------- scn_assmblr.h - header for scn_assmblr.c, obj_sort.c, task_master.c, bbox_task.c contains all common definitions and data structures -------------------------------------------------------------------- */ #include #define TRUE 1 #define FALSE 0 #define NULLCHAR '\0' #define LINE_LENGTH 160 /* length of input line */ #define MAX_OBJECTS 256 /* must be multiple of 32 */ #define STACK_LIMIT 16 /* maximum depth of recursion on input files */ #define MAXROT 8 /* maximum number of concatenated rotations */ #define sqr(x) ((x)*(x)) #define DtoR 3.14159 / 180. /* convert degrees to radians */ /* 1st several objects are predefined - object offsets*/ #define BKG 0 /* background */ #define FRG 1 /* foreground */ #define CI 2 /* center-of-interest */ #define EP 3 /* eyepoint offset */ #define LIT 4 /* offset for first light source (space for 16) */ #define FIRST_OBJ 20 /* offset for first real object */ /* --- object descriptions - non-null name means it's active - up through 1st light are always active (eyepoint, center_of_interest, etc.) -------- */ typedef struct { char name[LINE_LENGTH]; /* object name */ char filename[LINE_LENGTH]; /* definition file name */ char display[LINE_LENGTH]; /* display program name */ float scale[3]; float rotbas[MAXROT][3],rotend[MAXROT][3],angle[MAXROT]; float postn[3]; char new_mtx,clipped; float mtx[4][4],comp_mtx[4][4]; char new_clr,clr_num; float clr[3]; char supported; /* set if "on" another object */ short parent; /* index of object attached to */ float box[6]; /* bounding box limits */ float centroid[3],radius; /* bounding sphere */ float xfmd_ctr[3],xfmd_radius,depth; /* sort aids */ short touched; /* tag for indicating access occurrence */ } object_def; !Funky!Stuff!