gem5/splash2/codes/apps/radiosity/glibps/pslib.h

48 lines
1.1 KiB
C
Raw Normal View History

/* -*-mode:c-*- */
/**************************************************************
*
* CS348C Radiosity
*
* Device independent graphics package.
*
* May 6, 1991
* Tsai, Tso-Sheng
* Totsuka, Takashi
*
***************************************************************/
#ifndef _PSLIB_H
#define _PSLIB_H
#include "../structs.H"
#define M_PI 3.14159265358979323846
typedef struct
{
float v[4] ; /* x, y, z, and w */
} Vertex2;
typedef struct
{
float m[4][4] ; /* m[row][column], row vector assumed */
} Matrix;
/****************************************
*
* Library function type definition
*
*****************************************/
long ps_open(char *file);
void ps_close(void);
void ps_linewidth(float w);
void ps_line(Vertex *p1, Vertex *p2);
void ps_polygonedge(long n, Vertex *p_list);
void ps_polygon(long n, Vertex *p_list);
void ps_spolygon(long n, Vertex *p_list, Rgb *c_list);
void ps_clear(void);
void ps_setup_view(float rot_x, float rot_y, float dist, float zoom);
#endif