Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2/**
3 * Pop PHP Framework (http://www.popphp.org/)
4 *
5 * @link       https://github.com/popphp/popphp-framework
6 * @author     Nick Sagona, III <dev@nolainteractive.com>
7 * @copyright  Copyright (c) 2009-2024 NOLA Interactive, LLC. (http://www.nolainteractive.com)
8 * @license    http://www.popphp.org/license     New BSD License
9 */
10
11/**
12 * @namespace
13 */
14namespace Pop\Image\Draw;
15
16use Pop\Color\Color;
17
18/**
19 * Draw interface
20 *
21 * @category   Pop
22 * @package    Pop\Image
23 * @author     Nick Sagona, III <dev@nolainteractive.com>
24 * @copyright  Copyright (c) 2009-2024 NOLA Interactive, LLC. (http://www.nolainteractive.com)
25 * @license    http://www.popphp.org/license     New BSD License
26 * @version    4.0.0
27 */
28interface DrawInterface
29{
30
31    /**
32     * Set the opacity
33     *
34     * @param  int|float $opacity
35     * @return DrawInterface
36     */
37    public function setOpacity(int|float $opacity): DrawInterface;
38
39    /**
40     * Get the opacity
41     *
42     * @return mixed
43     */
44    public function getOpacity(): mixed;
45
46    /**
47     * Get fill color
48     *
49     * @return Color\Colorinterface
50     */
51    public function getFillColor(): Color\Colorinterface;
52
53    /**
54     * Get stroke color
55     *
56     * @return Color\Colorinterface
57     */
58    public function getStrokeColor(): Color\Colorinterface;
59
60    /**
61     * Get stroke width
62     *
63     * @return int
64     */
65    public function getStrokeWidth(): int;
66
67    /**
68     * Set fill color
69     *
70     * @param  Color\ColorInterface $color
71     * @return DrawInterface
72     */
73    public function setFillColor(Color\ColorInterface $color): DrawInterface;
74
75    /**
76     * Set stroke color
77     *
78     * @param  Color\ColorInterface $color
79     * @return DrawInterface
80     */
81    public function setStrokeColor(Color\ColorInterface $color): DrawInterface;
82
83    /**
84     * Get stroke width
85     *
86     * @param int $w
87     * @return DrawInterface
88     */
89    public function setStrokeWidth(int $w): DrawInterface;
90
91}