Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/transform/transform_manipulator.c
| Show First 20 Lines • Show All 585 Lines • ▼ Show 20 Lines | |||||
| /* returns total items selected */ | /* returns total items selected */ | ||||
| static int calc_manipulator_stats( | static int calc_manipulator_stats( | ||||
| const bContext *C, bool use_only_center, | const bContext *C, bool use_only_center, | ||||
| struct TransformBounds *tbounds) | struct TransformBounds *tbounds) | ||||
| { | { | ||||
| ScrArea *sa = CTX_wm_area(C); | ScrArea *sa = CTX_wm_area(C); | ||||
| ARegion *ar = CTX_wm_region(C); | ARegion *ar = CTX_wm_region(C); | ||||
| Scene *scene = CTX_data_scene(C); | Scene *scene = CTX_data_scene(C); | ||||
| SceneLayer *sl = CTX_data_scene_layer(C); | ViewLayer *sl = CTX_data_view_layer(C); | ||||
| Object *obedit = CTX_data_edit_object(C); | Object *obedit = CTX_data_edit_object(C); | ||||
| View3D *v3d = sa->spacedata.first; | View3D *v3d = sa->spacedata.first; | ||||
| RegionView3D *rv3d = ar->regiondata; | RegionView3D *rv3d = ar->regiondata; | ||||
| Base *base; | Base *base; | ||||
| Object *ob = OBACT(sl); | Object *ob = OBACT(sl); | ||||
| bGPdata *gpd = CTX_data_gpencil_data(C); | bGPdata *gpd = CTX_data_gpencil_data(C); | ||||
| const bool is_gp_edit = ((gpd) && (gpd->flag & GP_DATA_STROKE_EDITMODE)); | const bool is_gp_edit = ((gpd) && (gpd->flag & GP_DATA_STROKE_EDITMODE)); | ||||
| int a, totsel = 0; | int a, totsel = 0; | ||||
| ▲ Show 20 Lines • Show All 447 Lines • ▼ Show 20 Lines | for (int i = 0; i < 3; i++) { | ||||
| r_idot[i] = 1.0f - fabsf(dot_v3v3(view_vec, axis_vec)); | r_idot[i] = 1.0f - fabsf(dot_v3v3(view_vec, axis_vec)); | ||||
| } | } | ||||
| } | } | ||||
| static void manipulator_prepare_mat( | static void manipulator_prepare_mat( | ||||
| const bContext *C, View3D *v3d, RegionView3D *rv3d, const struct TransformBounds *tbounds) | const bContext *C, View3D *v3d, RegionView3D *rv3d, const struct TransformBounds *tbounds) | ||||
| { | { | ||||
| Scene *scene = CTX_data_scene(C); | Scene *scene = CTX_data_scene(C); | ||||
| SceneLayer *sl = CTX_data_scene_layer(C); | ViewLayer *sl = CTX_data_view_layer(C); | ||||
| switch (v3d->around) { | switch (v3d->around) { | ||||
| case V3D_AROUND_CENTER_BOUNDS: | case V3D_AROUND_CENTER_BOUNDS: | ||||
| case V3D_AROUND_ACTIVE: | case V3D_AROUND_ACTIVE: | ||||
| { | { | ||||
| bGPdata *gpd = CTX_data_gpencil_data(C); | bGPdata *gpd = CTX_data_gpencil_data(C); | ||||
| Object *ob = OBACT(sl); | Object *ob = OBACT(sl); | ||||
| ▲ Show 20 Lines • Show All 518 Lines • ▼ Show 20 Lines | static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmManipulatorGroup *mgroup) | ||||
| } | } | ||||
| } | } | ||||
| static void WIDGETGROUP_xform_cage_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup) | static void WIDGETGROUP_xform_cage_draw_prepare(const bContext *C, wmManipulatorGroup *mgroup) | ||||
| { | { | ||||
| struct XFormCageWidgetGroup *xmgroup = mgroup->customdata; | struct XFormCageWidgetGroup *xmgroup = mgroup->customdata; | ||||
| wmManipulator *mpr = xmgroup->manipulator; | wmManipulator *mpr = xmgroup->manipulator; | ||||
| SceneLayer *sl = CTX_data_scene_layer(C); | ViewLayer *sl = CTX_data_view_layer(C); | ||||
| Object *ob = OBACT(sl); | Object *ob = OBACT(sl); | ||||
| if (ob && ob->mode & OB_MODE_EDIT) { | if (ob && ob->mode & OB_MODE_EDIT) { | ||||
| copy_m4_m4(mpr->matrix_space, ob->obmat); | copy_m4_m4(mpr->matrix_space, ob->obmat); | ||||
| } | } | ||||
| else { | else { | ||||
| unit_m4(mpr->matrix_space); | unit_m4(mpr->matrix_space); | ||||
| } | } | ||||
| } | } | ||||
| Show All 19 Lines | |||||