54 const int mode = tvs->
mode;
76 if (bezt->
hide == 0) {
77 bool skip_handle =
false;
82 if ((bezt->
f1 &
SELECT) && !skip_handle) {
90 if (((bezt->
f1 &
SELECT) && !skip_handle) == 0) {
95 if (((bezt->
f3 &
SELECT) && !skip_handle) == 0) {
104 if ((bezt->
f3 &
SELECT) && !skip_handle) {
138 if (a < tvs->transverts_tot) {
174 const float UNUSED(no[3]),
175 const short UNUSED(no_s[3]))
177 void **userdata = vuserdata;
223 void *userdata[2] = {em,
NULL};
338 if ((tipsel && rootsel) || (rootsel)) {
374 for (nu = nurbs->
first; nu; nu = nu->
next) {
376 totmalloc += 3 * nu->
pntsu;
390 if (bezt->
hide == 0) {
391 bool skip_handle =
false;
396 if ((bezt->
f1 &
SELECT) && !skip_handle) {
422 if ((bezt->
f3 &
SELECT) && !skip_handle) {
struct Object * CTX_data_edit_object(const bContext *C)
void BKE_nurb_bezt_calc_plane(struct Nurb *nu, struct BezTriple *bezt, float r_plane[3])
struct ListBase * BKE_curve_editNurbs_get(struct Curve *cu)
void BKE_nurb_project_2d(struct Nurb *nu)
void BKE_nurb_handles_test(struct Nurb *nu, const bool use_handles, const bool use_around_local)
BMEditMesh * BKE_editmesh_from_object(struct Object *ob)
Return the BMEditMesh for a given object.
void outside_lattice(struct Lattice *lt)
void BKE_mesh_foreach_mapped_vert(struct Mesh *mesh, void(*func)(void *userData, int index, const float co[3], const float no_f[3], const short no_s[3]), void *userData, MeshForeachFlag flag)
int BLI_listbase_count(const struct ListBase *listbase) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
MINLINE float len_squared_v3v3(const float a[3], const float b[3]) ATTR_WARN_UNUSED_RESULT
MINLINE void sub_v3_v3v3(float r[3], const float a[3], const float b[3])
MINLINE void copy_v3_v3(float r[3], const float a[3])
MINLINE void add_v3_v3(float r[3], const float a[3])
void DEG_id_tag_update(struct ID *id, int flag)
Object is a sort of wrapper for general info.
#define SCE_SELECT_VERTEX
Read Guarded memory(de)allocation.
void ED_armature_edit_transform_mirror_update(Object *obedit)
#define BM_elem_index_get(ele)
#define BM_elem_index_set(ele, index)
#define BM_elem_flag_test(ele, hflag)
#define BM_ITER_ELEM(ele, iter, data, itype)
#define BM_ITER_MESH(ele, iter, bm, itype)
ATTR_WARN_UNUSED_RESULT BMesh * bm
void BM_mesh_normals_update(BMesh *bm)
BMesh Compute Normals.
void BM_mesh_elem_table_ensure(BMesh *bm, const char htype)
BLI_INLINE BMVert * BM_vert_at_index(BMesh *bm, const int index)
ATTR_WARN_UNUSED_RESULT const BMLoop * l
ATTR_WARN_UNUSED_RESULT const BMVert * v
bool ED_transverts_poll(bContext *C)
bool ED_transverts_check_obedit(Object *obedit)
void ED_transverts_create_from_obedit(TransVertStore *tvs, Object *obedit, const int mode)
void ED_transverts_free(TransVertStore *tvs)
static void set_mapped_co(void *vuserdata, int index, const float co[3], const float UNUSED(no[3]), const short UNUSED(no_s[3]))
void ED_transverts_update_obedit(TransVertStore *tvs, Object *obedit)
void(* MEM_freeN)(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
struct Mesh * mesh_eval_cage
struct EditLatt * editlatt
struct TransVert * transverts