Smoke:
[blender.git] / source / blender / editors / space_view3d / view3d_intern.h
index d0e49373562a4be6988be8a3d8da2b450d45b069..e5e85cf9d16ed19d719f2978b4d438452d021ad7 100644 (file)
 #ifndef ED_VIEW3D_INTERN_H
 #define ED_VIEW3D_INTERN_H
 
+#include "ED_view3d.h"
+
 /* internal exports only */
 
-typedef struct ViewDepths {
-       unsigned short w, h;
-       float *depths;
-       double depth_range[2];
-       
-       char damaged;
-} ViewDepths;
+struct bScreen;
+struct ARegion;
+struct BoundBox;
+struct Object;
+struct DerivedMesh;
+struct wmOperatorType;
+struct bContext;
+struct wmWindowManager;
+struct EditMesh;
+struct ViewContext;
+struct ARegionType;
+
+#define BL_NEAR_CLIP 0.001
 
 /* drawing flags: */
 #define DRAW_PICKING   1
 #define DRAW_CONSTCOLOR        2
 #define DRAW_SCENESET  4
 
-/* project short */
-#define IS_CLIPPED        12000
+#define V3D_XRAY       1
+#define V3D_TRANSP     2
+
+#define V3D_SELECT_MOUSE       1
 
 /* view3d_header.c */
-void view3d_header_buttons(const bContext *C, ARegion *ar);
+void view3d_header_buttons(const struct bContext *C, struct ARegion *ar);
+void VIEW3D_OT_layers(struct wmOperatorType *ot);
+
+/* view3d_ops.c */
+void view3d_operatortypes(void);
+void view3d_keymap(struct wmWindowManager *wm);
+
+/* view3d_edit.c */
+void VIEW3D_OT_zoom(struct wmOperatorType *ot);
+void VIEW3D_OT_viewmove(struct wmOperatorType *ot);
+void VIEW3D_OT_viewrotate(struct wmOperatorType *ot);
+void VIEW3D_OT_view_all(struct wmOperatorType *ot);
+void VIEW3D_OT_viewnumpad(struct wmOperatorType *ot);
+void VIEW3D_OT_view_center(struct wmOperatorType *ot);
+void VIEW3D_OT_view_pan(struct wmOperatorType *ot);
+void VIEW3D_OT_view_persportho(struct wmOperatorType *ot);
+void VIEW3D_OT_view_orbit(struct wmOperatorType *ot);
+void VIEW3D_OT_clip_border(struct wmOperatorType *ot);
+void VIEW3D_OT_cursor3d(struct wmOperatorType *ot);
+void VIEW3D_OT_manipulator(struct wmOperatorType *ot);
+void VIEW3D_OT_render_border(struct wmOperatorType *ot);
+void VIEW3D_OT_zoom_border(struct wmOperatorType *ot);
+void VIEW3D_OT_drawtype(struct wmOperatorType *ot);
+
+void view3d_boxview_copy(ScrArea *sa, ARegion *ar);
+
+/* drawobject.c */
+void draw_object(Scene *scene, struct ARegion *ar, View3D *v3d, Base *base, int flag);
+int draw_glsl_material(Scene *scene, Object *ob, View3D *v3d, int dt);
+void draw_object_instance(Scene *scene, View3D *v3d, RegionView3D *rv3d, Object *ob, int dt, int outline);
+void draw_object_backbufsel(Scene *scene, View3D *v3d, RegionView3D *rv3d, Object *ob);
+void drawaxes(float size, int flag, char drawtype);
+void view3d_object_text_draw_add(float x, float y, float z, char *str, short xoffs);
+
+/* drawarmature.c */
+int draw_armature(Scene *scene, View3D *v3d, RegionView3D *rv3d, Base *base, int dt, int flag);
+
+/* drawmesh.c */
+void draw_mesh_textured(Scene *scene, View3D *v3d, RegionView3D *rv3d, Object *ob, struct DerivedMesh *dm, int faceselect);
 
 /* view3d_draw.c */
-void drawview3dspace(const bContext *C, ARegion *ar, View3D *v3d);
-int view3d_test_clipping(View3D *v3d, float *vec);
+void view3d_main_area_draw(const struct bContext *C, struct ARegion *ar);
+void draw_depth(Scene *scene, struct ARegion *ar, View3D *v3d, int (* func)(void *));
+void view3d_clr_clipping(void);
+void view3d_set_clipping(RegionView3D *rv3d);
+void add_view3d_after(View3D *v3d, Base *base, int type, int flag);
+void calc_viewborder(Scene *scene, struct ARegion *ar, View3D *v3d, rctf *viewborder_r);
+
 void circf(float x, float y, float rad);
 void circ(float x, float y, float rad);
-void view3d_update_depths(ARegion *ar, View3D *v3d);
+void view3d_update_depths(struct ARegion *ar, View3D *v3d);
+
+/* view3d_select.c */
+void VIEW3D_OT_select(struct wmOperatorType *ot);
+void VIEW3D_OT_select_extend(struct wmOperatorType *ot);
+void VIEW3D_OT_select_circle(struct wmOperatorType *ot);
+void VIEW3D_OT_select_border(struct wmOperatorType *ot);
+void VIEW3D_OT_select_lasso(struct wmOperatorType *ot);
 
 /* view3d_view.c */
-float *give_cursor(Scene *scene, View3D *v3d);
-void initgrabz(View3D *v3d, float x, float y, float z);
-void window_to_3d(ARegion *ar, View3D *v3d, float *vec, short mx, short my);
-void view3d_project_float(ARegion *a, float *vec, float *adr, float mat[4][4]);
-void project_short(ARegion *ar, View3D *v3d, float *vec, short *adr);
-void project_int(ARegion *ar, View3D *v3d, float *vec, int *adr);
-void project_int_noclip(ARegion *ar, View3D *v3d, float *vec, int *adr);
-void project_short_noclip(ARegion *ar, View3D *v3d, float *vec, short *adr);
-void project_float(ARegion *ar, View3D *v3d, float *vec, float *adr);
-void project_float_noclip(ARegion *ar, View3D *v3d, float *vec, float *adr);
-int get_view3d_viewplane(View3D *v3d, int winxi, int winyi, rctf *viewplane, float *clipsta, float *clipend, float *pixsize);
-
-
-void setwinmatrixview3d(wmWindow *win, View3D *v3d, int winx, int winy, rctf *rect);   /* rect: for picking */
-void setviewmatrixview3d(View3D *v3d);
+void VIEW3D_OT_smoothview(struct wmOperatorType *ot);
+void VIEW3D_OT_setcameratoview(struct wmOperatorType *ot);
+void VIEW3D_OT_localview(struct wmOperatorType *ot);
+void VIEW3D_OT_game_start(struct wmOperatorType *ot);
+
+
+int boundbox_clip(RegionView3D *rv3d, float obmat[][4], struct BoundBox *bb);
+
+void centerview(struct ARegion *ar, View3D *v3d);
+
+void smooth_view(struct bContext *C, Object *, Object *, float *ofs, float *quat, float *dist, float *lens);
+
+void setwinmatrixview3d(ARegion *ar, View3D *v3d, rctf *rect); /* rect: for picking */
+void setviewmatrixview3d(Scene *scene, View3D *v3d, RegionView3D *rv3d);
+
+/* view3d_buttons.c */
+void VIEW3D_OT_properties(struct wmOperatorType *ot);
+void view3d_buttons_register(struct ARegionType *art);
+
+/* view3d_toolbar.c */
+void VIEW3D_OT_toolbar(struct wmOperatorType *ot);
+void view3d_toolbar_register(struct ARegionType *art);
+void view3d_tool_props_register(struct ARegionType *art);
+
+/* view3d_snap.c */
+int minmax_verts(Object *obedit, float *min, float *max);
+
+void VIEW3D_OT_snap_selected_to_grid(struct wmOperatorType *ot);
+void VIEW3D_OT_snap_selected_to_cursor(struct wmOperatorType *ot);
+void VIEW3D_OT_snap_selected_to_center(struct wmOperatorType *ot);
+void VIEW3D_OT_snap_cursor_to_grid(struct wmOperatorType *ot);
+void VIEW3D_OT_snap_cursor_to_selected(struct wmOperatorType *ot);
+void VIEW3D_OT_snap_cursor_to_active(struct wmOperatorType *ot);
+void VIEW3D_OT_snap_menu(struct wmOperatorType *ot);
+
+/* space_view3d.c */
+ARegion *view3d_has_buttons_region(ScrArea *sa);
+ARegion *view3d_has_tools_region(ScrArea *sa);
+
+/* draw_volume.c */
+void draw_volume(struct Scene *scene, struct ARegion *ar, struct View3D *v3d, struct Base *base, struct GPUTexture *tex, int res[3]);
+
 
 #endif /* ED_VIEW3D_INTERN_H */