Blender
V3.3
|
Go to the source code of this file.
Export for ED_undo_sys.
Definition at line 285 of file particle_edit_undo.c.
References UndoType::flags, UndoType::name, particle_undosys_foreach_ID_ref(), particle_undosys_poll(), particle_undosys_step_decode(), particle_undosys_step_encode(), particle_undosys_step_free(), UndoType::poll, UndoType::step_decode, UndoType::step_encode, UndoType::step_foreach_ID_ref, UndoType::step_free, UndoType::step_size, and UNDOTYPE_FLAG_NEED_CONTEXT_FOR_ENCODE.
Referenced by ED_undosys_type_init().
Referenced by view3d_box_select_exec().
bool PE_circle_select | ( | struct bContext * | C, |
struct wmGenericUserData * | wm_userdata, | ||
int | sel_op, | ||
const int | mval[2], | ||
float | rad | ||
) |
Definition at line 2356 of file particle_edit.c.
References BLI_assert, C, CTX_data_active_object(), CTX_data_depsgraph_pointer(), CTX_data_scene(), data, wmGenericUserData::data, depsgraph, PEData::edit, ELEM, for_mouse_hit_keys(), PEData::mval, NA_SELECTED, NC_OBJECT, ND_PARTICLE, NULL, PEData::ob, PE_deselect_all_visible_ex(), PE_get_current(), pe_select_cache_init_with_generic_userdata(), PE_start_edit(), PE_update_selection(), PEData::rad, scene, PEData::sel_op, SEL_OP_ADD, SEL_OP_SET, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select_key(), and WM_event_add_notifier().
Referenced by view3d_circle_select_exec().
struct PTCacheEdit* PE_create_current | ( | struct Depsgraph * | depsgraph, |
struct Scene * | scene, | ||
struct Object * | ob | ||
) |
Definition at line 397 of file particle_edit.c.
References depsgraph, pe_get_current(), and scene.
Referenced by drw_particle_update_ptcache(), ED_object_particle_edit_mode_enter_ex(), OVERLAY_edit_particle_cache_populate(), and PE_current_changed().
Definition at line 402 of file particle_edit.c.
References depsgraph, Object::mode, OB_MODE_PARTICLE_EDIT, PE_create_current(), and scene.
Definition at line 2286 of file particle_edit.c.
References C, CTX_data_active_object(), CTX_data_depsgraph_pointer(), CTX_data_scene(), depsgraph, PE_deselect_all_visible_ex(), PE_get_current(), PE_start_edit(), and scene.
bool PE_deselect_all_visible_ex | ( | struct PTCacheEdit * | edit | ) |
Definition at line 2268 of file particle_edit.c.
References PTCacheEditKey::flag, NearestParticleData::key, KEY_K, LOOP_SELECTED_KEYS, LOOP_VISIBLE_POINTS, PEK_SELECT, PEP_EDIT_RECALC, point, and POINT_P.
Referenced by PE_box_select(), PE_circle_select(), PE_deselect_all_visible(), PE_lasso_select(), and PE_mouse_particles().
void PE_free_ptcache_edit | ( | struct PTCacheEdit * | edit | ) |
Definition at line 131 of file particle_edit.c.
References PTCacheEdit::emitter_cosnos, PTCacheEdit::emitter_field, LOOP_POINTS, MEM_freeN, PTCacheEdit::mirror_cache, point, POINT_P, PTCacheEdit::points, PTCacheEdit::psys, and psys_free_path_cache().
Referenced by clear_edited_exec(), PE_create_particle_edit(), and ptcache_free_bake().
struct PTCacheEdit* PE_get_current | ( | struct Depsgraph * | depsgraph, |
struct Scene * | scene, | ||
struct Object * | ob | ||
) |
Definition at line 392 of file particle_edit.c.
References depsgraph, pe_get_current(), and scene.
Referenced by brush_edit_init(), convert_type_get(), createTransParticleVerts(), ED_transform_calc_gizmo_stats(), flushTransParticles(), hide_exec(), mirror_exec(), mirror_poll(), particle_undosys_poll(), particle_undosys_step_decode(), particle_undosys_step_encode(), PE_box_select(), PE_circle_select(), PE_deselect_all_visible(), PE_hair_poll(), PE_lasso_select(), PE_minmax(), PE_mirror_x(), PE_mouse_particles(), PE_poll(), pe_select_all_exec(), PE_set_data(), PE_update_object(), PE_update_selection(), rekey_particle_to_time(), remove_doubles_exec(), reveal_exec(), select_random_exec(), shape_cut_exec(), unify_length_exec(), and weight_set_exec().
struct PTCacheEdit* PE_get_current_from_psys | ( | struct ParticleSystem * | psys | ) |
Definition at line 247 of file particle_edit.c.
References ParticleSystem::edit, PointCache::edit, ParticleSystem::flag, PointCache::flag, NULL, ParticleSystem::part, PART_HAIR, ParticleSystem::pointcache, PSYS_HAIR_DYNAMICS, PTCACHE_BAKED, and ParticleSettings::type.
Referenced by OVERLAY_edit_particle_cache_populate().
void PE_hide_keys_time | ( | struct Scene * | scene, |
struct PTCacheEdit * | edit, | ||
float | cfra | ||
) |
Definition at line 409 of file particle_edit.c.
References fabsf, ParticleEditSettings::fade_frames, ParticleEditSettings::flag, KEY_K, LOOP_KEYS, LOOP_POINTS, PE_FADE_TIME, PE_settings(), PEK_HIDE, POINT_P, SCE_SELECT_POINT, scene, and ParticleEditSettings::selectmode.
Referenced by PE_update_object().
int PE_lasso_select | ( | struct bContext * | C, |
const int | mcoords[][2], | ||
int | mcoords_len, | ||
int | sel_op | ||
) |
Definition at line 2396 of file particle_edit.c.
References BLI_lasso_is_point_inside(), C, copy_v3_v3(), CTX_data_active_object(), CTX_data_depsgraph_pointer(), CTX_data_scene(), CTX_wm_region(), data, depsgraph, ED_select_op_action_deselected(), ED_view3d_project_int_global(), PEData::edit, ParticleSystem::flag, ParticleSettings::from, PEData::is_changed, IS_CLIPPED, is_inside(), KEY_K, key_test_depth(), LOOP_VISIBLE_KEYS, LOOP_VISIBLE_POINTS, ParticleSystemModifierData::mesh_final, mul_m4_v3(), NA_SELECTED, NC_OBJECT, ND_PARTICLE, PEData::ob, OPERATOR_CANCELLED, OPERATOR_FINISHED, ParticleSystem::part, ParticleSystem::particles, PE_data_free(), PE_deselect_all_visible_ex(), PE_get_current(), PE_set_view3d_data(), PE_settings(), PE_start_edit(), PE_update_selection(), PEK_SELECT, PEP_EDIT_RECALC, point, POINT_P, PTCacheEdit::psmd_eval, PTCacheEdit::psys, PSYS_GLOBAL_HAIR, psys_mat_hair_to_global(), SCE_SELECT_END, SCE_SELECT_POINT, scene, PEData::sel_op, SEL_OP_USE_PRE_DESELECT, ParticleEditSettings::selectmode, SET_FLAG_FROM_TEST, unit_m4(), V3D_PROJ_RET_OK, V3D_PROJ_TEST_CLIP_WIN, and WM_event_add_notifier().
Referenced by view3d_lasso_select().
int PE_minmax | ( | struct Depsgraph * | depsgraph, |
struct Scene * | scene, | ||
struct ViewLayer * | view_layer, | ||
float | min[3], | ||
float | max[3] | ||
) |
Definition at line 168 of file particle_edit.c.
References BKE_object_minmax(), copy_v3_v3(), depsgraph, DO_MINMAX, ParticleSettings::from, KEY_K, LOOP_SELECTED_KEYS, LOOP_VISIBLE_POINTS, max, ParticleSystemModifierData::mesh_final, min, mul_m4_v3(), NULL, OBACT, ParticleSystem::part, ParticleSystem::particles, PE_get_current(), POINT_P, PTCacheEdit::psmd_eval, PTCacheEdit::psys, psys_mat_hair_to_global(), scene, and unit_m4().
Referenced by brush_edit_init(), and viewselected_exec().
bool PE_mouse_particles | ( | struct bContext * | C, |
const int | mval[2], | ||
const struct SelectPick_Params * | params | ||
) |
Definition at line 1867 of file particle_edit.c.
References BLI_assert_unreachable, C, CTX_data_active_object(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_scene(), depsgraph, PTCacheEditKey::flag, NearestParticleData::key, NA_SELECTED, NC_OBJECT, ND_PARTICLE, params, PE_deselect_all_visible_ex(), PE_get_current(), pe_nearest_point_and_key(), PE_start_edit(), PE_update_selection(), PEK_SELECT, PEP_EDIT_RECALC, point, scene, SEL_OP_ADD, SEL_OP_AND, SEL_OP_SET, SEL_OP_SUB, SEL_OP_XOR, and WM_event_add_notifier().
Referenced by view3d_select_exec().
struct ParticleEditSettings* PE_settings | ( | struct Scene * | scene | ) |
Definition at line 232 of file particle_edit.c.
References NULL, ToolSettings::particle, scene, and Scene::toolsettings.
Referenced by brush_add(), brush_comb(), brush_cut(), brush_drawcursor(), brush_edit_apply(), brush_puff(), count_selected_keys(), createTransParticleVerts(), disconnect_hair(), for_mouse_hit_keys(), foreach_mouse_hit_key(), foreach_mouse_hit_key_iter(), foreach_mouse_hit_point(), OVERLAY_edit_particle_cache_init(), OVERLAY_particle_cache_init(), PE_apply_lengths(), pe_deflect_emitter(), pe_get_current(), PE_hide_keys_time(), pe_iterate_lengths(), PE_lasso_select(), PE_update_object(), shape_cut(), shape_cut_exec(), shape_cut_poll(), toggle_particle_cursor(), and weight_set_exec().
int PE_start_edit | ( | struct PTCacheEdit * | edit | ) |
Definition at line 219 of file particle_edit.c.
References PTCacheEdit::edited, ParticleSystem::flag, PTCacheEdit::psys, and PSYS_EDITED.
Referenced by brush_edit_apply(), convert_type_get(), PE_box_select(), PE_circle_select(), PE_deselect_all_visible(), PE_lasso_select(), PE_mouse_particles(), and shape_cut_exec().
void PE_update_object | ( | struct Depsgraph * | depsgraph, |
struct Scene * | scene, | ||
struct Object * | ob, | ||
int | useflag | ||
) |
Definition at line 1614 of file particle_edit.c.
References RenderData::cfra, depsgraph, ParticleSystem::flag, ParticleEditSettings::flag, G, LOOP_POINTS, ParticleSystem::part, PART_EMITTER, PE_apply_lengths(), PE_apply_mirror(), PE_AUTO_VELOCITY, pe_deflect_emitter(), PE_get_current(), PE_hide_keys_time(), pe_iterate_lengths(), PE_settings(), pe_x_mirror(), PEP_EDIT_RECALC, point, POINT_P, PTCacheEdit::psys, psys_cache_edit_paths(), PSYS_HAIR_UPDATED, Scene::r, scene, ParticleSettings::type, update_velocities(), and update_world_cos().
Referenced by brush_edit_apply(), copy_particle_edit(), disconnect_hair(), drw_particle_update_ptcache_edit(), flushTransParticles(), PE_create_particle_edit(), rekey_exec(), remap_hair_emitter(), shape_cut_exec(), subdivide_exec(), and unify_length_exec().