Welcome to mirror list, hosted at ThFree Co, Russian Federation.

bmesh_operators.h « bmesh « blender « source - git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 3ef229f00c616a95ce5b7286af9f28c40b8b792b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef BM_OPERATORS_H
#define BM_OPERATORS_H

/*--------defines/enumerations for specific operators-------*/

/*del operator "context" slot values*/
enum {
	DEL_VERTS = 1,
	DEL_EDGES,
	DEL_ONLYFACES,
	DEL_EDGESFACES,
	DEL_FACES,
	DEL_ALL	,
	DEL_ONLYTAGGED,
};

extern BMOpDefine *opdefines[];
extern int bmesh_total_ops;

/*------specific operator helper functions-------*/

/*executes the duplicate operation, feeding elements of 
  type flag etypeflag and header flag flag to it.  note,
  to get more useful information (such as the mapping from
  original to new elements) you should run the dupe op manually.*/
struct Object;
struct EditMesh;

void BMOP_DupeFromFlag(struct BMesh *bm, int etypeflag, int flag);
void BM_esubdivideflag(struct Object *obedit, BMesh *bm, int flag, float smooth, 
		       float fractal, int beauty, int numcuts, int seltype);
void BM_extrudefaceflag(BMesh *bm, int flag);

/*this next one return 1 if they did anything, or zero otherwise.
  they're kindof a hackish way to integrate with fkey, until
  such time as fkey is completely bmeshafied.*/
/*this doesn't display errors to the user, btw*/
int BM_ConnectVerts(struct EditMesh *em, int flag);

#endif