Blender V4.3
blender::bke::calc_edges Namespace Reference

Typedefs

using EdgeMap
 

Functions

static uint64_t edge_hash_2 (const OrderedEdge &edge)
 
static void reserve_hash_maps (const Mesh &mesh, const bool keep_existing_edges, MutableSpan< EdgeMap > edge_maps)
 
static void add_existing_edges_to_hash_maps (const Mesh &mesh, const uint32_t parallel_mask, MutableSpan< EdgeMap > edge_maps)
 
static void add_face_edges_to_hash_maps (const Mesh &mesh, const uint32_t parallel_mask, MutableSpan< EdgeMap > edge_maps)
 
static void serialize_and_initialize_deduplicated_edges (MutableSpan< EdgeMap > edge_maps, const OffsetIndices< int > edge_offsets, MutableSpan< int2 > new_edges)
 
static void update_edge_indices_in_face_loops (const OffsetIndices< int > faces, const Span< int > corner_verts, const Span< EdgeMap > edge_maps, const uint32_t parallel_mask, const OffsetIndices< int > edge_offsets, MutableSpan< int > corner_edges)
 
static int get_parallel_maps_count (const Mesh &mesh)
 
static void clear_hash_tables (MutableSpan< EdgeMap > edge_maps)
 
static void deselect_known_edges (const OffsetIndices< int > edge_offsets, const Span< EdgeMap > edge_maps, const uint32_t parallel_mask, const Span< int2 > known_edges, MutableSpan< bool > selection)
 

Typedef Documentation

◆ EdgeMap

Initial value:
VectorSet<OrderedEdge,
DefaultHash<OrderedEdge>,
DefaultEquality<OrderedEdge>,
SimpleVectorSetSlot<OrderedEdge, int>,
PythonProbingStrategy<> DefaultProbingStrategy

Definition at line 32 of file mesh_calc_edges.cc.

Function Documentation

◆ add_existing_edges_to_hash_maps()

static void blender::bke::calc_edges::add_existing_edges_to_hash_maps ( const Mesh & mesh,
const uint32_t parallel_mask,
MutableSpan< EdgeMap > edge_maps )
static

◆ add_face_edges_to_hash_maps()

static void blender::bke::calc_edges::add_face_edges_to_hash_maps ( const Mesh & mesh,
const uint32_t parallel_mask,
MutableSpan< EdgeMap > edge_maps )
static

◆ clear_hash_tables()

static void blender::bke::calc_edges::clear_hash_tables ( MutableSpan< EdgeMap > edge_maps)
static

◆ deselect_known_edges()

static void blender::bke::calc_edges::deselect_known_edges ( const OffsetIndices< int > edge_offsets,
const Span< EdgeMap > edge_maps,
const uint32_t parallel_mask,
const Span< int2 > known_edges,
MutableSpan< bool > selection )
static

◆ edge_hash_2()

static uint64_t blender::bke::calc_edges::edge_hash_2 ( const OrderedEdge & edge)
static

Return a hash value that is likely to be different in the low bits from the normal hash() function. This is necessary to avoid collisions in mesh_calc_edges.

Definition at line 27 of file mesh_calc_edges.cc.

Referenced by add_existing_edges_to_hash_maps(), and add_face_edges_to_hash_maps().

◆ get_parallel_maps_count()

static int blender::bke::calc_edges::get_parallel_maps_count ( const Mesh & mesh)
static

◆ reserve_hash_maps()

static void blender::bke::calc_edges::reserve_hash_maps ( const Mesh & mesh,
const bool keep_existing_edges,
MutableSpan< EdgeMap > edge_maps )
static

◆ serialize_and_initialize_deduplicated_edges()

static void blender::bke::calc_edges::serialize_and_initialize_deduplicated_edges ( MutableSpan< EdgeMap > edge_maps,
const OffsetIndices< int > edge_offsets,
MutableSpan< int2 > new_edges )
static

◆ update_edge_indices_in_face_loops()

static void blender::bke::calc_edges::update_edge_indices_in_face_loops ( const OffsetIndices< int > faces,
const Span< int > corner_verts,
const Span< EdgeMap > edge_maps,
const uint32_t parallel_mask,
const OffsetIndices< int > edge_offsets,
MutableSpan< int > corner_edges )
static

Definition at line 107 of file mesh_calc_edges.cc.

References blender::threading::parallel_for().