Blender V4.3
ED_transverts.hh File Reference

Go to the source code of this file.

Classes

struct  TransVert
 
struct  TransVertStore
 

Enumerations

enum  { TM_INDEX_ON = 1 , TM_INDEX_OFF = 0 , TM_INDEX_SKIP = -1 }
 
enum  { TM_ALL_JOINTS = (1 << 0) , TM_SKIP_HANDLES = (1 << 1) , TM_CALC_NORMALS = (1 << 2) , TM_CALC_MAPLOC = (1 << 2) }
 
enum  { TX_VERT_USE_MAPLOC = (1 << 1) , TX_VERT_USE_NORMAL = (1 << 2) }
 

Functions

void ED_transverts_create_from_obedit (TransVertStore *tvs, const Object *obedit, int mode)
 
void ED_transverts_update_obedit (TransVertStore *tvs, Object *obedit)
 
void ED_transverts_free (TransVertStore *tvs)
 
bool ED_transverts_check_obedit (const Object *obedit)
 
bool ED_transverts_poll (bContext *C)
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
TM_INDEX_ON 

Tag to make trans verts.

TM_INDEX_OFF 

Don't make verts.

TM_INDEX_SKIP 

Don't make verts (when the index values point to trans-verts).

Definition at line 38 of file ED_transverts.hh.

◆ anonymous enum

anonymous enum
Enumerator
TM_ALL_JOINTS 

all joints (for bones only)

TM_SKIP_HANDLES 

skip handles when control point is selected (for curves only)

TM_CALC_NORMALS 

fill in normals when available

TM_CALC_MAPLOC 

Calculates TransVert.maploc where possible.

Definition at line 48 of file ED_transverts.hh.

◆ anonymous enum

anonymous enum
Enumerator
TX_VERT_USE_MAPLOC 

Calculated when TM_CALC_MAPLOC is set.

TX_VERT_USE_NORMAL 

Calculated when TM_CALC_NORMALS is set, avoid nonzero check.

Definition at line 59 of file ED_transverts.hh.

Function Documentation

◆ ED_transverts_check_obedit()

◆ ED_transverts_create_from_obedit()

void ED_transverts_create_from_obedit ( TransVertStore * tvs,
const Object * obedit,
int mode )
Parameters
obeditWhen mode has the TM_CALC_MAPLOC flag set, obedit must be evaluated, to access evaluated vertices.

Definition at line 196 of file ed_transverts.cc.

References ANIM_bonecoll_is_visible_editbone(), 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(), bm, BMEditMesh::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, MetaElem::flag, TransVert::flag, Curves::geometry, BezTriple::hide, BPoint::hide, l, EditLatt::latt, LISTBASE_FOREACH, TransVert::loc, MEM_callocN, MEM_freeN(), MESH_FOREACH_NOP, TransVertStore::mode, MetaElem::next, Nurb::next, BMVert::no, TransVert::normal, OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_LATTICE, OB_MBALL, OB_MESH, OB_SURF, TransVert::oldloc, Lattice::pntsu, Nurb::pntsu, Lattice::pntsv, Nurb::pntsv, Lattice::pntsw, SCE_SELECT_EDGE, SCE_SELECT_VERTEX, SELECT, BMEditMesh::selectmode, set_mapped_co(), TM_ALL_JOINTS, TM_CALC_MAPLOC, TM_CALC_NORMALS, TM_INDEX_OFF, TM_INDEX_ON, TM_INDEX_SKIP, TM_SKIP_HANDLES, TransVertStore::transverts, blender::ed::curves::transverts_from_curves_positions_create(), TransVertStore::transverts_tot, TX_VERT_USE_NORMAL, Nurb::type, Object::type, BMLoop::v, BMEdge::v1, BMEdge::v2, BezTriple::vec, BPoint::vec, and MetaElem::x.

Referenced by ED_view3d_minmax_verts(), blender::ed::object::object_rand_verts_exec(), blender::ed::object::object_warp_verts_exec(), snap_curs_to_sel_ex(), snap_sel_to_grid_exec(), and snap_selected_to_location().

◆ ED_transverts_free()

◆ ED_transverts_poll()

◆ ED_transverts_update_obedit()