17#define V3D_OP_TRACKBALLSIZE (1.1f)
188 const float dyn_ofs_override[3] =
nullptr,
189 const bool use_cursor_init =
false);
192#ifdef WITH_CXX_GUARDEDALLOC
193 MEM_CXX_CLASS_ALLOC_FUNCS(
"ViewOpsData")
213 const float ofs_old[3],
214 const float viewquat_old[4],
215 const float viewquat_new[4],
216 const float dyn_ofs[3]);
233 const bool use_cursor_init);
237 const float quat_[4],
241 const float *align_to_quat,
242 const int smooth_viewtx);
266#ifdef WITH_INPUT_NDOF
267struct wmNDOFMotionData;
271void view3d_ndof_fly(
const wmNDOFMotionData *ndof,
276 bool *r_has_translate,
284extern const ViewOpsType ViewOpsType_ndof_orbit_zoom;
353 const char *undo_str,
#define ENUM_OPERATORS(_type, _max)
const Depsgraph * depsgraph
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int
const ViewOpsType * nav_type
struct ViewOpsData::@543 init
char persp_with_auto_persp_applied
void end_navigation(bContext *C)
eViewOpsFlag viewops_flag
bool use_dyn_ofs_ortho_correction
struct ViewOpsData::@544 prev
void init_navigation(bContext *C, const wmEvent *event, const ViewOpsType *nav_type, const float dyn_ofs_override[3]=nullptr, const bool use_cursor_init=false)
void init_context(bContext *C)
struct ViewOpsData::@545 curr
int(* init_fn)(bContext *C, ViewOpsData *vod, const wmEvent *event, PointerRNA *ptr)
bool(* poll_fn)(bContext *C)
int(* apply_fn)(bContext *C, ViewOpsData *vod, const eV3D_OpEvent event_code, const int xy[2])
void ED_view3d_smooth_view_undo_begin(bContext *C, const ScrArea *area)
void view3d_navigate_cancel_fn(bContext *C, wmOperator *op)
void viewmove_modal_keymap(wmKeyConfig *keyconf)
const ViewOpsType ViewOpsType_zoom
void view3d_keymap(wmKeyConfig *keyconf)
void ED_view3d_smooth_view(bContext *C, View3D *v3d, ARegion *region, int smooth_viewtx, const V3D_SmoothParams *sview)
void VIEW3D_OT_view_roll(wmOperatorType *ot)
void VIEW3D_OT_view_axis(wmOperatorType *ot)
const ViewOpsType ViewOpsType_pan
void ED_view3d_smooth_view_force_finish_no_camera_lock(const Depsgraph *depsgraph, wmWindowManager *wm, wmWindow *win, const Scene *scene, View3D *v3d, ARegion *region)
void viewops_data_free(bContext *C, ViewOpsData *vod)
const ViewOpsType ViewOpsType_orbit
ViewOpsData * viewops_data_create(bContext *C, const wmEvent *event, const ViewOpsType *nav_type, const bool use_cursor_init)
void VIEW3D_OT_view_orbit(wmOperatorType *ot)
void fly_modal_keymap(wmKeyConfig *keyconf)
void view3d_orbit_apply_dyn_ofs(float r_ofs[3], const float ofs_old[3], const float viewquat_old[4], const float viewquat_new[4], const float dyn_ofs[3])
@ VIEWOPS_FLAG_ORBIT_SELECT
@ VIEWOPS_FLAG_DEPTH_NAVIGATE
@ VIEWOPS_FLAG_ZOOM_TO_MOUSE
@ VIEWOPS_FLAG_PERSP_ENSURE
void view3d_operator_properties_common(wmOperatorType *ot, const eV3D_OpPropFlag flag)
bool view3d_rotation_poll(bContext *C)
bool view3d_location_poll(bContext *C)
void ED_view3d_smooth_view_ex(const Depsgraph *depsgraph, wmWindowManager *wm, wmWindow *win, ScrArea *area, View3D *v3d, ARegion *region, int smooth_viewtx, const V3D_SmoothParams *sview)
void VIEW3D_OT_walk(wmOperatorType *ot)
void VIEW3D_OT_zoom_border(wmOperatorType *ot)
void VIEW3D_OT_rotate(wmOperatorType *ot)
const ViewOpsType ViewOpsType_rotate
@ VIEWROT_MODAL_SWITCH_ROTATE
@ VIEWROT_MODAL_AXIS_SNAP_ENABLE
@ VIEWROT_MODAL_SWITCH_MOVE
@ VIEWROT_MODAL_SWITCH_ZOOM
@ VIEWROT_MODAL_AXIS_SNAP_DISABLE
ViewOpsType ViewOpsType_dolly
bool view3d_orbit_calc_center(bContext *C, float r_dyn_ofs[3])
const ViewOpsType ViewOpsType_roll
int view3d_navigate_modal_fn(bContext *C, wmOperator *op, const wmEvent *event)
void viewmove_apply(ViewOpsData *vod, int x, int y)
void calctrackballvec(const rcti *rect, const int event_xy[2], float r_dir[3])
void VIEW3D_OT_view_pan(wmOperatorType *ot)
@ V3D_OP_PROP_USE_MOUSE_INIT
@ V3D_OP_PROP_USE_ALL_REGIONS
void axis_set_view(bContext *C, View3D *v3d, ARegion *region, const float quat_[4], char view, char view_axis_roll, int perspo, const float *align_to_quat, const int smooth_viewtx)
void VIEW3D_OT_view_all(wmOperatorType *ot)
void viewzoom_modal_keymap(wmKeyConfig *keyconf)
void VIEW3D_OT_view_selected(wmOperatorType *ot)
int view3d_navigate_invoke_impl(bContext *C, wmOperator *op, const wmEvent *event, const ViewOpsType *nav_type)
void viewrotate_modal_keymap(wmKeyConfig *keyconf)
void VIEW3D_OT_zoom(wmOperatorType *ot)
void VIEW3D_OT_view_camera(wmOperatorType *ot)
void viewdolly_modal_keymap(wmKeyConfig *keyconf)
const ViewOpsType ViewOpsType_move
void VIEW3D_OT_view_center_pick(wmOperatorType *ot)
void VIEW3D_OT_view_center_cursor(wmOperatorType *ot)
void walk_modal_keymap(wmKeyConfig *keyconf)
void viewrotate_apply_dyn_ofs(ViewOpsData *vod, const float viewquat_new[4])
void ED_view3d_smooth_view_force_finish(bContext *C, View3D *v3d, ARegion *region)
void VIEW3D_OT_fly(wmOperatorType *ot)
void VIEW3D_OT_move(wmOperatorType *ot)
bool view3d_zoom_or_dolly_poll(bContext *C)
void VIEW3D_OT_smoothview(wmOperatorType *ot)
void ED_view3d_smooth_view_undo_end(bContext *C, const ScrArea *area, const char *undo_str, bool undo_grouped)
void VIEW3D_OT_dolly(wmOperatorType *ot)