Blender
V3.3
|
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "DNA_camera_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_modifier_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_alloca.h"
#include "BLI_array.h"
#include "BLI_linklist.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_memarena.h"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "BLI_uvproject.h"
#include "BLT_translation.h"
#include "BKE_cdderivedmesh.h"
#include "BKE_context.h"
#include "BKE_customdata.h"
#include "BKE_editmesh.h"
#include "BKE_image.h"
#include "BKE_layer.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_mesh.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_subsurf.h"
#include "DEG_depsgraph.h"
#include "GEO_uv_parametrizer.h"
#include "PIL_time.h"
#include "UI_interface.h"
#include "UI_view2d.h"
#include "ED_image.h"
#include "ED_mesh.h"
#include "ED_screen.h"
#include "ED_uvedit.h"
#include "ED_view3d.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "uvedit_intern.h"
Go to the source code of this file.
Classes | |
struct | UnwrapOptions |
struct | UnwrapResultInfo |
struct | MinStretch |
struct | ThickFace |
Pack UV Islands Operator | |
enum | { PACK_UDIM_SRC_CLOSEST = 0 , PACK_UDIM_SRC_ACTIVE = 1 } |
static void | uvedit_pack_islands (const Scene *scene, Object *ob, BMesh *bm) |
static void | uvedit_pack_islands_multi (const Scene *scene, Object **objects, const uint objects_len, const UnwrapOptions *options, bool rotate, bool ignore_pinned) |
static int | pack_islands_exec (bContext *C, wmOperator *op) |
void | UV_OT_pack_islands (wmOperatorType *ot) |
UV Unwrap Operator | |
enum | { UNWRAP_ERROR_NONUNIFORM = (1 << 0) , UNWRAP_ERROR_NEGATIVE = (1 << 1) } |
static void | uvedit_unwrap (const Scene *scene, Object *obedit, const UnwrapOptions *options, UnwrapResultInfo *result_info) |
static void | uvedit_unwrap_multi (const Scene *scene, Object **objects, const int objects_len, const UnwrapOptions *options, UnwrapResultInfo *result_info) |
void | ED_uvedit_live_unwrap (const Scene *scene, Object **objects, int objects_len) |
static int | unwrap_exec (bContext *C, wmOperator *op) |
void | UV_OT_unwrap (wmOperatorType *ot) |
Minimize Stretch Operator | |
typedef struct MinStretch | MinStretch |
static bool | minimize_stretch_init (bContext *C, wmOperator *op) |
static void | minimize_stretch_iteration (bContext *C, wmOperator *op, bool interactive) |
static void | minimize_stretch_exit (bContext *C, wmOperator *op, bool cancel) |
static int | minimize_stretch_exec (bContext *C, wmOperator *op) |
static int | minimize_stretch_invoke (bContext *C, wmOperator *op, const wmEvent *UNUSED(event)) |
static int | minimize_stretch_modal (bContext *C, wmOperator *op, const wmEvent *event) |
static void | minimize_stretch_cancel (bContext *C, wmOperator *op) |
void | UV_OT_minimize_stretch (wmOperatorType *ot) |
Smart UV Project Operator | |
typedef struct ThickFace | ThickFace |
static const float | smart_uv_project_area_ignore = 1e-12f |
static int | smart_uv_project_thickface_area_cmp_fn (const void *tf_a_p, const void *tf_b_p) |
static uint | smart_uv_project_calculate_project_normals (const ThickFace *thick_faces, const uint thick_faces_len, BMesh *bm, const float project_angle_limit_half_cos, const float project_angle_limit_cos, const float area_weight, float(**r_project_normal_array)[3]) |
static int | smart_project_exec (bContext *C, wmOperator *op) |
void | UV_OT_smart_project (wmOperatorType *ot) |
Live UV Unwrap | |
struct { | |
ParamHandle ** handles | |
uint len | |
uint len_alloc | |
} | g_live_unwrap = {NULL} |
void | ED_uvedit_live_unwrap_begin (Scene *scene, Object *obedit) |
void | ED_uvedit_live_unwrap_re_solve (void) |
void | ED_uvedit_live_unwrap_end (short cancel) |
#define ALIGN_TO_OBJECT 2 |
Definition at line 1352 of file uvedit_unwrap_ops.c.
#define POLAR_ZX 0 |
Definition at line 1354 of file uvedit_unwrap_ops.c.
#define POLAR_ZY 1 |
Definition at line 1355 of file uvedit_unwrap_ops.c.
#define VIEW_ON_EQUATOR 0 |
Definition at line 1350 of file uvedit_unwrap_ops.c.
#define VIEW_ON_POLES 1 |
Definition at line 1351 of file uvedit_unwrap_ops.c.
typedef struct MinStretch MinStretch |
typedef struct UnwrapOptions UnwrapOptions |
typedef struct UnwrapResultInfo UnwrapResultInfo |
anonymous enum |
Enumerator | |
---|---|
PACK_UDIM_SRC_CLOSEST | |
PACK_UDIM_SRC_ACTIVE |
Definition at line 1098 of file uvedit_unwrap_ops.c.
anonymous enum |
Enumerator | |
---|---|
UNWRAP_ERROR_NONUNIFORM | |
UNWRAP_ERROR_NEGATIVE |
Definition at line 1896 of file uvedit_unwrap_ops.c.
|
static |
Definition at line 1194 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs, BMEditMesh::bm, C, construct_param_handle_multi(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, DEG_id_tag_update(), GEO_uv_parametrizer_average(), GEO_uv_parametrizer_delete(), GEO_uv_parametrizer_flush(), ID_RECALC_GEOMETRY, MEM_freeN, NC_GEOM, ND_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, options, wmOperator::ptr, RNA_boolean_get(), scene, Scene::toolsettings, BMesh::totvertsel, ToolSettings::uv_flag, UV_SYNC_SELECTION, uvedit_have_selection_multi(), and WM_event_add_notifier().
Referenced by UV_OT_average_islands_scale().
|
static |
Definition at line 389 of file uvedit_unwrap_ops.c.
References bm, BM_EDGES_OF_MESH, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_elem_index_get, BM_ELEM_SEAM, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_EDGE, CD_MLOOPUV, CustomData_get_offset(), GEO_uv_find_pin_index(), GEO_uv_parametrizer_edge_set_seam(), l, BMesh::ldata, BMLoop::next, options, MLoopUV::uv, and BMLoop::v.
Referenced by construct_param_handle(), and construct_param_handle_multi().
|
static |
Definition at line 430 of file uvedit_unwrap_ops.c.
References bm, BM_FACES_OF_MESH, BM_ITER_MESH_INDEX, BM_mesh_elem_index_ensure(), BM_VERT, CD_MLOOPUV, construct_param_edge_set_seams(), construct_param_handle_face_add(), UnwrapResultInfo::count_failed, CustomData_get_offset(), ED_uvedit_get_aspect(), GEO_uv_parametrizer_aspect_ratio(), GEO_uv_parametrizer_construct_begin(), GEO_uv_parametrizer_construct_end(), BMesh::ldata, NULL, options, scene, uvedit_is_face_affected(), and uvedit_prepare_pinned_indices().
Referenced by ED_uvedit_live_unwrap_begin(), uvedit_pack_islands(), and uvedit_unwrap().
|
static |
Definition at line 353 of file uvedit_unwrap_ops.c.
References BLI_array_alloca, BM_ELEM_CD_GET_VOID_P, BM_elem_index_get, BM_ITER_ELEM_INDEX, BM_LOOPS_OF_FACE, BMVert::co, MLoopUV::flag, GEO_uv_find_pin_index(), GEO_uv_parametrizer_face_add(), l, BMFace::len, MLOOPUV_PINNED, options, scene, select(), MLoopUV::uv, uvedit_uv_select_test(), and BMLoop::v.
Referenced by construct_param_handle(), and construct_param_handle_multi().
|
static |
Version of construct_param_handle that handles multiple objects.
Definition at line 481 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, bm, BM_FACES_OF_MESH, BM_ITER_MESH_INDEX, BM_VERT, CD_MLOOPUV, construct_param_edge_set_seams(), construct_param_handle_face_add(), CustomData_get_offset(), ED_uvedit_get_aspect(), EDBM_mesh_elem_index_ensure_multi(), GEO_uv_parametrizer_aspect_ratio(), GEO_uv_parametrizer_construct_begin(), GEO_uv_parametrizer_construct_end(), BMesh::ldata, NULL, offset, options, scene, BMesh::totface, uvedit_is_face_affected(), and uvedit_prepare_pinned_indices().
Referenced by average_islands_scale_exec(), minimize_stretch_init(), and uvedit_pack_islands_multi().
|
static |
Unwrap handle initialization for subsurf aware-unwrapper. The many modifications required to make the original function(see above) work justified the existence of a new function.
Definition at line 577 of file uvedit_unwrap_ops.c.
References BKE_id_free(), BKE_mesh_from_bmesh_for_eval_nomain(), BLI_assert, BMEditMesh::bm, BM_EDGE, BM_edge_at_index(), BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SEAM, BM_ELEM_SELECT, BM_FACE, BM_face_at_index(), BM_mesh_elem_index_ensure(), BM_mesh_elem_table_ensure(), BM_VERT, CD_MLOOPUV, CD_ORIGINDEX, CDDM_from_mesh(), MVert::co, UnwrapResultInfo::count_failed, CustomData_get_offset(), Object::data, ED_uvedit_get_aspect(), faceMap, ListBase::first, GEO_uv_parametrizer_aspect_ratio(), GEO_uv_parametrizer_construct_begin(), GEO_uv_parametrizer_construct_end(), GEO_uv_parametrizer_edge_set_seam(), GEO_uv_parametrizer_face_add(), DerivedMesh::getEdgeArray, DerivedMesh::getEdgeDataArray, DerivedMesh::getLoopArray, DerivedMesh::getNumEdges, DerivedMesh::getNumPolys, DerivedMesh::getPolyArray, DerivedMesh::getPolyDataArray, DerivedMesh::getVertArray, DerivedMesh::getVertDataArray, BMesh::ldata, SubsurfModifierData::levels, MPoly::loopstart, MEM_freeN, MEM_mallocN, Object::modifiers, NULL, options, ORIGINDEX_NONE, DerivedMesh::release, scene, select(), SubsurfModifierData::subdivType, SUBSURF_IN_EDIT_MODE, subsurf_make_derived_from_derived(), texface_from_original_index(), Scene::toolsettings, MPoly::totloop, ToolSettings::uv_flag, UV_SYNC_SELECTION, v, and MLoop::v.
Referenced by ED_uvedit_live_unwrap_begin(), and uvedit_unwrap().
|
static |
Definition at line 1607 of file uvedit_unwrap_ops.c.
References BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_MESH, CD_MLOOPUV, CustomData_get_offset(), ED_uvedit_get_aspect(), BMesh::ldata, and shrink_loop_uv_by_aspect_ratio().
Referenced by uv_map_clip_correct_multi().
|
static |
Definition at line 1626 of file uvedit_unwrap_ops.c.
References BLI_array_alloca, BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_MESH, CD_MLOOPUV, copy_vn_fl(), CustomData_get_offset(), ED_uvedit_get_aspect_from_material(), BMesh::ldata, BMFace::mat_nr, shrink_loop_uv_by_aspect_ratio(), Object::totcol, and UNLIKELY.
Referenced by uv_map_clip_correct_multi().
|
static |
Definition at line 2987 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, BMEditMesh::bm, bounds(), C, center, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, DEG_id_tag_update(), ED_uvedit_ensure_uvs(), float(), ID_RECALC_GEOMETRY, max_fff(), MEM_freeN, NC_GEOM, ND_DATA, NULL, OPERATOR_FINISHED, wmOperator::ptr, RNA_property_float_get(), RNA_property_float_set(), RNA_property_is_set(), RNA_struct_find_property(), scene, sub_v3_v3v3(), BMesh::totfacesel, UNPACK3, uv_map_clip_correct(), uv_map_transform_center(), uvedit_unwrap_cube_project(), and WM_event_add_notifier().
Referenced by UV_OT_cube_project().
|
static |
Definition at line 2862 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, C, CD_MLOOPUV, center, BMVert::co, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_offset(), Object::data, DEG_id_tag_update(), ED_uvedit_ensure_uvs(), ID_RECALC_GEOMETRY, l, BMesh::ldata, MEM_freeN, NC_GEOM, ND_DATA, NULL, OPERATOR_FINISHED, ProjCameraInfo::rotmat, scene, BMesh::totfacesel, MLoopUV::uv, uv_cylinder_project(), uv_map_clip_correct(), uv_map_mirror(), uv_map_transform(), uv_map_transform_center(), BMLoop::v, and WM_event_add_notifier().
Referenced by UV_OT_cylinder_project().
Definition at line 3078 of file uvedit_unwrap_ops.c.
References bm, bm_mesh_allocsize_default, BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_create(), BM_mesh_free(), Object::data, ED_mesh_uv_ensure(), ED_uvedit_select_all(), NULL, scene, Scene::toolsettings, ToolSettings::uv_flag, UV_SYNC_SELECTION, ToolSettings::uvcalc_margin, uvedit_pack_islands(), and uvedit_unwrap_cube_project().
Definition at line 94 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, CD_MLOOPUV, CustomData_get_offset(), CustomData_has_layer(), Object::data, ED_mesh_uv_add(), ED_uvedit_test(), MLoopUV::flag, l, BMesh::ldata, MLOOPUV_EDGESEL, MLOOPUV_VERTSEL, NULL, and BMesh::totface.
Referenced by cube_project_exec(), cylinder_project_exec(), reset_exec(), smart_project_exec(), sphere_project_exec(), unwrap_exec(), and uv_from_view_exec().
Definition at line 287 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BLI_assert, BMEditMesh::bm, BM_mesh_active_face_get(), ED_uvedit_get_aspect_from_material(), BMFace::mat_nr, and NULL.
Referenced by construct_param_handle(), construct_param_handle_multi(), construct_param_handle_subsurfed(), correct_uv_aspect(), ED_uvedit_pack_islands_multi(), stitch_init(), uv_rip_exec(), uv_shortest_path_pick_exec(), uv_shortest_path_pick_invoke(), and uv_shortest_path_select_exec().
void ED_uvedit_get_aspect_from_material | ( | Object * | ob, |
const int | material_index, | ||
float * | r_aspx, | ||
float * | r_aspy | ||
) |
Definition at line 272 of file uvedit_unwrap_ops.c.
References ED_image_get_uv_aspect(), ED_object_get_active_image(), NULL, Object::totcol, and UNLIKELY.
Referenced by correct_uv_aspect_per_face(), and ED_uvedit_get_aspect().
Definition at line 1877 of file uvedit_unwrap_ops.c.
References ToolSettings::edge_mode_live_unwrap, NULL, options, rotate(), scene, Scene::toolsettings, UVCALC_FILLHOLES, ToolSettings::uvcalc_flag, UVCALC_NO_ASPECT_CORRECT, uvedit_pack_islands_multi(), and uvedit_unwrap_multi().
Definition at line 1271 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, construct_param_handle(), construct_param_handle_subsurfed(), ED_uvedit_test(), g_live_unwrap, GEO_uv_parametrizer_lscm_begin(), MEM_mallocN, MEM_reallocN, modifier_unwrap_state(), NULL, options, scene, Scene::toolsettings, ToolSettings::unwrapper, UVCALC_FILLHOLES, ToolSettings::uvcalc_flag, and UVCALC_NO_ASPECT_CORRECT.
Referenced by createTransUVs(), and uvedit_live_unwrap_update().
void ED_uvedit_live_unwrap_end | ( | short | cancel | ) |
Definition at line 1327 of file uvedit_unwrap_ops.c.
References g_live_unwrap, GEO_uv_parametrizer_delete(), GEO_uv_parametrizer_flush_restore(), GEO_uv_parametrizer_lscm_end(), MEM_freeN, and NULL.
Referenced by postTrans(), and uvedit_live_unwrap_update().
Definition at line 1317 of file uvedit_unwrap_ops.c.
References g_live_unwrap, GEO_uv_parametrizer_flush(), GEO_uv_parametrizer_lscm_solve(), and NULL.
Referenced by recalcData_uv(), and uvedit_live_unwrap_update().
bool ED_uvedit_udim_params_from_image_space | ( | const SpaceImage * | sima, |
bool | use_active, | ||
struct UVMapUDIM_Params * | udim_params | ||
) |
Definition at line 136 of file uvedit_unwrap_ops.c.
References BLI_findlink(), SpaceImage::cursor, floorf, UVMapUDIM_Params::grid_shape, IMA_SRC_TILED, image(), UVMapUDIM_Params::image, SpaceImage::image, NULL, UVMapUDIM_Params::target_udim, SpaceImage::tile_grid_shape, ImageTile::tile_number, UVMapUDIM_Params::use_target_udim, and uv_coords_isect_udim().
Referenced by pack_islands_exec().
|
static |
Definition at line 1000 of file uvedit_unwrap_ops.c.
References C, and minimize_stretch_exit().
Referenced by UV_OT_minimize_stretch().
|
static |
Definition at line 911 of file uvedit_unwrap_ops.c.
References C, minimize_stretch_exit(), minimize_stretch_init(), minimize_stretch_iteration(), OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, and RNA_int_get().
Referenced by UV_OT_minimize_stretch().
|
static |
Definition at line 869 of file uvedit_unwrap_ops.c.
References blender::compositor::area(), BKE_editmesh_from_object(), BMEditMesh::bm, C, CTX_data_scene(), CTX_wm_area(), CTX_wm_manager(), CTX_wm_window(), wmOperator::customdata, Object::data, DEG_id_tag_update(), ED_area_status_text(), ED_workspace_status_text(), GEO_uv_parametrizer_delete(), GEO_uv_parametrizer_flush(), GEO_uv_parametrizer_flush_restore(), GEO_uv_parametrizer_stretch_end(), MinStretch::handle, ID_RECALC_GEOMETRY, MEM_freeN, NC_GEOM, ND_DATA, NULL, MinStretch::objects_edit, MinStretch::objects_len, scene, MinStretch::timer, Scene::toolsettings, BMesh::totfacesel, ToolSettings::uv_flag, UV_SYNC_SELECTION, WM_event_add_notifier(), and WM_event_remove_timer().
Referenced by minimize_stretch_cancel(), minimize_stretch_exec(), and minimize_stretch_modal().
|
static |
Definition at line 786 of file uvedit_unwrap_ops.c.
References BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs, MinStretch::blend, C, construct_param_handle_multi(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), wmOperator::customdata, GEO_uv_parametrizer_stretch_begin(), GEO_uv_parametrizer_stretch_blend(), MinStretch::handle, MinStretch::i, MinStretch::iterations, MinStretch::lasttime, MEM_callocN, MEM_freeN, MinStretch::objects_edit, MinStretch::objects_len, options, PIL_check_seconds_timer(), wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), RNA_int_get(), scene, MinStretch::scene, and uvedit_have_selection_multi().
Referenced by minimize_stretch_exec(), and minimize_stretch_invoke().
|
static |
Definition at line 928 of file uvedit_unwrap_ops.c.
References C, CTX_wm_manager(), CTX_wm_window(), wmOperator::customdata, minimize_stretch_init(), minimize_stretch_iteration(), OPERATOR_CANCELLED, OPERATOR_RUNNING_MODAL, MinStretch::timer, TIMER, WM_event_add_modal_handler(), and WM_event_add_timer().
Referenced by UV_OT_minimize_stretch().
|
static |
Definition at line 828 of file uvedit_unwrap_ops.c.
References blender::compositor::area(), BKE_editmesh_from_object(), MinStretch::blend, BLI_snprintf(), BMEditMesh::bm, C, CTX_data_scene(), CTX_wm_area(), wmOperator::customdata, Object::data, DEG_id_tag_update(), ED_area_status_text(), ED_workspace_status_text(), GEO_uv_parametrizer_flush(), GEO_uv_parametrizer_stretch_blend(), GEO_uv_parametrizer_stretch_iter(), MinStretch::handle, MinStretch::i, ID_RECALC_GEOMETRY, MinStretch::lasttime, NC_GEOM, ND_DATA, MinStretch::objects_edit, MinStretch::objects_len, PIL_check_seconds_timer(), wmOperator::ptr, RNA_int_set(), scene, str, TIP_, Scene::toolsettings, BMesh::totfacesel, UI_MAX_DRAW_STR, ToolSettings::uv_flag, UV_SYNC_SELECTION, and WM_event_add_notifier().
Referenced by minimize_stretch_exec(), minimize_stretch_invoke(), and minimize_stretch_modal().
|
static |
Definition at line 945 of file uvedit_unwrap_ops.c.
References MinStretch::blend, C, wmOperator::customdata, wmEvent::customdata, EVT_ESCKEY, EVT_PADENTER, EVT_PADMINUS, EVT_PADPLUSKEY, EVT_RETKEY, MinStretch::i, MinStretch::iterations, KM_PRESS, MinStretch::lasttime, LEFTMOUSE, minimize_stretch_exit(), minimize_stretch_iteration(), OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_RUNNING_MODAL, PIL_check_seconds_timer(), wmOperator::ptr, RIGHTMOUSE, RNA_float_set(), MinStretch::timer, TIMER, wmEvent::type, wmEvent::val, WHEELDOWNMOUSE, and WHEELUPMOUSE.
Referenced by UV_OT_minimize_stretch().
|
static |
Definition at line 74 of file uvedit_unwrap_ops.c.
References eModifierType_Subsurf, ListBase::first, Object::modifiers, scene, Scene::toolsettings, ModifierData::type, ToolSettings::uvcalc_flag, and UVCALC_USESUBSURF.
Referenced by ED_uvedit_live_unwrap_begin(), unwrap_exec(), and uvedit_unwrap().
|
static |
Definition at line 1103 of file uvedit_unwrap_ops.c.
References BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_space_image(), CTX_wm_view3d(), ED_uvedit_pack_islands_multi(), ED_uvedit_udim_params_from_image_space(), MEM_freeN, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, options, PACK_UDIM_SRC_ACTIVE, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RNA_float_set(), RNA_struct_property_is_set(), rotate(), scene, Scene::toolsettings, ToolSettings::uvcalc_margin, and uvedit_have_selection_multi().
Referenced by UV_OT_pack_islands().
|
static |
Definition at line 2661 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, C, CTX_data_view_layer(), CTX_wm_view3d(), Object::data, DEG_id_tag_update(), ED_mesh_uv_loop_reset(), ED_uvedit_ensure_uvs(), ID_RECALC_GEOMETRY, MEM_freeN, NC_GEOM, ND_DATA, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by UV_OT_reset().
|
static |
Definition at line 1585 of file uvedit_unwrap_ops.c.
References BLI_assert, BM_ELEM_CD_GET_VOID_P, BM_ITER_ELEM, BM_LOOPS_OF_FACE, l, and MLoopUV::uv.
Referenced by correct_uv_aspect(), and correct_uv_aspect_per_face().
|
static |
Definition at line 2240 of file uvedit_unwrap_ops.c.
References blender::compositor::area(), ThickFace::area, axis_dominant_v3_to_m3(), BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, BLI_assert, BLI_linklist_prepend_arena(), BLI_memarena_clear(), BLI_memarena_free(), BLI_memarena_new(), BLI_MEMARENA_STD_BUFSIZE, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_face_calc_area(), BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, C, CD_MLOOPUV, BMVert::co, cosf, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_offset(), dot_v3v3(), ED_uvedit_ensure_uvs(), ED_uvedit_pack_islands_multi(), ThickFace::efa, float(), l, BMesh::ldata, MEM_callocN, MEM_freeN, MEM_mallocN, mul_v2_m3v3(), LinkNode::next, BMFace::no, NULL, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), scene, smart_uv_project_area_ignore, smart_uv_project_calculate_project_normals(), smart_uv_project_thickface_area_cmp_fn(), Scene::toolsettings, BMesh::totface, MLoopUV::uv, uv_map_clip_correct_multi(), ToolSettings::uvcalc_margin, BMLoop::v, and zero_v2().
Referenced by UV_OT_smart_project().
|
static |
Definition at line 2133 of file uvedit_unwrap_ops.c.
References add_v3_v3(), ThickFace::area, BLI_array_append, BLI_array_append_ret, BLI_array_clear, BLI_array_declare, BLI_array_free, BLI_array_len, bm, BM_elem_flag_enable, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_TAG, BM_FACE, BM_mesh_elem_hflag_disable_all(), copy_v3_v3(), dot_v3v3(), ThickFace::efa, float(), madd_v3_v3fl(), max_ff(), BMFace::no, normal, normalize_v3(), NULL, and UNLIKELY.
Referenced by smart_project_exec().
|
static |
Definition at line 2111 of file uvedit_unwrap_ops.c.
References ThickFace::area, and smart_uv_project_area_ignore.
Referenced by smart_project_exec().
|
static |
Definition at line 2764 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, C, CD_MLOOPUV, center, BMVert::co, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_offset(), Object::data, DEG_id_tag_update(), ED_uvedit_ensure_uvs(), ID_RECALC_GEOMETRY, l, BMesh::ldata, MEM_freeN, NC_GEOM, ND_DATA, NULL, OPERATOR_FINISHED, ProjCameraInfo::rotmat, scene, BMesh::totfacesel, MLoopUV::uv, uv_map_clip_correct(), uv_map_mirror(), uv_map_transform(), uv_map_transform_center(), uv_sphere_project(), BMLoop::v, and WM_event_add_notifier().
Referenced by UV_OT_sphere_project().
|
static |
Definition at line 541 of file uvedit_unwrap_ops.c.
References BM_ELEM_CD_GET_VOID_P, BM_elem_index_get, BM_ITER_ELEM, BM_LOOPS_OF_FACE, MLoopUV::flag, l, MLOOPUV_PINNED, NULL, ORIGINDEX_NONE, scene, MLoopUV::uv, uvedit_uv_select_test(), and BMLoop::v.
Referenced by construct_param_handle_subsurfed().
|
static |
Definition at line 1901 of file uvedit_unwrap_ops.c.
References BKE_report(), BKE_reportf(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, C, UnwrapResultInfo::count_changed, UnwrapResultInfo::count_failed, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_space_image(), CTX_wm_view3d(), ED_uvedit_ensure_uvs(), fabsf, is_negative_m4(), mat4_to_size(), MEM_freeN, modifier_unwrap_state(), Object::obmat, OPERATOR_CANCELLED, OPERATOR_FINISHED, options, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_enum_set(), RNA_float_get(), RNA_float_set(), RNA_struct_property_is_set(), rotate(), RPT_INFO, RPT_WARNING, scene, Scene::toolsettings, UNWRAP_ERROR_NEGATIVE, UNWRAP_ERROR_NONUNIFORM, ToolSettings::unwrapper, UVCALC_FILLHOLES, ToolSettings::uvcalc_flag, ToolSettings::uvcalc_margin, UVCALC_NO_ASPECT_CORRECT, UVCALC_USESUBSURF, uvedit_have_selection_multi(), uvedit_pack_islands_multi(), and uvedit_unwrap_multi().
Referenced by UV_OT_unwrap().
|
static |
Definition at line 2844 of file uvedit_unwrap_ops.c.
References center, map_to_tube(), mul_m4_v3(), ProjCameraInfo::rotmat, and sub_v3_v3v3().
Referenced by cylinder_project_exec().
|
static |
Definition at line 2493 of file uvedit_unwrap_ops.c.
References add_v4_v4(), ARRAY_DELETE_REORDER_LAST, BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, BLI_uvproject_camera_info(), BLI_uvproject_from_camera(), BLI_uvproject_from_view(), BLI_uvproject_from_view_ortho(), BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, C, View3D::camera, camera, CD_MLOOPUV, BMVert::co, copy_m4_m4(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_region(), CTX_wm_region_view3d(), CTX_wm_view3d(), CustomData_get_offset(), Object::data, DEG_id_tag_update(), ED_uvedit_ensure_uvs(), ED_view3d_camera_data_get(), ID_RECALC_GEOMETRY, l, BMesh::ldata, MEM_freeN, mul_v4_fl(), NC_GEOM, ND_DATA, negate_v4_v4(), Object::obmat, OPERATOR_CANCELLED, OPERATOR_FINISHED, RegionView3D::persmat, wmOperator::ptr, Scene::r, RNA_boolean_get(), ProjCameraInfo::rotmat, scene, MLoopUV::uv, uv_map_clip_correct_multi(), uv_map_rotation_matrix_ex(), BMLoop::v, ARegion::winx, ARegion::winy, WM_event_add_notifier(), RenderData::xasp, RenderData::xsch, RenderData::yasp, and RenderData::ysch.
Referenced by uv_from_view_invoke(), and UV_OT_project_from_view().
|
static |
Definition at line 2474 of file uvedit_unwrap_ops.c.
References C, camera, CTX_wm_region_view3d(), CTX_wm_view3d(), ED_view3d_camera_data_get(), NULL, wmOperator::ptr, RNA_property_boolean_set(), RNA_property_is_set(), RNA_struct_find_property(), and uv_from_view_exec().
Referenced by UV_OT_project_from_view().
Definition at line 2620 of file uvedit_unwrap_ops.c.
References C, CTX_wm_region_view3d(), ED_operator_uvmap(), and NULL.
Referenced by UV_OT_project_from_view().
|
static |
Definition at line 1817 of file uvedit_unwrap_ops.c.
References uv_map_clip_correct_multi().
Referenced by cube_project_exec(), cylinder_project_exec(), and sphere_project_exec().
|
static |
per_face_aspect | Calculate the aspect ratio per-face, otherwise use a single aspect for all UV's based on the material of the active face. TODO: using per-face aspect may split UV islands so more advanced UV projection methods such as "Unwrap" & "Smart UV Projections" will need to handle aspect correction themselves. For now keep using a single aspect for all faces in this case. |
Definition at line 1717 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, CD_MLOOPUV, clamp_v2(), correct_uv_aspect(), correct_uv_aspect_per_face(), CustomData_get_offset(), INIT_MINMAX2, l, BMesh::ldata, max, min, minmax_v2v2_v2(), wmOperator::ptr, RNA_boolean_get(), RNA_struct_find_property(), and MLoopUV::uv.
Referenced by smart_project_exec(), uv_from_view_exec(), and uv_map_clip_correct().
|
static |
Definition at line 1705 of file uvedit_unwrap_ops.c.
References ot, and uv_map_clip_correct_properties_ex().
Referenced by UV_OT_cube_project(), UV_OT_cylinder_project(), UV_OT_project_from_view(), and UV_OT_sphere_project().
|
static |
Definition at line 1683 of file uvedit_unwrap_ops.c.
References ot, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by uv_map_clip_correct_properties(), and UV_OT_smart_project().
|
static |
Definition at line 2731 of file uvedit_unwrap_ops.c.
References BLI_array_alloca, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_ITER_ELEM_INDEX, BM_LOOPS_OF_FACE, CD_MLOOPUV, CustomData_get_offset(), l, BMesh::ldata, BMFace::len, and MLoopUV::uv.
Referenced by cylinder_project_exec(), and sphere_project_exec().
|
static |
Definition at line 1496 of file uvedit_unwrap_ops.c.
References offset, result, and uv_map_rotation_matrix_ex().
Referenced by uv_map_transform().
|
static |
Definition at line 1442 of file uvedit_unwrap_ops.c.
References add_v4_v4(), copy_m4_m4(), cosf, float(), M_PI, mul_m4_series, Object::obmat, offset, result, sinf, unit_m4(), RegionView3D::viewmat, zero_m4(), and zero_v3().
Referenced by uv_from_view_exec(), and uv_map_rotation_matrix().
|
static |
Definition at line 1507 of file uvedit_unwrap_ops.c.
References ALIGN_TO_OBJECT, C, CTX_data_edit_object(), CTX_wm_region_view3d(), POLAR_ZY, wmOperator::ptr, RNA_enum_get(), RNA_float_get(), RNA_struct_find_property(), unit_m4(), uv_map_rotation_matrix(), and VIEW_ON_EQUATOR.
Referenced by cylinder_project_exec(), and sphere_project_exec().
|
static |
Definition at line 1357 of file uvedit_unwrap_ops.c.
References BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_face_calc_bounds_expand(), BM_FACES_OF_MESH, BM_ITER_MESH, and INIT_MINMAX.
Referenced by uv_map_transform_center().
|
static |
Definition at line 1369 of file uvedit_unwrap_ops.c.
References add_v3_v3(), BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_face_calc_center_median(), BM_FACES_OF_MESH, BM_ITER_MESH, center, mul_v3_fl(), and zero_v3().
Referenced by uv_map_transform_center().
|
static |
Definition at line 1386 of file uvedit_unwrap_ops.c.
References ATTR_FALLTHROUGH, BMEditMesh::bm, BM_editselection_center(), BM_select_history_active_get(), bounds(), copy_v3_v3(), Scene::cursor, Object::imat, INIT_MINMAX, invert_m4_m4(), View3DCursor::location, mid_v3_v3v3(), mul_v3_m4v3(), Object::obmat, scene, Scene::toolsettings, ToolSettings::transform_pivot_point, uv_map_transform_calc_bounds(), uv_map_transform_calc_center_median(), V3D_AROUND_ACTIVE, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, V3D_AROUND_CURSOR, V3D_AROUND_LOCAL_ORIGINS, and zero_v3().
Referenced by cube_project_exec(), cylinder_project_exec(), and sphere_project_exec().
void UV_OT_average_islands_scale | ( | wmOperatorType * | ot | ) |
Definition at line 1242 of file uvedit_unwrap_ops.c.
References average_islands_scale_exec(), wmOperatorType::description, ED_operator_uvedit(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by ED_operatortypes_uvedit().
void UV_OT_cube_project | ( | wmOperatorType * | ot | ) |
Definition at line 3046 of file uvedit_unwrap_ops.c.
References cube_project_exec(), wmOperatorType::description, ED_operator_uvmap(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_float(), wmOperatorType::srna, and uv_map_clip_correct_properties().
Referenced by ED_operatortypes_uvedit().
void UV_OT_cylinder_project | ( | wmOperatorType * | ot | ) |
Definition at line 2918 of file uvedit_unwrap_ops.c.
References cylinder_project_exec(), wmOperatorType::description, ED_operator_uvmap(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, uv_map_clip_correct_properties(), and uv_transform_properties().
Referenced by ED_operatortypes_uvedit().
void UV_OT_minimize_stretch | ( | wmOperatorType * | ot | ) |
Definition at line 1005 of file uvedit_unwrap_ops.c.
References wmOperatorType::cancel, wmOperatorType::description, ED_operator_uvedit(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, minimize_stretch_cancel(), minimize_stretch_exec(), minimize_stretch_invoke(), minimize_stretch_modal(), wmOperatorType::modal, wmOperatorType::name, OPTYPE_BLOCKING, OPTYPE_GRAB_CURSOR_XY, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_boolean(), RNA_def_float_factor(), RNA_def_int(), and wmOperatorType::srna.
Referenced by ED_operatortypes_uvedit().
void UV_OT_pack_islands | ( | wmOperatorType * | ot | ) |
Definition at line 1158 of file uvedit_unwrap_ops.c.
References wmOperatorType::description, ED_operator_uvedit(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, NULL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, pack_islands_exec(), PACK_UDIM_SRC_ACTIVE, PACK_UDIM_SRC_CLOSEST, wmOperatorType::poll, RNA_def_boolean(), RNA_def_enum(), RNA_def_float_factor(), and wmOperatorType::srna.
Referenced by ED_operatortypes_uvedit().
void UV_OT_project_from_view | ( | wmOperatorType * | ot | ) |
Definition at line 2631 of file uvedit_unwrap_ops.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_boolean(), wmOperatorType::srna, uv_from_view_exec(), uv_from_view_invoke(), uv_from_view_poll(), and uv_map_clip_correct_properties().
Referenced by ED_operatortypes_uvedit().
void UV_OT_reset | ( | wmOperatorType * | ot | ) |
Definition at line 2693 of file uvedit_unwrap_ops.c.
References wmOperatorType::description, ED_operator_uvmap(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and reset_exec().
Referenced by ED_operatortypes_uvedit().
void UV_OT_smart_project | ( | wmOperatorType * | ot | ) |
Definition at line 2415 of file uvedit_unwrap_ops.c.
References DEG2RADF, wmOperatorType::description, ED_operator_uvmap(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, NULL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_float(), RNA_def_float_rotation(), RNA_def_property_float_default(), smart_project_exec(), wmOperatorType::srna, uv_map_clip_correct_properties_ex(), and WM_operator_props_popup_confirm().
Referenced by ED_operatortypes_uvedit().
void UV_OT_sphere_project | ( | wmOperatorType * | ot | ) |
Definition at line 2820 of file uvedit_unwrap_ops.c.
References wmOperatorType::description, ED_operator_uvmap(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, sphere_project_exec(), uv_map_clip_correct_properties(), and uv_transform_properties().
Referenced by ED_operatortypes_uvedit().
void UV_OT_unwrap | ( | wmOperatorType * | ot | ) |
Definition at line 2050 of file uvedit_unwrap_ops.c.
References wmOperatorType::description, ED_operator_uvmap(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, NULL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_boolean(), RNA_def_enum(), RNA_def_float_factor(), wmOperatorType::srna, and unwrap_exec().
Referenced by ED_operatortypes_uvedit().
|
static |
Definition at line 2713 of file uvedit_unwrap_ops.c.
References center, map_to_sphere(), mul_m4_v3(), ProjCameraInfo::rotmat, and sub_v3_v3v3().
Referenced by sphere_project_exec().
|
static |
Definition at line 1542 of file uvedit_unwrap_ops.c.
References ALIGN_TO_OBJECT, NULL, ot, POLAR_ZX, POLAR_ZY, RNA_def_enum(), RNA_def_float(), wmOperatorType::srna, VIEW_ON_EQUATOR, and VIEW_ON_POLES.
Referenced by UV_OT_cylinder_project(), and UV_OT_sphere_project().
|
static |
Definition at line 216 of file uvedit_unwrap_ops.c.
References BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, CD_MLOOPUV, CustomData_get_offset(), l, BMesh::ldata, options, scene, Scene::toolsettings, BMesh::totfacesel, ToolSettings::uv_flag, UV_SYNC_SELECTION, and uvedit_uv_select_test().
Referenced by uvedit_have_selection_multi().
|
static |
Definition at line 255 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), options, scene, and uvedit_have_selection().
Referenced by average_islands_scale_exec(), minimize_stretch_init(), pack_islands_exec(), and unwrap_exec().
|
static |
Definition at line 303 of file uvedit_unwrap_ops.c.
References BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_ELEM, BM_LOOPS_OF_FACE, l, options, scene, and uvedit_uv_select_test().
Referenced by construct_param_handle(), and construct_param_handle_multi().
Definition at line 1053 of file uvedit_unwrap_ops.c.
References bm, construct_param_handle(), GEO_uv_parametrizer_delete(), GEO_uv_parametrizer_flush(), GEO_uv_parametrizer_pack(), NULL, options, rotate(), scene, Scene::toolsettings, and ToolSettings::uvcalc_margin.
Referenced by ED_uvedit_add_simple_uvs().
|
static |
TODO: remove this function, in favor of ED_uvedit_pack_islands_multi.
Definition at line 1078 of file uvedit_unwrap_ops.c.
References construct_param_handle_multi(), Object::data, DEG_id_tag_update(), GEO_uv_parametrizer_delete(), GEO_uv_parametrizer_flush(), GEO_uv_parametrizer_pack(), ID_RECALC_GEOMETRY, NC_GEOM, ND_DATA, options, rotate(), scene, Scene::toolsettings, ToolSettings::uvcalc_margin, and WM_main_add_notifier().
Referenced by ED_uvedit_live_unwrap(), and unwrap_exec().
|
static |
Definition at line 332 of file uvedit_unwrap_ops.c.
References BM_ELEM_CD_GET_VOID_P, BM_elem_index_get, BM_ITER_ELEM, BM_LOOPS_OF_FACE, MLoopUV::flag, GEO_uv_prepare_pin_index(), l, MLOOPUV_PINNED, options, scene, MLoopUV::uv, uvedit_uv_select_test(), and BMLoop::v.
Referenced by construct_param_handle(), and construct_param_handle_multi().
|
static |
Definition at line 1829 of file uvedit_unwrap_ops.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, CD_MLOOPUV, construct_param_handle(), construct_param_handle_subsurfed(), UnwrapResultInfo::count_changed, UnwrapResultInfo::count_failed, CustomData_has_layer(), GEO_uv_parametrizer_average(), GEO_uv_parametrizer_delete(), GEO_uv_parametrizer_flush(), GEO_uv_parametrizer_lscm_begin(), GEO_uv_parametrizer_lscm_end(), GEO_uv_parametrizer_lscm_solve(), BMesh::ldata, modifier_unwrap_state(), NULL, options, scene, Scene::toolsettings, and ToolSettings::unwrapper.
Referenced by uvedit_unwrap_multi().
|
static |
Definition at line 2942 of file uvedit_unwrap_ops.c.
References axis_dominant_v3(), bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, CD_MLOOPUV, center, BMVert::co, copy_v3_v3(), CustomData_get_offset(), l, BMesh::ldata, BMFace::no, UNLIKELY, MLoopUV::uv, BMLoop::v, and zero_v3().
Referenced by cube_project_exec(), and ED_uvedit_add_simple_uvs().
|
static |
Definition at line 1863 of file uvedit_unwrap_ops.c.
References Object::data, DEG_id_tag_update(), ID_RECALC_GEOMETRY, NC_GEOM, ND_DATA, options, scene, uvedit_unwrap(), and WM_main_add_notifier().
Referenced by ED_uvedit_live_unwrap(), and unwrap_exec().
struct { ... } g_live_unwrap |
Referenced by ED_uvedit_live_unwrap_begin(), ED_uvedit_live_unwrap_end(), and ED_uvedit_live_unwrap_re_solve().
ParamHandle** handles |
Definition at line 1267 of file uvedit_unwrap_ops.c.
Referenced by blender::nodes::node_geo_string_to_curves_cc::add_instances_from_handles(), BKE_curve_decimate_bezt_array(), blender::nodes::node_geo_string_to_curves_cc::create_curve_instances(), do_multires_bake(), do_sequence_proxy(), blender::geometry::gather_realize_tasks_for_instances(), blender::bke::geometry_set_collect_recursive(), blender::nodes::node_geo_input_curve_handles_cc::HandlePositionFieldInput::get_varray_for_context(), blender::opensubdiv::EvalOutputAPI::getPatchMap(), IMB_processor_apply_threaded(), knot_remove_error_recalculate(), project_paint_op(), sequencer_box_select_exec(), and blender::compositor::MaskOperation::update_memory_buffer_partial().
uint len |
Definition at line 1268 of file uvedit_unwrap_ops.c.
uint len_alloc |
Definition at line 1268 of file uvedit_unwrap_ops.c.
Referenced by clg_str_vappendf(), and wm_gizmomap_select_array_ensure_len_alloc().
Definition at line 2104 of file uvedit_unwrap_ops.c.
Referenced by smart_project_exec(), and smart_uv_project_thickface_area_cmp_fn().