Blender V2.61 - r43446
|
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include "MEM_guardedalloc.h"
#include "DNA_anim_types.h"
#include "DNA_curve_types.h"
#include "DNA_key_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_object_force.h"
#include "DNA_scene_types.h"
#include "BLI_math.h"
#include "BLI_listbase.h"
#include "BLI_string.h"
#include "BLI_path_util.h"
#include "BLI_editVert.h"
#include "BLI_utildefines.h"
#include "BKE_animsys.h"
#include "BKE_curve.h"
#include "BKE_context.h"
#include "BKE_depsgraph.h"
#include "BKE_displist.h"
#include "BKE_DerivedMesh.h"
#include "BKE_effect.h"
#include "BKE_global.h"
#include "BKE_key.h"
#include "BKE_lattice.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_multires.h"
#include "BKE_report.h"
#include "BKE_object.h"
#include "BKE_ocean.h"
#include "BKE_particle.h"
#include "BKE_softbody.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "RNA_enum_types.h"
#include "ED_armature.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_mesh.h"
#include "WM_api.h"
#include "WM_types.h"
#include "object_intern.h"
Go to the source code of this file.
Definition in file object_modifier.c.
typedef struct OceanBakeJob OceanBakeJob |
ModifierData* ED_object_modifier_add | ( | ReportList * | reports, |
Main * | bmain, | ||
Scene * | scene, | ||
Object * | ob, | ||
const char * | name, | ||
int | type | ||
) | [read] |
Definition at line 88 of file object_modifier.c.
References BKE_report(), BKE_reportf(), BLI_addtail(), BLI_insertlinkbefore(), BLI_strncpy(), DAG_id_tag_update(), DAG_scene_sort(), PartDeflect::deflect, ELEM5, eModifierType_Collision, eModifierType_Multires, eModifierType_ParticleSystem, eModifierType_Softbody, eModifierType_Surface, eModifierTypeFlag_RequiresOriginalData, eModifierTypeFlag_Single, eModifierTypeType_OnlyDeform, ListBase::first, ModifierTypeInfo::flags, Object::id, modifier_new(), modifier_unique_name(), Object::modifiers, modifiers_findByType(), modifierType_getInfo(), mti, multiresModifier_set_levels_from_disps(), ID::name, ModifierData::next, NULL, OB_CURVE, OB_FONT, OB_LATTICE, OB_MESH, OB_RECALC_DATA, OB_SB_EDGES, OB_SB_GOAL, OB_SURF, object_add_collision_fields(), object_add_particle_system(), Object::pd, RPT_WARNING, sbNew(), Object::soft, Object::softflag, ModifierTypeInfo::type, ModifierData::type, and Object::type.
Referenced by SkinInfo::link_armature(), modifier_add_exec(), and parent_set_exec().
int ED_object_modifier_apply | ( | ReportList * | reports, |
Scene * | scene, | ||
Object * | ob, | ||
ModifierData * | md, | ||
int | mode | ||
) |
Definition at line 577 of file object_modifier.c.
References BKE_report(), BLI_remlink(), Object::data, eModifierMode_Realtime, ListBase::first, ModifierData::mode, modifier_apply_obdata(), modifier_apply_shape(), MODIFIER_APPLY_SHAPE, modifier_free(), Object::modifiers, Scene::obedit, RPT_ERROR, and RPT_INFO.
Referenced by modifier_apply_exec().
Definition at line 262 of file object_modifier.c.
References DAG_id_tag_update(), DAG_scene_sort(), ListBase::first, Object::id, Object::modifiers, ModifierData::next, OB_RECALC_DATA, and object_modifier_remove().
int ED_object_modifier_convert | ( | ReportList * | UNUSEDreports, |
Main * | bmain, | ||
Scene * | scene, | ||
Object * | ob, | ||
ModifierData * | md | ||
) |
Definition at line 329 of file object_modifier.c.
References add_object(), CD_CALLOC, CD_MEDGE, CD_MFACE, CD_MVERT, ParticleSystem::childcache, MVert::co, copy_v3_v3(), CustomData_add_layer(), DAG_scene_sort(), Object::data, ParticleSettings::draw, eModifierType_ParticleSystem, Mesh::fdata, MVert::flag, MEdge::flag, ME_EDGEDRAW, ME_EDGERENDER, ME_LOOSEEDGE, Mesh::medge, Mesh::mface, Object::mode, Mesh::mvert, NULL, OB_MESH, OB_MODE_PARTICLE_EDIT, ParticleSystem::part, PART_DRAW_PARENT, PART_DRAW_PATH, ParticleSystem::pathcache, ParticleSettings::ren_as, SELECT, ParticleCacheKey::steps, ParticleSystem::totcached, ParticleSystem::totchildcache, Mesh::totedge, Mesh::totvert, ModifierData::type, MEdge::v1, and MEdge::v2.
int ED_object_modifier_copy | ( | ReportList * | UNUSEDreports, |
Object * | ob, | ||
ModifierData * | md | ||
) |
Definition at line 614 of file object_modifier.c.
References BLI_insertlink(), modifier_copyData(), modifier_new(), modifier_unique_name(), Object::modifiers, and ModifierData::type.
int ED_object_modifier_move_down | ( | ReportList * | reports, |
Object * | ob, | ||
ModifierData * | md | ||
) |
Definition at line 308 of file object_modifier.c.
References BKE_report(), BLI_insertlink(), BLI_remlink(), eModifierTypeFlag_RequiresOriginalData, eModifierTypeType_OnlyDeform, ModifierTypeInfo::flags, Object::modifiers, modifierType_getInfo(), mti, ModifierData::next, RPT_WARNING, ModifierTypeInfo::type, and ModifierData::type.
Referenced by modifier_move_down_exec().
int ED_object_modifier_move_up | ( | ReportList * | reports, |
Object * | ob, | ||
ModifierData * | md | ||
) |
Definition at line 287 of file object_modifier.c.
References BKE_report(), BLI_insertlink(), BLI_remlink(), eModifierTypeFlag_RequiresOriginalData, eModifierTypeType_OnlyDeform, ModifierTypeInfo::flags, Object::modifiers, modifierType_getInfo(), mti, ModifierData::prev, RPT_WARNING, ModifierTypeInfo::type, and ModifierData::type.
Referenced by modifier_move_up_exec().
int ED_object_modifier_remove | ( | ReportList * | reports, |
Main * | bmain, | ||
Scene * | scene, | ||
Object * | ob, | ||
ModifierData * | md | ||
) |
Definition at line 241 of file object_modifier.c.
References BKE_reportf(), DAG_id_tag_update(), DAG_scene_sort(), Object::id, ModifierData::name, ID::name, OB_RECALC_DATA, object_modifier_remove(), and RPT_ERROR.
Referenced by modifier_remove_exec().
static int edit_modifier_invoke_properties | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 734 of file object_modifier.c.
References CTX_data_pointer_get_type(), PointerRNA::data, ModifierData::name, wmOperator::ptr, RNA_Modifier, RNA_string_set(), and RNA_struct_property_is_set().
Referenced by explode_refresh_invoke(), meshdeform_bind_invoke(), modifier_apply_invoke(), modifier_convert_invoke(), modifier_copy_invoke(), modifier_move_down_invoke(), modifier_move_up_invoke(), modifier_remove_invoke(), multires_base_apply_invoke(), multires_external_save_invoke(), multires_higher_levels_delete_invoke(), multires_reshape_invoke(), multires_subdivide_invoke(), and ocean_bake_invoke().
static int edit_modifier_poll | ( | bContext * | C | ) | [static] |
Definition at line 724 of file object_modifier.c.
References edit_modifier_poll_generic(), and RNA_Modifier.
Referenced by OBJECT_OT_modifier_apply(), OBJECT_OT_modifier_convert(), OBJECT_OT_modifier_copy(), OBJECT_OT_modifier_move_down(), OBJECT_OT_modifier_move_up(), and OBJECT_OT_modifier_remove().
static int edit_modifier_poll_generic | ( | bContext * | C, |
StructRNA * | rna_type, | ||
int | obtype_flag | ||
) | [static] |
Definition at line 712 of file object_modifier.c.
References CTX_data_pointer_get_type(), PointerRNA::data, ED_object_active_context(), Object::id, PointerRNA::id, ID::lib, and Object::type.
Referenced by edit_modifier_poll(), explode_poll(), meshdeform_poll(), multires_poll(), and ocean_bake_poll().
static void edit_modifier_properties | ( | wmOperatorType * | ot | ) | [static] |
Definition at line 729 of file object_modifier.c.
References MAX_NAME, RNA_def_string(), and wmOperatorType::srna.
Referenced by OBJECT_OT_explode_refresh(), OBJECT_OT_meshdeform_bind(), OBJECT_OT_modifier_apply(), OBJECT_OT_modifier_convert(), OBJECT_OT_modifier_copy(), OBJECT_OT_modifier_move_down(), OBJECT_OT_modifier_move_up(), OBJECT_OT_modifier_remove(), OBJECT_OT_multires_base_apply(), OBJECT_OT_multires_external_save(), OBJECT_OT_multires_higher_levels_delete(), OBJECT_OT_multires_reshape(), OBJECT_OT_multires_subdivide(), and OBJECT_OT_ocean_bake().
static ModifierData* edit_modifier_property_get | ( | wmOperator * | op, |
Object * | ob, | ||
int | type | ||
) | [static] |
Definition at line 751 of file object_modifier.c.
References MAX_NAME, modifiers_findByName(), NULL, wmOperator::ptr, RNA_string_get(), and ModifierData::type.
Referenced by explode_refresh_exec(), meshdeform_bind_exec(), modifier_apply_exec(), modifier_convert_exec(), modifier_copy_exec(), modifier_move_down_exec(), modifier_move_up_exec(), modifier_remove_exec(), multires_base_apply_exec(), multires_external_save_invoke(), multires_higher_levels_delete_exec(), multires_reshape_exec(), multires_subdivide_exec(), and ocean_bake_exec().
static int explode_poll | ( | bContext * | C | ) | [static] |
Definition at line 1410 of file object_modifier.c.
References edit_modifier_poll_generic(), and RNA_ExplodeModifier.
Referenced by OBJECT_OT_explode_refresh().
static int explode_refresh_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1415 of file object_modifier.c.
References DAG_id_tag_update(), ED_object_active_context(), edit_modifier_property_get(), eExplodeFlag_CalcFaces, eModifierType_Explode, ExplodeModifierData::flag, Object::id, NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by explode_refresh_invoke(), and OBJECT_OT_explode_refresh().
static int explode_refresh_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1431 of file object_modifier.c.
References edit_modifier_invoke_properties(), explode_refresh_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_explode_refresh().
static void init_ocean_modifier_bake | ( | struct Ocean * | oc, |
struct OceanModifierData * | omd | ||
) | [static] |
Definition at line 1464 of file object_modifier.c.
References BKE_init_ocean(), OceanModifierData::chop_amount, OceanModifierData::damp, OceanModifierData::depth, OceanModifierData::flag, MOD_OCEAN_GENERATE_FOAM, MOD_OCEAN_GENERATE_NORMALS, OceanModifierData::resolution, OceanModifierData::seed, OceanModifierData::smallest_wave, OceanModifierData::spatial_size, OceanModifierData::time, TRUE, OceanModifierData::wave_alignment, OceanModifierData::wave_direction, and OceanModifierData::wind_velocity.
Referenced by ocean_bake_exec().
static int meshdeform_bind_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1321 of file object_modifier.c.
References MeshDeformModifierData::bindcagecos, MeshDeformModifierData::bindcos, MeshDeformModifierData::bindfunc, MeshDeformModifierData::bindinfluences, MeshDeformModifierData::bindoffsets, MeshDeformModifierData::bindweights, CTX_data_scene(), DAG_id_tag_update(), MeshDeformModifierData::dyngrid, MeshDeformModifierData::dyninfluences, MeshDeformModifierData::dynverts, ED_object_active_context(), edit_modifier_property_get(), ELEM3, eModifierMode_Realtime, eModifierType_MeshDeform, Object::id, lattice_calc_modifiers(), makeDispListCurveTypes(), makeDispListMBall(), MEM_freeN(), mesh_create_derived_view(), mesh_deform_bind(), ModifierData::mode, MeshDeformModifierData::modifier, NC_OBJECT, ND_MODIFIER, NULL, OB_CURVE, OB_FONT, OB_LATTICE, OB_MBALL, OB_MESH, OB_RECALC_DATA, OB_SURF, OPERATOR_CANCELLED, OPERATOR_FINISHED, DerivedMesh::release, MeshDeformModifierData::totcagevert, MeshDeformModifierData::totinfluence, MeshDeformModifierData::totvert, Object::type, and WM_event_add_notifier().
Referenced by meshdeform_bind_invoke(), and OBJECT_OT_meshdeform_bind().
static int meshdeform_bind_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1383 of file object_modifier.c.
References edit_modifier_invoke_properties(), meshdeform_bind_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_meshdeform_bind().
static int meshdeform_poll | ( | bContext * | C | ) | [static] |
Definition at line 1316 of file object_modifier.c.
References edit_modifier_poll_generic(), OB_MESH, and RNA_MeshDeformModifier.
Referenced by OBJECT_OT_meshdeform_bind().
static int modifier_add_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 628 of file object_modifier.c.
References CTX_data_main(), CTX_data_scene(), ED_object_active_context(), ED_object_modifier_add(), NC_OBJECT, ND_MODIFIER, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RNA_enum_get(), and WM_event_add_notifier().
Referenced by OBJECT_OT_modifier_add().
static EnumPropertyItem* modifier_add_itemf | ( | bContext * | C, |
PointerRNA * | UNUSEDptr, | ||
PropertyRNA * | UNUSEDprop, | ||
int * | free | ||
) | [static] |
Definition at line 643 of file object_modifier.c.
References ED_object_active_context(), eModifierTypeFlag_AcceptsCVs, eModifierTypeFlag_AcceptsMesh, eModifierTypeFlag_NoUserAdd, ModifierTypeInfo::flags, EnumPropertyItem::identifier, modifier_type_items, modifierType_getInfo(), mti, NULL, OB_MESH, RNA_enum_item_add(), RNA_enum_item_end(), and Object::type.
Referenced by OBJECT_OT_modifier_add().
static int modifier_apply_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 892 of file object_modifier.c.
References CTX_data_scene(), DAG_id_tag_update(), ED_object_active_context(), ED_object_modifier_apply(), edit_modifier_property_get(), Object::id, NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RNA_enum_get(), and WM_event_add_notifier().
Referenced by modifier_apply_invoke(), and OBJECT_OT_modifier_apply().
static int modifier_apply_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 909 of file object_modifier.c.
References edit_modifier_invoke_properties(), modifier_apply_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_modifier_apply().
static int modifier_apply_obdata | ( | ReportList * | reports, |
Scene * | scene, | ||
Object * | ob, | ||
ModifierData * | md | ||
) | [static] |
Definition at line 487 of file object_modifier.c.
References BKE_report(), CD_MDISPS, curve_applyVertexCos(), curve_getVertexCos(), CustomData_external_remove(), CustomData_free_layer_active(), DAG_id_tag_update(), Object::data, ModifierTypeInfo::deformVerts, DM_to_mesh(), ELEM, eModifierType_Multires, eModifierTypeType_Constructive, eModifierTypeType_NonGeometrical, eModifierTypeType_OnlyDeform, Mesh::fdata, find_multires_modifier_before(), ListBase::first, Object::id, Mesh::id, ModifierTypeInfo::isDisabled, Mesh::key, MEM_freeN(), mesh_create_derived_for_modifier(), modifierType_getInfo(), mti, multires_force_update(), multiresModifier_reshapeFromDeformMod(), ParticleSystem::next, NULL, Curve::nurb, OB_CURVE, OB_MESH, OB_RECALC_DATA, OB_SURF, ParticleSystem::part, PART_HAIR, Object::particlesystem, psys_apply_hair_lattice(), DerivedMesh::release, RPT_ERROR, RPT_INFO, ModifierData::scene, Mesh::totface, MultiresModifierData::totlvl, ParticleSettings::type, ModifierTypeInfo::type, Object::type, and ModifierData::type.
Referenced by ED_object_modifier_apply().
static int modifier_apply_shape | ( | ReportList * | reports, |
Scene * | scene, | ||
Object * | ob, | ||
ModifierData * | md | ||
) | [static] |
Definition at line 438 of file object_modifier.c.
References add_key(), add_keyblock(), BKE_report(), Object::data, DM_to_meshkey(), eModifierTypeType_NonGeometrical, ModifierTypeInfo::isDisabled, Mesh::key, KEY_RELATIVE, mesh_create_derived_for_modifier(), mesh_to_key(), modifier_sameTopology(), modifierType_getInfo(), mti, ModifierData::name, NULL, OB_MESH, DerivedMesh::release, RPT_ERROR, ModifierData::scene, Key::type, ModifierTypeInfo::type, Object::type, and ModifierData::type.
Referenced by ED_object_modifier_apply().
static int modifier_convert_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 941 of file object_modifier.c.
References CTX_data_main(), CTX_data_scene(), DAG_id_tag_update(), ED_object_active_context(), ED_object_modifier_convert(), edit_modifier_property_get(), Object::id, NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, and WM_event_add_notifier().
Referenced by modifier_convert_invoke(), and OBJECT_OT_modifier_convert().
static int modifier_convert_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 957 of file object_modifier.c.
References edit_modifier_invoke_properties(), modifier_convert_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_modifier_convert().
static int modifier_copy_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 982 of file object_modifier.c.
References DAG_id_tag_update(), ED_object_active_context(), ED_object_modifier_copy(), edit_modifier_property_get(), Object::id, NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, and WM_event_add_notifier().
Referenced by modifier_copy_invoke(), and OBJECT_OT_modifier_copy().
static int modifier_copy_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 996 of file object_modifier.c.
References edit_modifier_invoke_properties(), modifier_copy_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_modifier_copy().
static int modifier_move_down_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 853 of file object_modifier.c.
References DAG_id_tag_update(), ED_object_active_context(), ED_object_modifier_move_down(), edit_modifier_property_get(), Object::id, NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, and WM_event_add_notifier().
Referenced by modifier_move_down_invoke(), and OBJECT_OT_modifier_move_down().
static int modifier_move_down_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 867 of file object_modifier.c.
References edit_modifier_invoke_properties(), modifier_move_down_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_modifier_move_down().
static int modifier_move_up_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 814 of file object_modifier.c.
References DAG_id_tag_update(), ED_object_active_context(), ED_object_modifier_move_up(), edit_modifier_property_get(), Object::id, NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, and WM_event_add_notifier().
Referenced by modifier_move_up_invoke(), and OBJECT_OT_modifier_move_up().
static int modifier_move_up_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 828 of file object_modifier.c.
References edit_modifier_invoke_properties(), modifier_move_up_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_modifier_move_up().
static int modifier_remove_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 767 of file object_modifier.c.
References Scene::basact, CTX_data_main(), CTX_data_scene(), ED_object_active_context(), ED_object_modifier_remove(), edit_modifier_property_get(), Object::mode, NC_OBJECT, NC_SCENE, ND_MODE, ND_MODIFIER, NS_MODE_OBJECT, NULL, OB_MODE_PARTICLE_EDIT, Base::object, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, and WM_event_add_notifier().
Referenced by modifier_remove_invoke(), and OBJECT_OT_modifier_remove().
static int modifier_remove_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 789 of file object_modifier.c.
References edit_modifier_invoke_properties(), modifier_remove_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_modifier_remove().
static int multires_base_apply_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1273 of file object_modifier.c.
References DAG_id_tag_update(), ED_object_active_context(), edit_modifier_property_get(), eModifierType_Multires, Object::id, multiresModifier_base_apply(), NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by multires_base_apply_invoke(), and OBJECT_OT_multires_base_apply().
static int multires_base_apply_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1289 of file object_modifier.c.
References edit_modifier_invoke_properties(), multires_base_apply_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_multires_base_apply().
static int multires_external_pack_exec | ( | bContext * | C, |
wmOperator * | UNUSEDop | ||
) | [static] |
Definition at line 1245 of file object_modifier.c.
References CD_MDISPS, CustomData_external_remove(), CustomData_external_test(), Object::data, ED_object_active_context(), Mesh::fdata, Mesh::id, OPERATOR_CANCELLED, OPERATOR_FINISHED, and Mesh::totface.
Referenced by OBJECT_OT_multires_external_pack().
static int multires_external_save_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1170 of file object_modifier.c.
References BLI_path_rel(), CD_MASK_MESH, CD_MDISPS, wmOperator::customdata, CustomData_external_add(), CustomData_external_test(), CustomData_external_write(), Object::data, ED_object_active_context(), Mesh::fdata, FILE_MAX, G, Mesh::id, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), RNA_string_get(), and Mesh::totface.
Referenced by multires_external_save_invoke(), and OBJECT_OT_multires_external_save().
static int multires_external_save_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1194 of file object_modifier.c.
References BLI_snprintf(), CD_MDISPS, wmOperator::customdata, CustomData_external_test(), Object::data, ED_object_active_context(), edit_modifier_invoke_properties(), edit_modifier_property_get(), eModifierType_Multires, Mesh::fdata, FILE_MAX, Mesh::id, multires_external_save_exec(), ID::name, OPERATOR_CANCELLED, OPERATOR_RUNNING_MODAL, wmOperator::ptr, RNA_string_set(), RNA_struct_property_is_set(), and WM_event_add_fileselect().
Referenced by OBJECT_OT_multires_external_save().
static int multires_higher_levels_delete_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1026 of file object_modifier.c.
References ED_object_active_context(), edit_modifier_property_get(), eModifierType_Multires, multiresModifier_del_levels(), NC_OBJECT, ND_MODIFIER, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by multires_higher_levels_delete_invoke(), and OBJECT_OT_multires_higher_levels_delete().
static int multires_higher_levels_delete_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1041 of file object_modifier.c.
References edit_modifier_invoke_properties(), multires_higher_levels_delete_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_multires_higher_levels_delete().
static int multires_poll | ( | bContext * | C | ) | [static] |
Definition at line 1021 of file object_modifier.c.
References edit_modifier_poll_generic(), OB_MESH, and RNA_MultiresModifier.
Referenced by OBJECT_OT_multires_base_apply(), OBJECT_OT_multires_external_pack(), OBJECT_OT_multires_external_save(), OBJECT_OT_multires_higher_levels_delete(), OBJECT_OT_multires_reshape(), and OBJECT_OT_multires_subdivide().
static int multires_reshape_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1107 of file object_modifier.c.
References BKE_report(), CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_scene(), DAG_id_tag_update(), ED_object_active_context(), edit_modifier_property_get(), eModifierType_Multires, Object::id, MultiresModifierData::lvl, multiresModifier_reshape(), NC_OBJECT, ND_MODIFIER, NULL, OB_MESH, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, RPT_ERROR, and WM_event_add_notifier().
Referenced by multires_reshape_invoke(), and OBJECT_OT_multires_reshape().
static int multires_reshape_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1145 of file object_modifier.c.
References edit_modifier_invoke_properties(), multires_reshape_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_multires_reshape().
static int multires_subdivide_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1066 of file object_modifier.c.
References DAG_id_tag_update(), ED_object_active_context(), edit_modifier_property_get(), eModifierType_Multires, Object::id, multiresModifier_subdivide(), NC_OBJECT, ND_MODIFIER, OB_RECALC_DATA, OPERATOR_CANCELLED, OPERATOR_FINISHED, MultiresModifierData::simple, and WM_event_add_notifier().
Referenced by multires_subdivide_invoke(), and OBJECT_OT_multires_subdivide().
static int multires_subdivide_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1082 of file object_modifier.c.
References edit_modifier_invoke_properties(), multires_subdivide_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_multires_subdivide().
static int object_modifier_remove | ( | Object * | ob, |
ModifierData * | md, | ||
int * | sort_depsgraph | ||
) | [static] |
Definition at line 160 of file object_modifier.c.
References BLI_remlink(), CD_MDISPS, CustomData_external_remove(), CustomData_free_layer_active(), Object::data, PartDeflect::deflect, Object::dt, Mesh::edit_mesh, ELEM, EM_free_data_layer(), eModifierType_Cloth, eModifierType_Collision, eModifierType_Multires, eModifierType_ParticleSystem, eModifierType_Smoke, eModifierType_Softbody, eModifierType_Surface, Mesh::fdata, EditMesh::fdata, ListBase::first, Mesh::id, Object::mode, modifier_free(), Object::modifiers, ModifierData::next, NULL, OB_MODE_PARTICLE_EDIT, OB_TEXTURE, Object::particlesystem, Object::pd, PFIELD_SHAPE_PLANE, PFIELD_SHAPE_SURFACE, ParticleSystemModifierData::psys, psys_free(), sbFree(), PartDeflect::shape, Object::soft, Object::softflag, Mesh::totface, and ModifierData::type.
Referenced by ED_object_modifier_clear(), and ED_object_modifier_remove().
void OBJECT_OT_explode_refresh | ( | wmOperatorType * | ot | ) |
Definition at line 1440 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, explode_poll(), explode_refresh_exec(), explode_refresh_invoke(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_meshdeform_bind | ( | wmOperatorType * | ot | ) |
Definition at line 1391 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, meshdeform_bind_exec(), meshdeform_bind_invoke(), meshdeform_poll(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_add | ( | wmOperatorType * | ot | ) |
Definition at line 687 of file object_modifier.c.
References wmOperatorType::description, ED_operator_object_active_editable(), eModifierType_Subsurf, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, modifier_add_exec(), modifier_add_itemf(), modifier_type_items, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, wmOperatorType::poll, wmOperatorType::prop, RNA_def_enum(), RNA_def_enum_funcs(), wmOperatorType::srna, and WM_menu_invoke().
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_apply | ( | wmOperatorType * | ot | ) |
Definition at line 922 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_poll(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, MODIFIER_APPLY_DATA, modifier_apply_exec(), modifier_apply_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, wmOperatorType::poll, RNA_def_enum(), and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_convert | ( | wmOperatorType * | ot | ) |
Definition at line 965 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_poll(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, modifier_convert_exec(), modifier_convert_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_copy | ( | wmOperatorType * | ot | ) |
Definition at line 1004 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_poll(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, modifier_copy_exec(), modifier_copy_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_move_down | ( | wmOperatorType * | ot | ) |
Definition at line 875 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_poll(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, modifier_move_down_exec(), modifier_move_down_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_move_up | ( | wmOperatorType * | ot | ) |
Definition at line 836 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_poll(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, modifier_move_up_exec(), modifier_move_up_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_modifier_remove | ( | wmOperatorType * | ot | ) |
Definition at line 797 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_poll(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, modifier_remove_exec(), modifier_remove_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_multires_base_apply | ( | wmOperatorType * | ot | ) |
Definition at line 1298 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, multires_base_apply_exec(), multires_base_apply_invoke(), multires_poll(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_multires_external_pack | ( | wmOperatorType * | ot | ) |
Definition at line 1259 of file object_modifier.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, multires_external_pack_exec(), multires_poll(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_multires_external_save | ( | wmOperatorType * | ot | ) |
Definition at line 1225 of file object_modifier.c.
References BTXFILE, wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, FILE_SAVE, FILE_SPECIAL, wmOperatorType::flag, FOLDERFILE, wmOperatorType::idname, wmOperatorType::invoke, multires_external_save_exec(), multires_external_save_invoke(), multires_poll(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, wmOperatorType::poll, WM_FILESEL_FILEPATH, WM_FILESEL_RELPATH, and WM_operator_properties_filesel().
Referenced by ED_operatortypes_object().
void OBJECT_OT_multires_higher_levels_delete | ( | wmOperatorType * | ot | ) |
Definition at line 1049 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, multires_higher_levels_delete_exec(), multires_higher_levels_delete_invoke(), multires_poll(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_multires_reshape | ( | wmOperatorType * | ot | ) |
Definition at line 1153 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, multires_poll(), multires_reshape_exec(), multires_reshape_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_multires_subdivide | ( | wmOperatorType * | ot | ) |
Definition at line 1090 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, multires_poll(), multires_subdivide_exec(), multires_subdivide_invoke(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_ocean_bake | ( | wmOperatorType * | ot | ) |
Definition at line 1655 of file object_modifier.c.
References wmOperatorType::description, edit_modifier_properties(), wmOperatorType::exec, FALSE, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, ocean_bake_exec(), ocean_bake_invoke(), ocean_bake_poll(), OPTYPE_REGISTER, OPTYPE_UNDO, wmOperatorType::poll, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
static int ocean_bake_exec | ( | bContext * | C, |
wmOperator * | op | ||
) | [static] |
Definition at line 1552 of file object_modifier.c.
References ADT_RECALC_ANIM, OceanModifierData::bakeend, OceanModifierData::bakestart, BKE_add_ocean(), BKE_animsys_evaluate_animdata(), BKE_init_ocean_cache(), OceanModifierData::cachepath, RenderData::cfra, OceanModifierData::chop_amount, CTX_data_scene(), CTX_wm_manager(), CTX_wm_window(), DAG_id_tag_update(), OceanCache::duration, ED_object_active_context(), edit_modifier_property_get(), eModifierType_Ocean, OceanModifierData::foam_coverage, OceanModifierData::foam_fade, addon::engine::free(), i, Object::id, init_ocean_modifier_bake(), MEM_callocN(), MEM_mallocN(), MOD_OCEAN_REFRESH_CLEAR_CACHE, modifier_path_relbase(), NC_OBJECT, ND_MODIFIER, NULL, OB_RECALC_DATA, OceanBakeJob::ocean, oceanbake_endjob(), oceanbake_free(), oceanbake_startjob(), OceanBakeJob::och, OceanBakeJob::omd, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, Scene::r, OceanModifierData::refresh, OceanModifierData::resolution, RNA_boolean_get(), OceanModifierData::time, OceanCache::time, OceanModifierData::wave_scale, WM_event_add_notifier(), WM_JOB_PROGRESS, WM_jobs_callbacks(), WM_jobs_customdata(), WM_jobs_get(), WM_jobs_start(), and WM_jobs_timer().
Referenced by OBJECT_OT_ocean_bake(), and ocean_bake_invoke().
static int ocean_bake_invoke | ( | bContext * | C, |
wmOperator * | op, | ||
wmEvent * | UNUSEDevent | ||
) | [static] |
Definition at line 1646 of file object_modifier.c.
References edit_modifier_invoke_properties(), ocean_bake_exec(), and OPERATOR_CANCELLED.
Referenced by OBJECT_OT_ocean_bake().
static int ocean_bake_poll | ( | bContext * | C | ) | [static] |
Definition at line 1458 of file object_modifier.c.
References edit_modifier_poll_generic(), and RNA_OceanModifier.
Referenced by OBJECT_OT_ocean_bake().
static int oceanbake_breakjob | ( | void * | UNUSEDcustomdata | ) | [static] |
static void oceanbake_endjob | ( | void * | customdata | ) | [static] |
Definition at line 1539 of file object_modifier.c.
References BKE_free_ocean(), OceanModifierData::cached, NULL, OceanBakeJob::ocean, OceanModifierData::oceancache, OceanBakeJob::och, OceanBakeJob::omd, and TRUE.
Referenced by ocean_bake_exec().
static void oceanbake_free | ( | void * | customdata | ) | [static] |
Definition at line 1493 of file object_modifier.c.
References MEM_freeN().
Referenced by ocean_bake_exec().
static void oceanbake_startjob | ( | void * | customdata, |
short * | stop, | ||
short * | do_update, | ||
float * | progress | ||
) | [static] |
Definition at line 1523 of file object_modifier.c.
References BKE_bake_ocean(), OceanBakeJob::do_update, G, OceanBakeJob::ocean, oceanbake_update(), OceanBakeJob::och, OceanBakeJob::progress, and OceanBakeJob::stop.
Referenced by ocean_bake_exec().
static void oceanbake_update | ( | void * | customdata, |
float | progress, | ||
int * | cancel | ||
) | [static] |
Definition at line 1512 of file object_modifier.c.
References OceanBakeJob::do_update, oceanbake_breakjob(), and OceanBakeJob::progress.
Referenced by oceanbake_startjob().
EnumPropertyItem modifier_apply_as_items[] [static] |
{ {MODIFIER_APPLY_DATA, "DATA", 0, "Object Data", "Apply modifier to the object's data"}, {MODIFIER_APPLY_SHAPE, "SHAPE", 0, "New Shape", "Apply deform-only modifier to a new shape on this object"}, {0, NULL, 0, NULL, NULL}}
Definition at line 917 of file object_modifier.c.