Searched refs:tangent (Results 1 - 17 of 17) sorted by relevance

/external/skia/tests/
H A DPathMeasureTest.cpp115 SkVector tangent; local
116 REPORTER_ASSERT(reporter, meas.getPosTan(SK_ScalarHalf, &position, &tangent));
122 REPORTER_ASSERT(reporter, tangent.fX == -SK_Scalar1);
123 REPORTER_ASSERT(reporter, tangent.fY == 0);
141 REPORTER_ASSERT(reporter, meas.getPosTan(SK_ScalarHalf, &position, &tangent));
147 REPORTER_ASSERT(reporter, tangent.fX == SK_Scalar1);
148 REPORTER_ASSERT(reporter, tangent.fY == 0);
149 REPORTER_ASSERT(reporter, meas.getPosTan(2.5f, &position, &tangent));
154 REPORTER_ASSERT(reporter, tangent.fX == 0);
155 REPORTER_ASSERT(reporter, tangent
[all...]
/external/vulkan-validation-layers/libs/glm/gtx/
H A Dhanded_coordinate_space.hpp57 detail::tvec3<T, P> const & tangent,
65 detail::tvec3<T, P> const & tangent,
/external/skia/src/effects/
H A DSkDashPathEffect.cpp204 SkVector tangent = pts[1] - pts[0]; local
205 if (tangent.isZero()) {
209 tangent.scale(SkScalarInvert(length));
213 if (SkScalarNearlyEqual(SK_Scalar1, tangent.fX) ||
214 SkScalarNearlyEqual(-SK_Scalar1, tangent.fX)) {
216 } else if (SkScalarNearlyEqual(SK_Scalar1, tangent.fY) ||
217 SkScalarNearlyEqual(-SK_Scalar1, tangent.fY)) {
277 SkScalar x = pts[0].fX + SkScalarMul(tangent.fX, SkScalarHalf(clampedInitialDashLength));
278 SkScalar y = pts[0].fY + SkScalarMul(tangent.fY, SkScalarHalf(clampedInitialDashLength));
310 SkScalar x = pts[0].fX + SkScalarMul(tangent
[all...]
H A DSkDiscretePathEffect.cpp16 static void Perterb(SkPoint* p, const SkVector& tangent, SkScalar scale) { argument
17 SkVector normal = tangent;
H A DSk1DPathEffect.cpp80 SkVector tangent; local
85 if (!meas.getPosTan(dist + sx, &pos, &tangent)) {
93 matrix.setSinCos(tangent.fY, tangent.fX, 0, 0);
/external/mesa3d/src/gallium/state_trackers/vega/
H A Dbezier.h74 float *tangent);
H A Dbezier.c621 float *tangent)
623 tangent[0] = bez->x1;
624 tangent[1] = bez->y1;
625 tangent[2] = bez->x2;
626 tangent[3] = bez->y2;
628 if (null_line(tangent)) {
629 tangent[0] = bez->x1;
630 tangent[1] = bez->y1;
631 tangent[2] = bez->x3;
632 tangent[
620 bezier_start_tangent(const struct bezier *bez, float *tangent) argument
[all...]
H A Dstroker.c963 VGfloat tangent[4]; local
966 bezier_start_tangent(&bezier, tangent);
967 line_translate(tangent,
975 create_joins(stroker, prev[0], prev[1], tangent,
980 start_tangent[0] = tangent[0];
981 start_tangent[1] = tangent[1];
982 start_tangent[2] = tangent[2];
983 start_tangent[3] = tangent[3];
986 create_joins(stroker, prev[0], prev[1], tangent,
/external/skia/src/core/
H A DSkPathMeasure.cpp350 SkScalar t, SkPoint* pos, SkVector* tangent) {
357 if (tangent) {
358 tangent->setNormalize(pts[1].fX - pts[0].fX, pts[1].fY - pts[0].fY);
362 SkEvalQuadAt(pts, t, pos, tangent);
363 if (tangent) {
364 tangent->normalize();
368 SkConic(pts[0], pts[2], pts[3], pts[1].fX).evalAt(t, pos, tangent);
369 if (tangent) {
370 tangent->normalize();
374 SkEvalCubicAt(pts, t, pos, tangent, nullpt
[all...]
H A DSkScan_Hairline.cpp410 /* Extend the points in the direction of the starting or ending tangent by 1/2 unit to
412 the control point, use the next control point to create a tangent. If the curve
423 SkVector tangent;
425 tangent = *first - *++ctrl;
426 } while (tangent.isZero() && --controls > 0);
427 if (tangent.isZero()) {
428 tangent.set(1, 0);
431 tangent.normalize();
434 first->fX += tangent.fX * capOutset;
435 first->fY += tangent
[all...]
H A DSkGeometry.cpp107 void SkEvalQuadAt(const SkPoint src[3], SkScalar t, SkPoint* pt, SkVector* tangent) { argument
114 if (tangent) {
115 *tangent = SkEvalQuadTangentAt(src, t);
125 // zero tangent vector when t is 0 or 1, and the control point is equal
126 // to the end point. In this case, use the quad end points to compute the tangent.
344 SkVector* tangent, SkVector* curvature) {
355 if (tangent) {
356 // The derivative equation returns a zero tangent vector when t is 0 or 1, and the
358 // next control point or the end points to compute the tangent.
361 *tangent
[all...]
H A DSkStroke.cpp81 SkPoint fTangentStart; // a point tangent to fQuad[0]
82 SkPoint fTangentEnd; // a point tangent to fQuad[2]
205 SkPoint* tangent) const;
210 SkPoint* tangent) const;
218 SkPoint* tangent) const;
229 void setRayPts(const SkPoint& tPt, SkVector* dxy, SkPoint* onPt, SkPoint* tangent) const;
738 // compute the perpendicular point and its tangent.
740 SkPoint* tangent) const {
752 if (tangent) {
753 tangent
[all...]
H A DSkDevice.cpp289 SkVector tangent; local
295 if (!meas.getPosTan(sx, &pos, &tangent)) {
297 tangent.set(0, 0);
305 matrix.setSinCos(tangent.fY, tangent.fX);
310 dst[i].set(pos.fX - SkScalarMul(tangent.fY, sy),
311 pos.fY + SkScalarMul(tangent.fX, sy));
H A DSkGeometry.h41 void SkEvalQuadAt(const SkPoint src[3], SkScalar t, SkPoint* pt, SkVector* tangent = nullptr);
211 * Given a t-value [0...1] return its position and/or tangent.
213 * If tangent is not null, return its tangent at the t-value. NOTE the
214 * tangent value's length is arbitrary, and only its direction should
217 void evalAt(SkScalar t, SkPoint* pos, SkVector* tangent = nullptr) const;
H A DSkPath.cpp1442 // need to know our prev pt so we can construct tangent vectors
3044 SkVector tangent; local
3045 SkEvalCubicAt(c, t, nullptr, &tangent, nullptr);
3046 tangents->push(tangent);
3210 const SkVector& tangent = tangents[last]; local
3211 if (SkScalarNearlyZero(tangent.lengthSqd())) {
3216 if (SkScalarNearlyZero(test.cross(tangent))
3217 && SkScalarSignAsInt(tangent.fX * test.fX) <= 0
3218 && SkScalarSignAsInt(tangent.fY * test.fY) <= 0) {
/external/skia/gm/
H A Dstrokes.cpp248 SkVector tangent = pts[1] - pts[2]; local
249 tangent.normalize();
253 pts2[0].fX += tangent.fX * capOutset;
254 pts2[0].fY += tangent.fY * capOutset;
255 pts2[1].fX += tangent.fX * capOutset;
256 pts2[1].fY += tangent.fY * capOutset;
257 pts2[2].fX += -tangent.fX * capOutset;
258 pts2[2].fY += -tangent.fY * capOutset;
/external/skia/include/core/
H A DSkPathMeasure.h43 the corresponding position and tangent.
45 position and tangent are unchanged.
48 SkVector* tangent);

Completed in 877 milliseconds