Blender V2.61 - r43446
Classes | Defines | Typedefs | Functions

editface.c File Reference

#include <math.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "BLI_heap.h"
#include "BLI_edgehash.h"
#include "BLI_editVert.h"
#include "BLI_utildefines.h"
#include "IMB_imbuf_types.h"
#include "IMB_imbuf.h"
#include "DNA_meshdata_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BKE_DerivedMesh.h"
#include "BKE_global.h"
#include "BKE_mesh.h"
#include "BKE_context.h"
#include "BIF_gl.h"
#include "ED_mesh.h"
#include "ED_screen.h"
#include "ED_view3d.h"
#include "WM_api.h"
#include "WM_types.h"
#include "mesh_intern.h"

Go to the source code of this file.

Classes

struct  MirrTopoVert_t

Defines

#define ME_SEAM_DONE   2

Typedefs

typedef int MirrTopoHash_t
typedef struct MirrTopoVert_t MirrTopoVert_t

Functions

void paintface_flush_flags (Object *ob)
static int facesel_face_pick (struct bContext *C, Mesh *me, const int mval[2], unsigned int *index, short rect)
MTFaceEM_get_active_mtface (EditMesh *em, EditFace **act_efa, MCol **mcol, int sloppy)
void paintface_hide (Object *ob, const int unselected)
void paintface_reveal (Object *ob)
static void hash_add_face (EdgeHash *ehash, MFace *mf)
static void select_linked_tfaces_with_seams (int mode, Mesh *me, unsigned int index)
void paintface_select_linked (bContext *UNUSED(C), Object *ob, int UNUSED(mval[2]), int mode)
void paintface_deselect_all_visible (Object *ob, int action, short flush_flags)
int paintface_minmax (Object *ob, float *min, float *max)
static float edgetag_cut_cost (int e1, int e2, int vert)
static void edgetag_add_adjacent (Heap *heap, int mednum, int vertnum, int *nedges, int *edges, int *prevedge, float *cost)
void edgetag_context_set (Scene *scene, EditEdge *eed, int val)
int edgetag_context_check (Scene *scene, EditEdge *eed)
int edgetag_shortest_path (Scene *scene, EditMesh *em, EditEdge *source, EditEdge *target)
int paintface_mouse_select (struct bContext *C, Object *ob, const int mval[2], int extend)
int do_paintface_box_select (ViewContext *vc, rcti *rect, int select, int extend)
static int mirrtopo_hash_sort (const void *l1, const void *l2)
static int mirrtopo_vert_sort (const void *v1, const void *v2)
int ED_mesh_mirrtopo_recalc_check (Mesh *me, const int ob_mode, MirrTopoStore_t *mesh_topo_store)
void ED_mesh_mirrtopo_init (Mesh *me, const int ob_mode, MirrTopoStore_t *mesh_topo_store, const short skip_em_vert_array_init)
void ED_mesh_mirrtopo_free (MirrTopoStore_t *mesh_topo_store)

Detailed Description

Definition in file editface.c.


Define Documentation

#define ME_SEAM_DONE   2

Definition at line 436 of file editface.c.

Referenced by edgetag_add_adjacent(), and edgetag_shortest_path().


Typedef Documentation

typedef int MirrTopoHash_t

Definition at line 824 of file editface.c.


Function Documentation

int do_paintface_box_select ( ViewContext vc,
rcti rect,
int  select,
int  extend 
)
void ED_mesh_mirrtopo_free ( MirrTopoStore_t mesh_topo_store)
void ED_mesh_mirrtopo_init ( Mesh me,
const int  ob_mode,
MirrTopoStore_t mesh_topo_store,
const short  skip_em_vert_array_init 
)
int ED_mesh_mirrtopo_recalc_check ( Mesh me,
const int  ob_mode,
MirrTopoStore_t mesh_topo_store 
)
static void edgetag_add_adjacent ( Heap heap,
int  mednum,
int  vertnum,
int *  nedges,
int *  edges,
int *  prevedge,
float *  cost 
) [static]
int edgetag_context_check ( Scene scene,
EditEdge eed 
)
void edgetag_context_set ( Scene scene,
EditEdge eed,
int  val 
)
static float edgetag_cut_cost ( int  e1,
int  e2,
int  vert 
) [static]
int edgetag_shortest_path ( Scene scene,
EditMesh em,
EditEdge source,
EditEdge target 
)
MTFace* EM_get_active_mtface ( EditMesh em,
EditFace **  act_efa,
MCol **  mcol,
int  sloppy 
) [read]
static int facesel_face_pick ( struct bContext C,
Mesh me,
const int  mval[2],
unsigned int *  index,
short  rect 
) [static]
static void hash_add_face ( EdgeHash ehash,
MFace mf 
) [static]

Definition at line 211 of file editface.c.

References BLI_edgehash_insert(), NULL, MFace::v1, MFace::v2, MFace::v3, and MFace::v4.

Referenced by select_linked_tfaces_with_seams().

static int mirrtopo_hash_sort ( const void *  l1,
const void *  l2 
) [static]

Definition at line 831 of file editface.c.

Referenced by ED_mesh_mirrtopo_init().

static int mirrtopo_vert_sort ( const void *  v1,
const void *  v2 
) [static]

Definition at line 838 of file editface.c.

References hash.

Referenced by ED_mesh_mirrtopo_init().

void paintface_deselect_all_visible ( Object ob,
int  action,
short  flush_flags 
)
void paintface_flush_flags ( Object ob)
void paintface_hide ( Object ob,
const int  unselected 
)
int paintface_minmax ( Object ob,
float *  min,
float *  max 
)
int paintface_mouse_select ( struct bContext C,
Object ob,
const int  mval[2],
int  extend 
)
void paintface_reveal ( Object ob)
void paintface_select_linked ( bContext UNUSEDC,
Object ob,
int   UNUSEDmval[2],
int  mode 
)
static void select_linked_tfaces_with_seams ( int  mode,
Mesh me,
unsigned int  index 
) [static]