blob: 81799c8a9576220b7c474678ca1a113f3e5c9d99 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// https://html.spec.whatwg.org/multipage/scripting.html#canvaspath
[
NoInterfaceObject // Always used on target of 'implements'
] interface CanvasPath {
// shared path API methods
void closePath();
void moveTo(unrestricted float x, unrestricted float y);
void lineTo(unrestricted float x, unrestricted float y);
void quadraticCurveTo(unrestricted float cpx, unrestricted float cpy, unrestricted float x, unrestricted float y);
void bezierCurveTo(unrestricted float cp1x, unrestricted float cp1y, unrestricted float cp2x, unrestricted float cp2y, unrestricted float x, unrestricted float y);
[RaisesException] void arcTo(unrestricted float x1, unrestricted float y1, unrestricted float x2, unrestricted float y2, unrestricted float radius);
void rect(unrestricted float x, unrestricted float y, unrestricted float width, unrestricted float height);
[RaisesException] void arc(unrestricted float x, unrestricted float y, unrestricted float radius, unrestricted float startAngle, unrestricted float endAngle, [DefaultValue=Undefined] optional boolean anticlockwise);
[RaisesException] void ellipse(unrestricted float x, unrestricted float y, unrestricted float radiusX, unrestricted float radiusY, unrestricted float rotation, unrestricted float startAngle, unrestricted float endAngle, [DefaultValue=Undefined] optional boolean anticlockwise);
};