|
Blender V4.3
|
#include "MEM_guardedalloc.h"#include "DNA_mesh_types.h"#include "DNA_object_types.h"#include "BKE_mesh_iterators.hh"#include "BKE_object.hh"#include "BLI_math_vector.h"#include "DEG_depsgraph.hh"#include "DEG_depsgraph_query.hh"#include "ED_view3d.hh"#include "paint_intern.hh"Go to the source code of this file.
Classes | |
| struct | VertProjHandle |
| struct | VertProjUpdate |
Functions | |
| static void | vpaint_proj_dm_map_cosnos_init__map_cb (void *user_data, int index, const float co[3], const float no[3]) |
| static void | vpaint_proj_dm_map_cosnos_init (Depsgraph &depsgraph, Scene &, Object &ob, VertProjHandle &vp_handle) |
| static void | vpaint_proj_dm_map_cosnos_update__map_cb (void *user_data, int index, const float co[3], const float no[3]) |
| static void | vpaint_proj_dm_map_cosnos_update (Depsgraph *depsgraph, VertProjHandle *vp_handle, ARegion *region, const float mval_fl[2]) |
| VertProjHandle * | ED_vpaint_proj_handle_create (Depsgraph &depsgraph, Scene &scene, Object &ob, blender::Span< blender::float3 > &r_vert_positions, blender::Span< blender::float3 > &r_vert_normals) |
| void | ED_vpaint_proj_handle_update (Depsgraph *depsgraph, VertProjHandle *vp_handle, ARegion *region, const float mval_fl[2]) |
| void | ED_vpaint_proj_handle_free (VertProjHandle *vp_handle) |
Utility functions for getting vertex locations while painting (since they may be instanced multiple times in an evaluated mesh)
Definition in file paint_vertex_proj.cc.
| VertProjHandle * ED_vpaint_proj_handle_create | ( | Depsgraph & | depsgraph, |
| Scene & | scene, | ||
| Object & | ob, | ||
| blender::Span< blender::float3 > & | r_vert_positions, | ||
| blender::Span< blender::float3 > & | r_vert_normals ) |
Definition at line 152 of file paint_vertex_proj.cc.
References Object::data, depsgraph, VertProjHandle::dists_sq, VertProjHandle::ob, blender::Array< T, InlineBufferCapacity, Allocator >::reinitialize(), scene, VertProjHandle::scene, VertProjHandle::use_update, VertProjHandle::vert_normals, VertProjHandle::vert_positions, and vpaint_proj_dm_map_cosnos_init().
Referenced by vpaint_init_vpaint().
| void ED_vpaint_proj_handle_free | ( | VertProjHandle * | vp_handle | ) |
Definition at line 194 of file paint_vertex_proj.cc.
Referenced by VPaintData::~VPaintData().
| void ED_vpaint_proj_handle_update | ( | Depsgraph * | depsgraph, |
| VertProjHandle * | vp_handle, | ||
| ARegion * | region, | ||
| const float | mval_fl[2] ) |
Definition at line 184 of file paint_vertex_proj.cc.
References depsgraph, VertProjHandle::use_update, and vpaint_proj_dm_map_cosnos_update().
|
static |
Definition at line 75 of file paint_vertex_proj.cc.
References BKE_mesh_foreach_mapped_vert(), BKE_object_get_evaluated_mesh(), DEG_get_evaluated_object(), depsgraph, MESH_FOREACH_USE_NORMAL, VertProjHandle::vert_normals, and vpaint_proj_dm_map_cosnos_init__map_cb().
Referenced by ED_vpaint_proj_handle_create().
|
static |
Definition at line 57 of file paint_vertex_proj.cc.
References blender::math::is_zero(), VertProjHandle::use_update, VertProjHandle::vert_normals, and VertProjHandle::vert_positions.
Referenced by vpaint_proj_dm_map_cosnos_init().
|
static |
Definition at line 129 of file paint_vertex_proj.cc.
References BKE_mesh_foreach_mapped_vert(), BKE_object_get_evaluated_mesh(), BLI_assert, BLI_listbase_is_empty(), DEG_get_evaluated_object(), depsgraph, VertProjHandle::dists_sq, blender::Array< T, InlineBufferCapacity, Allocator >::fill(), FLT_MAX, MESH_FOREACH_USE_NORMAL, Object::modifiers, VertProjHandle::ob, and vpaint_proj_dm_map_cosnos_update__map_cb().
Referenced by ED_vpaint_proj_handle_update().
|
static |
Definition at line 93 of file paint_vertex_proj.cc.
References VertProjHandle::dists_sq, ED_view3d_project_float_object(), FLT_MAX, len_squared_v2v2(), VertProjUpdate::mval_fl, VertProjUpdate::region, V3D_PROJ_RET_OK, V3D_PROJ_TEST_CLIP_BB, V3D_PROJ_TEST_CLIP_NEAR, VertProjHandle::vert_normals, VertProjHandle::vert_positions, and VertProjUpdate::vp_handle.
Referenced by vpaint_proj_dm_map_cosnos_update().