OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above | 8 * 1. Redistributions of source code must retain the above |
9 * copyright notice, this list of conditions and the following | 9 * copyright notice, this list of conditions and the following |
10 * disclaimer. | 10 * disclaimer. |
11 * 2. Redistributions in binary form must reproduce the above | 11 * 2. Redistributions in binary form must reproduce the above |
12 * copyright notice, this list of conditions and the following | 12 * copyright notice, this list of conditions and the following |
13 * disclaimer in the documentation and/or other materials | 13 * disclaimer in the documentation and/or other materials |
14 * provided with the distribution. | 14 * provided with the distribution. |
15 * | 15 * |
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | 16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | 17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS | 18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
19 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE | 19 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
20 * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | 20 * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
21 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 21 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
23 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | 23 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, | 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
25 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | 25 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED | 26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED |
27 * OF THE POSSIBILITY OF SUCH DAMAGE. | 27 * OF THE POSSIBILITY OF SUCH DAMAGE. |
28 */ | 28 */ |
29 | 29 |
30 #include "config.h" | |
31 #include "core/layout/shapes/RectangleShape.h" | 30 #include "core/layout/shapes/RectangleShape.h" |
32 | 31 |
33 #include "wtf/MathExtras.h" | 32 #include "wtf/MathExtras.h" |
34 | 33 |
35 namespace blink { | 34 namespace blink { |
36 | 35 |
37 static inline float ellipseXIntercept(float y, float rx, float ry) | 36 static inline float ellipseXIntercept(float y, float rx, float ry) |
38 { | 37 { |
39 ASSERT(ry > 0); | 38 ASSERT(ry > 0); |
40 return rx * sqrt(1 - (y * y) / (ry * ry)); | 39 return rx * sqrt(1 - (y * y) / (ry * ry)); |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 } | 88 } |
90 | 89 |
91 void RectangleShape::buildDisplayPaths(DisplayPaths& paths) const | 90 void RectangleShape::buildDisplayPaths(DisplayPaths& paths) const |
92 { | 91 { |
93 paths.shape.addRoundedRect(m_bounds, m_radii); | 92 paths.shape.addRoundedRect(m_bounds, m_radii); |
94 if (shapeMargin()) | 93 if (shapeMargin()) |
95 paths.marginShape.addRoundedRect(shapeMarginBounds(), FloatSize(m_radii.
width() + shapeMargin(), m_radii.height() + shapeMargin())); | 94 paths.marginShape.addRoundedRect(shapeMarginBounds(), FloatSize(m_radii.
width() + shapeMargin(), m_radii.height() + shapeMargin())); |
96 } | 95 } |
97 | 96 |
98 } // namespace blink | 97 } // namespace blink |
OLD | NEW |