summaryrefslogtreecommitdiffstats
path: root/plug-ins/map-object/map-object-main.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--plug-ins/map-object/map-object-main.h90
1 files changed, 90 insertions, 0 deletions
diff --git a/plug-ins/map-object/map-object-main.h b/plug-ins/map-object/map-object-main.h
new file mode 100644
index 0000000..5958c7c
--- /dev/null
+++ b/plug-ins/map-object/map-object-main.h
@@ -0,0 +1,90 @@
+#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 "gimp-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;
+ GimpRGB color;
+} MaterialSettings;
+
+typedef struct
+{
+ LightType type;
+ GimpVector3 position;
+ GimpVector3 direction;
+ GimpRGB color;
+ gdouble intensity;
+} LightSettings;
+
+typedef struct
+{
+ GimpVector3 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__ */