| 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 #include "SkBuffer.h" | 8 #include "SkBuffer.h" |
| 9 #include "SkCubicClipper.h" | 9 #include "SkCubicClipper.h" |
| 10 #include "SkErrorInternals.h" | 10 #include "SkErrorInternals.h" |
| (...skipping 1166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1177 *verbs == kQuad_Verb || | 1177 *verbs == kQuad_Verb || |
| 1178 *verbs == kConic_Verb || | 1178 *verbs == kConic_Verb || |
| 1179 *verbs == kCubic_Verb) { | 1179 *verbs == kCubic_Verb) { |
| 1180 return false; | 1180 return false; |
| 1181 } | 1181 } |
| 1182 ++verbs; | 1182 ++verbs; |
| 1183 } | 1183 } |
| 1184 return true; | 1184 return true; |
| 1185 } | 1185 } |
| 1186 | 1186 |
| 1187 bool SkPath::isZeroLength() const { |
| 1188 int count = fPathRef->countPoints(); |
| 1189 if (count < 2) { |
| 1190 return true; |
| 1191 } |
| 1192 const SkPoint* pts = fPathRef.get()->points(); |
| 1193 const SkPoint& first = *pts; |
| 1194 for (int index = 1; index < count; ++index) { |
| 1195 if (first != pts[index]) { |
| 1196 return false; |
| 1197 } |
| 1198 } |
| 1199 return true; |
| 1200 } |
| 1201 |
| 1187 void SkPath::addRoundRect(const SkRect& rect, SkScalar rx, SkScalar ry, | 1202 void SkPath::addRoundRect(const SkRect& rect, SkScalar rx, SkScalar ry, |
| 1188 Direction dir) { | 1203 Direction dir) { |
| 1189 assert_known_direction(dir); | 1204 assert_known_direction(dir); |
| 1190 | 1205 |
| 1191 if (rx < 0 || ry < 0) { | 1206 if (rx < 0 || ry < 0) { |
| 1192 SkErrorInternals::SetError( kInvalidArgument_SkError, | 1207 SkErrorInternals::SetError( kInvalidArgument_SkError, |
| 1193 "I got %f and %f as radii to SkPath::AddRoun
dRect, " | 1208 "I got %f and %f as radii to SkPath::AddRoun
dRect, " |
| 1194 "but negative radii are not allowed.", | 1209 "but negative radii are not allowed.", |
| 1195 SkScalarToDouble(rx), SkScalarToDouble(ry) )
; | 1210 SkScalarToDouble(rx), SkScalarToDouble(ry) )
; |
| 1196 return; | 1211 return; |
| (...skipping 2013 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3210 } | 3225 } |
| 3211 } while (!done); | 3226 } while (!done); |
| 3212 return SkToBool(tangents.count()) ^ isInverse; | 3227 return SkToBool(tangents.count()) ^ isInverse; |
| 3213 } | 3228 } |
| 3214 | 3229 |
| 3215 int SkPath::ConvertConicToQuads(const SkPoint& p0, const SkPoint& p1, const SkPo
int& p2, | 3230 int SkPath::ConvertConicToQuads(const SkPoint& p0, const SkPoint& p1, const SkPo
int& p2, |
| 3216 SkScalar w, SkPoint pts[], int pow2) { | 3231 SkScalar w, SkPoint pts[], int pow2) { |
| 3217 const SkConic conic(p0, p1, p2, w); | 3232 const SkConic conic(p0, p1, p2, w); |
| 3218 return conic.chopIntoQuadsPOW2(pts, pow2); | 3233 return conic.chopIntoQuadsPOW2(pts, pow2); |
| 3219 } | 3234 } |
| OLD | NEW |