(points: SplinePoint[], area: ChartArea)
| 159 | } |
| 160 | |
| 161 | function capBezierPoints(points: SplinePoint[], area: ChartArea) { |
| 162 | let i, ilen, point, inArea, inAreaPrev; |
| 163 | let inAreaNext = _isPointInArea(points[0], area); |
| 164 | for (i = 0, ilen = points.length; i < ilen; ++i) { |
| 165 | inAreaPrev = inArea; |
| 166 | inArea = inAreaNext; |
| 167 | inAreaNext = i < ilen - 1 && _isPointInArea(points[i + 1], area); |
| 168 | if (!inArea) { |
| 169 | continue; |
| 170 | } |
| 171 | point = points[i]; |
| 172 | if (inAreaPrev) { |
| 173 | point.cp1x = capControlPoint(point.cp1x, area.left, area.right); |
| 174 | point.cp1y = capControlPoint(point.cp1y, area.top, area.bottom); |
| 175 | } |
| 176 | if (inAreaNext) { |
| 177 | point.cp2x = capControlPoint(point.cp2x, area.left, area.right); |
| 178 | point.cp2y = capControlPoint(point.cp2y, area.top, area.bottom); |
| 179 | } |
| 180 | } |
| 181 | } |
| 182 | |
| 183 | /** |
| 184 | * @private |
no test coverage detected