Blender V4.3
tracking_select.cc File Reference
#include "MEM_guardedalloc.h"
#include "DNA_movieclip_types.h"
#include "DNA_scene_types.h"
#include "BLI_lasso_2d.hh"
#include "BLI_listbase.h"
#include "BLI_math_base.hh"
#include "BLI_math_geom.h"
#include "BLI_math_vector.h"
#include "BLI_math_vector_types.hh"
#include "BLI_rect.h"
#include "BLI_utildefines.h"
#include "BKE_context.hh"
#include "BKE_tracking.h"
#include "WM_api.hh"
#include "WM_types.hh"
#include "ED_clip.hh"
#include "ED_select_utils.hh"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "UI_view2d.hh"
#include "DEG_depsgraph.hh"
#include "clip_intern.hh"
#include "tracking_ops_intern.hh"

Go to the source code of this file.

Functions

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 Span< int2 > mcoords, 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 (const 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)
 
Point track marker picking.
BLI_INLINE PointTrackPick point_track_pick_make_null ()
 
static void slide_marker_tilt_slider_relative (const float pattern_corners[4][2], float r_slider[2])
 
static void slide_marker_tilt_slider (const float marker_pos[2], const float pattern_corners[4][2], float r_slider[2])
 
static float mouse_to_slide_zone_distance_squared (const float co[2], const float slide_zone[2], int width, int height)
 
static float mouse_to_search_corner_distance_squared (const MovieTrackingMarker *marker, const float co[2], int corner, int width, int height)
 
static float mouse_to_closest_pattern_corner_distance_squared (const MovieTrackingMarker *marker, const float co[2], int width, int height, int *r_corner)
 
static float mouse_to_offset_distance_squared (const MovieTrackingTrack *track, const MovieTrackingMarker *marker, const float co[2], int width, int height)
 
static float mouse_to_tilt_distance_squared (const MovieTrackingMarker *marker, const float co[2], int width, int height)
 
static float mouse_to_closest_corners_edge_distance_squared (const float co[2], const float corners_offset[2], const float corners[4][2], int width, int height)
 
static float mouse_to_closest_pattern_edge_distance_squared (const MovieTrackingMarker *marker, const float co[2], int width, int height)
 
static float mouse_to_closest_search_edge_distance_squared (const MovieTrackingMarker *marker, const float co[2], int width, int height)
 
PointTrackPick ed_tracking_pick_point_track (const TrackPickOptions *options, bContext *C, const float co[2])
 
bool ed_tracking_point_track_pick_can_slide (const SpaceClip *space_clip, const PointTrackPick *pick)
 
Plane track marker picking.
BLI_INLINE PlaneTrackPick plane_track_pick_make_null ()
 
static float mouse_to_plane_slide_zone_distance_squared (const float co[2], const float slide_zone[2], int width, int height)
 
PlaneTrackPick ed_tracking_pick_plane_track (const TrackPickOptions *options, bContext *C, const float co[2])
 
bool ed_tracking_plane_track_pick_can_slide (const PlaneTrackPick *pick)
 
Pick closest point or plane track.
BLI_INLINE TrackingPick tracking_pick_make_null ()
 
static bool tracking_should_prefer_point_track (bContext *C, const PointTrackPick *point_track_pick, const PlaneTrackPick *plane_track_pick)
 
TrackingPick ed_tracking_pick_closest (const TrackPickOptions *options, bContext *C, const float co[2])
 

Function Documentation

◆ box_select_exec()

◆ circle_select_exec()

◆ clip_lasso_select_exec()

◆ CLIP_OT_select()

◆ CLIP_OT_select_all()

◆ CLIP_OT_select_box()

◆ CLIP_OT_select_circle()

◆ CLIP_OT_select_grouped()

◆ CLIP_OT_select_lasso()

◆ do_lasso_select_marker()

◆ ED_clip_can_select()

bool ED_clip_can_select ( bContext * C)

Definition at line 720 of file tracking_select.cc.

References select_poll().

◆ ed_tracking_deselect_all_plane_tracks()

void ed_tracking_deselect_all_plane_tracks ( ListBase * plane_tracks_base)

Definition at line 542 of file tracking_select.cc.

References LISTBASE_FOREACH.

Referenced by select_exec().

◆ ed_tracking_deselect_all_tracks()

void ed_tracking_deselect_all_tracks ( ListBase * tracks_base)

◆ ed_tracking_pick_closest()

◆ ed_tracking_pick_plane_track()

◆ ed_tracking_pick_point_track()

◆ ed_tracking_plane_track_pick_can_slide()

◆ ed_tracking_point_track_pick_can_slide()

◆ marker_inside_ellipse()

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

Definition at line 969 of file tracking_select.cc.

References point_inside_ellipse(), and MovieTrackingMarker::pos.

Referenced by circle_select_exec().

◆ mouse_to_closest_corners_edge_distance_squared()

static float mouse_to_closest_corners_edge_distance_squared ( const float co[2],
const float corners_offset[2],
const float corners[4][2],
int width,
int height )
static

◆ mouse_to_closest_pattern_corner_distance_squared()

static float mouse_to_closest_pattern_corner_distance_squared ( const MovieTrackingMarker * marker,
const float co[2],
int width,
int height,
int * r_corner )
static

◆ mouse_to_closest_pattern_edge_distance_squared()

static float mouse_to_closest_pattern_edge_distance_squared ( const MovieTrackingMarker * marker,
const float co[2],
int width,
int height )
static

◆ mouse_to_closest_search_edge_distance_squared()

static float mouse_to_closest_search_edge_distance_squared ( const MovieTrackingMarker * marker,
const float co[2],
int width,
int height )
static

◆ mouse_to_offset_distance_squared()

static float mouse_to_offset_distance_squared ( const MovieTrackingTrack * track,
const MovieTrackingMarker * marker,
const float co[2],
int width,
int height )
static

◆ mouse_to_plane_slide_zone_distance_squared()

static float mouse_to_plane_slide_zone_distance_squared ( const float co[2],
const float slide_zone[2],
int width,
int height )
static

Definition at line 376 of file tracking_select.cc.

References square_f().

Referenced by ed_tracking_pick_plane_track().

◆ mouse_to_search_corner_distance_squared()

static float mouse_to_search_corner_distance_squared ( const MovieTrackingMarker * marker,
const float co[2],
int corner,
int width,
int height )
static

◆ mouse_to_slide_zone_distance_squared()

static float mouse_to_slide_zone_distance_squared ( const float co[2],
const float slide_zone[2],
int width,
int height )
static

◆ mouse_to_tilt_distance_squared()

static float mouse_to_tilt_distance_squared ( const MovieTrackingMarker * marker,
const float co[2],
int width,
int height )
static

◆ plane_track_pick_make_null()

◆ point_inside_ellipse()

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

Definition at line 956 of file tracking_select.cc.

References x, and y.

Referenced by circle_select_exec(), and marker_inside_ellipse().

◆ point_track_pick_make_null()

◆ select_all_exec()

◆ select_exec()

◆ select_grouped_exec()

◆ select_invoke()

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

◆ select_poll()

static bool select_poll ( bContext * C)
static

◆ slide_marker_tilt_slider()

static void slide_marker_tilt_slider ( const float marker_pos[2],
const float pattern_corners[4][2],
float r_slider[2] )
static

Definition at line 69 of file tracking_select.cc.

References add_v2_v2(), and slide_marker_tilt_slider_relative().

Referenced by mouse_to_tilt_distance_squared().

◆ slide_marker_tilt_slider_relative()

static void slide_marker_tilt_slider_relative ( const float pattern_corners[4][2],
float r_slider[2] )
static

Definition at line 64 of file tracking_select.cc.

References add_v2_v2v2().

Referenced by slide_marker_tilt_slider().

◆ tracking_pick_make_null()

◆ tracking_should_prefer_point_track()