Blender  V3.3
Functions
tracking_select.c File Reference
#include "MEM_guardedalloc.h"
#include "DNA_movieclip_types.h"
#include "DNA_scene_types.h"
#include "BLI_lasso_2d.h"
#include "BLI_math.h"
#include "BLI_rect.h"
#include "BLI_utildefines.h"
#include "BKE_context.h"
#include "BKE_tracking.h"
#include "WM_api.h"
#include "WM_types.h"
#include "ED_clip.h"
#include "ED_mask.h"
#include "ED_screen.h"
#include "ED_select_utils.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "UI_view2d.h"
#include "DEG_depsgraph.h"
#include "clip_intern.h"
#include "tracking_ops_intern.h"

Go to the source code of this file.

Functions

static float dist_to_crns (const float co[2], const float pos[2], const float crns[4][2])
 
static int mouse_on_side (const float co[2], float x1, float y1, float x2, float y2, float epsx, float epsy)
 
static int mouse_on_rect (const float co[2], const float pos[2], const float min[2], const float max[2], float epsx, float epsy)
 
static int mouse_on_crns (const float co[2], const float pos[2], const float crns[4][2], float epsx, float epsy)
 
static int track_mouse_area (const bContext *C, const float co[2], MovieTrackingTrack *track)
 
static float dist_to_rect (const float co[2], const float pos[2], const float min[2], const float max[2])
 
static float dist_to_crns_abs (const float co[2], const float corners[4][2])
 
static MovieTrackingTrackfind_nearest_track (SpaceClip *sc, ListBase *tracksbase, const float co[2], float *r_distance)
 
static MovieTrackingPlaneTrackfind_nearest_plane_track (SpaceClip *sc, ListBase *plane_tracks_base, const float co[2], float *r_distance)
 
void ed_tracking_deselect_all_tracks (ListBase *tracks_base)
 
void ed_tracking_deselect_all_plane_tracks (ListBase *plane_tracks_base)
 
static bool select_poll (bContext *C)
 
static int select_exec (bContext *C, wmOperator *op)
 
static int select_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
void CLIP_OT_select (wmOperatorType *ot)
 
bool ED_clip_can_select (bContext *C)
 
static int box_select_exec (bContext *C, wmOperator *op)
 
void CLIP_OT_select_box (wmOperatorType *ot)
 
static int do_lasso_select_marker (bContext *C, const int mcoords[][2], const int mcoords_len, bool select)
 
static int clip_lasso_select_exec (bContext *C, wmOperator *op)
 
void CLIP_OT_select_lasso (wmOperatorType *ot)
 
static int point_inside_ellipse (const float point[2], const float offset[2], const float ellipse[2])
 
static int marker_inside_ellipse (MovieTrackingMarker *marker, const float offset[2], const float ellipse[2])
 
static int circle_select_exec (bContext *C, wmOperator *op)
 
void CLIP_OT_select_circle (wmOperatorType *ot)
 
static int select_all_exec (bContext *C, wmOperator *op)
 
void CLIP_OT_select_all (wmOperatorType *ot)
 
static int select_grouped_exec (bContext *C, wmOperator *op)
 
void CLIP_OT_select_grouped (wmOperatorType *ot)
 

Function Documentation

◆ box_select_exec()

static int box_select_exec ( bContext C,
wmOperator op 
)
static

◆ circle_select_exec()

static int circle_select_exec ( bContext C,
wmOperator op 
)
static

◆ clip_lasso_select_exec()

static int clip_lasso_select_exec ( bContext C,
wmOperator op 
)
static

◆ CLIP_OT_select()

void CLIP_OT_select ( wmOperatorType ot)

◆ CLIP_OT_select_all()

void CLIP_OT_select_all ( wmOperatorType ot)

◆ CLIP_OT_select_box()

void CLIP_OT_select_box ( wmOperatorType ot)

◆ CLIP_OT_select_circle()

void CLIP_OT_select_circle ( wmOperatorType ot)

◆ CLIP_OT_select_grouped()

void CLIP_OT_select_grouped ( wmOperatorType ot)

◆ CLIP_OT_select_lasso()

void CLIP_OT_select_lasso ( wmOperatorType ot)

◆ dist_to_crns()

static float dist_to_crns ( const float  co[2],
const float  pos[2],
const float  crns[4][2] 
)
static

Definition at line 153 of file tracking_select.c.

References dist_squared_to_line_segment_v2(), min_ffff(), pos, sqrtf, v1, and v2.

Referenced by find_nearest_track(), and mouse_on_crns().

◆ dist_to_crns_abs()

static float dist_to_crns_abs ( const float  co[2],
const float  corners[4][2] 
)
static

Definition at line 169 of file tracking_select.c.

References dist_squared_to_line_segment_v2(), min_ffff(), sqrtf, v1, and v2.

Referenced by find_nearest_plane_track().

◆ dist_to_rect()

static float dist_to_rect ( const float  co[2],
const float  pos[2],
const float  min[2],
const float  max[2] 
)
static

Definition at line 134 of file tracking_select.c.

References dist_squared_to_line_segment_v2(), max, min, min_ffff(), pos, sqrtf, v1, and v2.

Referenced by find_nearest_track().

◆ do_lasso_select_marker()

static int do_lasso_select_marker ( bContext C,
const int  mcoords[][2],
const int  mcoords_len,
bool  select 
)
static

◆ ED_clip_can_select()

bool ED_clip_can_select ( bContext C)

Definition at line 465 of file tracking_select.c.

References C, and select_poll().

◆ ed_tracking_deselect_all_plane_tracks()

void ed_tracking_deselect_all_plane_tracks ( ListBase plane_tracks_base)

◆ ed_tracking_deselect_all_tracks()

void ed_tracking_deselect_all_tracks ( ListBase tracks_base)

◆ find_nearest_plane_track()

static MovieTrackingPlaneTrack* find_nearest_plane_track ( SpaceClip sc,
ListBase plane_tracks_base,
const float  co[2],
float r_distance 
)
static

◆ find_nearest_track()

static MovieTrackingTrack* find_nearest_track ( SpaceClip sc,
ListBase tracksbase,
const float  co[2],
float r_distance 
)
static

◆ marker_inside_ellipse()

static int marker_inside_ellipse ( MovieTrackingMarker marker,
const float  offset[2],
const float  ellipse[2] 
)
static

Definition at line 723 of file tracking_select.c.

References offset, point_inside_ellipse(), and MovieTrackingMarker::pos.

Referenced by circle_select_exec().

◆ mouse_on_crns()

static int mouse_on_crns ( const float  co[2],
const float  pos[2],
const float  crns[4][2],
float  epsx,
float  epsy 
)
static

Definition at line 74 of file tracking_select.c.

References dist_to_crns(), max_ff(), and pos.

Referenced by track_mouse_area().

◆ mouse_on_rect()

static int mouse_on_rect ( const float  co[2],
const float  pos[2],
const float  min[2],
const float  max[2],
float  epsx,
float  epsy 
)
static

Definition at line 57 of file tracking_select.c.

References max, min, mouse_on_side(), and pos.

Referenced by track_mouse_area().

◆ mouse_on_side()

static int mouse_on_side ( const float  co[2],
float  x1,
float  y1,
float  x2,
float  y2,
float  epsx,
float  epsy 
)
static

Definition at line 43 of file tracking_select.c.

References SWAP, x2, and y1.

Referenced by mouse_on_rect().

◆ point_inside_ellipse()

static int point_inside_ellipse ( const float  point[2],
const float  offset[2],
const float  ellipse[2] 
)
static

Definition at line 710 of file tracking_select.c.

References offset, point, x, and y.

Referenced by circle_select_exec(), and marker_inside_ellipse().

◆ select_all_exec()

static int select_all_exec ( bContext C,
wmOperator op 
)
static

◆ select_exec()

static int select_exec ( bContext C,
wmOperator op 
)
static

◆ select_grouped_exec()

static int select_grouped_exec ( bContext C,
wmOperator op 
)
static

◆ select_invoke()

static int select_invoke ( bContext C,
wmOperator op,
const wmEvent event 
)
static

◆ select_poll()

static bool select_poll ( bContext C)
static

◆ track_mouse_area()

static int track_mouse_area ( const bContext C,
const float  co[2],
MovieTrackingTrack track 
)
static