|
Blender
V2.59
|
Go to the source code of this file.
Classes | |
| struct | ViewContext |
| struct | ViewDepths |
Defines | |
| #define | IS_CLIPPED 12000 |
| #define | MAXPICKBUF 10000 |
Typedefs | |
| typedef struct ViewContext | ViewContext |
| typedef struct ViewDepths | ViewDepths |
Functions | |
| float * | give_cursor (struct Scene *scene, struct View3D *v3d) |
| int | initgrabz (struct RegionView3D *rv3d, float x, float y, float z) |
| void | ED_view3d_win_to_3d (struct ARegion *ar, const float depth_pt[3], const float mval[2], float out[3]) |
| void | ED_view3d_win_to_delta (struct ARegion *ar, const float mval[2], float out[3]) |
| void | ED_view3d_win_to_vector (struct ARegion *ar, const float mval[2], float out[3]) |
| void | ED_view3d_win_to_segment_clip (struct ARegion *ar, struct View3D *v3d, const float mval[2], float ray_start[3], float ray_end[3]) |
| void | ED_view3d_win_to_ray (struct ARegion *ar, struct View3D *v3d, const float mval[2], float ray_start[3], float ray_normal[3]) |
| void | ED_view3d_global_to_vector (struct RegionView3D *rv3d, const float coord[3], float vec[3]) |
| void | ED_view3d_to_m4 (float mat[][4], const float ofs[3], const float quat[4], const float dist) |
| void | ED_view3d_from_m4 (float mat[][4], float ofs[3], float quat[4], float *dist) |
| void | ED_view3d_from_object (struct Object *ob, float ofs[3], float quat[4], float *dist, float *lens) |
| void | ED_view3d_to_object (struct Object *ob, const float ofs[3], const float quat[4], const float dist) |
| void | ED_view3d_depth_update (struct ARegion *ar) |
| float | ED_view3d_depth_read_cached (struct ViewContext *vc, int x, int y) |
| void | ED_view3d_depth_tag_update (struct RegionView3D *rv3d) |
| void | ED_view3d_calc_clipping (struct BoundBox *bb, float planes[4][4], struct bglMats *mats, struct rcti *rect) |
| void | project_short (struct ARegion *ar, const float vec[3], short adr[2]) |
| void | project_short_noclip (struct ARegion *ar, const float vec[3], short adr[2]) |
| void | project_int (struct ARegion *ar, const float vec[3], int adr[2]) |
| void | project_int_noclip (struct ARegion *ar, const float vec[3], int adr[2]) |
| void | project_float (struct ARegion *ar, const float vec[3], float adr[2]) |
| void | project_float_noclip (struct ARegion *ar, const float vec[3], float adr[2]) |
| void | ED_view3d_ob_clip_range_get (struct Object *ob, float *lens, float *clipsta, float *clipend) |
| int | ED_view3d_clip_range_get (struct View3D *v3d, struct RegionView3D *rv3d, float *clipsta, float *clipend) |
| int | ED_view3d_viewplane_get (struct View3D *v3d, struct RegionView3D *rv3d, int winxi, int winyi, struct rctf *viewplane, float *clipsta, float *clipend, float *pixsize) |
| void | ED_view3d_ob_project_mat_get (struct RegionView3D *v3d, struct Object *ob, float pmat[4][4]) |
| void | ED_view3d_project_float (struct ARegion *a, const float vec[3], float adr[2], float mat[4][4]) |
| void | ED_view3d_calc_camera_border (struct Scene *scene, struct ARegion *ar, struct View3D *v3d, struct RegionView3D *rv3d, struct rctf *viewborder_r, short do_shift) |
| void | mesh_foreachScreenVert (struct ViewContext *vc, void(*func)(void *userData, struct EditVert *eve, int x, int y, int index), void *userData, int clipVerts) |
| void | mesh_foreachScreenEdge (struct ViewContext *vc, void(*func)(void *userData, struct EditEdge *eed, int x0, int y0, int x1, int y1, int index), void *userData, int clipVerts) |
| void | mesh_foreachScreenFace (struct ViewContext *vc, void(*func)(void *userData, struct EditFace *efa, int x, int y, int index), void *userData) |
| void | nurbs_foreachScreenVert (struct ViewContext *vc, void(*func)(void *userData, struct Nurb *nu, struct BPoint *bp, struct BezTriple *bezt, int beztindex, int x, int y), void *userData) |
| void | lattice_foreachScreenVert (struct ViewContext *vc, void(*func)(void *userData, struct BPoint *bp, int x, int y), void *userData) |
| void | ED_view3d_local_clipping (struct RegionView3D *rv3d, float mat[][4]) |
| int | ED_view3d_test_clipping (struct RegionView3D *rv3d, const float vec[3], const int local) |
| void | ED_view3d_align_axis_to_vector (struct View3D *v3d, struct RegionView3D *rv3d, int axisidx, float vec[3]) |
| float | ED_view3d_pixel_size (struct RegionView3D *rv3d, const float co[3]) |
| void | drawcircball (int mode, const float cent[3], float rad, float tmat[][4]) |
| void | view3d_validate_backbuf (struct ViewContext *vc) |
| struct ImBuf * | view3d_read_backbuf (struct ViewContext *vc, short xmin, short ymin, short xmax, short ymax) |
| unsigned int | view3d_sample_backbuf_rect (struct ViewContext *vc, const int mval[2], int size, unsigned int min, unsigned int max, int *dist, short strict, void *handle, unsigned int(*indextest)(void *handle, unsigned int index)) |
| unsigned int | view3d_sample_backbuf (struct ViewContext *vc, int x, int y) |
| int | ED_view3d_autodist (struct Scene *scene, struct ARegion *ar, struct View3D *v3d, const int mval[2], float mouse_worldloc[3]) |
| int | ED_view3d_autodist_init (struct Scene *scene, struct ARegion *ar, struct View3D *v3d, int mode) |
| int | ED_view3d_autodist_simple (struct ARegion *ar, const int mval[2], float mouse_worldloc[3], int margin, float *force_depth) |
| int | ED_view3d_autodist_depth (struct ARegion *ar, const int mval[2], int margin, float *depth) |
| int | ED_view3d_autodist_depth_seg (struct ARegion *ar, const int mval_sta[2], const int mval_end[2], int margin, float *depth) |
| short | view3d_opengl_select (struct ViewContext *vc, unsigned int *buffer, unsigned int bufsize, rcti *input) |
| void | view3d_set_viewcontext (struct bContext *C, struct ViewContext *vc) |
| void | view3d_operator_needs_opengl (const struct bContext *C) |
| void | view3d_region_operator_needs_opengl (struct wmWindow *win, struct ARegion *ar) |
| int | view3d_get_view_aligned_coordinate (struct ViewContext *vc, float fp[3], const int mval[2], const short do_fallback) |
| void | view3d_get_transformation (struct ARegion *ar, struct RegionView3D *rv3d, struct Object *ob, struct bglMats *mats) |
| int | edge_inside_circle (short centx, short centy, short rad, short x1, short y1, short x2, short y2) |
| int | lasso_inside (int mcords[][2], short moves, int sx, int sy) |
| int | lasso_inside_edge (int mcords[][2], short moves, int x0, int y0, int x1, int y1) |
| struct RegionView3D * | ED_view3d_context_rv3d (struct bContext *C) |
| struct ARegion * | ED_view3d_context_region_unlock (struct bContext *C) |
| int | ED_operator_rv3d_unlock_poll (struct bContext *C) |
| void | ED_view3d_init_mats_rv3d (struct Object *ob, struct RegionView3D *rv3d) |
| void | ED_view3d_init_mats_rv3d_gl (struct Object *ob, struct RegionView3D *rv3d) |
| int | ED_view3d_scene_layer_set (int lay, const int *values, int *active) |
| int | ED_view3d_context_activate (struct bContext *C) |
| void | ED_view3d_draw_offscreen (struct Scene *scene, struct View3D *v3d, struct ARegion *ar, int winx, int winy, float viewmat[][4], float winmat[][4]) |
| struct ImBuf * | ED_view3d_draw_offscreen_imbuf (struct Scene *scene, struct View3D *v3d, struct ARegion *ar, int sizex, int sizey, unsigned int flag, char err_out[256]) |
| struct ImBuf * | ED_view3d_draw_offscreen_imbuf_simple (Scene *scene, struct Object *camera, int width, int height, unsigned int flag, int drawtype, char err_out[256]) |
| Base * | ED_view3d_give_base_under_cursor (struct bContext *C, const int mval[2]) |
| void | ED_view3d_quadview_update (struct ScrArea *sa, struct ARegion *ar, short do_clip) |
| int | ED_view3d_lock (struct RegionView3D *rv3d) |
| unsigned int | ED_view3d_datamask (struct Scene *scene, struct View3D *v3d) |
| unsigned int | ED_viewedit_datamask (struct bScreen *screen) |
| int | ED_view3d_camera_lock_check (struct View3D *v3d, struct RegionView3D *rv3d) |
| void | ED_view3d_camera_lock_init (struct View3D *v3d, struct RegionView3D *rv3d) |
| void | ED_view3d_camera_lock_sync (struct View3D *v3d, struct RegionView3D *rv3d) |
Definition in file ED_view3d.h.
| #define IS_CLIPPED 12000 |
Definition at line 197 of file ED_view3d.h.
Referenced by drawcursor(), ED_view3d_project_float(), key_inside_circle(), key_inside_rect(), key_test_depth(), lasso_inside(), lasso_inside_edge(), lattice_foreachScreenVert(), mesh_foreachScreenVert__mapFunc(), nurbs_foreachScreenVert(), PE_lasso_select(), project_float(), project_short(), project_short_noclip(), set_3dcursor_invoke(), view3d_cached_text_draw_end(), view3d_circle_select_exec(), view3d_get_view_aligned_coordinate(), view3d_project_short_clip(), and view3d_project_short_noclip().
| #define MAXPICKBUF 10000 |
Definition at line 248 of file ED_view3d.h.
Referenced by do_armature_box_select(), do_meta_box_select(), do_object_pose_box_select(), ED_view3d_give_base_under_cursor(), get_nearest_bone(), get_nearest_editbonepoint(), mixed_bones_object_selectbuffer(), mouse_mball(), mouse_select(), and sk_selectStroke().
| typedef struct ViewContext ViewContext |
| typedef struct ViewDepths ViewDepths |
| void drawcircball | ( | int | mode, |
| const float | cent[3], | ||
| float | rad, | ||
| float | tmat[][4] | ||
| ) |
Definition at line 612 of file drawobject.c.
References cosval, mul_v3_v3fl(), and sinval.
Referenced by draw_forcefield(), draw_manipulator_rotate(), draw_manipulator_rotate_cyl(), draw_manipulator_scale(), draw_manipulator_translate(), draw_new_particle_system(), draw_object(), draw_particle(), draw_sphere_bone_wire(), drawcentercircle(), drawcone(), drawlamp(), drawmball(), drawPropCircle(), drawSnapping(), and drawtube().
| int ED_operator_rv3d_unlock_poll | ( | struct bContext * | C | ) |
Definition at line 446 of file view3d_view.c.
References ED_view3d_context_region_unlock(), and NULL.
Referenced by VIEW3D_OT_object_as_camera(), VIEW3D_OT_view_orbit(), VIEW3D_OT_view_persportho(), and VIEW3D_OT_viewnumpad().
| void ED_view3d_align_axis_to_vector | ( | struct View3D * | v3d, |
| struct RegionView3D * | rv3d, | ||
| int | axisidx, | ||
| float | vec[3] | ||
| ) |
| int ED_view3d_autodist | ( | struct Scene * | scene, |
| struct ARegion * | ar, | ||
| struct View3D * | v3d, | ||
| const int | mval[2], | ||
| float | mouse_worldloc[3] | ||
| ) |
Definition at line 3314 of file view3d_edit.c.
References bgl_get_mats(), draw_depth(), FLT_MAX, bglMats::modelview, NULL, p, bglMats::projection, view_autodist_depth_margin(), and bglMats::viewport.
Referenced by set_3dcursor_invoke(), set_clone_cursor_invoke(), and viewops_data_create().
| int ED_view3d_autodist_depth | ( | struct ARegion * | ar, |
| const int | mval[2], | ||
| int | margin, | ||
| float * | depth | ||
| ) |
Definition at line 3385 of file view3d_edit.c.
References FLT_MAX, and view_autodist_depth_margin().
Referenced by gp_stroke_newfrombuffer().
| int ED_view3d_autodist_depth_seg | ( | struct ARegion * | ar, |
| const int | mval_sta[2], | ||
| const int | mval_end[2], | ||
| int | margin, | ||
| float * | depth | ||
| ) |
Definition at line 3412 of file view3d_edit.c.
References depth_segment_cb(), FLT_MAX, NULL, plot_line_v2v2i(), and VECCOPY2D.
Referenced by gp_stroke_newfrombuffer().
| int ED_view3d_autodist_init | ( | struct Scene * | scene, |
| struct ARegion * | ar, | ||
| struct View3D * | v3d, | ||
| int | mode | ||
| ) |
Definition at line 3341 of file view3d_edit.c.
References draw_depth(), draw_depth_gpencil(), and NULL.
Referenced by gp_paint_strokeend().
| int ED_view3d_autodist_simple | ( | struct ARegion * | ar, |
| const int | mval[2], | ||
| float | mouse_worldloc[3], | ||
| int | margin, | ||
| float * | force_depth | ||
| ) |
Definition at line 3357 of file view3d_edit.c.
References bgl_get_mats(), FLT_MAX, bglMats::modelview, p, bglMats::projection, view_autodist_depth_margin(), and bglMats::viewport.
Referenced by gp_stroke_convertcoords().
| void ED_view3d_calc_camera_border | ( | struct Scene * | scene, |
| struct ARegion * | ar, | ||
| struct View3D * | v3d, | ||
| struct RegionView3D * | rv3d, | ||
| struct rctf * | viewborder_r, | ||
| short | do_shift | ||
| ) |
Definition at line 970 of file view3d_draw.c.
References BKE_screen_view3d_zoom_to_fac(), RegionView3D::camdx, RegionView3D::camdy, View3D::camera, RegionView3D::camzoom, Object::data, MAX2, OB_CAMERA, Camera::shiftx, Camera::shifty, size(), Object::type, view3d_viewborder_size_get(), simple_enum_gen::w, ARegion::winx, ARegion::winy, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by draw_bgpic(), draw_gpencil_view3d_ext(), drawviewborder(), game_engine_exec(), gp_camera_view_subrect(), gp_paint_initstroke(), and render_border_exec().
| void ED_view3d_calc_clipping | ( | struct BoundBox * | bb, |
| float | planes[4][4], | ||
| struct bglMats * | mats, | ||
| struct rcti * | rect | ||
| ) |
Definition at line 469 of file view3d_view.c.
References fabs(), is_negative_m4(), bglMats::modelview, negate_v3(), normal_tri_v3(), p, bglMats::projection, simple_enum_gen::val, BoundBox::vec, VECCOPY, bglMats::viewport, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by sculpt_get_redraw_planes(), and view3d_clipping_exec().
| int ED_view3d_camera_lock_check | ( | struct View3D * | v3d, |
| struct RegionView3D * | rv3d | ||
| ) |
Definition at line 85 of file view3d_edit.c.
References View3D::camera, View3D::flag2, Object::id, ID::lib, NULL, RegionView3D::persp, RV3D_CAMOB, and V3D_LOCK_CAMERA.
Referenced by ED_view3d_camera_lock_init(), ED_view3d_camera_lock_sync(), view3d_all_exec(), view3d_zoom_border_invoke(), viewdolly_poll(), viewmove_apply(), vieworbit_exec(), viewrotate_invoke(), viewselected_exec(), and viewzoom_exec().
| void ED_view3d_camera_lock_init | ( | struct View3D * | v3d, |
| struct RegionView3D * | rv3d | ||
| ) |
Definition at line 93 of file view3d_edit.c.
References View3D::camera, RegionView3D::dist, ED_view3d_camera_lock_check(), ED_view3d_from_object(), NULL, RegionView3D::ofs, and RegionView3D::viewquat.
Referenced by smooth_view(), and viewops_data_create().
| void ED_view3d_camera_lock_sync | ( | struct View3D * | v3d, |
| struct RegionView3D * | rv3d | ||
| ) |
Definition at line 100 of file view3d_edit.c.
References View3D::camera, DAG_id_tag_update(), RegionView3D::dist, ED_view3d_camera_lock_check(), ED_view3d_to_m4(), ED_view3d_to_object(), FALSE, Object::id, Object::imat, invert_m4_m4(), mul_m4_m4m4(), NC_OBJECT, ND_TRANSFORM, OB_RECALC_OB, object_apply_mat4(), Object::obmat, RegionView3D::ofs, Object::parent, TRUE, USER_CAM_LOCK_NO_PARENT, RegionView3D::viewquat, and WM_main_add_notifier().
Referenced by view3d_smoothview_invoke(), viewdolly_apply(), viewmove_apply(), viewrotate_apply(), viewzoom_apply(), and viewzoom_exec().
| int ED_view3d_clip_range_get | ( | struct View3D * | v3d, |
| struct RegionView3D * | rv3d, | ||
| float * | clipsta, | ||
| float * | clipend | ||
| ) |
Definition at line 915 of file view3d_view.c.
References CAM_ORTHO, View3D::camera, Camera::clipend, Lamp::clipend, Camera::clipsta, Lamp::clipsta, Object::data, View3D::far, View3D::near, OB_CAMERA, OB_LAMP, orth(), RegionView3D::persp, RV3D_CAMOB, RV3D_ORTHO, Camera::type, and Object::type.
Referenced by project_paint_view_clip().
| int ED_view3d_context_activate | ( | struct bContext * | C | ) |
Definition at line 1741 of file view3d_view.c.
References bScreen::areabase, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_region_set(), CTX_wm_screen(), ListBase::first, ScrArea::next, ARegion::next, NULL, ScrArea::regionbase, ARegion::regiontype, RGN_TYPE_WINDOW, SPACE_VIEW3D, and ScrArea::spacetype.
Referenced by game_engine_exec(), and screen_opengl_render_init().
Definition at line 158 of file space_view3d.c.
References CTX_wm_area(), CTX_wm_region(), ListBase::first, ARegion::next, NULL, RegionView3D::persp, ScrArea::regionbase, ARegion::regiondata, ARegion::regiontype, RGN_TYPE_WINDOW, RV3D_CAMOB, RV3D_PERSP, SPACE_VIEW3D, ScrArea::spacetype, and RegionView3D::viewlock.
Referenced by ED_operator_rv3d_unlock_poll(), view3d_setobjectascamera_exec(), viewnumpad_exec(), vieworbit_exec(), and viewpersportho_exec().
| struct RegionView3D* ED_view3d_context_rv3d | ( | struct bContext * | C | ) | [read] |
Definition at line 140 of file space_view3d.c.
References BKE_area_find_region_type(), CTX_wm_area(), CTX_wm_region_view3d(), NULL, ARegion::regiondata, RGN_TYPE_WINDOW, SPACE_VIEW3D, and ScrArea::spacetype.
Referenced by add_nurbs_primitive(), extrude_repeat_mesh_invoke(), render_border_exec(), screw_mesh_invoke(), sort_faces_exec(), spin_exec(), spin_invoke(), and spin_mesh_invoke().
Definition at line 2184 of file view3d_draw.c.
References CD_MASK_MCOL, CD_MASK_MTFACE, CD_MASK_ORCO, View3D::drawtype, View3D::flag2, GAME_MAT_GLSL, Scene::gm, GameData::matmode, OB_SOLID, OB_TEXTURE, and V3D_SOLID_TEX.
Referenced by ED_viewedit_datamask(), and screen_opengl_render_init().
| float ED_view3d_depth_read_cached | ( | struct ViewContext * | vc, |
| int | x, | ||
| int | y | ||
| ) |
Definition at line 674 of file view3d_view.c.
References ViewContext::ar, ViewDepths::depths, RegionView3D::depths, ViewContext::rv3d, simple_enum_gen::w, ViewDepths::w, ARegion::winrct, rcti::xmin, and rcti::ymin.
| void ED_view3d_depth_tag_update | ( | struct RegionView3D * | rv3d | ) |
Definition at line 687 of file view3d_view.c.
References ViewDepths::damaged, and RegionView3D::depths.
Referenced by viewdolly_exec(), viewdolly_invoke(), viewdolly_modal(), viewmove_invoke(), viewmove_modal(), viewrotate_invoke(), viewrotate_modal(), viewzoom_exec(), viewzoom_invoke(), and viewzoom_modal().
| void ED_view3d_depth_update | ( | struct ARegion * | ar | ) |
Definition at line 1880 of file view3d_draw.c.
References simple_enum_gen::d, ViewDepths::damaged, ViewDepths::depth_range, ViewDepths::depths, RegionView3D::depths, ViewDepths::h, MEM_callocN(), MEM_freeN(), MEM_mallocN(), ARegion::regiondata, ViewDepths::w, ARegion::winrct, ARegion::winx, ARegion::winy, rcti::xmin, and rcti::ymin.
Referenced by PE_set_view3d_data().
| void ED_view3d_draw_offscreen | ( | struct Scene * | scene, |
| struct View3D * | v3d, | ||
| struct ARegion * | ar, | ||
| int | winx, | ||
| int | winy, | ||
| float | viewmat[][4], | ||
| float | winmat[][4] | ||
| ) |
Definition at line 2275 of file view3d_draw.c.
References View3D::afterdraw_transp, View3D::afterdraw_xray, View3D::afterdraw_xraytransp, Scene::base, RenderData::color_mgt_flag, copy_v3_v3(), DRAW_CONSTCOLOR, draw_dupli_objects(), draw_dupli_objects_color(), draw_glsl_material(), draw_gpencil_view3d_ext(), draw_object(), DRAW_SCENESET, View3D::drawtype, ED_region_pixelspace(), Global::f, FALSE, ListBase::first, G, G_RENDER_OGL, GPU_free_images_anim(), gpu_update_lamps_shadows(), World::horr, Base::lay, View3D::lay, linearrgb_to_srgb_v3_v3(), Base::next, NULL, OB_DUPLI, OB_WIRE, Base::object, Scene::r, R_COLOR_MANAGEMENT, Scene::set, SETLOOPER, TH_BACK, TH_WIRE, Object::transflag, TRUE, UI_ThemeClearColor(), UI_ThemeColorBlend(), view3d_draw_transp(), view3d_draw_xray(), view3d_draw_xraytransp(), view3d_main_area_setup_view(), ARegion::winrct, ARegion::winx, ARegion::winy, Scene::world, rcti::xmax, rcti::xmin, rcti::ymax, rcti::ymin, and View3D::zbuf.
Referenced by ED_view3d_draw_offscreen_imbuf(), gpu_update_lamps_shadows(), and screen_opengl_render_apply().
| struct ImBuf* ED_view3d_draw_offscreen_imbuf | ( | struct Scene * | scene, |
| struct View3D * | v3d, | ||
| struct ARegion * | ar, | ||
| int | sizex, | ||
| int | sizey, | ||
| unsigned int | flag, | ||
| char | err_out[256] | ||
| ) | [read] |
Definition at line 2396 of file view3d_draw.c.
References View3D::camera, ED_view3d_draw_offscreen(), GPU_offscreen_bind(), GPU_offscreen_create(), GPU_offscreen_free(), GPU_offscreen_unbind(), IMB_allocImBuf(), IMB_rect_from_float(), NULL, object_camera_matrix(), RegionView3D::persp, Scene::r, ImBuf::rect, ImBuf::rect_float, ARegion::regiondata, and RV3D_CAMOB.
Referenced by ED_view3d_draw_offscreen_imbuf_simple(), and texture_paint_image_from_view_exec().
| struct ImBuf* ED_view3d_draw_offscreen_imbuf_simple | ( | Scene * | scene, |
| struct Object * | camera, | ||
| int | width, | ||
| int | height, | ||
| unsigned int | flag, | ||
| int | drawtype, | ||
| char | err_out[256] | ||
| ) | [read] |
Definition at line 2450 of file view3d_draw.c.
References View3D::camera, copy_m4_m4(), View3D::drawtype, ED_view3d_draw_offscreen_imbuf(), View3D::far, ListBase::first, View3D::flag2, invert_m4_m4(), ListBase::last, View3D::lay, Scene::lay, View3D::lens, mul_m4_m4m4(), View3D::near, normalize_m4(), NULL, object_camera_matrix(), Object::obmat, RegionView3D::persinv, RegionView3D::persmat, RegionView3D::persp, Scene::r, View3D::regionbase, ARegion::regiondata, ARegion::regiontype, RGN_TYPE_WINDOW, RV3D_CAMOB, V3D_RENDER_OVERRIDE, RegionView3D::viewinv, RegionView3D::viewmat, and RegionView3D::winmat.
Referenced by blend_file_thumb(), ED_spacetype_sequencer(), and screen_opengl_render_apply().
| void ED_view3d_from_m4 | ( | float | mat[][4], |
| float | ofs[3], | ||
| float | quat[4], | ||
| float * | dist | ||
| ) |
Set the view transformation from a 4x4 matrix.
| mat | The view 4x4 transformation matrix to assign. |
| ofs | The view offset, normally from RegionView3D.ofs. |
| quat | The view rotation, quaternion normally from RegionView3D.viewquat. |
| dist | The view distance from ofs, normally from RegionView3D.dist. |
Definition at line 3437 of file view3d_edit.c.
References copy_m3_m4(), invert_m4_m4(), mat4_to_quat(), mul_m3_v3(), negate_v3_v3(), normalize_m3(), and sub_v3_v3().
Referenced by ED_view3d_from_object().
| void ED_view3d_from_object | ( | struct Object * | ob, |
| float | ofs[3], | ||
| float | quat[4], | ||
| float * | dist, | ||
| float * | lens | ||
| ) |
Set the RegionView3D members from an objects transformation and optionally lens.
| ob | The object to set the view to. |
| ofs | The view offset to be set, normally from RegionView3D.ofs. |
| quat | The view rotation to be set, quaternion normally from RegionView3D.viewquat. |
| dist | The view distance from ofs to be set, normally from RegionView3D.dist. |
Definition at line 3478 of file view3d_edit.c.
References ED_view3d_from_m4(), ED_view3d_ob_clip_range_get(), NULL, and Object::obmat.
Referenced by ED_view3d_camera_lock_init(), obmat_to_viewmat(), smooth_view(), view3d_align_axis_to_vector(), and viewrotate_invoke().
Definition at line 1190 of file view3d_select.c.
References Scene::base, ListBase::first, MAXPICKBUF, mixed_bones_object_selectbuffer(), mouse_select_eval_buffer(), NULL, ViewContext::scene, view3d_operator_needs_opengl(), and view3d_set_viewcontext().
Referenced by drop_named_image_invoke(), drop_named_material_invoke(), view3d_ima_bg_drop_poll(), and view3d_ima_ob_drop_poll().
| void ED_view3d_global_to_vector | ( | struct RegionView3D * | rv3d, |
| const float | coord[3], | ||
| float | vec[3] | ||
| ) |
Calculate a normalized 3d direction vector from the viewpoint towards a global location. In orthographic view the resulting vector will match the view vector.
| ar | The region (used for the window width and height). |
| coord | The world-space location. |
| vec | The resulting normalized vector. |
Definition at line 563 of file view3d_view.c.
References copy_v3_v3(), RegionView3D::is_persp, mul_m4_v4(), mul_v3_fl(), normalize_v3(), sub_v3_v3v3(), RegionView3D::viewinv, and RegionView3D::viewmat.
Referenced by calc_sculpt_normal(), calc_sculpt_plane(), project_brush_radius(), sculpt_update_cache_invariants(), and test_manipulator_axis().
| void ED_view3d_init_mats_rv3d | ( | struct Object * | ob, |
| struct RegionView3D * | rv3d | ||
| ) |
Definition at line 205 of file space_view3d.c.
References ED_view3d_local_clipping(), mul_m4_m4m4(), Object::obmat, RegionView3D::persmat, RegionView3D::persmatob, RegionView3D::viewmat, and RegionView3D::viewmatob.
Referenced by armature_circle_select(), do_lasso_select_curve(), do_lasso_select_lattice(), do_lasso_select_mesh(), do_lattice_box_select(), do_mesh_box_select(), do_nurbs_box_select(), ED_view3d_init_mats_rv3d_gl(), findnearestedge(), findnearestface(), findnearestLattvert(), findnearestNurbvert(), findnearestvert(), lattice_circle_select(), mesh_circle_select(), nurbscurve_circle_select(), pose_circle_select(), sculpt_stroke_test_start(), and xsortvert_flag().
| void ED_view3d_init_mats_rv3d_gl | ( | struct Object * | ob, |
| struct RegionView3D * | rv3d | ||
| ) |
Definition at line 215 of file space_view3d.c.
References ED_view3d_init_mats_rv3d(), glMultMatrixf, and Object::obmat.
Referenced by draw_object().
| void ED_view3d_local_clipping | ( | struct RegionView3D * | rv3d, |
| float | mat[][4] | ||
| ) |
Definition at line 3047 of file view3d_edit.c.
References calc_local_clipping(), RegionView3D::clip_local, RegionView3D::clipbb, RegionView3D::rflag, and RV3D_CLIPPING.
Referenced by ED_view3d_init_mats_rv3d(), findnearestedge__doClosest(), lattice_foreachScreenVert(), mesh_foreachScreenEdge(), mesh_foreachScreenFace(), mesh_foreachScreenVert(), nurbs_foreachScreenVert(), and project_paint_begin().
| int ED_view3d_lock | ( | struct RegionView3D * | rv3d | ) |
Definition at line 1160 of file view3d_view.c.
References cos(), FALSE, M_PI, QUATSET, RV3D_VIEW_BACK, RV3D_VIEW_BOTTOM, RV3D_VIEW_FRONT, RV3D_VIEW_LEFT, RV3D_VIEW_RIGHT, RV3D_VIEW_TOP, sin(), TRUE, RegionView3D::view, and RegionView3D::viewquat.
Referenced by region_quadview_exec(), and setviewmatrixview3d().
| void ED_view3d_ob_clip_range_get | ( | struct Object * | ob, |
| float * | lens, | ||
| float * | clipsta, | ||
| float * | clipend | ||
| ) |
Definition at line 109 of file view3d_view.c.
References Camera::clipend, Lamp::clipend, Camera::clipsta, Lamp::clipsta, cosf, Object::data, Camera::lens, M_PI, OB_CAMERA, OB_LAMP, saacos(), sinf, Lamp::spotsize, and Object::type.
Referenced by ED_view3d_from_object().
| void ED_view3d_ob_project_mat_get | ( | struct RegionView3D * | v3d, |
| struct Object * | ob, | ||
| float | pmat[4][4] | ||
| ) |
Definition at line 693 of file view3d_view.c.
References mul_m4_m4m4(), Object::obmat, RegionView3D::viewmat, and RegionView3D::winmat.
Referenced by createSlideVerts(), mesh_rip_invoke(), project_paint_begin(), and sculpt_get_redraw_rect().
| float ED_view3d_pixel_size | ( | struct RegionView3D * | rv3d, |
| const float | co[3] | ||
| ) |
Definition at line 1894 of file view3d_view.c.
References RegionView3D::persmat, and RegionView3D::pixsize.
Referenced by BIF_draw_manipulator(), draw_new_particle_system(), drawcentercircle(), drawlamp(), and drawSnapping().
| void ED_view3d_project_float | ( | struct ARegion * | a, |
| const float | vec[3], | ||
| float | adr[2], | ||
| float | mat[4][4] | ||
| ) |
Definition at line 717 of file view3d_view.c.
References copy_v3_v3(), IS_CLIPPED, mul_m4_v4(), ARegion::winx, and ARegion::winy.
Referenced by createSlideVerts(), draw_bgpic(), mesh_rip_edgedist(), mesh_rip_invoke(), and sculpt_get_redraw_rect().
Definition at line 292 of file view3d_edit.c.
References ARegion::alignment, ED_area_tag_redraw(), ListBase::last, NULL, ARegion::prev, ScrArea::regionbase, ARegion::regiondata, RegionView3D::rflag, RGN_ALIGN_QSPLIT, RV3D_BOXCLIP, RV3D_BOXVIEW, RV3D_LOCKED, TRUE, view3d_boxview_copy(), and RegionView3D::viewlock.
| int ED_view3d_scene_layer_set | ( | int | lay, |
| const int * | values, | ||
| int * | active | ||
| ) |
Definition at line 1397 of file view3d_view.c.
References i.
| int ED_view3d_test_clipping | ( | struct RegionView3D * | rv3d, |
| const float | vec[3], | ||
| const int | local | ||
| ) |
Definition at line 209 of file view3d_draw.c.
References RegionView3D::clip, RegionView3D::clip_local, and test_clipping().
Referenced by findnearestedge__doClosest(), project_paint_face_init(), project_paint_occlude_ptv_clip(), project_short(), and view3d_project_short_clip().
| void ED_view3d_to_m4 | ( | float | mat[][4], |
| const float | ofs[3], | ||
| const float | quat[4], | ||
| const float | dist | ||
| ) |
Calculate the view transformation matrix from RegionView3D input. The resulting matrix is equivilent to RegionView3D.viewinv
| mat | The view 4x4 transformation matrix to calculate. |
| ofs | The view offset, normally from RegionView3D.ofs. |
| quat | The view rotation, quaternion normally from RegionView3D.viewquat. |
| dist | The view distance from ofs, normally from RegionView3D.dist. |
Definition at line 3466 of file view3d_edit.c.
References mul_mat3_m4_v3(), quat_to_mat4(), and sub_v3_v3v3().
Referenced by ED_view3d_camera_lock_sync(), ED_view3d_to_object(), and move_camera().
| void ED_view3d_to_object | ( | struct Object * | ob, |
| const float | ofs[3], | ||
| const float | quat[4], | ||
| const float | dist | ||
| ) |
Set the object transformation from RegionView3D members.
| ob | The object which has the transformation assigned. |
| ofs | The view offset, normally from RegionView3D.ofs. |
| quat | The view rotation, quaternion normally from RegionView3D.viewquat. |
| dist | The view distance from ofs, normally from RegionView3D.dist. |
Definition at line 3488 of file view3d_edit.c.
References ED_view3d_to_m4(), object_apply_mat4(), and TRUE.
Referenced by ED_view3d_camera_lock_sync(), and view3d_setcameratoview_exec().
| int ED_view3d_viewplane_get | ( | struct View3D * | v3d, |
| struct RegionView3D * | rv3d, | ||
| int | winxi, | ||
| int | winyi, | ||
| struct rctf * | viewplane, | ||
| float * | clipsta, | ||
| float * | clipend, | ||
| float * | pixsize | ||
| ) |
Definition at line 950 of file view3d_view.c.
References BKE_screen_view3d_zoom_to_fac(), CAM_ORTHO, RegionView3D::camdx, RegionView3D::camdy, View3D::camera, RegionView3D::camzoom, Camera::clipend, Lamp::clipend, Camera::clipsta, Lamp::clipsta, cosf, Object::data, RegionView3D::dist, View3D::far, Camera::lens, View3D::lens, M_PI, View3D::near, NULL, OB_CAMERA, OB_LAMP, orth(), Camera::ortho_scale, RegionView3D::persp, RV3D_CAMOB, RV3D_ORTHO, saacos(), Camera::shiftx, Camera::shifty, sinf, Lamp::spotsize, Camera::type, Object::type, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by screen_opengl_render_apply(), and setwinmatrixview3d().
| void ED_view3d_win_to_3d | ( | struct ARegion * | ar, |
| const float | depth_pt[3], | ||
| const float | mval[2], | ||
| float | out[3] | ||
| ) |
Calculate a 3d location from 2d window coordinates.
| ar | The region (used for the window width and height). |
| depth_pt | The reference location used to calculate the Z depth. |
| mval | The area relative location (such as event->mval converted to floats). |
| out | The resulting world-space location. |
Definition at line 609 of file view3d_view.c.
References add_v3_v3v3(), closest_to_line_v3(), copy_v3_v3(), ED_view3d_win_to_vector(), RegionView3D::is_persp, isect_line_plane_v3(), RegionView3D::persinv, ARegion::regiondata, TRUE, RegionView3D::viewinv, ARegion::winx, ARegion::winy, and zero_v3().
Referenced by armature_click_extrude_invoke(), and gp_strokepoint_convertcoords().
| void ED_view3d_win_to_delta | ( | struct ARegion * | ar, |
| const float | mval[2], | ||
| float | out[3] | ||
| ) |
Calculate a 3d difference vector from 2d window offset. note that initgrabz() must be called first to determine the depth used to calculate the delta.
| ar | The region (used for the window width and height). |
| mval | The area relative 2d difference (such as event->mval[0] - other_x). |
| out | The resulting world-space delta. |
Definition at line 641 of file view3d_view.c.
References RegionView3D::persinv, ARegion::regiondata, ARegion::winx, ARegion::winy, and RegionView3D::zfac.
Referenced by brush_edit_apply(), convertViewVec(), draw_bgpic(), gp_stroke_convertcoords(), paint_calc_object_space_radius(), sculpt_update_brush_delta(), set_3dcursor_invoke(), sk_projectDrawPoint(), view3d_get_view_aligned_coordinate(), view3d_zoom_border_exec(), view_zoom_mouseloc(), viewmove_apply(), and viewpan_exec().
| void ED_view3d_win_to_ray | ( | struct ARegion * | ar, |
| struct View3D * | v3d, | ||
| const float | mval[2], | ||
| float | ray_start[3], | ||
| float | ray_normal[3] | ||
| ) |
Calculate a 3d viewpoint and direction vector from 2d window coordinates. This ray_start is located at the viewpoint, ray_normal is the direction towards mval. ray_start is clipped by the view near limit so points in front of it are always in view. In orthographic view the resulting ray_normal will match the view vector.
| ar | The region (used for the window width and height). |
| v3d | The 3d viewport (used for near clipping value). |
| out | The resulting normalized world-space direction vector. |
| mval | The area relative 2d location (such as event->mval, converted into float[2]). |
| ray_start | The world-space starting point of the segment. |
| ray_normal | The normalized world-space direction of towards mval. |
Definition at line 554 of file view3d_view.c.
References ED_view3d_win_to_segment_clip(), normalize_v3(), and sub_v3_v3v3().
Referenced by peelObjects(), sk_interpolateDepth(), and snapObjects().
| void ED_view3d_win_to_segment_clip | ( | struct ARegion * | ar, |
| struct View3D * | v3d, | ||
| const float | mval[2], | ||
| float | ray_start[3], | ||
| float | ray_end[3] | ||
| ) |
Calculate a 3d segment from 2d window coordinates. This ray_start is located at the viewpoint, ray_end is a far point. ray_start and ray_end are clipped by the view near and far limits so points along this line are always in view. In orthographic view all resulting segments will be parallel.
| ar | The region (used for the window width and height). |
| v3d | The 3d viewport (used for near and far clipping range). |
| mval | The area relative 2d location (such as event->mval, converted into float[2]). |
| ray_start | The world-space starting point of the segment. |
| ray_end | The world-space end point of the segment. |
Definition at line 519 of file view3d_view.c.
References RegionView3D::clip, clip_line_plane(), copy_v3_v3(), ED_view3d_win_to_vector(), View3D::far, RegionView3D::is_persp, mul_m4_v4(), View3D::near, RegionView3D::persinv, ARegion::regiondata, RegionView3D::rflag, RV3D_CLIPPING, VECADDFAC, RegionView3D::viewinv, ARegion::winx, and ARegion::winy.
Referenced by brush_add(), ED_view3d_win_to_ray(), sculpt_stroke_get_location(), and sk_getIntersections().
| void ED_view3d_win_to_vector | ( | struct ARegion * | ar, |
| const float | mval[2], | ||
| float | out[3] | ||
| ) |
Calculate a 3d direction vector from 2d window coordinates. This direction vector starts and the view in the direction of the 2d window coordinates. In orthographic view all window coordinates yield the same vector.
| ar | The region (used for the window width and height). |
| mval | The area relative 2d location (such as event->mval converted to floats). |
| out | The resulting normalized world-space direction vector. |
Definition at line 657 of file view3d_view.c.
References copy_v3_v3(), RegionView3D::is_persp, mul_project_m4_v3(), normalize_v3(), RegionView3D::persinv, ARegion::regiondata, sub_v3_v3(), RegionView3D::viewinv, ARegion::winx, and ARegion::winy.
Referenced by ED_view3d_win_to_3d(), ED_view3d_win_to_segment_clip(), and viewops_data_create().
| unsigned int ED_viewedit_datamask | ( | struct bScreen * | screen | ) |
Definition at line 2197 of file view3d_draw.c.
References bScreen::areabase, Scene::basact, CD_MASK_BAREMESH, CD_MASK_MCOL, CD_MASK_MTFACE, CD_MASK_WEIGHT_MCOL, ED_view3d_datamask(), ListBase::first, Object::mode, ScrArea::next, NULL, OB_MODE_TEXTURE_PAINT, OB_MODE_VERTEX_PAINT, OB_MODE_WEIGHT_PAINT, Base::object, paint_facesel_test(), bScreen::scene, SPACE_VIEW3D, ScrArea::spacedata, and ScrArea::spacetype.
Referenced by wm_event_do_notifiers().
| int edge_inside_circle | ( | short | centx, |
| short | centy, | ||
| short | rad, | ||
| short | x1, | ||
| short | y1, | ||
| short | x2, | ||
| short | y2 | ||
| ) |
Definition at line 1349 of file view3d_select.c.
References dist_to_line_segment_v2().
Referenced by armature_circle_select(), gp_stroke_eraser_strokeinside(), and mesh_circle_doSelectEdge().
Definition at line 101 of file view3d_view.c.
References View3D::cursor, Scene::cursor, and View3D::localvd.
Referenced by add_primitive_bone(), add_vertex_invoke(), armature_bone_primitive_add_exec(), armature_calc_roll_exec(), armature_click_extrude_exec(), armature_click_extrude_invoke(), armature_fill_bones_exec(), BIF_draw_manipulator(), calculateCenterCursor(), drawcursor(), dupli_extrude_cursor(), ED_object_location_from_view(), em_snap_to_cursor(), gp_get_3d_reference(), gp_strokepoint_convertcoords(), object_origin_set_exec(), project_paint_begin_clone(), screw_mesh_invoke(), set_3dcursor_invoke(), set_clone_cursor_exec(), setviewmatrixview3d(), snap_curs_to_active(), snap_curs_to_center(), snap_curs_to_grid(), snap_curs_to_sel(), snap_sel_to_curs(), spin_invoke(), spin_mesh_invoke(), uv_map_transform_center(), view3d_all_exec(), viewcenter_cursor_exec(), and Warp().
| int initgrabz | ( | struct RegionView3D * | rv3d, |
| float | x, | ||
| float | y, | ||
| float | z | ||
| ) |
Definition at line 586 of file view3d_view.c.
References FALSE, NULL, RegionView3D::persmat, TRUE, and RegionView3D::zfac.
Referenced by brush_edit_init(), calculateCenter(), draw_bgpic(), gp_paint_initstroke(), paint_calc_object_space_radius(), sculpt_update_brush_delta(), set_3dcursor_invoke(), sk_projectDrawPoint(), view3d_get_view_aligned_coordinate(), view3d_zoom_border_exec(), view_zoom_mouseloc(), viewops_data_create(), and viewpan_exec().
| int lasso_inside | ( | int | mcords[][2], |
| short | moves, | ||
| int | sx, | ||
| int | sy | ||
| ) |
Definition at line 279 of file view3d_select.c.
References cross(), dot(), fabs(), IS_CLIPPED, saacos(), and sqrt().
Referenced by do_lasso_select_armature(), do_lasso_select_curve__doSelect(), do_lasso_select_lattice__doSelect(), do_lasso_select_mesh__doSelectEdge(), do_lasso_select_mesh__doSelectFace(), do_lasso_select_mesh__doSelectVert(), do_lasso_select_meta(), do_lasso_select_objects(), lasso_inside_edge(), and PE_lasso_select().
| int lasso_inside_edge | ( | int | mcords[][2], |
| short | moves, | ||
| int | x0, | ||
| int | y0, | ||
| int | x1, | ||
| int | y1 | ||
| ) |
Definition at line 327 of file view3d_select.c.
References IS_CLIPPED, isect_line_line_v2_int(), and lasso_inside().
Referenced by do_lasso_select_armature(), do_lasso_select_mesh__doSelectEdge(), and do_lasso_select_pose().
| void lattice_foreachScreenVert | ( | struct ViewContext * | vc, |
| void(*)(void *userData, struct BPoint *bp, int x, int y) | func, | ||
| void * | userData | ||
| ) |
Referenced by do_lasso_select_lattice(), do_lattice_box_select(), findnearestLattvert(), and lattice_circle_select().
| void mesh_foreachScreenEdge | ( | struct ViewContext * | vc, |
| void(*)(void *userData, struct EditEdge *eed, int x0, int y0, int x1, int y1, int index) | func, | ||
| void * | userData, | ||
| int | clipVerts | ||
| ) |
Referenced by do_lasso_select_mesh(), do_mesh_box_select(), findnearestedge(), and mesh_circle_select().
| void mesh_foreachScreenFace | ( | struct ViewContext * | vc, |
| void(*)(void *userData, struct EditFace *efa, int x, int y, int index) | func, | ||
| void * | userData | ||
| ) |
Referenced by do_lasso_select_mesh(), do_mesh_box_select(), findnearestface(), and mesh_circle_select().
| void mesh_foreachScreenVert | ( | struct ViewContext * | vc, |
| void(*)(void *userData, struct EditVert *eve, int x, int y, int index) | func, | ||
| void * | userData, | ||
| int | clipVerts | ||
| ) |
Referenced by do_lasso_select_mesh(), do_mesh_box_select(), findnearestvert(), mesh_circle_select(), and xsortvert_flag().
| void nurbs_foreachScreenVert | ( | struct ViewContext * | vc, |
| void(*)(void *userData, struct Nurb *nu, struct BPoint *bp, struct BezTriple *bezt, int beztindex, int x, int y) | func, | ||
| void * | userData | ||
| ) |
Referenced by do_lasso_select_curve(), do_nurbs_box_select(), findnearestNurbvert(), and nurbscurve_circle_select().
| void project_float | ( | struct ARegion * | ar, |
| const float | vec[3], | ||
| float | adr[2] | ||
| ) |
Definition at line 876 of file view3d_view.c.
References BL_NEAR_CLIP, copy_v3_v3(), IS_CLIPPED, mul_m4_v4(), RegionView3D::persmat, ARegion::regiondata, ARegion::winx, and ARegion::winy.
Referenced by applyProject(), knife_cut_exec(), sk_getIntersections(), sk_getSelfIntersections(), and sk_interpolateDepth().
| void project_float_noclip | ( | struct ARegion * | ar, |
| const float | vec[3], | ||
| float | adr[2] | ||
| ) |
Definition at line 893 of file view3d_view.c.
References BL_NEAR_CLIP, copy_v3_v3(), fabs(), mul_m4_v4(), RegionView3D::persmat, ARegion::regiondata, ARegion::winx, and ARegion::winy.
Referenced by dupli_extrude_cursor(), EM_project_snap_verts(), projectFloatView(), and weight_sample_invoke().
| void project_int | ( | struct ARegion * | ar, |
| const float | vec[3], | ||
| int | adr[2] | ||
| ) |
Definition at line 801 of file view3d_view.c.
References BL_NEAR_CLIP, copy_v3_v3(), mul_m4_v4(), RegionView3D::persmat, ARegion::regiondata, ARegion::winx, and ARegion::winy.
Referenced by do_lasso_select_pose(), drawcursor(), gp_stroke_eraser_dostroke(), key_inside_circle(), key_inside_rect(), PE_lasso_select(), snapEdge(), and snapVertex().
| void project_int_noclip | ( | struct ARegion * | ar, |
| const float | vec[3], | ||
| int | adr[2] | ||
| ) |
Definition at line 826 of file view3d_view.c.
References BL_NEAR_CLIP, copy_v3_v3(), fabs(), mul_m4_v4(), RegionView3D::persmat, ARegion::regiondata, ARegion::winx, and ARegion::winy.
Referenced by brush_cut(), calc_vp_alpha_dl(), gp_stroke_convertcoords(), projectIntView(), set_3dcursor_invoke(), and view3d_get_view_aligned_coordinate().
| void project_short | ( | struct ARegion * | ar, |
| const float | vec[3], | ||
| short | adr[2] | ||
| ) |
Definition at line 770 of file view3d_view.c.
References BL_NEAR_CLIP, copy_v3_v3(), ED_view3d_test_clipping(), IS_CLIPPED, mul_m4_v4(), RegionView3D::persmat, ARegion::regiondata, RegionView3D::rflag, RV3D_CLIPPING, ARegion::winx, and ARegion::winy.
Referenced by armature_circle_select(), do_lasso_select_armature(), do_lasso_select_meta(), do_lasso_select_objects(), draw_object(), key_test_depth(), mouse_select(), mouse_select_menu(), pose_circle_select(), and view3d_circle_select_exec().
| void project_short_noclip | ( | struct ARegion * | ar, |
| const float | vec[3], | ||
| short | adr[2] | ||
| ) |
Definition at line 850 of file view3d_view.c.
References BL_NEAR_CLIP, copy_v3_v3(), IS_CLIPPED, mul_m4_v4(), RegionView3D::persmat, ARegion::regiondata, ARegion::winx, and ARegion::winy.
Referenced by sk_detectMergeGesture(), sk_projectDrawPoint(), and sk_snapPointStroke().
| void view3d_get_transformation | ( | struct ARegion * | ar, |
| struct RegionView3D * | rv3d, | ||
| struct Object * | ob, | ||
| struct bglMats * | mats | ||
| ) |
Definition at line 131 of file view3d_select.c.
References copy_m4_m4(), i, bglMats::modelview, mul_m4_m4m4(), Object::obmat, bglMats::projection, RegionView3D::viewmat, bglMats::viewport, RegionView3D::winmat, ARegion::winrct, ARegion::winx, ARegion::winy, rcti::xmin, and rcti::ymin.
Referenced by paint_stroke_new(), PE_set_view3d_data(), sculpt_get_redraw_planes(), sculpt_update_cache_invariants(), and view3d_clipping_exec().
| int view3d_get_view_aligned_coordinate | ( | struct ViewContext * | vc, |
| float | fp[3], | ||
| const int | mval[2], | ||
| const short | do_fallback | ||
| ) |
Definition at line 96 of file view3d_select.c.
References ViewContext::ar, ED_view3d_win_to_delta(), FALSE, initgrabz(), IS_CLIPPED, negate_v3_v3(), RegionView3D::ofs, project_int_noclip(), ViewContext::rv3d, sub_v3_v3(), TRUE, VECSUB2D, and view3d_get_view_aligned_coordinate().
Referenced by add_vertex_invoke(), dupli_extrude_cursor(), and view3d_get_view_aligned_coordinate().
| short view3d_opengl_select | ( | struct ViewContext * | vc, |
| unsigned int * | buffer, | ||
| unsigned int | bufsize, | ||
| rcti * | input | ||
| ) |
Definition at line 1241 of file view3d_view.c.
References ViewContext::ar, BASACT, Scene::base, BDR_drawSketchNames(), copy_m4_m4(), DRAW_CONSTCOLOR, draw_object(), DRAW_PICKING, View3D::drawtype, Object::dt, Object::dtx, Object::dup_group, Global::f, FALSE, ListBase::first, Base::flag, free_object_duplilist(), G, G_PICKSEL, Base::lay, View3D::lay, DupliObject::mat, MIN2, mul_m4_m4m4(), Base::next, DupliObject::next, NULL, DupliObject::ob, OB_ARMATURE, OB_DUPLI, OB_FROMDUPLI, OB_MBALL, OB_RESTRICT_SELECT, OB_WIRE, ViewContext::obedit, Base::object, object_duplilist(), Object::obmat, DupliObject::omat, RegionView3D::persmat, Object::restrictflag, RegionView3D::rflag, ViewContext::rv3d, RV3D_CLIPPING, ViewContext::scene, Base::selcol, setwinmatrixview3d(), Object::transflag, TRUE, Object::type, ViewContext::v3d, view3d_clr_clipping(), view3d_set_clipping(), RegionView3D::viewmat, RegionView3D::winmat, rcti::xmax, rctf::xmax, rcti::xmin, rctf::xmin, View3D::xray, rcti::ymax, rctf::ymax, rcti::ymin, rctf::ymin, and View3D::zbuf.
Referenced by do_armature_box_select(), do_meta_box_select(), do_object_pose_box_select(), get_nearest_bone(), get_nearest_editbonepoint(), mixed_bones_object_selectbuffer(), mouse_mball(), and sk_selectStroke().
| void view3d_operator_needs_opengl | ( | const struct bContext * | C | ) |
Referenced by armature_select_linked_invoke(), brush_edit_apply(), ED_view3d_give_base_under_cursor(), game_engine_exec(), manipulator_invoke(), mesh_select_loop_invoke(), mesh_shortest_path_select_invoke(), mouse_nurb(), paint_apply(), PE_set_view3d_data(), pose_select_connected_invoke(), ringcut_invoke(), ringcut_modal(), ringsel_invoke(), sculpt_brush_stroke_init(), select_linked_pick_invoke(), set_3dcursor_invoke(), set_clone_cursor_invoke(), view3d_borderselect_exec(), view3d_circle_select_exec(), view3d_clipping_exec(), view3d_lasso_select_exec(), view3d_select_invoke(), view3d_zoom_border_exec(), viewops_data_create(), vpaint_stroke_update_step(), weight_paint_sample_enum_itemf(), weight_sample_invoke(), and wpaint_stroke_update_step().
| struct ImBuf* view3d_read_backbuf | ( | struct ViewContext * | vc, |
| short | xmin, | ||
| short | ymin, | ||
| short | xmax, | ||
| short | ymax | ||
| ) | [read] |
Definition at line 1356 of file view3d_draw.c.
References ViewContext::ar, B_ENDIAN, ENDIAN_ORDER, IB_rect, IMB_allocImBuf(), IMB_convert_rgba_to_abgr(), IMB_freeImBuf(), NULL, ImBuf::rect, view3d_validate_backbuf(), ARegion::winrct, ARegion::winx, ARegion::winy, WM_framebuffer_to_index(), rcti::xmin, and rcti::ymin.
Referenced by EM_init_backbuf_border(), EM_init_backbuf_circle(), EM_mask_init_backbuf_border(), sample_backbuf_area(), and view3d_sample_backbuf_rect().
Definition at line 85 of file view3d_view.c.
References glLoadMatrixf, NULL, ARegion::regiondata, ARegion::regiontype, RGN_TYPE_WINDOW, ARegion::swinid, RegionView3D::viewmat, RegionView3D::winmat, and wmSubWindowSet().
Referenced by gp_paint_strokeend(), and view3d_operator_needs_opengl().
| unsigned int view3d_sample_backbuf | ( | struct ViewContext * | vc, |
| int | x, | ||
| int | y | ||
| ) |
Definition at line 1337 of file view3d_draw.c.
References ViewContext::ar, B_ENDIAN, ENDIAN_ORDER, SWITCH_INT, view3d_validate_backbuf(), ARegion::winrct, ARegion::winx, ARegion::winy, WM_framebuffer_to_index(), rcti::xmin, and rcti::ymin.
Referenced by facesel_face_pick(), findnearestface(), imapaint_pick_face(), vpaint_stroke_update_step(), weight_paint_sample_enum_itemf(), weight_sample_invoke(), and wpaint_stroke_update_step().
| unsigned int view3d_sample_backbuf_rect | ( | struct ViewContext * | vc, |
| const int | mval[2], | ||
| int | size, | ||
| unsigned int | min, | ||
| unsigned int | max, | ||
| int * | dist, | ||
| short | strict, | ||
| void * | handle, | ||
| unsigned int(*)(void *handle, unsigned int index) | indextest | ||
| ) |
Definition at line 1409 of file view3d_draw.c.
References IMB_freeImBuf(), ImBuf::index, size(), sqrt(), and view3d_read_backbuf().
Referenced by facesel_face_pick(), findnearestedge(), and findnearestvert().
| void view3d_set_viewcontext | ( | struct bContext * | C, |
| struct ViewContext * | vc | ||
| ) |
Definition at line 85 of file view3d_select.c.
References ViewContext::ar, CTX_data_active_object(), CTX_data_edit_object(), CTX_data_scene(), CTX_wm_region(), CTX_wm_region_view3d(), CTX_wm_view3d(), ViewContext::obact, ViewContext::obedit, ViewContext::rv3d, ViewContext::scene, and ViewContext::v3d.
Referenced by add_vertex_invoke(), ED_view3d_give_base_under_cursor(), em_setup_viewcontext(), facesel_face_pick(), get_nearest_bone(), mouse_armature(), mouse_lattice(), mouse_mball(), mouse_nurb(), mouse_select(), paint_draw_cursor(), paint_stroke_new(), PE_set_view3d_data(), select_linked_pick_invoke(), sk_selectStroke(), texture_paint_init(), view3d_borderselect_exec(), view3d_circle_select_exec(), view3d_clipping_exec(), view3d_lasso_select_exec(), vpaint_stroke_test_start(), weight_paint_sample_enum_itemf(), weight_sample_group_exec(), weight_sample_invoke(), and wpaint_stroke_test_start().
| void view3d_validate_backbuf | ( | struct ViewContext * | vc | ) |
Definition at line 1330 of file view3d_draw.c.
References ViewContext::ar, backdrawview3d(), View3D::flag, ViewContext::scene, ViewContext::v3d, and V3D_INVALID_BACKBUF.
Referenced by do_paintface_box_select(), mouse_mesh_loop(), mouse_mesh_shortest_path(), PE_set_view3d_data(), unified_findnearest(), view3d_read_backbuf(), and view3d_sample_backbuf().