Lines Matching defs:spans
162 /* Ignore pressure spans with cumulative press. below this value. */
165 /* Maximum allowed width for pressure-spans.*/
293 * pressure spans along the two axes.
644 * For these, there is the need to track pressure-spans and cumulative
1013 /* Get pressure readings and detect p-spans for both axes. */
1161 fg_pspan *spans, /* finger spans */
1162 u_int *nspans_p) /* num spans detected */
1178 memset(spans, 0, max_spans * sizeof(fg_pspan));
1232 spans[num_spans].width++;
1233 spans[num_spans].cum += p[i];
1234 spans[num_spans].cog += p[i] * (i + 1);
1240 /* post-process the spans */
1242 /* filter away unwanted pressure spans */
1243 if ((spans[i].cum < FG_PSPAN_MIN_CUM_PRESSURE) ||
1244 (spans[i].width > FG_PSPAN_MAX_WIDTH)) {
1246 memcpy(&spans[i], &spans[i + 1],
1255 spans[i].loc = spans[i].cog * FG_SCALE_FACTOR /
1256 spans[i].cum;
1258 spans[i].matched = false; /* not yet matched against a stroke */
1486 * Update strokes by matching against current pressure-spans.
1631 * Update strokes by matching against current pressure-spans.
1713 fg_pspan spans[2][FG_MAX_PSPANS_PER_AXIS];
1721 spans[X][nspans[X]] = pspans_x[i];
1727 spans[Y][nspans[Y]] = pspans_y[j];
1735 fg_add_stroke(sc, &spans[X][i], &spans[Y][j]);
1745 if (spans[repeat_axis][i].cum > cum) {
1747 cum = spans[repeat_axis][i].cum;
1754 fg_add_stroke(sc, &spans[X][i], &spans[Y][j]);