101 output[0] = ((mval[0] - mi->
imval[0]) / winx) * 2.0f;
107 const double mval[2],
123 output[0] = ((mval[1] - mi->
imval[1]) / winy) * 2.0f;
129 const double mval[2],
144 const double mval[2],
150 const int *data =
static_cast<const int *
>(mi->
data);
154 dx = data[2] - data[0];
155 dy = data[3] - data[1];
157 length = hypot(dx, dy);
159 mdx = mval[0] - data[2];
160 mdy = mval[1] - data[3];
162 distance = (length != 0.0) ? (mdx * dx + mdy * dy) /
length : 0.0;
164 output[0] = (length != 0.0) ?
double(distance / length) : 0.0;
172 output[0] = -output[0];
184 float dir_prev[2], dir_curr[2], mi_center[2];
200 data->mval_prev[0] = mval[0];
201 data->mval_prev[1] = mval[1];
204 output[0] = data->angle;
214 output[1] = toutput[0];
228 const int mval_start[2],
229 const int mval_end[2])
235 data =
static_cast<int *
>(mi->
data);
237 data[0] = mval_start[0];
238 data[1] = mval_start[1];
239 data[2] = mval_end[0];
240 data[3] = mval_end[1];
269 data->mval_prev[1] = mi->
imval[1];
318 if (strips.
size() == 1) {
321 if (strips.
size() == 2) {
354 void *mi_data_prev = mi->
data;
387 data->mval_prev[1] = mi->
imval[1];
453 if (sseq !=
nullptr) {
454 sseq->
flag &= ~SPACE_SEQ_DESELECT_STRIP_HANDLE;
477 if (mi_data_prev && (mi_data_prev != mi->
data)) {
493 double mval_delta[2];
513 mval_db[0] = mval[0];
514 mval_db[1] = mval[1];
517 if (mi->
apply !=
nullptr) {
518 mi->
apply(t, mi, mval_db, output);
539 double mval_delta[2];
541 mval_delta[0] *= fac;
542 mval_delta[1] *= fac;
548 float offset_center[2];
552 data->mval_prev[1] += offset_center[1];
569 data->mval_prev[0] = mi->
imval[0];
570 data->mval_prev[1] = mi->
imval[1];
wmWindow * CTX_wm_window(const bContext *C)
SpaceSeq * CTX_wm_space_seq(const bContext *C)
#define BLI_ASSERT_UNIT_V2(v)
MINLINE float len_v2(const float v[2]) ATTR_WARN_UNUSED_RESULT
float angle_normalized_v2v2(const float a[2], const float b[2]) ATTR_WARN_UNUSED_RESULT
MINLINE void copy_v2_v2_db(double r[2], const double a[2])
MINLINE void copy_v2_v2(float r[2], const float a[2])
void project_v3_v3v3(float out[3], const float p[3], const float v_proj[3])
MINLINE float dot_v3v3(const float a[3], const float b[3]) ATTR_WARN_UNUSED_RESULT
MINLINE float cross_v2v2(const float a[2], const float b[2]) ATTR_WARN_UNUSED_RESULT
MINLINE void sub_v2_v2v2(float r[2], const float a[2], const float b[2])
MINLINE float normalize_v2(float n[2])
MINLINE void add_v2_v2_db(double r[2], const double a[2])
MINLINE void sub_v2_v2v2_db(double r[2], const double a[2], const double b[2])
typedef double(DMatrix)[4][4]
@ USER_SEQ_ED_SIMPLE_TWEAKING
blender::VectorSet< Sequence * > ED_sequencer_selected_strips_from_context(bContext *C)
Read Guarded memory(de)allocation.
#define MEM_reallocN(vmemh, len)
SIMD_FORCE_INLINE btScalar length() const
Return the length of the vector.
draw_view in_light_buf[] float
void MEM_freeN(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
VecBase< int32_t, 2 > int2
float distance(float a, float b)
int SEQ_time_left_handle_frame_get(const Scene *, const Sequence *seq)
int SEQ_time_right_handle_frame_get(const Scene *scene, const Sequence *seq)
ccl_device_inline int abs(int x)
void WM_cursor_modal_set(wmWindow *win, int val)