Blender V2.61 - r43446
Classes | Defines | Typedefs | Enumerations | Functions

ED_view3d.h File Reference

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
typedef enum eV3DClipTest eV3DClipTest

Enumerations

enum  eV3DClipTest { V3D_CLIP_TEST_OFF = 0, V3D_CLIP_TEST_RV3D_CLIPPING = 1, V3D_CLIP_TEST_REGION = 2 }

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, const 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])
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)
void ED_view3d_ob_project_mat_get (struct RegionView3D *v3d, struct Object *ob, float pmat[4][4])
void ED_view3d_project_float (const 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 no_shift)
void ED_view3d_calc_camera_border_size (struct Scene *scene, struct ARegion *ar, struct View3D *v3d, struct RegionView3D *rv3d, float size_r[2])
void mesh_foreachScreenVert (struct ViewContext *vc, void(*func)(void *userData, struct EditVert *eve, int x, int y, int index), void *userData, eV3DClipTest 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, eV3DClipTest 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 ImBufview3d_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 (const 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 RegionView3DED_view3d_context_rv3d (struct bContext *C)
int ED_view3d_context_user_region (struct bContext *C, struct View3D **v3d_r, struct ARegion **ar_r)
int ED_operator_rv3d_user_region_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 ImBufED_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 ImBufED_view3d_draw_offscreen_imbuf_simple (Scene *scene, struct Object *camera, int width, int height, unsigned int flag, int drawtype, char err_out[256])
BaseED_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)
uint64_t ED_view3d_datamask (struct Scene *scene, struct View3D *v3d)
uint64_t ED_view3d_screen_datamask (struct bScreen *screen)
uint64_t ED_view3d_object_datamask (struct Scene *scene)
int ED_view3d_camera_lock_check (struct View3D *v3d, struct RegionView3D *rv3d)
void ED_view3d_camera_lock_init (struct View3D *v3d, struct RegionView3D *rv3d)
int ED_view3d_camera_lock_sync (struct View3D *v3d, struct RegionView3D *rv3d)
struct BGpicED_view3D_background_image_new (struct View3D *v3d)
void ED_view3D_background_image_remove (struct View3D *v3d, struct BGpic *bgpic)
void ED_view3D_background_image_clear (struct View3D *v3d)

Detailed Description

Definition in file ED_view3d.h.


Define Documentation

#define IS_CLIPPED   12000
#define MAXPICKBUF   10000

Typedef Documentation

typedef enum eV3DClipTest eV3DClipTest
typedef struct ViewContext ViewContext
typedef struct ViewDepths ViewDepths

Enumeration Type Documentation

Enumerator:
V3D_CLIP_TEST_OFF 
V3D_CLIP_TEST_RV3D_CLIPPING 
V3D_CLIP_TEST_REGION 

Definition at line 79 of file ED_view3d.h.


Function Documentation

void drawcircball ( int  mode,
const float  cent[3],
float  rad,
float  tmat[][4] 
)
int ED_operator_rv3d_user_region_poll ( struct bContext C)
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] 
)
int ED_view3d_autodist_depth ( struct ARegion ar,
const int  mval[2],
int  margin,
float *  depth 
)

Definition at line 3459 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 3486 of file view3d_edit.c.

References copy_v2_v2_int(), data, depth_segment_cb(), FLT_MAX, NULL, and plot_line_v2v2i().

Referenced by gp_stroke_newfrombuffer().

int ED_view3d_autodist_init ( struct Scene scene,
struct ARegion ar,
struct View3D v3d,
int  mode 
)

Definition at line 3415 of file view3d_edit.c.

References draw_depth(), draw_depth_gpencil(), and NULL.

Referenced by gp_paint_strokeend(), and gp_stroke_addpoint().

int ED_view3d_autodist_simple ( struct ARegion ar,
const int  mval[2],
float  mouse_worldloc[3],
int  margin,
float *  force_depth 
)
void ED_view3D_background_image_clear ( struct View3D v3d)
struct BGpic* ED_view3D_background_image_new ( struct View3D v3d) [read]
void ED_view3D_background_image_remove ( struct View3D v3d,
struct BGpic bgpic 
)
void ED_view3d_calc_camera_border ( struct Scene scene,
struct ARegion ar,
struct View3D v3d,
struct RegionView3D rv3d,
struct rctf viewborder_r,
short  no_shift 
)
void ED_view3d_calc_camera_border_size ( struct Scene scene,
struct ARegion ar,
struct View3D v3d,
struct RegionView3D rv3d,
float  size_r[2] 
)
void ED_view3d_calc_clipping ( struct BoundBox bb,
float  planes[4][4],
struct bglMats mats,
const struct rcti rect 
)
int ED_view3d_camera_lock_check ( struct View3D v3d,
struct RegionView3D rv3d 
)
void ED_view3d_camera_lock_init ( struct View3D v3d,
struct RegionView3D rv3d 
)
int ED_view3d_camera_lock_sync ( struct View3D v3d,
struct RegionView3D rv3d 
)
int ED_view3d_clip_range_get ( struct View3D v3d,
struct RegionView3D rv3d,
float *  clipsta,
float *  clipend 
)
int ED_view3d_context_activate ( struct bContext C)
struct RegionView3D* ED_view3d_context_rv3d ( struct bContext C) [read]
int ED_view3d_context_user_region ( struct bContext C,
struct View3D **  v3d_r,
struct ARegion **  ar_r 
)
uint64_t ED_view3d_datamask ( struct Scene scene,
struct View3D v3d 
)
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_depth_update ( struct ARegion ar)
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] 
) [read]
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]
void ED_view3d_from_m4 ( float  mat[][4],
float  ofs[3],
float  quat[4],
float *  dist 
)

Set the view transformation from a 4x4 matrix.

Parameters:
matThe view 4x4 transformation matrix to assign.
ofsThe view offset, normally from RegionView3D.ofs.
quatThe view rotation, quaternion normally from RegionView3D.viewquat.
distThe view distance from ofs, normally from RegionView3D.dist.

Definition at line 3511 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.

Parameters:
obThe object to set the view to.
ofsThe view offset to be set, normally from RegionView3D.ofs.
quatThe view rotation to be set, quaternion normally from RegionView3D.viewquat.
distThe view distance from ofs to be set, normally from RegionView3D.dist.
lensThe view lens angle set for cameras and lamps, normally from View3D.lens.

Definition at line 3552 of file view3d_edit.c.

References camera_params_from_object(), camera_params_init(), ED_view3d_from_m4(), CameraParams::lens, and Object::obmat.

Referenced by ED_view3d_camera_lock_init(), obmat_to_viewmat(), smooth_view(), view3d_align_axis_to_vector(), and viewrotate_invoke().

Base* ED_view3d_give_base_under_cursor ( struct bContext C,
const int  mval[2] 
)
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.

Parameters:
rv3dThe region (used for the window width and height).
coordThe world-space location.
vecThe resulting normalized vector.

Definition at line 617 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 
)
void ED_view3d_init_mats_rv3d_gl ( struct Object ob,
struct RegionView3D rv3d 
)

Definition at line 232 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] 
)
int ED_view3d_lock ( struct RegionView3D rv3d)
void ED_view3d_ob_project_mat_get ( struct RegionView3D v3d,
struct Object ob,
float  pmat[4][4] 
)
uint64_t ED_view3d_object_datamask ( struct Scene scene)
float ED_view3d_pixel_size ( struct RegionView3D rv3d,
const float  co[3] 
)
void ED_view3d_project_float ( const struct ARegion a,
const float  vec[3],
float  adr[2],
float  mat[4][4] 
)
void ED_view3d_quadview_update ( struct ScrArea sa,
struct ARegion ar,
short  do_clip 
)
int ED_view3d_scene_layer_set ( int  lay,
const int *  values,
int *  active 
)

Definition at line 1337 of file view3d_view.c.

References i.

uint64_t ED_view3d_screen_datamask ( struct bScreen screen)
int ED_view3d_test_clipping ( struct RegionView3D rv3d,
const float  vec[3],
const int  local 
)
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

Parameters:
matThe view 4x4 transformation matrix to calculate.
ofsThe view offset, normally from RegionView3D.ofs.
quatThe view rotation, quaternion normally from RegionView3D.viewquat.
distThe view distance from ofs, normally from RegionView3D.dist.

Definition at line 3540 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.

Parameters:
obThe object which has the transformation assigned.
ofsThe view offset, normally from RegionView3D.ofs.
quatThe view rotation, quaternion normally from RegionView3D.viewquat.
distThe view distance from ofs, normally from RegionView3D.dist.

Definition at line 3566 of file view3d_edit.c.

References ED_view3d_to_m4(), object_apply_mat4(), and TRUE.

Referenced by ED_view3d_camera_lock_sync(), and view3d_camera_to_view_exec().

int ED_view3d_viewplane_get ( struct View3D v3d,
struct RegionView3D rv3d,
int  winxi,
int  winyi,
struct rctf viewplane,
float *  clipsta,
float *  clipend 
)
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.

Parameters:
arThe region (used for the window width and height).
depth_ptThe reference location used to calculate the Z depth.
mvalThe area relative location (such as event->mval converted to floats).
outThe resulting world-space location.

Definition at line 663 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.

Parameters:
arThe region (used for the window width and height).
mvalThe area relative 2d difference (such as event->mval[0] - other_x).
outThe resulting world-space delta.

Definition at line 695 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.

Parameters:
arThe region (used for the window width and height).
v3dThe 3d viewport (used for near clipping value).
mvalThe area relative 2d location (such as event->mval, converted into float[2]).
ray_startThe world-space starting point of the segment.
ray_normalThe normalized world-space direction of towards mval.

Definition at line 608 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.

Parameters:
arThe region (used for the window width and height).
v3dThe 3d viewport (used for near and far clipping range).
mvalThe area relative 2d location (such as event->mval, converted into float[2]).
ray_startThe world-space starting point of the segment.
ray_endThe world-space end point of the segment.

Definition at line 573 of file view3d_view.c.

References RegionView3D::clip, clip_line_plane(), copy_v3_v3(), ED_view3d_win_to_vector(), View3D::far, RegionView3D::is_persp, madd_v3_v3v3fl(), mul_m4_v4(), View3D::near, RegionView3D::persinv, ARegion::regiondata, RegionView3D::rflag, RV3D_CLIPPING, 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.

Parameters:
arThe region (used for the window width and height).
mvalThe area relative 2d location (such as event->mval converted to floats).
outThe resulting normalized world-space direction vector.

Definition at line 711 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().

int edge_inside_circle ( short  centx,
short  centy,
short  rad,
short  x1,
short  y1,
short  x2,
short  y2 
)
float* give_cursor ( struct Scene scene,
struct View3D v3d 
)
int initgrabz ( struct RegionView3D rv3d,
float  x,
float  y,
float  z 
)
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 
)
void lattice_foreachScreenVert ( struct ViewContext vc,
void(*)(void *userData, struct BPoint *bp, int x, int y)  func,
void *  userData 
)
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,
eV3DClipTest  clipVerts 
)
void mesh_foreachScreenFace ( struct ViewContext vc,
void(*)(void *userData, struct EditFace *efa, int x, int y, int index)  func,
void *  userData 
)
void mesh_foreachScreenVert ( struct ViewContext vc,
void(*)(void *userData, struct EditVert *eve, int x, int y, int index)  func,
void *  userData,
eV3DClipTest  clipVerts 
)
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 
)
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 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_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 view3d_get_transformation ( const struct ARegion ar,
struct RegionView3D rv3d,
struct Object ob,
struct bglMats mats 
)
int view3d_get_view_aligned_coordinate ( struct ViewContext vc,
float  fp[3],
const int  mval[2],
const short  do_fallback 
)
short view3d_opengl_select ( struct ViewContext vc,
unsigned int *  buffer,
unsigned int  bufsize,
rcti input 
)
void view3d_operator_needs_opengl ( const struct bContext C)
struct ImBuf* view3d_read_backbuf ( struct ViewContext vc,
short  xmin,
short  ymin,
short  xmax,
short  ymax 
) [read]
void view3d_region_operator_needs_opengl ( struct wmWindow win,
struct ARegion ar 
)
unsigned int view3d_sample_backbuf ( struct ViewContext vc,
int  x,
int  y 
)
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 
)
void view3d_set_viewcontext ( struct bContext C,
struct ViewContext vc 
)
void view3d_validate_backbuf ( struct ViewContext vc)