Blender V4.3
node_geo_extrude_mesh.cc File Reference
#include "BLI_array_utils.hh"
#include "BLI_task.hh"
#include "BLI_vector_set.hh"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "BKE_attribute_math.hh"
#include "BKE_customdata.hh"
#include "BKE_deform.hh"
#include "BKE_mesh.hh"
#include "BKE_mesh_mapping.hh"
#include "BKE_mesh_runtime.hh"
#include "GEO_mesh_selection.hh"
#include "GEO_randomize.hh"
#include "NOD_rna_define.hh"
#include "UI_interface.hh"
#include "UI_resources.hh"
#include "node_geometry_util.hh"

Go to the source code of this file.

Classes

struct  blender::nodes::node_geo_extrude_mesh_cc::AttributeOutputs
 

Namespaces

namespace  blender
 
namespace  blender::nodes
 
namespace  blender::nodes::node_geo_extrude_mesh_cc
 

Typedefs

using blender::nodes::node_geo_extrude_mesh_cc::IDsByDomain = std::array<Vector<StringRef>, ATTR_DOMAIN_NUM>
 

Functions

static void blender::nodes::node_geo_extrude_mesh_cc::node_declare (NodeDeclarationBuilder &b)
 
static void blender::nodes::node_geo_extrude_mesh_cc::node_layout (uiLayout *layout, bContext *, PointerRNA *ptr)
 
static void blender::nodes::node_geo_extrude_mesh_cc::node_init (bNodeTree *, bNode *node)
 
static void blender::nodes::node_geo_extrude_mesh_cc::save_selection_as_attribute (MutableAttributeAccessor attributes, const StringRef id, const AttrDomain domain, const IndexMask &selection)
 
static void blender::nodes::node_geo_extrude_mesh_cc::remove_non_propagated_attributes (MutableAttributeAccessor attributes, const AttributeFilter &attribute_filter)
 
static void blender::nodes::node_geo_extrude_mesh_cc::remove_unsupported_vert_data (Mesh &mesh)
 
static void blender::nodes::node_geo_extrude_mesh_cc::remove_unsupported_edge_data (Mesh &mesh)
 
static void blender::nodes::node_geo_extrude_mesh_cc::remove_unsupported_face_data (Mesh &mesh)
 
static void blender::nodes::node_geo_extrude_mesh_cc::remove_unsupported_corner_data (Mesh &mesh)
 
static void blender::nodes::node_geo_extrude_mesh_cc::expand_mesh (Mesh &mesh, const int vert_expand, const int edge_expand, const int face_expand, const int loop_expand)
 
static CustomDatablender::nodes::node_geo_extrude_mesh_cc::mesh_custom_data_for_domain (Mesh &mesh, const AttrDomain domain)
 
static std::optional< MutableSpan< int > > blender::nodes::node_geo_extrude_mesh_cc::get_orig_index_layer (Mesh &mesh, const AttrDomain domain)
 
template<typename T >
void blender::nodes::node_geo_extrude_mesh_cc::copy_with_mixing (const Span< T > src, const GroupedSpan< int > src_groups, const IndexMask &selection, MutableSpan< T > dst)
 
static void blender::nodes::node_geo_extrude_mesh_cc::copy_with_mixing (const GSpan src, const GroupedSpan< int > src_groups, const IndexMask &selection, GMutableSpan dst)
 
template<typename T >
void blender::nodes::node_geo_extrude_mesh_cc::copy_with_mixing (const Span< T > src, const GroupedSpan< int > src_groups, const Span< int > selection, MutableSpan< T > dst)
 
static void blender::nodes::node_geo_extrude_mesh_cc::copy_with_mixing (const GSpan src, const GroupedSpan< int > src_groups, const Span< int > selection, GMutableSpan dst)
 
static IDsByDomain blender::nodes::node_geo_extrude_mesh_cc::attribute_ids_by_domain (const AttributeAccessor attributes, const Set< StringRef > &skip)
 
static bool blender::nodes::node_geo_extrude_mesh_cc::is_empty_domain (const AttributeAccessor attributes, const Set< StringRef > &skip, const AttrDomain domain)
 
static void blender::nodes::node_geo_extrude_mesh_cc::gather_attributes (MutableAttributeAccessor attributes, const Span< StringRef > ids, const Span< int > indices, const IndexRange new_range)
 
static void blender::nodes::node_geo_extrude_mesh_cc::gather_attributes (MutableAttributeAccessor attributes, const Span< StringRef > ids, const IndexMask &indices, const IndexRange new_range)
 
static void blender::nodes::node_geo_extrude_mesh_cc::gather_vert_attributes (Mesh &mesh, const Span< StringRef > ids, const Span< int > indices, const IndexRange new_range)
 
static void blender::nodes::node_geo_extrude_mesh_cc::gather_vert_attributes (Mesh &mesh, const Span< StringRef > ids, const IndexMask &indices, const IndexRange new_range)
 
static void blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_vertices (Mesh &mesh, const Field< bool > &selection_field, const Field< float3 > &offset_field, const AttributeOutputs &attribute_outputs, const AttributeFilter &attribute_filter)
 
static void blender::nodes::node_geo_extrude_mesh_cc::fill_quad_consistent_direction (const Span< int > other_face_verts, const Span< int > other_face_edges, MutableSpan< int > new_corner_verts, MutableSpan< int > new_corner_edges, const int vert_connected_to_face_1, const int vert_connected_to_face_2, const int vert_across_from_face_1, const int vert_across_from_face_2, const int edge_connected_to_face, const int connecting_edge_1, const int edge_across_from_face, const int connecting_edge_2)
 
static GroupedSpan< intblender::nodes::node_geo_extrude_mesh_cc::build_vert_to_edge_map (const Span< int2 > edges, const IndexMask &edge_mask, const int verts_num, Array< int > &r_offsets, Array< int > &r_indices)
 
static void blender::nodes::node_geo_extrude_mesh_cc::tag_mesh_added_faces (Mesh &mesh)
 
static void blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_edges (Mesh &mesh, const Field< bool > &selection_field, const Field< float3 > &offset_field, const AttributeOutputs &attribute_outputs, const AttributeFilter &attribute_filter)
 
static VectorSet< intblender::nodes::node_geo_extrude_mesh_cc::vert_indices_from_edges (const Mesh &mesh, const Span< int > edge_indices)
 
static void blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions (Mesh &mesh, const Field< bool > &selection_field, const Field< float3 > &offset_field, const AttributeOutputs &attribute_outputs, const AttributeFilter &attribute_filter)
 
static void blender::nodes::node_geo_extrude_mesh_cc::extrude_individual_mesh_faces (Mesh &mesh, const Field< bool > &selection_field, const Field< float3 > &offset_field, const AttributeOutputs &attribute_outputs, const AttributeFilter &attribute_filter)
 
static void blender::nodes::node_geo_extrude_mesh_cc::node_geo_exec (GeoNodeExecParams params)
 
static void blender::nodes::node_geo_extrude_mesh_cc::node_rna (StructRNA *srna)
 
static void blender::nodes::node_geo_extrude_mesh_cc::node_register ()