Blender V4.3
BKE_mesh_sample.hh File Reference

Go to the source code of this file.

Classes

class  blender::bke::mesh_surface_sample::BaryWeightFromPositionFn
 
class  blender::bke::mesh_surface_sample::CornerBaryWeightFromPositionFn
 
class  blender::bke::mesh_surface_sample::BaryWeightSampleFn
 

Namespaces

namespace  blender
 
namespace  blender::bke
 
namespace  blender::bke::mesh_surface_sample
 

Functions

void blender::bke::mesh_surface_sample::sample_point_attribute (Span< int > corner_verts, Span< int3 > corner_tris, Span< int > tri_indices, Span< float3 > bary_coords, const GVArray &src, const IndexMask &mask, GMutableSpan dst)
 
void blender::bke::mesh_surface_sample::sample_point_normals (Span< int > corner_verts, Span< int3 > corner_tris, Span< int > tri_indices, Span< float3 > bary_coords, Span< float3 > src, IndexMask mask, MutableSpan< float3 > dst)
 
void blender::bke::mesh_surface_sample::sample_corner_attribute (Span< int3 > corner_tris, Span< int > tri_indices, Span< float3 > bary_coords, const GVArray &src, const IndexMask &mask, GMutableSpan dst)
 
void blender::bke::mesh_surface_sample::sample_corner_normals (Span< int3 > corner_tris, Span< int > tri_indices, Span< float3 > bary_coords, Span< float3 > src, const IndexMask &mask, MutableSpan< float3 > dst)
 
void blender::bke::mesh_surface_sample::sample_face_attribute (Span< int > corner_tri_faces, Span< int > tri_indices, const GVArray &src, const IndexMask &mask, GMutableSpan dst)
 
int blender::bke::mesh_surface_sample::sample_surface_points_spherical (RandomNumberGenerator &rng, const Mesh &mesh, Span< int > tris_to_sample, const float3 &sample_pos, float sample_radius, float approximate_density, Vector< float3 > &r_bary_coords, Vector< int > &r_tri_indices, Vector< float3 > &r_positions)
 
int blender::bke::mesh_surface_sample::sample_surface_points_projected (RandomNumberGenerator &rng, const Mesh &mesh, BVHTreeFromMesh &mesh_bvhtree, const float2 &sample_pos_re, float sample_radius_re, FunctionRef< void(const float2 &pos_re, float3 &r_start, float3 &r_end)> region_position_to_ray, bool front_face_only, int tries_num, int max_points, Vector< float3 > &r_bary_coords, Vector< int > &r_tri_indices, Vector< float3 > &r_positions)
 
float3 blender::bke::mesh_surface_sample::compute_bary_coord_in_triangle (Span< float3 > vert_positions, Span< int > corner_verts, const int3 &corner_tri, const float3 &position)
 
template<typename T >
T blender::bke::mesh_surface_sample::sample_corner_attribute_with_bary_coords (const float3 &bary_weights, const int3 &corner_tri, const Span< T > corner_attribute)
 
template<typename T >
T blender::bke::mesh_surface_sample::sample_corner_attribute_with_bary_coords (const float3 &bary_weights, const int3 &corner_tri, const VArray< T > &corner_attribute)