OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2006 The Android Open Source Project | 2 * Copyright 2006 The Android Open Source Project |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef Sk1DPathEffect_DEFINED | 8 #ifndef Sk1DPathEffect_DEFINED |
9 #define Sk1DPathEffect_DEFINED | 9 #define Sk1DPathEffect_DEFINED |
10 | 10 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 kStyleCount | 45 kStyleCount |
46 }; | 46 }; |
47 | 47 |
48 /** Dash by replicating the specified path. | 48 /** Dash by replicating the specified path. |
49 @param path The path to replicate (dash) | 49 @param path The path to replicate (dash) |
50 @param advance The space between instances of path | 50 @param advance The space between instances of path |
51 @param phase distance (mod advance) along path for its initial position | 51 @param phase distance (mod advance) along path for its initial position |
52 @param style how to transform path at each point (based on the current | 52 @param style how to transform path at each point (based on the current |
53 position and tangent) | 53 position and tangent) |
54 */ | 54 */ |
55 SkPath1DPathEffect(const SkPath& path, SkScalar advance, SkScalar phase, Sty
le); | 55 static SkPath1DPathEffect* Create(const SkPath& path, SkScalar advance, SkSc
alar phase, |
| 56 Style style) { |
| 57 return SkNEW_ARGS(SkPath1DPathEffect, (path, advance, phase, style)); |
| 58 } |
56 | 59 |
57 virtual bool filterPath(SkPath*, const SkPath&, | 60 virtual bool filterPath(SkPath*, const SkPath&, |
58 SkStrokeRec*, const SkRect*) const SK_OVERRIDE; | 61 SkStrokeRec*, const SkRect*) const SK_OVERRIDE; |
59 | 62 |
60 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkPath1DPathEffect) | 63 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkPath1DPathEffect) |
61 | 64 |
62 protected: | 65 protected: |
63 SkPath1DPathEffect(SkReadBuffer& buffer); | 66 SkPath1DPathEffect(SkReadBuffer& buffer); |
64 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; | 67 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; |
65 | 68 |
66 // overrides from Sk1DPathEffect | 69 // overrides from Sk1DPathEffect |
67 virtual SkScalar begin(SkScalar contourLength) const SK_OVERRIDE; | 70 virtual SkScalar begin(SkScalar contourLength) const SK_OVERRIDE; |
68 virtual SkScalar next(SkPath*, SkScalar, SkPathMeasure&) const SK_OVERRIDE; | 71 virtual SkScalar next(SkPath*, SkScalar, SkPathMeasure&) const SK_OVERRIDE; |
69 | 72 |
| 73 #ifdef SK_SUPPORT_LEGACY_PUBLICEFFECTCONSTRUCTORS |
| 74 public: |
| 75 #endif |
| 76 SkPath1DPathEffect(const SkPath& path, SkScalar advance, SkScalar phase, Sty
le); |
| 77 |
70 private: | 78 private: |
71 SkPath fPath; // copied from constructor | 79 SkPath fPath; // copied from constructor |
72 SkScalar fAdvance; // copied from constructor | 80 SkScalar fAdvance; // copied from constructor |
73 SkScalar fInitialOffset; // computed from phase | 81 SkScalar fInitialOffset; // computed from phase |
74 Style fStyle; // copied from constructor | 82 Style fStyle; // copied from constructor |
75 | 83 |
76 typedef Sk1DPathEffect INHERITED; | 84 typedef Sk1DPathEffect INHERITED; |
77 }; | 85 }; |
78 | 86 |
79 #endif | 87 #endif |
OLD | NEW |