diff options
Diffstat (limited to 'source/blender/editors/include/ED_mesh.h')
-rw-r--r-- | source/blender/editors/include/ED_mesh.h | 39 |
1 files changed, 26 insertions, 13 deletions
diff --git a/source/blender/editors/include/ED_mesh.h b/source/blender/editors/include/ED_mesh.h index 564fe04ca4d..057e5d3bf88 100644 --- a/source/blender/editors/include/ED_mesh.h +++ b/source/blender/editors/include/ED_mesh.h @@ -28,6 +28,10 @@ #ifndef ED_MESH_H #define ED_MESH_H +#ifdef __cplusplus +extern "C" { +#endif + struct ID; struct View3D; struct ARegion; @@ -47,6 +51,9 @@ struct MDeformWeight; struct MDeformVert; struct Scene; struct Mesh; +struct MFace; +struct MEdge; +struct MVert; struct MCol; struct UvVertMap; struct UvMapVert; @@ -94,10 +101,6 @@ void ED_keymap_mesh(struct wmKeyConfig *keyconf); /* editmesh.c */ - -void ED_spacetypes_init(void); -void ED_keymap_mesh(struct wmKeyConfig *keyconf); - void make_editMesh(struct Scene *scene, struct Object *ob); void load_editMesh(struct Scene *scene, struct Object *ob); void remake_editMesh(struct Scene *scene, struct Object *ob); @@ -113,7 +116,7 @@ struct EditFace *EM_get_face_for_index(int index); int EM_texFaceCheck(struct EditMesh *em); int EM_vertColorCheck(struct EditMesh *em); -void undo_push_mesh(struct bContext *C, char *name); +void undo_push_mesh(struct bContext *C, const char *name); /* editmesh_lib.c */ @@ -155,6 +158,8 @@ void EM_solidify(struct EditMesh *em, float dist); int EM_deselect_nth(struct EditMesh *em, int nth); +void EM_project_snap_verts(struct bContext *C, struct ARegion *ar, struct Object *obedit, struct EditMesh *em); + /* editmesh_mods.c */ extern unsigned int em_vertoffs, em_solidoffs, em_wireoffs; @@ -175,12 +180,13 @@ void EM_deselect_by_material(struct EditMesh *em, int index); void EM_automerge(struct Scene *scene, struct Object *obedit, int update); /* editface.c */ +void paintface_flush_flags(struct Object *ob); struct MTFace *EM_get_active_mtface(struct EditMesh *em, struct EditFace **act_efa, struct MCol **mcol, int sloppy); -int face_select(struct bContext *C, struct Object *ob, short mval[2], int extend); -void face_borderselect(struct bContext *C, struct Object *ob, struct rcti *rect, int select, int extend); -void selectall_tface(struct Object *ob, int action); -void select_linked_tfaces(struct bContext *C, struct Object *ob, short mval[2], int mode); -int minmax_tface(struct Object *ob, float *min, float *max); +int paintface_mouse_select(struct bContext *C, struct Object *ob, short mval[2], int extend); +int do_paintface_box_select(struct ViewContext *vc, struct rcti *rect, int select, int extend); +void paintface_deselect_all_visible(struct Object *ob, int action, short flush_flags); +void paintface_select_linked(struct bContext *C, struct Object *ob, short mval[2], int mode); +int paintface_minmax(struct Object *ob, float *min, float *max); /* object_vgroup.c */ @@ -189,13 +195,16 @@ int minmax_tface(struct Object *ob, float *min, float *max); #define WEIGHT_SUBTRACT 3 struct bDeformGroup *ED_vgroup_add(struct Object *ob); -struct bDeformGroup *ED_vgroup_add_name(struct Object *ob, char *name); -void ED_vgroup_select_by_name(struct Object *ob, char *name); +struct bDeformGroup *ED_vgroup_add_name(struct Object *ob, const char *name); +void ED_vgroup_delete(struct Object *ob, struct bDeformGroup *defgroup); +void ED_vgroup_select_by_name(struct Object *ob, const char *name); void ED_vgroup_data_create(struct ID *id); int ED_vgroup_give_array(struct ID *id, struct MDeformVert **dvert_arr, int *dvert_tot); int ED_vgroup_copy_array(struct Object *ob, struct Object *ob_from); void ED_vgroup_mirror(struct Object *ob, int mirror_weights, int flip_vgroups); +int ED_vgroup_object_is_edit_mode(struct Object *ob); + void ED_vgroup_vert_add(struct Object *ob, struct bDeformGroup *dg, int vertnum, float weight, int assignmode); void ED_vgroup_vert_remove(struct Object *ob, struct bDeformGroup *dg, int vertnum); float ED_vgroup_vert_weight(struct Object *ob, struct bDeformGroup *dg, int vertnum); @@ -219,10 +228,14 @@ void ED_mesh_calc_normals(struct Mesh *me); void ED_mesh_material_link(struct Mesh *me, struct Material *ma); void ED_mesh_update(struct Mesh *mesh, struct bContext *C, int calc_edges); -int ED_mesh_uv_texture_add(struct bContext *C, struct Scene *scene, struct Object *ob, struct Mesh *me, const char *name, int active_set); +int ED_mesh_uv_texture_add(struct bContext *C, struct Mesh *me, const char *name, int active_set); int ED_mesh_uv_texture_remove(struct bContext *C, struct Object *ob, struct Mesh *me); int ED_mesh_color_add(struct bContext *C, struct Scene *scene, struct Object *ob, struct Mesh *me, const char *name, int active_set); int ED_mesh_color_remove(struct bContext *C, struct Object *ob, struct Mesh *me); +#ifdef __cplusplus +} +#endif + #endif /* ED_MESH_H */ |