|
Blender
V2.59
|
General operations, lookup, etc. for blender objects. More...
Go to the source code of this file.
Functions | |
| void | clear_workob (struct Object *workob) |
| void | what_does_parent (struct Scene *scene, struct Object *ob, struct Object *workob) |
| void | copy_baseflags (struct Scene *scene) |
| void | copy_objectflags (struct Scene *scene) |
| struct SoftBody * | copy_softbody (struct SoftBody *sb) |
| struct BulletSoftBody * | copy_bulletsoftbody (struct BulletSoftBody *sb) |
| void | copy_object_particlesystems (struct Object *obn, struct Object *ob) |
| void | copy_object_softbody (struct Object *obn, struct Object *ob) |
| void | object_free_particlesystems (struct Object *ob) |
| void | object_free_softbody (struct Object *ob) |
| void | object_free_bulletsoftbody (struct Object *ob) |
| void | update_base_layer (struct Scene *scene, struct Object *ob) |
| void | free_object (struct Object *ob) |
| void | object_free_display (struct Object *ob) |
| void | object_link_modifiers (struct Object *ob, struct Object *from) |
| void | object_free_modifiers (struct Object *ob) |
| void | object_make_proxy (struct Object *ob, struct Object *target, struct Object *gob) |
| void | object_copy_proxy_drivers (struct Object *ob, struct Object *target) |
| void | unlink_object (struct Object *ob) |
| int | exist_object (struct Object *obtest) |
| void * | add_camera (const char *name) |
| struct Camera * | copy_camera (struct Camera *cam) |
| void | make_local_camera (struct Camera *cam) |
| float | dof_camera (struct Object *ob) |
| void * | add_lamp (const char *name) |
| struct Lamp * | copy_lamp (struct Lamp *la) |
| struct Lamp * | localize_lamp (struct Lamp *la) |
| void | make_local_lamp (struct Lamp *la) |
| void | free_camera (struct Camera *ca) |
| void | free_lamp (struct Lamp *la) |
| struct Object * | add_only_object (int type, const char *name) |
| struct Object * | add_object (struct Scene *scene, int type) |
| struct Object * | copy_object (struct Object *ob) |
| void | make_local_object (struct Object *ob) |
| int | object_is_libdata (struct Object *ob) |
| int | object_data_is_libdata (struct Object *ob) |
| void | set_mblur_offs (float blur) |
| void | set_field_offs (float field) |
| void | disable_speed_curve (int val) |
| float | bsystem_time (struct Scene *scene, struct Object *ob, float cfra, float ofs) |
| void | object_scale_to_mat3 (struct Object *ob, float mat[][3]) |
| void | object_rot_to_mat3 (struct Object *ob, float mat[][3]) |
| void | object_mat3_to_rot (struct Object *ob, float mat[][3], short use_compat) |
| void | object_to_mat3 (struct Object *ob, float mat[][3]) |
| void | object_to_mat4 (struct Object *ob, float mat[][4]) |
| void | object_apply_mat4 (struct Object *ob, float mat[][4], const short use_compat, const short use_parent) |
| void | set_no_parent_ipo (int val) |
| void | where_is_object_time (struct Scene *scene, struct Object *ob, float ctime) |
| void | where_is_object (struct Scene *scene, struct Object *ob) |
| void | where_is_object_simul (struct Scene *scene, struct Object *ob) |
| struct BoundBox * | unit_boundbox (void) |
| void | boundbox_set_from_min_max (struct BoundBox *bb, float min[3], float max[3]) |
| struct BoundBox * | object_get_boundbox (struct Object *ob) |
| void | object_get_dimensions (struct Object *ob, float *value) |
| void | object_set_dimensions (struct Object *ob, const float *value) |
| void | object_boundbox_flag (struct Object *ob, int flag, int set) |
| void | minmax_object (struct Object *ob, float *min, float *max) |
| int | minmax_object_duplis (struct Scene *scene, struct Object *ob, float *min, float *max) |
| void | solve_tracking (struct Object *ob, float targetmat[][4]) |
| int | ray_hit_boundbox (struct BoundBox *bb, float ray_start[3], float ray_normal[3]) |
| void * | object_tfm_backup (struct Object *ob) |
| void | object_tfm_restore (struct Object *ob, void *obtfm_pt) |
| void | object_handle_update (struct Scene *scene, struct Object *ob) |
| float | give_timeoffset (struct Object *ob) |
| int | give_obdata_texspace (struct Object *ob, short **texflag, float **loc, float **size, float **rot) |
| int | object_insert_ptcache (struct Object *ob) |
| struct KeyBlock * | object_insert_shape_key (struct Scene *scene, struct Object *ob, const char *name, int from_mix) |
| int | object_is_modified (struct Scene *scene, struct Object *ob) |
| void | object_camera_mode (struct RenderData *rd, struct Object *camera) |
| void | object_camera_matrix (struct RenderData *rd, struct Object *camera, int winx, int winy, short field_second, float winmat[][4], struct rctf *viewplane, float *clipsta, float *clipend, float *lens, float *ycor, float *viewdx, float *viewdy) |
| void | object_relink (struct Object *ob) |
General operations, lookup, etc. for blender objects.
Definition in file BKE_object.h.
| void* add_camera | ( | const char * | name | ) |
Definition at line 708 of file object.c.
References alloc_libblock(), CAM_SHOWPASSEPARTOUT, Main::camera, Camera::clipend, Camera::clipsta, Camera::drawsize, Camera::flag, G, ID_CA, Camera::lens, Global::main, Camera::ortho_scale, and Camera::passepartalpha.
Referenced by add_obdata_from_type(), and DocumentImporter::writeCamera().
| void* add_lamp | ( | const char * | name | ) |
Definition at line 803 of file object.c.
References Lamp::adapt_thresh, alloc_libblock(), Lamp::area_size, Lamp::area_sizey, Lamp::area_sizez, Lamp::atm_distance_factor, Lamp::atm_extinction_factor, Lamp::atm_inscattering_factor, Lamp::atm_turbidity, Lamp::att2, Lamp::b, Lamp::backscattered_light, Lamp::bias, BLI_XYZ_CIE, Lamp::buffers, Lamp::bufsize, Lamp::buftype, Lamp::clipend, Lamp::clipsta, Lamp::compressthresh, Lamp::curfalloff, curvemapping_add(), curvemapping_initialize(), Lamp::dist, Lamp::energy, Lamp::falloff_type, Lamp::g, G, Lamp::haint, Lamp::horizon_brightness, ID_LA, Lamp::k, LA_FALLOFF_INVSQUARE, LA_SAMP_HALTON, LA_SHAD_BUF, LA_SHADBUF_HALFWAY, Main::lamp, MA_RAMP_ADD, Global::main, Lamp::mode, NULL, Lamp::preview, Lamp::r, Lamp::ray_samp, Lamp::ray_samp_method, Lamp::ray_sampy, Lamp::ray_sampz, Lamp::samp, Lamp::shadspotsize, Lamp::sky_colorspace, Lamp::sky_exposure, Lamp::skyblendfac, Lamp::skyblendtype, Lamp::soft, Lamp::spotblend, Lamp::spotsize, Lamp::spread, Lamp::sun_brightness, Lamp::sun_effect_type, Lamp::sun_intensity, and Lamp::sun_size.
Referenced by add_obdata_from_type(), and DocumentImporter::writeLight().
Definition at line 1096 of file object.c.
References add_obdata_from_type(), add_only_object(), BLI_strncpy(), Object::data, get_obdata_defname(), Object::lay, Scene::lay, OB_RECALC_DATA, OB_RECALC_OB, OB_RECALC_TIME, Object::recalc, scene_add_base(), and scene_select_base().
Referenced by add_hook_object_new(), SkinInfo::create_armature(), DocumentImporter::create_camera_object(), DocumentImporter::create_lamp_object(), MeshImporter::create_mesh_object(), ED_object_add_type(), ED_object_modifier_convert(), get_new_constraint_target(), gp_layer_to_curve(), make_proxy_exec(), txt_add_object(), and DocumentImporter::write_node().
| struct Object* add_only_object | ( | int | type, |
| const char * | name | ||
| ) | [read] |
Definition at line 1019 of file object.c.
References alloc_libblock(), animviz_settings_init(), Object::anisotropicFriction, Object::avs, Object::col, Object::constinv, Object::damping, Object::dquat, Object::drotAngle, Object::drotAxis, Object::dt, Object::dupend, Object::dupfacesca, Object::dupoff, Object::dupon, Object::dupsta, Object::empty_drawsize, Object::empty_drawtype, ListBase::first, Object::fluidsimFlag, Object::fluidsimSettings, Object::formfactor, G, Object::gameflag, ID_OB, Object::inertia, Object::init_state, ListBase::last, Object::m_contactProcessingThreshold, Global::main, Object::margin, Object::mass, NULL, OB_CAMERA, OB_COLLISION, OB_LAMP, OB_LOCK_ROT4D, OB_NEGZ, OB_PLAINAXES, OB_POSY, OB_POSZ, OB_PROP, OB_TEXTURE, Main::object, Object::obmat, Object::parentinv, Object::pc_ids, Object::protectflag, Object::quat, Object::rdamping, ROT_MODE_EUL, Object::rotAngle, Object::rotAxis, Object::rotmode, Object::size, Object::state, Object::trackflag, Object::type, unit_axis_angle(), unit_m4(), unit_qt(), and Object::upflag.
Referenced by add_object(), and give_base_to_groups().
| void boundbox_set_from_min_max | ( | struct BoundBox * | bb, |
| float | min[3], | ||
| float | max[3] | ||
| ) |
Definition at line 2311 of file object.c.
References BoundBox::vec.
Referenced by boundbox_displist(), boundbox_mesh(), DM_set_object_boundbox(), tex_space_curve(), tex_space_mball(), and unit_boundbox().
Referenced by add_keyblock(), applyModifier(), BKE_ptcache_id_time(), do_curve_key(), do_latt_key(), do_mesh_key(), draw_new_particle_system(), draw_object(), followpath_get_tarmat(), new_particle_duplilist(), object_add_particle_system(), psys_get_particle_state(), AnimationExporter::sample_animation(), and where_is_pose().
| void clear_workob | ( | struct Object * | workob | ) |
Definition at line 115 of file object.c.
References ROT_MODE_EUL, Object::rotmode, and Object::size.
Referenced by what_does_obaction(), and what_does_parent().
| void copy_baseflags | ( | struct Scene * | scene | ) |
Definition at line 123 of file object.c.
References Scene::base, ListBase::first, Base::flag, Object::flag, Base::next, and Base::object.
Referenced by set_trans_object_base_flags().
| struct BulletSoftBody* copy_bulletsoftbody | ( | struct BulletSoftBody * | sb | ) | [read] |
Definition at line 1140 of file object.c.
References MEM_dupallocN(), and NULL.
Referenced by copy_attr(), and copy_object().
Definition at line 725 of file object.c.
References copy_libblock().
Referenced by id_copy(), make_local_camera(), object_add_duplicate_internal(), and single_obdata_users().
Definition at line 853 of file object.c.
References BKE_previewimg_copy(), copy_libblock(), Lamp::curfalloff, curvemapping_copy(), id_us_plus(), MAX_MTEX, MEM_mallocN(), Lamp::mtex, Lamp::preview, and MTex::tex.
Referenced by id_copy(), make_local_lamp(), object_add_duplicate_internal(), and single_obdata_users().
Definition at line 1307 of file object.c.
References Object::actuators, armature_rebuild_pose(), Object::bb, BLI_addtail(), BLI_strncpy(), Object::bsoft, Object::constraints, Object::controllers, copy_actuators(), copy_bulletsoftbody(), copy_constraints(), copy_controllers(), copy_libblock(), copy_object_particlesystems(), copy_object_pose(), copy_properties(), copy_sensors(), copy_softbody(), Object::data, Object::defbase, defgroup_copy_list(), Object::derivedDeform, Object::derivedFinal, Object::disp, Object::dup_group, ListBase::first, Object::flag, Object::gpd, Object::gpulamp, Tex::id, id_lib_extern(), id_us_plus(), ListBase::last, Object::mat, Object::matbits, MEM_dupallocN(), Object::mode, modifier_copyData(), modifier_new(), Object::modifiers, Object::mpath, ModifierData::name, ModifierData::next, NULL, OB_ARMATURE, OB_FROMGROUP, Object::path, Object::pc_ids, Object::pd, Object::pose, Object::prop, PartDeflect::rng, Object::sculpt, Object::sensors, Object::soft, PartDeflect::tex, Object::totcol, TRUE, ModifierData::type, and Object::type.
Referenced by AddNewBlenderMesh(), DocumentImporter::create_instance_node(), duplibase_for_convert(), id_copy(), make_local_object(), make_object_duplilist_real(), object_add_duplicate_internal(), and single_object_users().
Definition at line 1218 of file object.c.
References BLI_addtail(), copy_particlesystem(), eModifierType_ParticleSystem, ListBase::first, ListBase::last, Object::modifiers, ModifierData::next, ParticleSystem::next, NULL, Object::particlesystem, ParticleSystemModifierData::psys, and ModifierData::type.
Referenced by copy_object(), and object_link_modifiers().
Definition at line 1241 of file object.c.
References copy_softbody(), and Object::soft.
Referenced by object_link_modifiers().
| void copy_objectflags | ( | struct Scene * | scene | ) |
Definition at line 133 of file object.c.
References Scene::base, ListBase::first, Base::flag, Object::flag, Base::next, and Base::object.
Definition at line 1116 of file object.c.
References BKE_ptcache_copy_list(), SoftBody::bpoint, SoftBody::bspring, SoftBody::effector_weights, SoftBody::keys, MEM_dupallocN(), NULL, SoftBody::pointcache, SoftBody::ptcaches, SoftBody::scratch, SoftBody::totkey, SoftBody::totpoint, SoftBody::totpointkey, and SoftBody::totspring.
Referenced by copy_attr(), copy_object(), and copy_object_softbody().
| void disable_speed_curve | ( | int | val | ) |
Referenced by draw_object().
| float dof_camera | ( | struct Object * | ob | ) |
Definition at line 784 of file object.c.
References copy_m4_m4(), Object::data, Camera::dof_ob, fabs(), if(), invert_m4_m4(), mul_m4_m4m4(), normalize_m4(), OB_CAMERA, Object::obmat, Object::type, and Camera::YF_dofdist.
Referenced by defocus_blur(), and drawcamera().
| int exist_object | ( | struct Object * | obtest | ) |
Definition at line 694 of file object.c.
References ListBase::first, G, Object::id, Global::main, ID::next, NULL, and Main::object.
Referenced by test_constraints().
| void free_camera | ( | struct Camera * | ca | ) |
Definition at line 953 of file object.c.
References BKE_free_animdata().
Referenced by free_libblock().
| void free_lamp | ( | struct Lamp * | la | ) |
Definition at line 958 of file object.c.
References BKE_free_animdata(), BKE_icon_delete(), BKE_previewimg_free(), curvemapping_free(), ID::icon_id, Tex::id, MAX_MTEX, MEM_freeN(), Lamp::mtex, MTex::tex, and ID::us.
Referenced by free_libblock(), and shader_preview_free().
| void free_object | ( | struct Object * | ob | ) |
Definition at line 267 of file object.c.
References Object::adt, animviz_free_motionpath(), Object::bb, BKE_free_animdata(), BLI_freelistN(), bsbFree(), Object::data, free_actuators(), free_constraints(), free_controllers(), free_partdeflect(), free_path(), free_pose(), free_properties(), free_sculptsession(), free_sensors(), GPU_lamp_free(), Material::id, Object::mat, Object::matbits, MEM_freeN(), NULL, OB_CURVE, OB_MBALL, OB_MESH, object_free_display(), object_free_modifiers(), Object::path, sbFree(), Object::totcol, Object::type, unlink_curve(), unlink_mball(), unlink_mesh(), and ID::us.
Referenced by free_libblock().
| int give_obdata_texspace | ( | struct Object * | ob, |
| short ** | texflag, | ||
| float ** | loc, | ||
| float ** | size, | ||
| float ** | rot | ||
| ) |
Definition at line 2765 of file object.c.
References Object::data, GS, ID_CU, ID_MB, ID_ME, MetaBall::loc, Mesh::loc, Curve::loc, NULL, MetaBall::rot, Mesh::rot, Curve::rot, MetaBall::size, Mesh::size, Curve::size, MetaBall::texflag, Mesh::texflag, and Curve::texflag.
Referenced by createTransTexspace().
| float give_timeoffset | ( | struct Object * | ob | ) |
Definition at line 2757 of file object.c.
References give_timeoffset(), Object::ipoflag, OB_OFFS_PARENTADD, Object::parent, and Object::sf.
Referenced by ANIM_draw_cfra(), BKE_ptcache_id_time(), bsystem_time(), draw_object(), give_timeoffset(), group_handle_recalc_and_update(), group_is_animated(), ob_parcurve(), parent_set_exec(), where_is_object_simul(), and where_is_object_time().
Definition at line 876 of file object.c.
References BLI_remlink(), copy_libblock(), Lamp::curfalloff, curvemapping_copy(), G, id_us_plus(), Main::lamp, Global::main, MAX_MTEX, MEM_mallocN(), Lamp::mtex, NULL, Lamp::preview, and MTex::tex.
Referenced by preview_prepare_scene().
| void make_local_camera | ( | struct Camera * | cam | ) |
Definition at line 736 of file object.c.
References Main::camera, copy_camera(), Object::data, ELEM, ListBase::first, ID::flag, G, Camera::id, Object::id, ID::lib, LIB_LOCAL, Global::main, new_id(), ID::next, NULL, Main::object, and ID::us.
Referenced by id_make_local().
| void make_local_lamp | ( | struct Lamp * | la | ) |
Definition at line 900 of file object.c.
References copy_lamp(), Object::data, ListBase::first, ID::flag, G, Lamp::id, Object::id, Main::lamp, ID::lib, LIB_LOCAL, Global::main, new_id(), ID::next, NULL, Main::object, and ID::us.
Referenced by id_make_local().
| void make_local_object | ( | struct Object * | ob | ) |
Definition at line 1410 of file object.c.
References Scene::base, copy_object(), ELEM, extern_local_object(), ListBase::first, ID::flag, G, Object::id, Scene::id, ID::lib, LIB_LOCAL, Global::main, new_id(), Base::next, ID::next, NULL, Main::object, Base::object, object_in_scene(), Object::proxy, Object::proxy_from, Main::scene, and ID::us.
Referenced by id_make_local().
| void minmax_object | ( | struct Object * | ob, |
| float * | min, | ||
| float * | max | ||
| ) |
Definition at line 2387 of file object.c.
References add_v3_v3(), Curve::bb, bPose::chanbase, copy_v3_v3(), Object::data, Lattice::def, DO_MINMAX, FALSE, ListBase::first, get_mesh(), mesh_get_bb(), mul_m4_v3(), mul_v3_m4v3(), bPoseChannel::next, NULL, OB_ARMATURE, OB_CURVE, OB_FONT, OB_LATTICE, OB_MESH, OB_SURF, Object::obmat, Lattice::pntsu, Lattice::pntsv, Lattice::pntsw, Object::pose, bPoseChannel::pose_head, bPoseChannel::pose_tail, Object::size, sub_v3_v3(), tex_space_curve(), TRUE, Object::type, BoundBox::vec, BPoint::vec, and simple_enum_gen::w.
Referenced by clampto_evaluate(), initlocalview(), PE_minmax(), view3d_all_exec(), and viewselected_exec().
Definition at line 2470 of file object.c.
References DO_MINMAX, ListBase::first, free_object_duplilist(), i, DupliObject::mat, mul_v3_m4v3(), DupliObject::next, DupliObject::no_draw, DupliObject::ob, OB_DUPLI, object_duplilist(), object_get_boundbox(), Object::transflag, and BoundBox::vec.
Referenced by object_origin_set_exec(), and viewselected_exec().
| void object_apply_mat4 | ( | struct Object * | ob, |
| float | mat[][4], | ||
| const short | use_compat, | ||
| const short | use_parent | ||
| ) |
Definition at line 1756 of file object.c.
References Object::dloc, Object::dsize, FALSE, invert_m4_m4(), Object::loc, mat4_to_loc_rot_size(), mul_m4_m4m4(), object_apply_mat4(), object_mat3_to_rot(), Object::obmat, Object::parent, Object::parentinv, Object::size, and sub_v3_v3().
Referenced by applyarmature_fix_boneparents(), bc_set_parent(), DocumentImporter::create_instance_node(), ED_view3d_camera_lock_sync(), ED_view3d_to_object(), ignore_parent_tx(), SkinInfo::link_armature(), make_object_duplilist_real(), move_camera(), object_apply_mat4(), object_make_proxy(), object_track_clear_exec(), parent_clear_exec(), AnimationImporter::read_node_transform(), and visual_transform_apply_exec().
| void object_boundbox_flag | ( | struct Object * | ob, |
| int | flag, | ||
| int | set | ||
| ) |
Definition at line 2340 of file object.c.
References BoundBox::flag, and object_get_boundbox().
Referenced by draw_dupli_objects_color().
| void object_camera_matrix | ( | struct RenderData * | rd, |
| struct Object * | camera, | ||
| int | winx, | ||
| int | winy, | ||
| short | field_second, | ||
| float | winmat[][4], | ||
| struct rctf * | viewplane, | ||
| float * | clipsta, | ||
| float * | clipend, | ||
| float * | lens, | ||
| float * | ycor, | ||
| float * | viewdx, | ||
| float * | viewdy | ||
| ) |
Definition at line 2873 of file object.c.
References acos(), CAM_ORTHO, Camera::clipend, Lamp::clipend, Camera::clipsta, Lamp::clipsta, cosf, Object::data, FALSE, Camera::id, Camera::ipo, Camera::lens, M_PI, MAX2, RenderData::mode, NULL, OB_CAMERA, OB_LAMP, Camera::ortho_scale, orthographic_m4(), perspective_m4(), R_FIELDS, R_ODDFIELD, Camera::shiftx, Camera::shifty, sinf, Lamp::spotsize, TRUE, Camera::type, Object::type, RenderData::xasp, rctf::xmax, rctf::xmin, RenderData::yasp, rctf::ymax, and rctf::ymin.
Referenced by ED_view3d_draw_offscreen_imbuf(), ED_view3d_draw_offscreen_imbuf_simple(), project_paint_begin(), and RE_SetCamera().
| void object_camera_mode | ( | struct RenderData * | rd, |
| struct Object * | camera | ||
| ) |
Definition at line 2862 of file object.c.
References CAM_ORTHO, CAM_PANORAMA, Object::data, Camera::flag, RenderData::mode, OB_CAMERA, R_ORTHO, R_PANORAMA, Camera::type, and Object::type.
Referenced by project_paint_begin(), RE_is_rendering_allowed(), and RE_SetCamera().
Definition at line 1508 of file object.c.
References Object::adt, BKE_id_add_animdata(), copy_fcurves(), FCurve::driver, DRIVER_TARGETS_LOOPER, DRIVER_TARGETS_LOOPER_END, AnimData::drivers, ListBase::first, free_fcurves(), Object::id, id_lib_extern(), ID::lib, DriverVar::next, FCurve::next, NULL, and ChannelDriver::variables.
Referenced by armature_rebuild_pose(), and object_make_proxy().
| int object_data_is_libdata | ( | struct Object * | ob | ) |
Definition at line 1481 of file object.c.
References Object::data, Object::id, ID::lib, NULL, and Object::proxy.
Referenced by apply_armature_pose2bones_exec(), draw_modifier(), ED_object_enter_editmode(), join_exec(), join_shapes_exec(), set_vpaint(), and texture_paint_toggle_exec().
| void object_free_bulletsoftbody | ( | struct Object * | ob | ) |
Definition at line 172 of file object.c.
References bsbFree(), Object::bsoft, and NULL.
| void object_free_display | ( | struct Object * | ob | ) |
Definition at line 220 of file object.c.
References Object::derivedDeform, Object::derivedFinal, Object::disp, freedisplist(), DerivedMesh::needsFree, NULL, and DerivedMesh::release.
Referenced by flush_update_node(), and free_object().
| void object_free_modifiers | ( | struct Object * | ob | ) |
Definition at line 180 of file object.c.
References BLI_remlink(), ListBase::first, modifier_free(), Object::modifiers, object_free_particlesystems(), and object_free_softbody().
Referenced by convert_exec(), curvetomesh(), free_object(), and object_link_modifiers().
| void object_free_particlesystems | ( | struct Object * | ob | ) |
Definition at line 153 of file object.c.
References BLI_remlink(), ListBase::first, Object::particlesystem, and psys_free().
Referenced by object_free_modifiers().
| void object_free_softbody | ( | struct Object * | ob | ) |
Definition at line 164 of file object.c.
References NULL, sbFree(), and Object::soft.
Referenced by object_free_modifiers().
Definition at line 2323 of file object.c.
References Object::bb, Object::data, ELEM3, mesh_get_bb(), NULL, OB_CURVE, OB_FONT, OB_MBALL, OB_MESH, OB_SURF, and Object::type.
Referenced by draw_dupli_objects_color(), minmax_object_duplis(), object_boundbox_flag(), object_get_dimensions(), object_set_dimensions(), peelDerivedMesh(), snapDerivedMesh(), and TargetSnapClosest().
| void object_get_dimensions | ( | struct Object * | ob, |
| float * | value | ||
| ) |
Definition at line 2349 of file object.c.
References fabsf, mat4_to_size(), NULL, object_get_boundbox(), Object::obmat, and BoundBox::vec.
Referenced by get_fluid_size_m().
Definition at line 2569 of file object.c.
References add_v3_v3(), ADT_RECALC_DRIVERS, armature_rebuild_pose(), BKE_animdata_from_id(), BKE_animsys_evaluate_animdata(), BKE_mesh_end_editmesh(), BKE_mesh_get_editmesh(), BKE_ptcache_ids_from_object(), BLI_assert, BLI_freelistN(), BLI_remlink(), CD_MASK_BAREMESH, CD_MASK_MCOL, CD_MASK_MTFACE, RenderData::cfra, copy_m4_m4(), copy_pose_result(), Object::customdata_mask, Scene::customdata_mask, Object::data, ParticleSettings::draw_as, ParticleSettings::dup_group, Object::dup_group, ParticleSettings::dup_ob, Group::dupli_ofs, eParticleSystemFlag_psys_updated, Global::f, ListBase::first, ParticleSystem::flag, bPose::flag, ParticleSystemModifierData::flag, G, G_DEBUG, Object::id, if(), Object::imat, invert_m4_m4(), lattice_calc_modifiers(), ID::lib, make_pose_channels_hash(), makeDerivedMesh(), makeDispListCurveTypes(), makeDispListMBall(), MAX_DUPLI_RECUR, mesh_create_derived_render(), MIN2, mul_m4_m4m4(), ID::name, ParticleSystem::next, NULL, OB_ARMATURE, OB_CURVE, OB_DUPLIPARTS, OB_FONT, OB_LATTICE, OB_MBALL, OB_MESH, OB_RECALC_ALL, OB_RECALC_DATA, OB_SURF, Scene::obedit, object_handle_update(), Object::obmat, ParticleSystem::part, PART_DRAW_GR, PART_DRAW_OB, PART_DRAW_REND, particle_system_update(), Object::particlesystem, Scene::physics_settings, Object::pose, POSE_RECALC, Object::proxy, Object::proxy_from, Object::proxy_group, psys_check_enabled(), PSYS_DELETE, psys_free(), psys_get_modifier(), PTCACHE_BAKED, PTCACHE_OUTDATED, PTCACHE_QUICK_CACHE, PTCACHE_SIMULATION_VALID, PhysicsSettings::quick_cache_step, Scene::r, Object::recalc, DerivedMesh::release, ParticleSettings::ren_as, Global::rendering, Object::transflag, Object::type, where_is_object(), and where_is_pose().
Referenced by applyProject(), group_handle_recalc_and_update(), motionpaths_calc_update_scene(), object_handle_update(), scene_update_tagged_recursive(), and set_trans_object_base_flags().
| int object_insert_ptcache | ( | struct Object * | ob | ) |
Definition at line 2840 of file object.c.
References BLI_addtail(), BLI_sortlist(), LinkData::data, ListBase::first, GET_INT_FROM_POINTER, i, link(), MEM_callocN(), LinkData::next, NULL, pc_cmp(), Object::pc_ids, and SET_INT_IN_POINTER.
Referenced by ptcache_filename().
| struct KeyBlock* object_insert_shape_key | ( | struct Scene * | scene, |
| struct Object * | ob, | ||
| const char * | name, | ||
| int | from_mix | ||
| ) | [read] |
Definition at line 3121 of file object.c.
References ELEM, insert_curvekey(), insert_lattkey(), insert_meshkey(), NULL, OB_CURVE, OB_LATTICE, OB_MESH, OB_SURF, and Object::type.
Referenced by ED_object_shape_key_add().
| int object_is_libdata | ( | struct Object * | ob | ) |
Definition at line 1472 of file object.c.
References Object::id, ID::lib, and Object::proxy.
Referenced by ed_screen_context(), and view3d_context().
Definition at line 3132 of file object.c.
References eModifierMode_Realtime, eModifierMode_Render, modifier_isEnabled(), modifiers_getVirtualModifierList(), ModifierData::next, and ob_get_key().
Definition at line 197 of file object.c.
References BLI_addtail(), copy_object_particlesystems(), copy_object_softbody(), ELEM4, eModifierType_Collision, eModifierType_Hook, eModifierType_ParticleInstance, eModifierType_Softbody, ListBase::first, modifier_copyData(), modifier_new(), Object::modifiers, ModifierData::next, NULL, object_free_modifiers(), and ModifierData::type.
Referenced by make_links_data_exec().
Definition at line 1550 of file object.c.
References Object::actcol, armature_rebuild_pose(), armature_set_id_extern(), Object::colbits, copy_m4_m4(), copy_object_pose(), copy_object_transform(), copy_v3_v3(), Object::data, Object::dt, Object::dup_group, Group::dupli_ofs, ELEM5, Object::empty_drawsize, Object::empty_drawtype, FALSE, i, Object::id, id_lib_extern(), id_us_plus(), IDP_CopyProperty(), IDP_FreeProperty(), ID::lib, Object::mat, Object::matbits, MEM_dupallocN(), MEM_freeN(), mul_m4_m4m4(), mul_mat3_m4_v3(), NULL, OB_ARMATURE, OB_CURVE, OB_EMPTY, OB_FONT, OB_MBALL, OB_MESH, OB_RECALC_DATA, OB_RECALC_OB, OB_RECALC_TIME, OB_SURF, object_apply_mat4(), object_copy_proxy_drivers(), Object::obmat, Object::parent, Object::parentinv, Object::pose, ID::properties, Object::proxy, Object::proxy_group, Object::recalc, rest_pose(), Object::rotmode, sub_v3_v3(), Object::totcol, TRUE, and Object::type.
Referenced by make_proxy_exec().
| void object_mat3_to_rot | ( | struct Object * | ob, |
| float | mat[][3], | ||
| short | use_compat | ||
| ) |
Definition at line 1718 of file object.c.
References Object::dquat, Object::drot, Object::drotAngle, Object::drotAxis, eulO_to_quat(), invert_qt(), mat3_to_axis_angle(), mat3_to_compatible_eulO(), mat3_to_eulO(), mat3_to_quat(), mul_qt_qtqt(), normalize_qt_qt(), Object::quat, quat_to_mat3(), Object::rot, ROT_MODE_AXISANGLE, ROT_MODE_QUAT, Object::rotAngle, Object::rotAxis, Object::rotmode, and sub_v3_v3().
Referenced by object_apply_mat4().
| void object_relink | ( | struct Object * | ob | ) |
Definition at line 3157 of file object.c.
References Object::adt, BKE_relink_animdata(), bPose::chanbase, bPoseChannel::constraints, Object::constraints, copy_object__forwardModifierLinks(), ListBase::first, Object::id, ID_NEW, ID::lib, modifiers_foreachIDLink(), bPoseChannel::next, NULL, Object::parent, Object::pose, Object::proxy, Object::proxy_group, and relink_constraints().
Referenced by copy_object_set_idnew(), ED_object_add_duplicate(), and single_object_users().
| void object_rot_to_mat3 | ( | struct Object * | ob, |
| float | mat[][3] | ||
| ) |
Definition at line 1684 of file object.c.
References axis_angle_to_mat3(), Object::dquat, Object::drot, Object::drotAngle, Object::drotAxis, eulO_to_mat3(), mul_m3_m3m3(), normalize_qt_qt(), Object::quat, quat_to_mat3(), Object::rot, ROT_MODE_AXISANGLE, Object::rotAngle, Object::rotAxis, and Object::rotmode.
Referenced by apply_objects_internal(), and object_to_mat3().
| void object_scale_to_mat3 | ( | struct Object * | ob, |
| float | mat[][3] | ||
| ) |
Definition at line 1676 of file object.c.
References add_v3_v3v3(), Object::dsize, Object::size, and size_to_mat3().
Referenced by apply_objects_internal(), multiresModifier_prepare_join(), multiresModifier_scale_disp(), and object_to_mat3().
| void object_set_dimensions | ( | struct Object * | ob, |
| const float * | value | ||
| ) |
Definition at line 2367 of file object.c.
References mat4_to_size(), NULL, object_get_boundbox(), Object::obmat, Object::size, and BoundBox::vec.
| void* object_tfm_backup | ( | struct Object * | ob | ) |
Definition at line 2516 of file object.c.
References Object::constinv, ObTfmBack::constinv, copy_m4_m4(), copy_qt_qt(), copy_v3_v3(), Object::dloc, ObTfmBack::dloc, Object::dquat, ObTfmBack::dquat, Object::drot, ObTfmBack::drot, Object::drotAngle, ObTfmBack::drotAngle, Object::drotAxis, ObTfmBack::drotAxis, Object::dsize, ObTfmBack::dsize, Object::imat, ObTfmBack::imat, Object::loc, ObTfmBack::loc, MEM_mallocN(), Object::obmat, ObTfmBack::obmat, Object::orig, ObTfmBack::orig, Object::parentinv, ObTfmBack::parentinv, Object::quat, ObTfmBack::quat, Object::rot, ObTfmBack::rot, Object::rotAngle, ObTfmBack::rotAngle, Object::rotAxis, ObTfmBack::rotAxis, Object::size, and ObTfmBack::size.
Referenced by initFlyInfo().
| void object_tfm_restore | ( | struct Object * | ob, |
| void * | obtfm_pt | ||
| ) |
Definition at line 2540 of file object.c.
References Object::constinv, ObTfmBack::constinv, copy_m4_m4(), copy_qt_qt(), copy_v3_v3(), Object::dloc, ObTfmBack::dloc, Object::dquat, ObTfmBack::dquat, Object::drot, ObTfmBack::drot, Object::drotAngle, ObTfmBack::drotAngle, Object::drotAxis, ObTfmBack::drotAxis, Object::dsize, ObTfmBack::dsize, Object::imat, ObTfmBack::imat, Object::loc, ObTfmBack::loc, Object::obmat, ObTfmBack::obmat, Object::orig, ObTfmBack::orig, Object::parentinv, ObTfmBack::parentinv, Object::quat, ObTfmBack::quat, Object::rot, ObTfmBack::rot, Object::rotAngle, ObTfmBack::rotAngle, Object::rotAxis, ObTfmBack::rotAxis, Object::size, and ObTfmBack::size.
Referenced by flyEnd().
| void object_to_mat3 | ( | struct Object * | ob, |
| float | mat[][3] | ||
| ) |
Definition at line 1781 of file object.c.
References mul_m3_m3m3(), object_rot_to_mat3(), and object_scale_to_mat3().
Referenced by apply_objects_internal(), arrayModifier_doArray(), object_to_mat4(), and ObjectToTransData().
| void object_to_mat4 | ( | struct Object * | ob, |
| float | mat[][4] | ||
| ) |
Definition at line 1795 of file object.c.
References add_v3_v3v3(), copy_m4_m3(), Object::dloc, Object::loc, and object_to_mat3().
Referenced by actcon_get_tarmat(), TransformWriter::add_node_transform_ob(), constraint_mat_convertspace(), dvar_eval_transChan(), solve_parenting(), where_is_object_simul(), and where_is_object_time().
| int ray_hit_boundbox | ( | struct BoundBox * | bb, |
| float | ray_start[3], | ||
| float | ray_normal[3] | ||
| ) |
Definition at line 2808 of file object.c.
References i, isect_ray_tri_v3(), NULL, and BoundBox::vec.
Referenced by peelDerivedMesh(), and snapDerivedMesh().
| void set_field_offs | ( | float | field | ) |
| void set_mblur_offs | ( | float | blur | ) |
| void set_no_parent_ipo | ( | int | val | ) |
Definition at line 2069 of file object.c.
References simple_enum_gen::val.
Referenced by draw_object().
| void solve_tracking | ( | struct Object * | ob, |
| float | targetmat[][4] | ||
| ) |
| struct BoundBox* unit_boundbox | ( | void | ) | [read] |
Definition at line 2300 of file object.c.
References boundbox_set_from_min_max(), max, MEM_callocN(), and min.
Referenced by add_curve(), and add_mesh().
| void unlink_object | ( | struct Object * | ob | ) |
Definition at line 335 of file object.c.
References Object::actuators, bScreen::areabase, Curve::bevobj, ParticleData::boid, ParticleSettings::boids, Main::camera, View3D::camera, TimeMarker::camera, Scene::camera, bPose::chanbase, constraint_get_typeinfo(), bPoseChannel::constraints, Object::constraints, Object::controllers, bPoseChannel::custom, TreeStore::data, Object::data, Camera::dof_ob, IpoCurve::driver, ParticleSettings::dup_ob, eBoidRuleType_Avoid, eBoidRuleType_FollowLeader, Scene::ed, ELEM, eModifierType_Cloth, Tex::env, ListBase::first, SpaceButs::flag, bConstraintTypeInfo::flush_constraint_targets, G, bConstraintTypeInfo::get_constraint_targets, BoidParticle::ground, Main::group, TreeStoreElem::id, Camera::id, bScreen::id, World::id, Group::id, Material::id, Object::id, Tex::id, Scene::id, if(), Main::ipo, is_mball_basis_for(), ID::lib, RegionView3D::localvd, View3D::localvd, Global::main, Scene::markers, Main::mat, MAX_MTEX, Object::modifiers, modifiers_foreachObjectLink(), World::mtex, Material::mtex, bActionModifier::next, bConstraint::next, BoidRule::next, IpoCurve::next, SpaceLink::next, ParticleTarget::next, bConstraintTarget::next, ModifierData::next, ID::next, ScrArea::next, ARegion::next, BoidState::next, bPoseChannel::next, ParticleSystem::next, TimeMarker::next, Object::nlastrips, NULL, bActionModifier::ob, IpoDriver::ob, BoidRuleGoalAvoid::ob, ParticleTarget::ob, BoidRuleFollowLeader::ob, OB_ARMATURE, OB_CURVE, OB_FONT, OB_MBALL, OB_RECALC_DATA, OB_RECALC_OB, OB_RECALC_TIME, MTex::object, Main::object, EnvMap::object, PointDensity::object, VoxelData::object, ParticleEditSettings::object, p, Object::parent, ParticleSystem::part, PART_PHYS_BOIDS, ToolSettings::particle, ParticleSystem::particles, Object::particlesystem, Object::pd, Tex::pd, RegionView3D::persp, ParticleSettings::phystype, SpaceButs::pinid, Object::pose, Object::proxy, Object::proxy_from, Object::proxy_group, Object::recalc, ScrArea::regionbase, ARegion::regiondata, ARegion::regiontype, rem_from_group(), RGN_TYPE_WINDOW, BoidState::rules, RV3D_CAMOB, RV3D_PERSP, SB_PIN_CONTEXT, sca_remove_ob_poin(), Main::scene, Sequence::scene_camera, Main::screen, SEQ_BEGIN, SEQ_END, ToolSettings::skgen_template, Object::soft, SPACE_BUTS, SPACE_OUTLINER, SPACE_VIEW3D, ScrArea::spacedata, SpaceLink::spacetype, ScrArea::spacetype, state, BoidSettings::states, bConstraintTarget::subtarget, Curve::taperobj, bConstraintTarget::tar, ParticleSystem::target_ob, ParticleSystem::targets, Main::tex, Curve::textoncurve, Scene::toolsettings, SpaceOops::treestore, BoidRule::type, ModifierData::type, Object::type, unlink_actuators(), unlink_controllers(), unlink_object__unlinkModifierLinks(), TreeStore::usedelem, Tex::vd, and Main::world.
Referenced by free_libblock_us(), and id_unlink().
Definition at line 143 of file object.c.
References Scene::base, ListBase::first, Base::lay, Object::lay, Base::next, and Base::object.
Definition at line 2275 of file object.c.
References BLI_strncpy(), clear_workob(), Object::constinv, Object::constraints, ListBase::first, ListBase::last, Object::obmat, Object::par1, Object::par2, Object::par3, Object::parent, Object::parentinv, Object::parsubstr, Object::partype, Object::trackflag, unit_m4(), Object::upflag, and where_is_object().
Referenced by applyarmature_fix_boneparents(), bc_set_parent(), childof_set_inverse_exec(), ignore_parent_tx(), SkinInfo::link_armature(), parent_set_exec(), and vertex_parent_set_exec().
Definition at line 2224 of file object.c.
References RenderData::cfra, Scene::r, and where_is_object_time().
Referenced by add_hook_object(), apply_objects_internal(), bc_set_parent(), draw_object(), ED_object_base_init_transform(), initFlyInfo(), object_handle_update(), object_origin_set_exec(), object_slow_parent_clear_exec(), ObjectToTransData(), RE_make_sticky(), setviewmatrixview3d(), snap_sel_to_curs(), snap_sel_to_grid(), txt_add_object(), visual_transform_apply_exec(), and what_does_parent().
Definition at line 2230 of file object.c.
References RenderData::cfra, CONSTRAINT_OBTYPE_OBJECT, Object::constraints, constraints_clear_evalob(), constraints_make_evalob(), fabs(), ListBase::first, give_timeoffset(), NULL, object_to_mat4(), Object::obmat, Object::parent, PARSLOW, Object::partype, Scene::r, solve_constraints(), and solve_parenting().
Referenced by GPU_scene_object_lights().
Definition at line 2074 of file object.c.
References Object::adt, ADT_RECALC_DRIVERS, BKE_animsys_evaluate_animdata(), CONSTRAINT_OBTYPE_OBJECT, Object::constraints, constraints_clear_evalob(), constraints_make_evalob(), Object::ctime, fabs(), ListBase::first, give_timeoffset(), Object::id, Object::ipoflag, is_negative_m4(), MAT4_UNITY, NULL, OB_NEG_SCALE, OB_NO_CONSTRAINTS, OB_OFFS_PARENT, object_to_mat4(), Object::obmat, Object::parent, PARSLOW, Object::partype, Object::proxy_from, solve_constraints(), solve_parenting(), Object::transflag, and where_is_object_time().
Referenced by draw_object(), frames_duplilist(), new_particle_duplilist(), particle_system_update(), precalculate_effector(), reset_particle(), where_is_object(), and where_is_object_time().