91 lines
1.5 KiB
C
91 lines
1.5 KiB
C
#ifndef __MAPOBJECT_MAIN_H__
|
|
#define __MAPOBJECT_MAIN_H__
|
|
|
|
/* Defines and stuff */
|
|
/* ================= */
|
|
|
|
#define PLUG_IN_PROC "plug-in-map-object"
|
|
#define PLUG_IN_BINARY "map-object"
|
|
#define PLUG_IN_ROLE "pika-map-object"
|
|
|
|
#define TILE_CACHE_SIZE 16
|
|
|
|
/* Typedefs */
|
|
/* ======== */
|
|
|
|
typedef enum
|
|
{
|
|
POINT_LIGHT,
|
|
DIRECTIONAL_LIGHT,
|
|
NO_LIGHT
|
|
} LightType;
|
|
|
|
typedef enum
|
|
{
|
|
MAP_PLANE,
|
|
MAP_SPHERE,
|
|
MAP_BOX,
|
|
MAP_CYLINDER
|
|
} MapType;
|
|
|
|
/* Typedefs */
|
|
/* ======== */
|
|
|
|
typedef struct
|
|
{
|
|
gdouble ambient_int;
|
|
gdouble diffuse_int;
|
|
gdouble diffuse_ref;
|
|
gdouble specular_ref;
|
|
gdouble highlight;
|
|
PikaRGB color;
|
|
} MaterialSettings;
|
|
|
|
typedef struct
|
|
{
|
|
LightType type;
|
|
PikaVector3 position;
|
|
PikaVector3 direction;
|
|
PikaRGB color;
|
|
gdouble intensity;
|
|
} LightSettings;
|
|
|
|
typedef struct
|
|
{
|
|
PikaVector3 viewpoint,firstaxis,secondaxis,normal,position,scale;
|
|
LightSettings lightsource;
|
|
|
|
MaterialSettings material;
|
|
MaterialSettings refmaterial;
|
|
|
|
MapType maptype;
|
|
|
|
gint antialiasing;
|
|
gint create_new_image;
|
|
gint create_new_layer;
|
|
gint transparent_background;
|
|
gint tiled;
|
|
gint livepreview;
|
|
gint showgrid;
|
|
gint showcaps;
|
|
|
|
gdouble zoom;
|
|
gdouble alpha,beta,gamma;
|
|
gdouble maxdepth;
|
|
gdouble pixelthreshold;
|
|
gdouble radius;
|
|
gdouble cylinder_radius;
|
|
gdouble cylinder_length;
|
|
|
|
gint32 boxmap_id[6];
|
|
gint32 cylindermap_id[2];
|
|
|
|
} MapObjectValues;
|
|
|
|
/* Externally visible variables */
|
|
/* ============================ */
|
|
|
|
extern MapObjectValues mapvals;
|
|
|
|
#endif /* __MAPOBJECT_MAIN_H__ */
|