| Index: src/pathops/SkPathOpsLine.h
|
| ===================================================================
|
| --- src/pathops/SkPathOpsLine.h (revision 0)
|
| +++ src/pathops/SkPathOpsLine.h (revision 0)
|
| @@ -0,0 +1,35 @@
|
| +/*
|
| + * Copyright 2012 Google Inc.
|
| + *
|
| + * Use of this source code is governed by a BSD-style license that can be
|
| + * found in the LICENSE file.
|
| + */
|
| +#ifndef SkPathOpsLine_DEFINED
|
| +#define SkPathOpsLine_DEFINED
|
| +
|
| +#include "SkPathOpsPoint.h"
|
| +
|
| +struct SkDLine {
|
| + SkDPoint fPts[2];
|
| +
|
| + void set(const SkPoint pts[2]) {
|
| + fPts[0] = pts[0];
|
| + fPts[1] = pts[1];
|
| + }
|
| +
|
| + const SkDPoint& operator[](int n) const { SkASSERT(n >= 0 && n < 2); return fPts[n]; }
|
| + SkDPoint& operator[](int n) { SkASSERT(n >= 0 && n < 2); return fPts[n]; }
|
| +
|
| + double isLeft(const SkDPoint& pt) const;
|
| + SkDLine subDivide(double t1, double t2) const;
|
| + static SkDLine SubDivide(const SkPoint a[2], double t1, double t2) {
|
| + SkDLine line;
|
| + line.set(a);
|
| + return line.subDivide(t1, t2);
|
| + }
|
| + SkDPoint xyAtT(double t) const;
|
| +private:
|
| + SkDVector tangent() const { return fPts[0] - fPts[1]; }
|
| +};
|
| +
|
| +#endif
|
|
|