2000-02-18 21:59:18 +08:00
|
|
|
#ifndef __MAPOBJECT_SHADE_H__
|
|
|
|
#define __MAPOBJECT_SHADE_H__
|
1998-03-20 10:42:24 +08:00
|
|
|
|
2024-09-13 20:32:34 +08:00
|
|
|
typedef void (* get_ray_color_func) (GimpVector3 *pos,
|
|
|
|
gdouble *color);
|
1998-03-20 10:42:24 +08:00
|
|
|
|
|
|
|
extern get_ray_color_func get_ray_color;
|
|
|
|
|
2024-09-13 20:32:34 +08:00
|
|
|
void get_ray_color_plane (GimpVector3 *pos,
|
|
|
|
gdouble *color);
|
|
|
|
void get_ray_color_sphere (GimpVector3 *pos,
|
|
|
|
gdouble *color);
|
|
|
|
void get_ray_color_box (GimpVector3 *pos,
|
|
|
|
gdouble *color);
|
|
|
|
void get_ray_color_cylinder (GimpVector3 *pos,
|
|
|
|
gdouble *color);
|
2000-12-30 08:23:34 +08:00
|
|
|
void compute_bounding_box (void);
|
2000-02-18 21:59:18 +08:00
|
|
|
|
2024-09-13 20:32:34 +08:00
|
|
|
void vecmulmat (GimpVector3 *u,
|
|
|
|
GimpVector3 *v,
|
|
|
|
gfloat m[16]);
|
|
|
|
void rotatemat (gfloat angle,
|
|
|
|
GimpVector3 *v,
|
|
|
|
gfloat m[16]);
|
|
|
|
void transpose_mat (gfloat m[16]);
|
|
|
|
void matmul (gfloat a[16],
|
|
|
|
gfloat b[16],
|
|
|
|
gfloat c[16]);
|
|
|
|
void ident_mat (gfloat m[16]);
|
|
|
|
|
|
|
|
void composite (gdouble *color1,
|
|
|
|
gdouble *color2,
|
|
|
|
CompositeType mode);
|
1998-03-20 10:42:24 +08:00
|
|
|
|
2000-02-18 21:59:18 +08:00
|
|
|
#endif /* __MAPOBJECT_SHADE_H__ */
|