69 switch (
area->spacetype) {
95 switch (
area->spacetype) {
101 extern PropertyRNA rna_SpaceImageEditor_pivot_point;
102 extern PropertyRNA rna_SpaceImageEditor_cursor_location;
104 &rna_SpaceImageEditor_pivot_point,
108 if (props[i] ==
NULL) {
156 const float alpha = 0.6f;
157 const float alpha_hi = 1.0f;
177 r_col_hi[3] *= alpha_hi;
206 float min_buf[2], max_buf[2];
215 bool changed =
false;
219 uint objects_len = 0;
221 view_layer,
NULL, &objects_len);
228 if (changed ==
false) {
240 bool has_select =
false;
292 float color[4], color_hi[4];
297 float axis[3] = {0.0f};
301 float offset[3] = {0, 0, 0};
313 float color[4], color_hi[4];
334 bool constraint[3] = {
false};
335 constraint[i] =
true;
353 const bool constraint_x[3] = {1, 0, 0};
354 const bool constraint_y[3] = {0, 1, 0};
419 if (has_select ==
false) {
444 const float *
min = ggd->
min;
445 const float *
max = ggd->
max;
451 &gzop->
ptr, prop_center_override, (
float[3]){max[0], mid[1], 0.0f});
454 &gzop->
ptr, prop_center_override, (
float[3]){min[0], mid[1], 0.0f});
457 &gzop->
ptr, prop_center_override, (
float[3]){mid[0], max[1], 0.0f});
460 &gzop->
ptr, prop_center_override, (
float[3]){mid[0], min[1], 0.0f});
464 &gzop->
ptr, prop_center_override, (
float[3]){max[0], max[1], 0.0f});
467 &gzop->
ptr, prop_center_override, (
float[3]){max[0], min[1], 0.0f});
470 &gzop->
ptr, prop_center_override, (
float[3]){min[0], max[1], 0.0f});
473 &gzop->
ptr, prop_center_override, (
float[3]){min[0], min[1], 0.0f});
477 &gzop->
ptr, prop_center_override, (
float[3]){mid[0], mid[1], 0.0f});
564 if (has_select ==
false) {
615 float color[4], color_hi[4];
620 float axis[3] = {0.0f};
633 float color[4], color_hi[4];
654 bool constraint[3] = {
false};
655 constraint[i] =
true;
717 if (has_select ==
false) {
struct ScrArea * CTX_wm_area(const bContext *C)
struct Scene * CTX_data_scene(const bContext *C)
struct Object * CTX_data_edit_object(const bContext *C)
struct ViewLayer * CTX_data_view_layer(const bContext *C)
struct bScreen * CTX_wm_screen(const bContext *C)
struct ARegion * CTX_wm_region(const bContext *C)
#define BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs(view_layer, v3d, r_len)
MINLINE void copy_v4_v4(float r[4], const float a[4])
MINLINE void copy_v2_v2(float r[2], const float a[2])
MINLINE bool equals_v2v2(const float v1[2], const float v2[2]) ATTR_WARN_UNUSED_RESULT
void mid_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE void zero_v2(float r[2])
Object is a sort of wrapper for general info.
@ SCE_WORKSPACE_TOOL_FALLBACK
@ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MAX_Y
@ ED_GIZMO_CAGE2D_PART_ROTATE
@ ED_GIZMO_CAGE2D_PART_SCALE_MAX_Y
@ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MAX_Y
@ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X
@ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X_MIN_Y
@ ED_GIZMO_CAGE2D_PART_SCALE_MAX_X
@ ED_GIZMO_CAGE2D_PART_SCALE_MIN_X_MIN_Y
@ ED_GIZMO_CAGE2D_PART_SCALE_MIN_Y
@ ED_GIZMO_ARROW_STYLE_BOX
@ ED_GIZMO_CAGE2D_XFORM_FLAG_TRANSLATE
@ ED_GIZMO_CAGE2D_XFORM_FLAG_SCALE
@ ED_GIZMO_CAGE2D_XFORM_FLAG_ROTATE
@ ED_GIZMO_BUTTON_SHOW_BACKDROP
bool ED_gizmo_poll_or_unlink_delayed_from_tool(const struct bContext *C, struct wmGizmoGroupType *gzgt)
bool ED_space_image_show_uvedit(struct SpaceImage *sima, struct Object *obedit)
void ED_region_tag_redraw_editor_overlays(struct ARegion *region)
bool ED_uvedit_minmax_multi(const struct Scene *scene, struct Object **objects_edit, uint objects_len, float r_min[2], float r_max[2])
bool ED_uvedit_center_from_pivot_ex(struct SpaceImage *sima, struct Scene *scene, struct ViewLayer *view_layer, float r_center[2], char mode, bool *r_has_select)
Read Guarded memory(de)allocation.
StructRNA RNA_SpaceImageEditor
void UI_GetThemeColor4fv(int colorid, float col[4])
void UI_view2d_view_to_region_fl(const struct View2D *v2d, float x, float y, float *r_region_x, float *r_region_y) ATTR_NONNULL()
void UI_view2d_view_to_region_m4(const struct View2D *v2d, float matrix[4][4]) ATTR_NONNULL()
eWM_GizmoFlagTweak
Gizmo tweak flag. Bitflag passed to gizmo while tweaking.
@ WM_GIZMO_DRAW_OFFSET_SCALE
@ WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP
static CCL_NAMESPACE_BEGIN const double alpha
void(* MEM_freeN)(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
static void area(int d1, int d2, int e1, int e2, float weights[2])
void RNA_boolean_set_array(PointerRNA *ptr, const char *name, const bool *values)
void RNA_pointer_create(ID *id, StructRNA *type, void *data, PointerRNA *r_ptr)
void RNA_boolean_set(PointerRNA *ptr, const char *name, bool value)
void RNA_property_enum_set(PointerRNA *ptr, PropertyRNA *prop, int value)
PropertyRNA * RNA_struct_find_property(PointerRNA *ptr, const char *identifier)
void RNA_property_boolean_set(PointerRNA *ptr, PropertyRNA *prop, bool value)
void RNA_float_set(PointerRNA *ptr, const char *name, float value)
void RNA_property_float_set_array(PointerRNA *ptr, PropertyRNA *prop, const float *values)
void RNA_enum_set(PointerRNA *ptr, const char *name, int value)
void RNA_property_boolean_set_array(PointerRNA *ptr, PropertyRNA *prop, const bool *values)
wmGizmo * translate_xy[3]
struct ToolSettings * toolsettings
wmGizmoGroupFnSetupKeymap setup_keymap
wmGizmoGroupFnMsgBusSubscribe message_subscribe
wmGizmoGroupFnRefresh refresh
eWM_GizmoFlagGroupTypeFlag flag
wmGizmoGroupFnDrawPrepare draw_prepare
struct wmGizmoGroupType * type
struct wmGizmoMap * parent_gzmap
float matrix_offset[4][4]
void WM_gizmo_set_matrix_offset_location(wmGizmo *gz, const float offset[3])
void WM_gizmo_set_fn_custom_modal(struct wmGizmo *gz, wmGizmoFnModal fn)
PointerRNA * WM_gizmo_operator_set(wmGizmo *gz, int part_index, wmOperatorType *ot, IDProperty *properties)
void WM_gizmo_set_color_highlight(wmGizmo *gz, const float color_hi[4])
void WM_gizmo_set_line_width(wmGizmo *gz, const float line_width)
wmGizmo * WM_gizmo_new_ptr(const wmGizmoType *gzt, wmGizmoGroup *gzgroup, PointerRNA *properties)
void WM_gizmo_set_scale(wmGizmo *gz, const float scale)
void WM_gizmo_set_matrix_location(wmGizmo *gz, const float origin[3])
void WM_gizmo_set_matrix_rotation_from_z_axis(wmGizmo *gz, const float z_axis[3])
struct wmGizmoOpElem * WM_gizmo_operator_get(wmGizmo *gz, int part_index)
void WM_gizmo_set_color(wmGizmo *gz, const float color[4])
wmKeyMap * WM_gizmogroup_setup_keymap_generic_maybe_drag(const wmGizmoGroupType *UNUSED(gzgt), wmKeyConfig *kc)
void WM_gizmo_do_msg_notify_tag_refresh(bContext *UNUSED(C), wmMsgSubscribeKey *UNUSED(msg_key), wmMsgSubscribeValue *msg_val)
const wmGizmoType * WM_gizmotype_find(const char *idname, bool quiet)
void WM_msg_subscribe_rna(struct wmMsgBus *mbus, PointerRNA *ptr, const PropertyRNA *prop, const wmMsgSubscribeValue *msg_val_params, const char *id_repr)
wmOperatorType * WM_operatortype_find(const char *idname, bool quiet)