Blender V2.61 - r43446
Defines | Functions | Variables

editmesh_mods.c File Reference

#include <stdlib.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "DNA_material_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_modifier_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "BLI_editVert.h"
#include "BLI_rand.h"
#include "BLI_utildefines.h"
#include "BKE_context.h"
#include "BKE_displist.h"
#include "BKE_depsgraph.h"
#include "BKE_mesh.h"
#include "BKE_material.h"
#include "BKE_paint.h"
#include "BKE_report.h"
#include "BKE_texture.h"
#include "IMB_imbuf_types.h"
#include "IMB_imbuf.h"
#include "RE_render_ext.h"
#include "WM_api.h"
#include "WM_types.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "ED_mesh.h"
#include "ED_screen.h"
#include "ED_view3d.h"
#include "ED_uvedit.h"
#include "BIF_gl.h"
#include "mesh_intern.h"
#include "BLO_sys_types.h"

Go to the source code of this file.

Defines

#define SIMVERT_NORMAL   0
#define SIMVERT_FACE   1
#define SIMVERT_VGROUP   2
#define SIMVERT_TOT   3
#define SIMEDGE_LENGTH   101
#define SIMEDGE_DIR   102
#define SIMEDGE_FACE   103
#define SIMEDGE_FACE_ANGLE   104
#define SIMEDGE_CREASE   105
#define SIMEDGE_SEAM   106
#define SIMEDGE_SHARP   107
#define SIMEDGE_TOT   108
#define SIMFACE_MATERIAL   201
#define SIMFACE_IMAGE   202
#define SIMFACE_AREA   203
#define SIMFACE_PERIMETER   204
#define SIMFACE_NORMAL   205
#define SIMFACE_COPLANAR   206
#define SIMFACE_TOT   207
#define SCALE_CMP(a, b)   ((a+a*thresh >= b) && (a-(a*thresh*0.5f) <= b))
#define is_edge_delimit_ok(eed)   ((eed->tmp.l == 1) && (eed->seam==0))
#define is_face_tag(efa)   is_edge_delimit_ok(efa->e1) || is_edge_delimit_ok(efa->e2) || is_edge_delimit_ok(efa->e3) || (efa->v4 && is_edge_delimit_ok(efa->e4))
#define face_tag(efa)
#define face_table_edge(eed)
#define face_table_edge(eed)
#define select_flat_neighbor(eed)

Functions

static void waitcursor (int UNUSED(val))
static int pupmenu (const char *UNUSED(arg))
void EM_cache_x_mirror_vert (struct Object *ob, struct EditMesh *em)
static void EM_select_mirrored (Object *obedit, EditMesh *em, int extend)
void EM_automerge (Scene *scene, Object *obedit, int update)
static void draw_triangulated (int mcords[][2], short tot)
int EM_init_backbuf_border (ViewContext *vc, short xmin, short ymin, short xmax, short ymax)
int EM_check_backbuf (unsigned int index)
void EM_free_backbuf (void)
int EM_mask_init_backbuf_border (ViewContext *vc, int mcords[][2], short tot, short xmin, short ymin, short xmax, short ymax)
int EM_init_backbuf_circle (ViewContext *vc, short xs, short ys, short rads)
static void findnearestvert__doClosest (void *userData, EditVert *eve, int x, int y, int index)
static unsigned int findnearestvert__backbufIndextest (void *handle, unsigned int index)
EditVertfindnearestvert (ViewContext *vc, int *dist, short sel, short strict)
static float labda_PdistVL2Dfl (float *v1, float *v2, float *v3)
static void findnearestedge__doClosest (void *userData, EditEdge *eed, int x0, int y0, int x1, int y1, int UNUSED(index))
EditEdgefindnearestedge (ViewContext *vc, int *dist)
static void findnearestface__getDistance (void *userData, EditFace *efa, int x, int y, int UNUSED(index))
static void findnearestface__doClosest (void *userData, EditFace *efa, int x, int y, int index)
static EditFacefindnearestface (ViewContext *vc, int *dist)
static int unified_findnearest (ViewContext *vc, EditVert **eve, EditEdge **eed, EditFace **efa)
static int similar_face_select__internal (EditMesh *em, int mode, float thresh)
static int similar_face_select_exec (bContext *C, wmOperator *op)
static int similar_edge_select__internal (EditMesh *em, int mode, float thresh)
static int similar_edge_select_exec (bContext *C, wmOperator *op)
static int similar_vert_select_exec (bContext *C, wmOperator *op)
static int select_similar_exec (bContext *C, wmOperator *op)
static EnumPropertyItemselect_similar_type_itemf (bContext *C, PointerRNA *UNUSED(ptr), PropertyRNA *UNUSED(prop), int *free)
void MESH_OT_select_similar (wmOperatorType *ot)
int mesh_layers_menu_charlen (CustomData *data, int type)
void mesh_layers_menu_concat (CustomData *data, int type, char *str)
int mesh_layers_menu (CustomData *data, int type)
static void EM_mesh_copy_edge (EditMesh *em, short type)
static void EM_mesh_copy_face (EditMesh *em, wmOperator *op, short type)
void EM_mesh_copy_face_layer (EditMesh *em, wmOperator *op, short type)
static void UNUSED_FUNCTION() mesh_copy_menu (EditMesh *em, wmOperator *op)
void faceloop_select (EditMesh *em, EditEdge *startedge, int select)
static int edge_not_in_tagged_face (EditMesh *em, EditEdge *eed)
static void ensure_ed_vert_sel (EditMesh *em)
static void edgeloop_select (EditMesh *em, EditEdge *starteed, int select)
static void edgering_select (EditMesh *em, EditEdge *startedge, int select)
static int loop_multiselect (bContext *C, wmOperator *op)
void MESH_OT_loop_multi_select (wmOperatorType *ot)
static void mouse_mesh_loop (bContext *C, const int mval[2], short extend, short ring)
static int mesh_select_loop_invoke (bContext *C, wmOperator *op, wmEvent *event)
void MESH_OT_loop_select (wmOperatorType *ot)
static void mouse_mesh_shortest_path (bContext *C, const int mval[2])
static int mesh_shortest_path_select_invoke (bContext *C, wmOperator *UNUSED(op), wmEvent *event)
static int mesh_shortest_path_select_poll (bContext *C)
void MESH_OT_select_shortest_path (wmOperatorType *ot)
int mouse_mesh (bContext *C, const int mval[2], short extend)
static int select_linked_limited_invoke (ViewContext *vc, short all, short sel)
static void linked_limit_default (bContext *C, wmOperator *op)
static int select_linked_pick_invoke (bContext *C, wmOperator *op, wmEvent *event)
void MESH_OT_select_linked_pick (wmOperatorType *ot)
void selectconnected_mesh_all (EditMesh *em)
static int select_linked_exec (bContext *C, wmOperator *op)
static int select_linked_invoke (bContext *C, wmOperator *op, wmEvent *UNUSED(event))
void MESH_OT_select_linked (wmOperatorType *ot)
void EM_hide_mesh (EditMesh *em, int swap)
static int hide_mesh_exec (bContext *C, wmOperator *op)
void MESH_OT_hide (wmOperatorType *ot)
void EM_reveal_mesh (EditMesh *em)
static int reveal_mesh_exec (bContext *C, wmOperator *UNUSED(op))
void MESH_OT_reveal (wmOperatorType *ot)
static int select_by_number_vertices_exec (bContext *C, wmOperator *op)
void MESH_OT_select_by_number_vertices (wmOperatorType *ot)
static int select_mirror_exec (bContext *C, wmOperator *op)
void MESH_OT_select_mirror (wmOperatorType *ot)
static int select_sharp_edges_exec (bContext *C, wmOperator *op)
void MESH_OT_edges_select_sharp (wmOperatorType *ot)
static void select_linked_flat_faces (EditMesh *em, wmOperator *op, float sharpness)
static int select_linked_flat_faces_exec (bContext *C, wmOperator *op)
void MESH_OT_faces_select_linked_flat (wmOperatorType *ot)
static void select_non_manifold (EditMesh *em, wmOperator *op)
static int select_non_manifold_exec (bContext *C, wmOperator *op)
void MESH_OT_select_non_manifold (wmOperatorType *ot)
void EM_select_swap (EditMesh *em)
void EM_toggle_select_all (EditMesh *em)
void EM_select_all (EditMesh *em)
void EM_deselect_all (EditMesh *em)
static int editmesh_select_all_exec (bContext *C, wmOperator *op)
void MESH_OT_select_all (wmOperatorType *ot)
void EM_select_more (EditMesh *em)
static int select_more (bContext *C, wmOperator *UNUSED(op))
void MESH_OT_select_more (wmOperatorType *ot)
static void EM_select_less (EditMesh *em)
static int select_less (bContext *C, wmOperator *UNUSED(op))
void MESH_OT_select_less (wmOperatorType *ot)
static void selectrandom_mesh (EditMesh *em, float randfac)
static int mesh_select_random_exec (bContext *C, wmOperator *op)
void MESH_OT_select_random (wmOperatorType *ot)
void EM_select_by_material (EditMesh *em, int index)
void EM_deselect_by_material (EditMesh *em, int index)
static int editmesh_mark_seam (bContext *C, wmOperator *op)
void MESH_OT_mark_seam (wmOperatorType *ot)
static int editmesh_mark_sharp (bContext *C, wmOperator *op)
void MESH_OT_mark_sharp (wmOperatorType *ot)
void EM_recalc_normal_direction (EditMesh *em, int inside, int select)
static int normals_make_consistent_exec (bContext *C, wmOperator *op)
void MESH_OT_normals_make_consistent (wmOperatorType *ot)
static int smooth_vertex (bContext *C, wmOperator *op)
static int smooth_vertex_exec (bContext *C, wmOperator *op)
void MESH_OT_vertices_smooth (wmOperatorType *ot)
static int mesh_noise_exec (bContext *C, wmOperator *op)
void MESH_OT_noise (wmOperatorType *ot)
void flipface (EditMesh *em, EditFace *efa)
static int flip_normals (bContext *C, wmOperator *UNUSED(op))
void MESH_OT_flip_normals (wmOperatorType *ot)
static int solidify_exec (bContext *C, wmOperator *op)
void MESH_OT_solidify (wmOperatorType *ot)
static int mesh_select_nth_exec (bContext *C, wmOperator *op)
void MESH_OT_select_nth (wmOperatorType *ot)

Variables

unsigned int em_solidoffs = 0
unsigned int em_wireoffs = 0
unsigned int em_vertoffs = 0
static char * selbuf = NULL
static EnumPropertyItem prop_similar_types []

Detailed Description

Definition in file editmesh_mods.c.


Define Documentation

#define face_table_edge (   eed)
Value:
{ \
        i = eed->tmp.l; \
        if (i != -1) { \
            if (efa1[i]) { \
                if (efa2[i]) { \
                    /* invalidate, edge has more than two neighbors */ \
                    eed->tmp.l = -1; \
                } \
                else { \
                    efa2[i] = efa; \
                } \
            } \
            else { \
                efa1[i] = efa; \
            } \
        } \
    }

Referenced by select_linked_flat_faces(), and select_sharp_edges_exec().

#define face_table_edge (   eed)
Value:
{ \
        i = eed->tmp.l; \
        if (i != -1) { \
            if (efa1[i]) { \
                if (efa2[i]) { \
                    /* invalidate, edge has more than two neighbors */ \
                    eed->tmp.l = -1; \
                } \
                else { \
                    efa2[i] = efa; \
                } \
            } \
            else { \
                efa1[i] = efa; \
            } \
        } \
    }
#define face_tag (   efa)
Value:
if(efa->v4) efa->tmp.l=     efa->e1->tmp.l= efa->e2->tmp.l= efa->e3->tmp.l= efa->e4->tmp.l= 1;\
else        efa->tmp.l=     efa->e1->tmp.l= efa->e2->tmp.l= efa->e3->tmp.l= 1;

Definition at line 2350 of file editmesh_mods.c.

Referenced by select_linked_limited_invoke().

#define is_edge_delimit_ok (   eed)    ((eed->tmp.l == 1) && (eed->seam==0))

Definition at line 2347 of file editmesh_mods.c.

#define is_face_tag (   efa)    is_edge_delimit_ok(efa->e1) || is_edge_delimit_ok(efa->e2) || is_edge_delimit_ok(efa->e3) || (efa->v4 && is_edge_delimit_ok(efa->e4))

Definition at line 2348 of file editmesh_mods.c.

Referenced by select_linked_limited_invoke().

#define SCALE_CMP (   a,
 
)    ((a+a*thresh >= b) && (a-(a*thresh*0.5f) <= b))
#define select_flat_neighbor (   eed)
Value:
{ \
                i = eed->tmp.l; \
                if (i!=-1) { \
                    if (! (efa1[i]->f & SELECT) ) { \
                        EM_select_face(efa1[i], 1); \
                        ++faceselcount; \
                    } \
                    if (! (efa2[i]->f & SELECT) ) { \
                        EM_select_face(efa2[i], 1); \
                        ++faceselcount; \
                    } \
                } \
    }

Referenced by select_linked_flat_faces().

#define SIMEDGE_CREASE   105

Definition at line 699 of file editmesh_mods.c.

Referenced by similar_edge_select__internal().

#define SIMEDGE_DIR   102

Definition at line 696 of file editmesh_mods.c.

Referenced by similar_edge_select__internal().

#define SIMEDGE_FACE   103

Definition at line 697 of file editmesh_mods.c.

Referenced by similar_edge_select__internal().

#define SIMEDGE_FACE_ANGLE   104

Definition at line 698 of file editmesh_mods.c.

Referenced by similar_edge_select__internal().

#define SIMEDGE_LENGTH   101

Definition at line 695 of file editmesh_mods.c.

Referenced by select_similar_type_itemf(), and similar_edge_select__internal().

#define SIMEDGE_SEAM   106

Definition at line 700 of file editmesh_mods.c.

Referenced by similar_edge_select__internal().

#define SIMEDGE_SHARP   107

Definition at line 701 of file editmesh_mods.c.

Referenced by similar_edge_select__internal().

#define SIMEDGE_TOT   108

Definition at line 702 of file editmesh_mods.c.

Referenced by select_similar_type_itemf().

#define SIMFACE_AREA   203

Definition at line 708 of file editmesh_mods.c.

Referenced by similar_face_select__internal().

#define SIMFACE_COPLANAR   206

Definition at line 711 of file editmesh_mods.c.

Referenced by similar_face_select__internal().

#define SIMFACE_IMAGE   202

Definition at line 707 of file editmesh_mods.c.

Referenced by similar_face_select__internal().

#define SIMFACE_MATERIAL   201

Definition at line 706 of file editmesh_mods.c.

Referenced by select_similar_type_itemf(), and similar_face_select__internal().

#define SIMFACE_NORMAL   205

Definition at line 710 of file editmesh_mods.c.

Referenced by similar_face_select__internal().

#define SIMFACE_PERIMETER   204

Definition at line 709 of file editmesh_mods.c.

Referenced by similar_face_select__internal().

#define SIMFACE_TOT   207

Definition at line 712 of file editmesh_mods.c.

Referenced by select_similar_type_itemf().

#define SIMVERT_FACE   1

Definition at line 689 of file editmesh_mods.c.

Referenced by similar_vert_select_exec().

#define SIMVERT_NORMAL   0
#define SIMVERT_TOT   3

Definition at line 691 of file editmesh_mods.c.

Referenced by select_similar_type_itemf().

#define SIMVERT_VGROUP   2

Definition at line 690 of file editmesh_mods.c.

Referenced by similar_vert_select_exec().


Function Documentation

static void draw_triangulated ( int  mcords[][2],
short  tot 
) [static]
static int edge_not_in_tagged_face ( EditMesh em,
EditEdge eed 
) [static]
static void edgeloop_select ( EditMesh em,
EditEdge starteed,
int  select 
) [static]
static void edgering_select ( EditMesh em,
EditEdge startedge,
int  select 
) [static]
static int editmesh_mark_seam ( bContext C,
wmOperator op 
) [static]
static int editmesh_mark_sharp ( bContext C,
wmOperator op 
) [static]
static int editmesh_select_all_exec ( bContext C,
wmOperator op 
) [static]
void EM_automerge ( Scene scene,
Object obedit,
int  update 
)
void EM_cache_x_mirror_vert ( struct Object ob,
struct EditMesh em 
)
int EM_check_backbuf ( unsigned int  index)
void EM_deselect_all ( EditMesh em)
void EM_deselect_by_material ( EditMesh em,
int  index 
)
void EM_free_backbuf ( void  )
void EM_hide_mesh ( EditMesh em,
int  swap 
)
int EM_init_backbuf_border ( ViewContext vc,
short  xmin,
short  ymin,
short  xmax,
short  ymax 
)
int EM_init_backbuf_circle ( ViewContext vc,
short  xs,
short  ys,
short  rads 
)
int EM_mask_init_backbuf_border ( ViewContext vc,
int  mcords[][2],
short  tot,
short  xmin,
short  ymin,
short  xmax,
short  ymax 
)
static void EM_mesh_copy_edge ( EditMesh em,
short  type 
) [static]
static void EM_mesh_copy_face ( EditMesh em,
wmOperator op,
short  type 
) [static]
void EM_mesh_copy_face_layer ( EditMesh em,
wmOperator op,
short  type 
)
void EM_recalc_normal_direction ( EditMesh em,
int  inside,
int  select 
)
void EM_reveal_mesh ( EditMesh em)
void EM_select_all ( EditMesh em)

Definition at line 3396 of file editmesh_mods.c.

References EM_set_flag_all_selectmode(), and SELECT.

Referenced by editmesh_select_all_exec(), and select_all_perform().

void EM_select_by_material ( EditMesh em,
int  index 
)
static void EM_select_less ( EditMesh em) [static]
static void EM_select_mirrored ( Object obedit,
EditMesh em,
int  extend 
) [static]
void EM_select_more ( EditMesh em)
void EM_select_swap ( EditMesh em)
void EM_toggle_select_all ( EditMesh em)
static void ensure_ed_vert_sel ( EditMesh em) [static]
void faceloop_select ( EditMesh em,
EditEdge startedge,
int  select 
)
EditEdge* findnearestedge ( ViewContext vc,
int *  dist 
)
static void findnearestedge__doClosest ( void *  userData,
EditEdge eed,
int  x0,
int  y0,
int  x1,
int  y1,
int   UNUSEDindex 
) [static]
static EditFace* findnearestface ( ViewContext vc,
int *  dist 
) [static]
static void findnearestface__doClosest ( void *  userData,
EditFace efa,
int  x,
int  y,
int  index 
) [static]

Definition at line 561 of file editmesh_mods.c.

References abs(), and data.

Referenced by findnearestface().

static void findnearestface__getDistance ( void *  userData,
EditFace efa,
int  x,
int  y,
int   UNUSEDindex 
) [static]

Definition at line 550 of file editmesh_mods.c.

References abs(), and data.

Referenced by findnearestface().

EditVert* findnearestvert ( ViewContext vc,
int *  dist,
short  sel,
short  strict 
)

findnearestvert

dist (in/out): minimal distance to the nearest and at the end, actual distance sel: selection bias if SELECT, selected vertice are given a 5 pixel bias to make them farter than unselect verts if 0, unselected vertice are given the bias strict: if 1, the vertice corresponding to the sel parameter are ignored and not just biased

Definition at line 408 of file editmesh_mods.c.

References BLI_findlink(), data, distance(), View3D::drawtype, ED_view3d_init_mats_rv3d(), ViewContext::em, em_wireoffs, findnearestvert__backbufIndextest(), findnearestvert__doClosest(), View3D::flag, mesh_foreachScreenVert(), ViewContext::mval, NULL, OB_WIRE, ViewContext::obedit, ViewContext::rv3d, ViewContext::v3d, V3D_CLIP_TEST_RV3D_CLIPPING, V3D_ZBUF_SELECT, EditMesh::verts, and view3d_sample_backbuf_rect().

Referenced by unified_findnearest().

static unsigned int findnearestvert__backbufIndextest ( void *  handle,
unsigned int  index 
) [static]

Definition at line 391 of file editmesh_mods.c.

References BLI_findlink(), EditVert::f, SELECT, and EditMesh::verts.

Referenced by findnearestvert().

static void findnearestvert__doClosest ( void *  userData,
EditVert eve,
int  x,
int  y,
int  index 
) [static]

Definition at line 359 of file editmesh_mods.c.

References abs(), data, and EditVert::f.

Referenced by findnearestvert().

static int flip_normals ( bContext C,
wmOperator UNUSEDop 
) [static]
void flipface ( EditMesh em,
EditFace efa 
)
static int hide_mesh_exec ( bContext C,
wmOperator op 
) [static]
static float labda_PdistVL2Dfl ( float *  v1,
float *  v2,
float *  v3 
) [static]

Definition at line 467 of file editmesh_mods.c.

References len().

Referenced by findnearestedge__doClosest().

static void linked_limit_default ( bContext C,
wmOperator op 
) [static]
static int loop_multiselect ( bContext C,
wmOperator op 
) [static]
static void UNUSED_FUNCTION() mesh_copy_menu ( EditMesh em,
wmOperator op 
) [static]
int mesh_layers_menu ( CustomData data,
int  type 
)
int mesh_layers_menu_charlen ( CustomData data,
int  type 
)

Definition at line 1307 of file editmesh_mods.c.

References i, CustomData::layers, len(), and CustomData::totlayer.

Referenced by mesh_layers_menu().

void mesh_layers_menu_concat ( CustomData data,
int  type,
char *  str 
)
static int mesh_noise_exec ( bContext C,
wmOperator op 
) [static]
void MESH_OT_edges_select_sharp ( wmOperatorType ot)
void MESH_OT_faces_select_linked_flat ( wmOperatorType ot)
void MESH_OT_flip_normals ( wmOperatorType ot)
void MESH_OT_hide ( wmOperatorType ot)
void MESH_OT_loop_multi_select ( wmOperatorType ot)
void MESH_OT_loop_select ( wmOperatorType ot)
void MESH_OT_mark_seam ( wmOperatorType ot)
void MESH_OT_mark_sharp ( wmOperatorType ot)
void MESH_OT_noise ( wmOperatorType ot)
void MESH_OT_normals_make_consistent ( wmOperatorType ot)
void MESH_OT_reveal ( wmOperatorType ot)
void MESH_OT_select_all ( wmOperatorType ot)
void MESH_OT_select_by_number_vertices ( wmOperatorType ot)
void MESH_OT_select_less ( wmOperatorType ot)
void MESH_OT_select_linked ( wmOperatorType ot)
void MESH_OT_select_linked_pick ( wmOperatorType ot)
void MESH_OT_select_mirror ( wmOperatorType ot)
void MESH_OT_select_more ( wmOperatorType ot)
void MESH_OT_select_non_manifold ( wmOperatorType ot)
void MESH_OT_select_nth ( wmOperatorType ot)
void MESH_OT_select_random ( wmOperatorType ot)
void MESH_OT_select_shortest_path ( wmOperatorType ot)
void MESH_OT_select_similar ( wmOperatorType ot)
void MESH_OT_solidify ( wmOperatorType ot)
void MESH_OT_vertices_smooth ( wmOperatorType ot)
static int mesh_select_loop_invoke ( bContext C,
wmOperator op,
wmEvent event 
) [static]
static int mesh_select_nth_exec ( bContext C,
wmOperator op 
) [static]
static int mesh_select_random_exec ( bContext C,
wmOperator op 
) [static]
static int mesh_shortest_path_select_invoke ( bContext C,
wmOperator UNUSEDop,
wmEvent event 
) [static]
static int mesh_shortest_path_select_poll ( bContext C) [static]
int mouse_mesh ( bContext C,
const int  mval[2],
short  extend 
)
static void mouse_mesh_loop ( bContext C,
const int  mval[2],
short  extend,
short  ring 
) [static]
static void mouse_mesh_shortest_path ( bContext C,
const int  mval[2] 
) [static]
static int normals_make_consistent_exec ( bContext C,
wmOperator op 
) [static]
static int pupmenu ( const char *  UNUSEDarg) [static]

Definition at line 90 of file editmesh_mods.c.

Referenced by BIF_selectOrientation(), mesh_copy_menu(), and mesh_layers_menu().

static int reveal_mesh_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int select_by_number_vertices_exec ( bContext C,
wmOperator op 
) [static]
static int select_less ( bContext C,
wmOperator UNUSEDop 
) [static]
static int select_linked_exec ( bContext C,
wmOperator op 
) [static]
static void select_linked_flat_faces ( EditMesh em,
wmOperator op,
float  sharpness 
) [static]
static int select_linked_flat_faces_exec ( bContext C,
wmOperator op 
) [static]
static int select_linked_invoke ( bContext C,
wmOperator op,
wmEvent UNUSEDevent 
) [static]

Definition at line 2644 of file editmesh_mods.c.

References linked_limit_default(), and select_linked_exec().

Referenced by MESH_OT_select_linked().

static int select_linked_limited_invoke ( ViewContext vc,
short  all,
short  sel 
) [static]
static int select_linked_pick_invoke ( bContext C,
wmOperator op,
wmEvent event 
) [static]
static int select_mirror_exec ( bContext C,
wmOperator op 
) [static]
static int select_more ( bContext C,
wmOperator UNUSEDop 
) [static]
static void select_non_manifold ( EditMesh em,
wmOperator op 
) [static]
static int select_non_manifold_exec ( bContext C,
wmOperator op 
) [static]
static int select_sharp_edges_exec ( bContext C,
wmOperator op 
) [static]
static int select_similar_exec ( bContext C,
wmOperator op 
) [static]
static EnumPropertyItem* select_similar_type_itemf ( bContext C,
PointerRNA UNUSEDptr,
PropertyRNA UNUSEDprop,
int *  free 
) [static]
void selectconnected_mesh_all ( EditMesh em)
static void selectrandom_mesh ( EditMesh em,
float  randfac 
) [static]
static int similar_edge_select__internal ( EditMesh em,
int  mode,
float  thresh 
) [static]
static int similar_edge_select_exec ( bContext C,
wmOperator op 
) [static]
static int similar_face_select__internal ( EditMesh em,
int  mode,
float  thresh 
) [static]
static int similar_face_select_exec ( bContext C,
wmOperator op 
) [static]
static int similar_vert_select_exec ( bContext C,
wmOperator op 
) [static]
static int smooth_vertex ( bContext C,
wmOperator op 
) [static]
static int smooth_vertex_exec ( bContext C,
wmOperator op 
) [static]

Definition at line 4211 of file editmesh_mods.c.

References i, OPERATOR_FINISHED, wmOperator::ptr, RNA_int_get(), and smooth_vertex().

Referenced by MESH_OT_vertices_smooth().

static int solidify_exec ( bContext C,
wmOperator op 
) [static]
static int unified_findnearest ( ViewContext vc,
EditVert **  eve,
EditEdge **  eed,
EditFace **  efa 
) [static]
static void waitcursor ( int   UNUSEDval) [static]

Definition at line 89 of file editmesh_mods.c.

Referenced by EM_recalc_normal_direction().


Variable Documentation

unsigned int em_solidoffs = 0
unsigned int em_vertoffs = 0
unsigned int em_wireoffs = 0
Initial value:
 {
    {SIMVERT_NORMAL, "NORMAL", 0, "Normal", ""},
    {SIMVERT_FACE, "FACE", 0, "Amount of Vertices in Face", ""},
    {SIMVERT_VGROUP, "VGROUP", 0, "Vertex Groups", ""},
    {SIMEDGE_LENGTH, "LENGTH", 0, "Length", ""},
    {SIMEDGE_DIR, "DIR", 0, "Direction", ""},
    {SIMEDGE_FACE, "FACE", 0, "Amount of Vertices in Face", ""},
    {SIMEDGE_FACE_ANGLE, "FACE_ANGLE", 0, "Face Angles", ""},
    {SIMEDGE_CREASE, "CREASE", 0, "Crease", ""},
    {SIMEDGE_SEAM, "SEAM", 0, "Seam", ""},
    {SIMEDGE_SHARP, "SHARP", 0, "Sharpness", ""},
    {SIMFACE_MATERIAL, "MATERIAL", 0, "Material", ""},
    {SIMFACE_IMAGE, "IMAGE", 0, "Image", ""},
    {SIMFACE_AREA, "AREA", 0, "Area", ""},
    {SIMFACE_PERIMETER, "PERIMETER", 0, "Perimeter", ""},
    {SIMFACE_NORMAL, "NORMAL", 0, "Normal", ""},
    {SIMFACE_COPLANAR, "COPLANAR", 0, "Co-planar", ""},
    {0, NULL, 0, NULL, NULL}
}

Definition at line 714 of file editmesh_mods.c.

Referenced by select_similar_type_itemf().

char* selbuf = NULL [static]

Definition at line 160 of file editmesh_mods.c.