Blender
V3.3
|
#include <GEO_reverse_uv_sampler.hh>
Classes | |
struct | Result |
Public Types | |
enum class | ResultType { None , Ok , Multiple } |
Public Member Functions | |
ReverseUVSampler (const Span< float2 > uv_map, const Span< MLoopTri > looptris) | |
Result | sample (const float2 &query_uv) const |
void | sample_many (Span< float2 > query_uvs, MutableSpan< Result > r_results) const |
Can find the polygon/triangle that maps to a specific uv coordinate.
Definition at line 20 of file GEO_reverse_uv_sampler.hh.
|
strong |
Enumerator | |
---|---|
None | |
Ok | |
Multiple |
Definition at line 30 of file GEO_reverse_uv_sampler.hh.
blender::geometry::ReverseUVSampler::ReverseUVSampler | ( | const Span< float2 > | uv_map, |
const Span< MLoopTri > | looptris | ||
) |
Definition at line 17 of file reverse_uv_sampler.cc.
References blender::Span< T >::index_range(), blender::math::max(), blender::math::min(), blender::Span< T >::size(), sqrt(), MLoopTri::tri, and blender::geometry::uv_to_cell_key().
ReverseUVSampler::Result blender::geometry::ReverseUVSampler::sample | ( | const float2 & | query_uv | ) | const |
Definition at line 44 of file reverse_uv_sampler.cc.
References barycentric_coords_v2(), blender::math::clamp(), max, MAX3, Multiple, Ok, MLoopTri::tri, and blender::geometry::uv_to_cell_key().
Referenced by blender::ed::sculpt_paint::SlideOperationExecutor::find_curves_to_slide(), and blender::geometry::interpolate_position_with_interpolation().
void blender::geometry::ReverseUVSampler::sample_many | ( | Span< float2 > | query_uvs, |
MutableSpan< Result > | r_results | ||
) | const |
Definition at line 100 of file reverse_uv_sampler.cc.
References BLI_assert, blender::Span< T >::index_range(), blender::threading::parallel_for(), blender::Span< T >::size(), and blender::MutableSpan< T >::size().
Referenced by blender::nodes::node_geo_deform_curves_on_surface_cc::deform_curves().