Blender
V3.3
|
#include "MEM_guardedalloc.h"
#include "DNA_armature_types.h"
#include "DNA_curve_types.h"
#include "DNA_lattice_types.h"
#include "DNA_meta_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "BLI_utildefines.h"
#include "BKE_DerivedMesh.h"
#include "BKE_armature.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_editmesh.h"
#include "BKE_lattice.h"
#include "BKE_mesh_iterators.h"
#include "BKE_object.h"
#include "DEG_depsgraph.h"
#include "ED_armature.h"
#include "ED_transverts.h"
Go to the source code of this file.
Functions | |
void | ED_transverts_update_obedit (TransVertStore *tvs, Object *obedit) |
static void | set_mapped_co (void *vuserdata, int index, const float co[3], const float UNUSED(no[3])) |
bool | ED_transverts_check_obedit (const Object *obedit) |
void | ED_transverts_create_from_obedit (TransVertStore *tvs, const Object *obedit, const int mode) |
void | ED_transverts_free (TransVertStore *tvs) |
bool | ED_transverts_poll (bContext *C) |
Definition at line 182 of file ed_transverts.c.
References ELEM, OB_ARMATURE, OB_CURVES_LEGACY, OB_LATTICE, OB_MBALL, OB_MESH, OB_SURF, and Object::type.
Referenced by ED_transverts_poll(), and ED_transverts_update_obedit().
void ED_transverts_create_from_obedit | ( | TransVertStore * | tvs, |
const Object * | obedit, | ||
const int | mode | ||
) |
Definition at line 188 of file ed_transverts.c.
References Freestyle::a, Nurb::bezt, BKE_curve_editNurbs_get(), BKE_editmesh_from_object(), BKE_mesh_foreach_mapped_vert(), BKE_nurb_bezt_calc_plane(), BKE_object_get_editmesh_eval_cage(), BLI_listbase_count(), BMEditMesh::bm, bm, BM_EDGES_OF_MESH, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_elem_index_get, BM_elem_index_set, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, BM_mesh_elem_table_ensure(), BM_VERT, BM_VERTS_OF_MESH, BONE_CONNECTED, BONE_ROOTSEL, BONE_TIPSEL, Nurb::bp, BMVert::co, copy_v3_v3(), CU_BEZIER, Object::data, Lattice::def, bArmature::edbo, MetaBall::editelems, Lattice::editlatt, ELEM, BMesh::elem_index_dirty, BezTriple::f1, BPoint::f1, BezTriple::f2, BezTriple::f3, ListBase::first, EditBone::flag, TransVert::flag, MetaElem::flag, EditBone::head, BezTriple::hide, BPoint::hide, l, EditLatt::latt, EditBone::layer, bArmature::layer, TransVert::loc, MEM_callocN, MEM_freeN, MESH_FOREACH_NOP, TransVertStore::mode, EditBone::next, Nurb::next, MetaElem::next, BMVert::no, TransVert::normal, NULL, OB_ARMATURE, OB_CURVES_LEGACY, OB_LATTICE, OB_MBALL, OB_MESH, OB_SURF, TransVert::oldloc, EditBone::parent, Nurb::pntsu, Lattice::pntsu, Nurb::pntsv, Lattice::pntsv, Lattice::pntsw, SCE_SELECT_EDGE, SCE_SELECT_VERTEX, SELECT, BMEditMesh::selectmode, set_mapped_co(), EditBone::tail, TM_ALL_JOINTS, TM_CALC_MAPLOC, TM_CALC_NORMALS, TM_INDEX_OFF, TM_INDEX_ON, TM_INDEX_SKIP, TM_SKIP_HANDLES, TransVertStore::transverts, TransVertStore::transverts_tot, TX_VERT_USE_NORMAL, Nurb::type, Object::type, BMLoop::v, BMEdge::v1, BMEdge::v2, BezTriple::vec, BPoint::vec, and MetaElem::x.
void ED_transverts_free | ( | TransVertStore * | tvs | ) |
Definition at line 495 of file ed_transverts.c.
References MEM_SAFE_FREE, TransVertStore::transverts, and TransVertStore::transverts_tot.
Referenced by ED_view3d_minmax_verts(), object_rand_verts_exec(), object_warp_verts_exec(), snap_curs_to_sel_ex(), snap_sel_to_grid_exec(), and snap_selected_to_location().
Definition at line 501 of file ed_transverts.c.
References C, CTX_data_edit_object(), and ED_transverts_check_obedit().
Referenced by TRANSFORM_OT_vertex_random(), and TRANSFORM_OT_vertex_warp().
void ED_transverts_update_obedit | ( | TransVertStore * | tvs, |
Object * | obedit | ||
) |
Definition at line 37 of file ed_transverts.c.
References Freestyle::a, add_v3_v3(), ARM_MIRROR_EDIT, Nurb::bezt, BKE_curve_editNurbs_get(), BKE_editmesh_from_object(), BKE_nurb_handles_test(), BKE_nurb_project_2d(), BLI_assert, BMEditMesh::bm, BM_mesh_normals_update(), BONE_CONNECTED, BONE_ROOTSEL, BONE_TIPSEL, copy_v3_v3(), CU_IS_2D, Object::data, DEG_id_tag_update(), ED_armature_edit_transform_mirror_update(), ED_transverts_check_obedit(), bArmature::edbo, Lattice::editlatt, ELEM, BezTriple::f1, BezTriple::f2, BezTriple::f3, ListBase::first, EditBone::flag, bArmature::flag, Lattice::flag, EditBone::head, BezTriple::hide, ID_RECALC_GEOMETRY, EditLatt::latt, TransVert::loc, LT_OUTSIDE, TransVertStore::mode, EditBone::next, Nurb::next, OB_ARMATURE, OB_CURVES_LEGACY, OB_LATTICE, OB_MESH, OB_SURF, TransVert::oldloc, outside_lattice(), EditBone::parent, Nurb::pntsu, SELECT, sub_v3_v3v3(), EditBone::tail, TM_SKIP_HANDLES, TransVertStore::transverts, Object::type, v, and BezTriple::vec.
Referenced by object_rand_verts_exec(), object_warp_verts_exec(), snap_sel_to_grid_exec(), and snap_selected_to_location().
|
static |
Definition at line 156 of file ed_transverts.c.
References BMEditMesh::bm, BM_elem_index_get, BM_vert_at_index(), BMVert::co, copy_v3_v3(), TransVert::flag, len_squared_v3v3(), TransVert::maploc, TM_INDEX_SKIP, and TX_VERT_USE_MAPLOC.
Referenced by ED_transverts_create_from_obedit().