58 int place_outside_layer = 0;
69 place_outside_layer = placement == 2;
96 {0,
"FRAME", 0,
"Whole Frame",
"Place markers across the whole frame"},
100 "Inside Annotated Area",
101 "Place markers only inside areas outlined with the Annotation tool"},
105 "Outside Annotated Area",
106 "Place markers only outside areas outlined with the Annotation tool"},
111 ot->
name =
"Detect Features";
112 ot->
description =
"Automatically detect features and place markers to track";
113 ot->
idname =
"CLIP_OT_detect_features";
124 ot->
srna,
"placement", placement_items, 0,
"Placement",
"Placement for detected features");
131 "Only features further than margin pixels from the image "
132 "edges are considered",
141 "Threshold level to consider feature good enough for tracking",
150 "Minimal distance accepted between two features",
struct SpaceClip * CTX_wm_space_clip(const bContext *C)
#define MOVIECLIP_CACHE_SKIP
struct ImBuf * BKE_movieclip_get_ibuf_flag(struct MovieClip *clip, struct MovieClipUser *user, int flag, int cache_flag)
void BKE_report(ReportList *reports, eReportType type, const char *message)
void BKE_tracking_detect_harris(struct MovieTracking *tracking, struct ListBase *tracksbase, struct ImBuf *ibuf, int framenr, int margin, float threshold, int min_distance, struct bGPDlayer *layer, bool place_outside_layer)
struct ListBase * BKE_tracking_get_active_tracks(struct MovieTracking *tracking)
void BKE_tracking_dopesheet_tag_update(struct MovieTracking *tracking)
int ED_space_clip_get_clip_frame_number(struct SpaceClip *sc)
bool ED_space_clip_tracking_poll(struct bContext *C)
struct MovieClip * ED_space_clip_get_clip(struct SpaceClip *sc)
Contains defines and structs used throughout the imbuf module.
void IMB_freeImBuf(ImBuf *UNUSED(ibuf))
ccl_gpu_kernel_postfix ccl_global float int int int int float threshold
int RNA_int_get(PointerRNA *ptr, const char *name)
float RNA_float_get(PointerRNA *ptr, const char *name)
int RNA_enum_get(PointerRNA *ptr, const char *name)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
struct MovieTracking tracking
struct MovieClipUser user
bool(* poll)(struct bContext *) ATTR_WARN_UNUSED_RESULT
int(* exec)(struct bContext *, struct wmOperator *) ATTR_WARN_UNUSED_RESULT
struct ReportList * reports
void CLIP_OT_detect_features(wmOperatorType *ot)
static bGPDlayer * detect_get_layer(MovieClip *clip)
static int detect_features_exec(bContext *C, wmOperator *op)
void ed_tracking_deselect_all_tracks(struct ListBase *tracks_base)
void WM_event_add_notifier(const bContext *C, uint type, void *reference)