TracerPoint(float x, float y);
~TracerPoint();
+ void update_parameter(TracerPoint *prev, TracerPoint *src);
};
class TracerPoints : public ArrayList<TracerPoint *>
{
~TracerConfig();
int equivalent(TracerConfig &that);
+ void save_data(KeyFrame *keyframe);
+ void read_data(KeyFrame *keyframe);
void copy_from(TracerConfig &that);
void interpolate(TracerConfig &prev, TracerConfig &next,
long prev_frame, long next_frame, long current_frame);
int add_point();
void del_point(int i);
- int drag, draw, fill;
- int radius;
- double scale;
- int selected;
+ int draw, fill;
+ int invert, feather;
+ float radius;
};
class TracePoint
PLUGIN_CLASS_MEMBERS2(TracerConfig)
int is_realtime();
void update_gui();
+ void render_gui(void *data);
+ int is_dragging();
int new_point();
void save_data(KeyFrame *keyframe);
void read_data(KeyFrame *keyframe);
int smooth();
void feather(int r, double s);
int load_configuration1();
+ void span_keyframes(KeyFrame *src, int64_t start, int64_t end);
+ void update_parameter(TracerPoint *prev, TracerPoint *src);
+ void update_parameter(TracerConfig &prev_config, TracerConfig &src_config,
+ KeyFrame *keyframe);
VFrame *edg, *msk, *frm;
uint8_t **edg_rows;
int color_model, bpp;
int is_float, is_yuv, has_alpha;
int comps, comp;
+ int drag, selected;
};
#endif