|
Blender V4.3
|
#include "BKE_context.hh"#include "BKE_customdata.hh"#include "BKE_editmesh.hh"#include "BKE_layer.hh"#include "BKE_mesh_mapping.hh"#include "BKE_report.hh"#include "DEG_depsgraph.hh"#include "ED_mesh.hh"#include "ED_screen.hh"#include "WM_api.hh"#include "uvedit_clipboard_graph_iso.hh"#include "uvedit_intern.hh"Go to the source code of this file.
Classes | |
| class | UV_ClipboardBuffer |
Functions | |
| void | UV_clipboard_free () |
| static int | iso_index_for_loop (const BMLoop *loop, UvElementMap *element_map, const int island_index) |
| static void | add_iso_edge (GraphISO *graph, BMLoop *loop_v, BMLoop *loop_w, UvElementMap *element_map, int island_index) |
| static GraphISO * | build_iso_graph (UvElementMap *element_map, const int island_index, int) |
| static bool | find_isomorphism (UvElementMap *dest, const int dest_island_index, GraphISO *graph_source, const int cd_loop_uv_offset, blender::Vector< int > &r_label, bool *r_search_abandoned) |
| static int | uv_copy_exec (bContext *C, wmOperator *) |
| static int | uv_paste_exec (bContext *C, wmOperator *op) |
| void | UV_OT_copy (wmOperatorType *ot) |
| void | UV_OT_paste (wmOperatorType *ot) |
Variables | |
| static UV_ClipboardBuffer * | uv_clipboard = nullptr |
Attempt to find a graph isomorphism between the topology of two different UV islands.
Definition in file uvedit_clipboard.cc.
|
static |
Definition at line 101 of file uvedit_clipboard.cc.
References BLI_assert, BMLoop::f, and iso_index_for_loop().
Referenced by build_iso_graph().
|
static |
Definition at line 120 of file uvedit_clipboard.cc.
References add_iso_edge(), UvElementMap::island_indices, UvElementMap::island_total_unique_uvs, UvElementMap::island_total_uvs, GraphISO::label, GraphISO::n, and UvElementMap::storage.
Referenced by UV_ClipboardBuffer::append(), and find_isomorphism().
|
static |
Call the external isomorphism solver.
Definition at line 206 of file uvedit_clipboard.cc.
References BLI_assert, build_iso_graph(), ED_uvedit_clipboard_maximum_common_subgraph(), int, UvElementMap::island_total_unique_uvs, MEM_mallocN, MEM_SAFE_FREE, GraphISO::n, and blender::Vector< T, InlineBufferCapacity, Allocator >::resize().
|
static |
Definition at line 85 of file uvedit_clipboard.cc.
References BM_uv_element_get(), BM_uv_element_get_unique_index(), UvElementMap::island_indices, and UvElementMap::storage.
Referenced by add_iso_edge().
| void UV_clipboard_free | ( | ) |
Definition at line 398 of file uvedit_clipboard.cc.
References uv_clipboard.
Referenced by uv_copy_exec(), and WM_exit_ex().
|
static |
Definition at line 275 of file uvedit_clipboard.cc.
References UV_ClipboardBuffer::append(), BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs(), BMEditMesh::bm, BM_uv_element_map_create(), BM_uv_element_map_free(), CD_PROP_FLOAT2, CTX_data_scene(), CTX_data_view_layer(), CustomData_get_offset(), BMesh::ldata, OPERATOR_FINISHED, uv_clipboard, and UV_clipboard_free().
Referenced by UV_OT_copy().
| void UV_OT_copy | ( | wmOperatorType * | ot | ) |
Definition at line 372 of file uvedit_clipboard.cc.
References wmOperatorType::description, ED_operator_uvedit(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and uv_copy_exec().
Referenced by ED_operatortypes_uvedit().
| void UV_OT_paste | ( | wmOperatorType * | ot | ) |
Definition at line 385 of file uvedit_clipboard.cc.
References wmOperatorType::description, ED_operator_uvedit(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and uv_paste_exec().
Referenced by ED_operatortypes_uvedit().
|
static |
Definition at line 304 of file uvedit_clipboard.cc.
References BKE_editmesh_from_object(), BKE_reportf(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs(), BMEditMesh::bm, BM_uv_element_map_create(), BM_uv_element_map_free(), CD_PROP_FLOAT2, CTX_data_scene(), CTX_data_view_layer(), CustomData_get_offset(), DEG_id_tag_update(), UV_ClipboardBuffer::find_isomorphism(), label, BMesh::ldata, NC_GEOM, ND_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, RPT_WARNING, UvElementMap::total_islands, uv_clipboard, WM_event_add_notifier(), and UV_ClipboardBuffer::write_uvs().
Referenced by UV_OT_paste().
|
static |
Definition at line 67 of file uvedit_clipboard.cc.
Referenced by UV_clipboard_free(), uv_copy_exec(), uv_paste_exec(), and UV_ClipboardBuffer::write_uvs().