| Línea 535... |
Línea 535... |
| 535 |
|
535 |
|
| 536 |
function draw_zero_axis_left() {
|
536 |
function draw_zero_axis_left() {
|
| 537 |
$colour = $this->parameter['zero_axis'];
|
537 |
$colour = $this->parameter['zero_axis'];
|
| 538 |
if ($colour == 'none') return;
|
538 |
if ($colour == 'none') return;
|
| - |
|
539 |
// draw zero axis on left hand side
|
| - |
|
540 |
$this->calculated['zero_axis'] = (int) round(
|
| 539 |
// draw zero axis on left hand side
|
541 |
$this->calculated['boundary_box']['top'] +
|
| - |
|
542 |
($this->calculated['y_axis_left']['max'] * $this->calculated['y_axis_left']['factor'])
|
| 540 |
$this->calculated['zero_axis'] = round($this->calculated['boundary_box']['top'] + ($this->calculated['y_axis_left']['max'] * $this->calculated['y_axis_left']['factor']));
|
543 |
);
|
| 541 |
ImageLine($this->image, $this->calculated['boundary_box']['left'], $this->calculated['zero_axis'], $this->calculated['boundary_box']['right'], $this->calculated['zero_axis'], $this->colour[$colour]);
|
544 |
ImageLine($this->image, $this->calculated['boundary_box']['left'], $this->calculated['zero_axis'], $this->calculated['boundary_box']['right'], $this->calculated['zero_axis'], $this->colour[$colour]);
|
| Línea 542... |
Línea 545... |
| 542 |
}
|
545 |
}
|
| 543 |
|
546 |
|
| 544 |
function draw_zero_axis_right() {
|
547 |
function draw_zero_axis_right() {
|
| 545 |
$colour = $this->parameter['zero_axis'];
|
548 |
$colour = $this->parameter['zero_axis'];
|
| - |
|
549 |
if ($colour == 'none') return;
|
| - |
|
550 |
// draw zero axis on right hand side
|
| 546 |
if ($colour == 'none') return;
|
551 |
$this->calculated['zero_axis'] = (int) round(
|
| - |
|
552 |
$this->calculated['boundary_box']['top'] +
|
| 547 |
// draw zero axis on right hand side
|
553 |
($this->calculated['y_axis_right']['max'] * $this->calculated['y_axis_right']['factor'])
|
| 548 |
$this->calculated['zero_axis'] = round($this->calculated['boundary_box']['top'] + ($this->calculated['y_axis_right']['max'] * $this->calculated['y_axis_right']['factor']));
|
554 |
);
|
| Línea 549... |
Línea 555... |
| 549 |
ImageLine($this->image, $this->calculated['boundary_box']['left'], $this->calculated['zero_axis'], $this->calculated['boundary_box']['right'], $this->calculated['zero_axis'], $this->colour[$colour]);
|
555 |
ImageLine($this->image, $this->calculated['boundary_box']['left'], $this->calculated['zero_axis'], $this->calculated['boundary_box']['right'], $this->calculated['zero_axis'], $this->colour[$colour]);
|
| 550 |
}
|
556 |
}
|
| Línea 689... |
Línea 695... |
| 689 |
|
695 |
|
| 690 |
foreach ($this->calculated['y_axis']['tick_y'] as $set => $tickY) {
|
696 |
foreach ($this->calculated['y_axis']['tick_y'] as $set => $tickY) {
|
| 691 |
if (!$this->calculated['y_axis_left']['has_data'] && $yGrid != 'none') { // draw grid if not drawn already (above)
|
697 |
if (!$this->calculated['y_axis_left']['has_data'] && $yGrid != 'none') { // draw grid if not drawn already (above)
|
| 692 |
switch ($yGrid) {
|
698 |
switch ($yGrid) {
|
| 693 |
case 'line':
|
699 |
case 'line':
|
| 694 |
ImageLine($this->image, round($gridLeft), round($tickY), round($gridRight), round($tickY), $gridColour);
|
700 |
ImageLine($this->image, (int) round($gridLeft), (int) round($tickY), (int) round($gridRight), (int) round($tickY), $gridColour);
|
| 695 |
break;
|
701 |
break;
|
| 696 |
case 'dash':
|
702 |
case 'dash':
|
| 697 |
$this->image_dashed_line($this->image, round($gridLeft), round($tickY), round($gridRight), round($tickY), $gridColour); // Moodle
|
703 |
$this->image_dashed_line($this->image, (int) round($gridLeft), (int) round($tickY), (int) round($gridRight), (int) round($tickY), $gridColour); // Moodle
|
| 698 |
break;
|
704 |
break;
|
| 699 |
}
|
705 |
}
|
| Línea 700... |
Línea 706... |
| 700 |
}
|
706 |
}
|
| 701 |
|
707 |
|
| 702 |
if ($this->parameter['y_axis_text_right'] && !($set % $this->parameter['y_axis_text_right'])) { // test if tick should be displayed
|
708 |
if ($this->parameter['y_axis_text_right'] && !($set % $this->parameter['y_axis_text_right'])) { // test if tick should be displayed
|
| 703 |
// draw tick
|
709 |
// draw tick
|
| Línea 704... |
Línea 710... |
| 704 |
if ($tickColour != 'none')
|
710 |
if ($tickColour != 'none')
|
| 705 |
ImageLine($this->image, round($tickLeft), round($tickY), round($tickRight), round($tickY), $tickColour);
|
711 |
ImageLine($this->image, (int) round($tickLeft), (int) round($tickY), (int) round($tickRight), (int) round($tickY), $tickColour);
|
| 706 |
|
712 |
|
| 707 |
// draw axis text...
|
713 |
// draw axis text...
|
| Línea 765... |
Línea 771... |
| 765 |
|
771 |
|
| Línea 766... |
Línea 772... |
| 766 |
if ((string)$this->y_data[$set][$index] != 'none') {
|
772 |
if ((string)$this->y_data[$set][$index] != 'none') {
|
| 767 |
|
773 |
|
| 768 |
if (isset($this->y_format[$set]['y_axis']) && $this->y_format[$set]['y_axis'] == 'right') {
|
774 |
if (isset($this->y_format[$set]['y_axis']) && $this->y_format[$set]['y_axis'] == 'right') {
|
| 769 |
$this->calculated['y_plot'][$set][$index] =
|
775 |
$this->calculated['y_plot'][$set][$index] =
|
| 770 |
round(($this->y_data[$set][$index] - $this->calculated['y_axis_right']['min'])
|
776 |
(int) round(($this->y_data[$set][$index] - $this->calculated['y_axis_right']['min'])
|
| 771 |
* $this->calculated['y_axis_right']['factor']);
|
777 |
* $this->calculated['y_axis_right']['factor']);
|
| 772 |
} else {
|
778 |
} else {
|
| 773 |
//print "$set $index<br />";
|
779 |
//print "$set $index<br />";
|
| 774 |
$this->calculated['y_plot'][$set][$index] =
|
780 |
$this->calculated['y_plot'][$set][$index] =
|
| 775 |
round(($this->y_data[$set][$index] - $this->calculated['y_axis_left']['min'])
|
781 |
(int) round(($this->y_data[$set][$index] - $this->calculated['y_axis_left']['min'])
|
| Línea 776... |
Línea 782... |
| 776 |
* $this->calculated['y_axis_left']['factor']);
|
782 |
* $this->calculated['y_axis_left']['factor']);
|
| 777 |
}
|
783 |
}
|
| Línea 810... |
Línea 816... |
| 810 |
foreach ($this->calculated['x_axis']['text'] as $set => $value) {
|
816 |
foreach ($this->calculated['x_axis']['text'] as $set => $value) {
|
| 811 |
//print "index: $set<br />";
|
817 |
//print "index: $set<br />";
|
| 812 |
// x tick value
|
818 |
// x tick value
|
| 813 |
$this->calculated['x_axis']['tick_x'][$set] = $tickX;
|
819 |
$this->calculated['x_axis']['tick_x'][$set] = $tickX;
|
| 814 |
// if num ticks is auto then x plot value is same as x tick
|
820 |
// if num ticks is auto then x plot value is same as x tick
|
| 815 |
if ($this->parameter['x_axis_gridlines'] == 'auto') $this->calculated['x_plot'][$set] = round($tickX);
|
821 |
if ($this->parameter['x_axis_gridlines'] == 'auto') $this->calculated['x_plot'][$set] = (int) round($tickX);
|
| 816 |
//print $this->calculated['x_plot'][$set].'<br />';
|
822 |
//print $this->calculated['x_plot'][$set].'<br />';
|
| 817 |
$tickX += $xStep;
|
823 |
$tickX += $xStep;
|
| 818 |
}
|
824 |
}
|
| Línea 819... |
Línea 825... |
| 819 |
|
825 |
|
| Línea 1177... |
Línea 1183... |
| 1177 |
} else {
|
1183 |
} else {
|
| 1178 |
if ($max < 0) $factor = - pow(10, (floor(log10(abs($max))) + $resolution) );
|
1184 |
if ($max < 0) $factor = - pow(10, (floor(log10(abs($max))) + $resolution) );
|
| 1179 |
else $factor = pow(10, (floor(log10(abs($max))) - $resolution) );
|
1185 |
else $factor = pow(10, (floor(log10(abs($max))) - $resolution) );
|
| 1180 |
}
|
1186 |
}
|
| 1181 |
if ($factor > 0.1) { // To avoid some wierd rounding errors (Moodle)
|
1187 |
if ($factor > 0.1) { // To avoid some wierd rounding errors (Moodle)
|
| 1182 |
$factor = round($factor * 1000.0) / 1000.0; // To avoid some wierd rounding errors (Moodle)
|
1188 |
$factor = (int) round($factor * 1000.0) / 1000.0; // To avoid some wierd rounding errors (Moodle)
|
| 1183 |
} // To avoid some wierd rounding errors (Moodle)
|
1189 |
} // To avoid some wierd rounding errors (Moodle)
|
| Línea 1184... |
Línea 1190... |
| 1184 |
|
1190 |
|
| 1185 |
$max = $factor * @ceil($max / $factor);
|
1191 |
$max = $factor * @ceil($max / $factor);
|
| Línea 1581... |
Línea 1587... |
| 1581 |
break;
|
1587 |
break;
|
| 1582 |
case 'circle-open':
|
1588 |
case 'circle-open':
|
| 1583 |
ImageArc($this->image, $u, $v, $size, $size, 0, 360, $this->colour[$colour]);
|
1589 |
ImageArc($this->image, $u, $v, $size, $size, 0, 360, $this->colour[$colour]);
|
| 1584 |
break;
|
1590 |
break;
|
| 1585 |
case 'diamond':
|
1591 |
case 'diamond':
|
| 1586 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
- |
|
| 1587 |
ImageFilledPolygon($this->image, array($u, $v - $half, $u + $half, $v, $u, $v + $half, $u - $half, $v), $this->colour[$colour]);
|
1592 |
ImageFilledPolygon($this->image, [$u, $v - $half, $u + $half, $v, $u, $v + $half, $u - $half, $v], $this->colour[$colour]);
|
| 1588 |
} else {
|
- |
|
| 1589 |
ImageFilledPolygon($this->image, array($u, $v - $half, $u + $half, $v, $u, $v + $half, $u - $half, $v), 4, $this->colour[$colour]);
|
- |
|
| 1590 |
}
|
- |
|
| 1591 |
break;
|
1593 |
break;
|
| 1592 |
case 'diamond-open':
|
1594 |
case 'diamond-open':
|
| 1593 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
- |
|
| 1594 |
ImagePolygon($this->image, array($u, $v - $half, $u + $half, $v, $u, $v + $half, $u - $half, $v), $this->colour[$colour]);
|
1595 |
ImagePolygon($this->image, [$u, $v - $half, $u + $half, $v, $u, $v + $half, $u - $half, $v], $this->colour[$colour]);
|
| 1595 |
} else {
|
- |
|
| 1596 |
ImagePolygon($this->image, array($u, $v - $half, $u + $half, $v, $u, $v + $half, $u - $half, $v), 4, $this->colour[$colour]);
|
- |
|
| 1597 |
}
|
- |
|
| 1598 |
break;
|
1596 |
break;
|
| 1599 |
case 'triangle':
|
1597 |
case 'triangle':
|
| 1600 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
- |
|
| 1601 |
ImageFilledPolygon($this->image, array($u, $v - $half, $u + $half, $v + $half, $u - $half, $v + $half), $this->colour[$colour]);
|
1598 |
ImageFilledPolygon($this->image, [$u, $v - $half, $u + $half, $v + $half, $u - $half, $v + $half], $this->colour[$colour]);
|
| 1602 |
} else {
|
- |
|
| 1603 |
ImageFilledPolygon($this->image, array($u, $v - $half, $u + $half, $v + $half, $u - $half, $v + $half), 3, $this->colour[$colour]);
|
- |
|
| 1604 |
}
|
- |
|
| 1605 |
break;
|
1599 |
break;
|
| 1606 |
case 'triangle-open':
|
1600 |
case 'triangle-open':
|
| 1607 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
- |
|
| 1608 |
ImagePolygon($this->image, array($u, $v - $half, $u + $half, $v + $half, $u - $half, $v + $half), $this->colour[$colour]);
|
1601 |
ImagePolygon($this->image, [$u, $v - $half, $u + $half, $v + $half, $u - $half, $v + $half], $this->colour[$colour]);
|
| 1609 |
} else {
|
- |
|
| 1610 |
ImagePolygon($this->image, array($u, $v - $half, $u + $half, $v + $half, $u - $half, $v + $half), 3, $this->colour[$colour]);
|
- |
|
| 1611 |
}
|
- |
|
| 1612 |
break;
|
1602 |
break;
|
| 1613 |
case 'dot':
|
1603 |
case 'dot':
|
| 1614 |
ImageSetPixel($this->image, $u, $v, $this->colour[$colour]);
|
1604 |
ImageSetPixel($this->image, $u, $v, $this->colour[$colour]);
|
| 1615 |
break;
|
1605 |
break;
|
| 1616 |
}
|
1606 |
}
|
| Línea 1669... |
Línea 1659... |
| 1669 |
$u_right = (int) round($x_right + $offset - 1);
|
1659 |
$u_right = (int) round($x_right + $offset - 1);
|
| 1670 |
$v = $this->calculated['boundary_box']['bottom'] - $y + $offset;
|
1660 |
$v = $this->calculated['boundary_box']['bottom'] - $y + $offset;
|
| Línea 1671... |
Línea 1661... |
| 1671 |
|
1661 |
|
| 1672 |
// Moodle addition, plus the function parameter yoffset
|
1662 |
// Moodle addition, plus the function parameter yoffset
|
| 1673 |
if ($yoffset) { // Moodle
|
1663 |
if ($yoffset) { // Moodle
|
| 1674 |
$yoffset = $yoffset - round(($bottom - $v) / 2.0); // Moodle
|
1664 |
$yoffset = $yoffset - (int) round(($bottom - $v) / 2.0); // Moodle
|
| 1675 |
$bottom -= $yoffset; // Moodle
|
1665 |
$bottom -= $yoffset; // Moodle
|
| 1676 |
$v -= $yoffset; // Moodle
|
1666 |
$v -= $yoffset; // Moodle
|
| Línea 1677... |
Línea 1667... |
| 1677 |
} // Moodle
|
1667 |
} // Moodle
|
| Línea 1700... |
Línea 1690... |
| 1700 |
$v_start = $bottom - $y_start + $offset;
|
1690 |
$v_start = $bottom - $y_start + $offset;
|
| 1701 |
$v_end = $bottom - $y_end + $offset;
|
1691 |
$v_end = $bottom - $y_end + $offset;
|
| 1702 |
switch ($type) {
|
1692 |
switch ($type) {
|
| 1703 |
case 'fill':
|
1693 |
case 'fill':
|
| 1704 |
// draw it this way 'cos the FilledPolygon routine seems a bit buggy.
|
1694 |
// draw it this way 'cos the FilledPolygon routine seems a bit buggy.
|
| 1705 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
- |
|
| 1706 |
ImageFilledPolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $zero, $u_start, $zero), $this->colour[$colour]);
|
1695 |
ImageFilledPolygon($this->image, [$u_start, $v_start, $u_end, $v_end, $u_end, $zero, $u_start, $zero], $this->colour[$colour]);
|
| 1707 |
ImagePolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $zero, $u_start, $zero), $this->colour[$colour]);
|
1696 |
ImagePolygon($this->image, [$u_start, $v_start, $u_end, $v_end, $u_end, $zero, $u_start, $zero], $this->colour[$colour]);
|
| 1708 |
} else {
|
- |
|
| 1709 |
ImageFilledPolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $zero, $u_start, $zero), 4, $this->colour[$colour]);
|
- |
|
| 1710 |
ImagePolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $zero, $u_start, $zero), 4, $this->colour[$colour]);
|
- |
|
| 1711 |
}
|
- |
|
| 1712 |
break;
|
1697 |
break;
|
| 1713 |
case 'open':
|
1698 |
case 'open':
|
| 1714 |
ImageLine($this->image, $u_start, $v_start, $u_end, $v_end, $this->colour[$colour]);
|
1699 |
ImageLine($this->image, $u_start, $v_start, $u_end, $v_end, $this->colour[$colour]);
|
| 1715 |
ImageLine($this->image, $u_start, $v_start, $u_start, $zero, $this->colour[$colour]);
|
1700 |
ImageLine($this->image, $u_start, $v_start, $u_start, $zero, $this->colour[$colour]);
|
| 1716 |
ImageLine($this->image, $u_end, $v_end, $u_end, $zero, $this->colour[$colour]);
|
1701 |
ImageLine($this->image, $u_end, $v_end, $u_end, $zero, $this->colour[$colour]);
|
| Línea 1725... |
Línea 1710... |
| 1725 |
|
1710 |
|
| 1726 |
if ($this->parameter['shadow_below_axis'] ) $bottom += $offset;
|
1711 |
if ($this->parameter['shadow_below_axis'] ) $bottom += $offset;
|
| 1727 |
if ($this->parameter['inner_border'] != 'none') $bottom -= 1; // 1 pixel above bottom if border is to be drawn.
|
1712 |
if ($this->parameter['inner_border'] != 'none') $bottom -= 1; // 1 pixel above bottom if border is to be drawn.
|
| 1728 |
switch ($type) {
|
1713 |
switch ($type) {
|
| 1729 |
case 'fill':
|
- |
|
| 1730 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
1714 |
case 'fill':
|
| 1731 |
ImageFilledPolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $bottom, $u_start, $bottom), $this->colour[$colour]);
|
- |
|
| 1732 |
} else {
|
- |
|
| 1733 |
ImageFilledPolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $bottom, $u_start, $bottom), 4, $this->colour[$colour]);
|
- |
|
| 1734 |
}
|
1715 |
ImageFilledPolygon($this->image, [$u_start, $v_start, $u_end, $v_end, $u_end, $bottom, $u_start, $bottom], $this->colour[$colour]);
|
| 1735 |
break;
|
1716 |
break;
|
| 1736 |
case 'open':
|
- |
|
| 1737 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
1717 |
case 'open':
|
| 1738 |
ImagePolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $bottom, $u_start, $bottom), $this->colour[$colour]);
|
- |
|
| 1739 |
} else {
|
- |
|
| 1740 |
ImagePolygon($this->image, array($u_start, $v_start, $u_end, $v_end, $u_end, $bottom, $u_start, $bottom), 4, $this->colour[$colour]);
|
- |
|
| 1741 |
}
|
1718 |
ImagePolygon($this->image, [$u_start, $v_start, $u_end, $v_end, $u_end, $bottom, $u_start, $bottom], $this->colour[$colour]);
|
| 1742 |
break;
|
1719 |
break;
|
| 1743 |
}
|
1720 |
}
|
| 1744 |
}
|
1721 |
}
|
| Línea 1777... |
Línea 1754... |
| 1777 |
//$this->dbug("slope < 1");
|
1754 |
//$this->dbug("slope < 1");
|
| 1778 |
$m = $dy / $dx; // compute slope
|
1755 |
$m = $dy / $dx; // compute slope
|
| 1779 |
$t += $y0;
|
1756 |
$t += $y0;
|
| 1780 |
$dx = ($dx < 0) ? -1 : 1;
|
1757 |
$dx = ($dx < 0) ? -1 : 1;
|
| 1781 |
$m *= $dx;
|
1758 |
$m *= $dx;
|
| 1782 |
while (round($x0) != round($x1)) {
|
1759 |
while ((int) round($x0) != (int) round($x1)) {
|
| 1783 |
if (!$watchdog--) break;
|
1760 |
if (!$watchdog--) break;
|
| 1784 |
$x0 += $dx; // step to next x value
|
1761 |
$x0 += $dx; // step to next x value
|
| 1785 |
$t += $m; // add slope to y value
|
1762 |
$t += $m; // add slope to y value
|
| 1786 |
$y = round($t);
|
1763 |
$y = (int) round($t);
|
| 1787 |
//$this->dbug("x0=$x0, x1=$x1, y=$y watchdog=$watchdog");
|
1764 |
//$this->dbug("x0=$x0, x1=$x1, y=$y watchdog=$watchdog");
|
| 1788 |
$this->draw_brush($x0, $y, $size, $type, $colour);
|
1765 |
$this->draw_brush($x0, $y, $size, $type, $colour);
|
| Línea 1789... |
Línea 1766... |
| 1789 |
|
1766 |
|
| 1790 |
}
|
1767 |
}
|
| 1791 |
} else { // slope >= 1
|
1768 |
} else { // slope >= 1
|
| 1792 |
//$this->dbug("slope >= 1");
|
1769 |
//$this->dbug("slope >= 1");
|
| 1793 |
$m = $dx / $dy; // compute slope
|
1770 |
$m = $dx / $dy; // compute slope
|
| 1794 |
$t += $x0;
|
1771 |
$t += $x0;
|
| 1795 |
$dy = ($dy < 0) ? -1 : 1;
|
1772 |
$dy = ($dy < 0) ? -1 : 1;
|
| 1796 |
$m *= $dy;
|
1773 |
$m *= $dy;
|
| 1797 |
while (round($y0) != round($y1)) {
|
1774 |
while ((int) round($y0) != (int) round($y1)) {
|
| 1798 |
if (!$watchdog--) break;
|
1775 |
if (!$watchdog--) break;
|
| 1799 |
$y0 += $dy; // step to next y value
|
1776 |
$y0 += $dy; // step to next y value
|
| 1800 |
$t += $m; // add slope to x value
|
1777 |
$t += $m; // add slope to x value
|
| 1801 |
$x = round($t);
|
1778 |
$x = (int) round($t);
|
| 1802 |
//$this->dbug("x=$x, y0=$y0, y1=$y1 watchdog=$watchdog");
|
1779 |
//$this->dbug("x=$x, y0=$y0, y1=$y1 watchdog=$watchdog");
|
| Línea 1803... |
Línea 1780... |
| 1803 |
$this->draw_brush($x, $y0, $size, $type, $colour);
|
1780 |
$this->draw_brush($x, $y0, $size, $type, $colour);
|
| 1804 |
|
1781 |
|
| 1805 |
}
|
1782 |
}
|
| Línea 1806... |
Línea 1783... |
| 1806 |
}
|
1783 |
}
|
| 1807 |
}
|
1784 |
}
|
| 1808 |
|
1785 |
|
| 1809 |
function draw_brush($x, $y, $size, $type, $colour) {
|
1786 |
function draw_brush($x, $y, $size, $type, $colour) {
|
| 1810 |
$x = round($x);
|
1787 |
$x = (int) round($x);
|
| 1811 |
$y = round($y);
|
1788 |
$y = (int) round($y);
|
| 1812 |
$half = round($size / 2);
|
1789 |
$half = (int) round($size / 2);
|
| 1813 |
switch ($type) {
|
1790 |
switch ($type) {
|
| 1814 |
case 'circle':
|
1791 |
case 'circle':
|
| Línea 1823... |
Línea 1800... |
| 1823 |
break;
|
1800 |
break;
|
| 1824 |
case 'horizontal':
|
1801 |
case 'horizontal':
|
| 1825 |
ImageFilledRectangle($this->image, $x-$half, $y, $x+$half, $y+1, $this->colour[$colour]);
|
1802 |
ImageFilledRectangle($this->image, $x-$half, $y, $x+$half, $y+1, $this->colour[$colour]);
|
| 1826 |
break;
|
1803 |
break;
|
| 1827 |
case 'slash':
|
1804 |
case 'slash':
|
| 1828 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
- |
|
| 1829 |
ImageFilledPolygon($this->image, array(
|
1805 |
ImageFilledPolygon(
|
| 1830 |
$x + $half, $y - $half,
|
- |
|
| 1831 |
$x + $half + 1, $y - $half,
|
- |
|
| 1832 |
$x - $half + 1, $y + $half,
|
- |
|
| 1833 |
$x - $half, $y + $half
|
- |
|
| 1834 |
), $this->colour[$colour]);
|
1806 |
$this->image,
|
| 1835 |
} else {
|
1807 |
[
|
| 1836 |
ImageFilledPolygon($this->image, array(
|
- |
|
| 1837 |
$x + $half, $y - $half,
|
1808 |
$x + $half, $y - $half,
|
| 1838 |
$x + $half + 1, $y - $half,
|
1809 |
$x + $half + 1, $y - $half,
|
| 1839 |
$x - $half + 1, $y + $half,
|
1810 |
$x - $half + 1, $y + $half,
|
| 1840 |
$x - $half, $y + $half
|
1811 |
$x - $half, $y + $half,
|
| - |
|
1812 |
],
|
| 1841 |
), 4, $this->colour[$colour]);
|
1813 |
$this->colour[$colour]
|
| 1842 |
}
|
1814 |
);
|
| 1843 |
break;
|
1815 |
break;
|
| 1844 |
case 'backslash':
|
1816 |
case 'backslash':
|
| 1845 |
if (version_compare(PHP_VERSION, '8.0.0', '>=')) {
|
1817 |
ImageFilledPolygon(
|
| 1846 |
ImageFilledPolygon($this->image, array(
|
1818 |
$this->image,
|
| - |
|
1819 |
[
|
| 1847 |
$x - $half, $y - $half,
|
1820 |
$x - $half, $y - $half,
|
| 1848 |
$x - $half + 1, $y - $half,
|
1821 |
$x - $half + 1, $y - $half,
|
| 1849 |
$x + $half + 1, $y + $half,
|
1822 |
$x + $half + 1, $y + $half,
|
| 1850 |
$x + $half, $y + $half
|
1823 |
$x + $half, $y + $half,
|
| 1851 |
), $this->colour[$colour]);
|
- |
|
| 1852 |
} else {
|
1824 |
],
|
| 1853 |
ImageFilledPolygon($this->image, array(
|
- |
|
| 1854 |
$x - $half, $y-$half,
|
- |
|
| 1855 |
$x - $half + 1, $y - $half,
|
- |
|
| 1856 |
$x + $half + 1, $y + $half,
|
- |
|
| 1857 |
$x + $half, $y + $half
|
- |
|
| 1858 |
), 4, $this->colour[$colour]);
|
1825 |
$this->colour[$colour]
|
| 1859 |
}
|
1826 |
);
|
| 1860 |
break;
|
1827 |
break;
|
| 1861 |
default:
|
1828 |
default:
|
| 1862 |
@eval($type); // user can create own brush script.
|
1829 |
@eval($type); // user can create own brush script.
|
| 1863 |
}
|
1830 |
}
|
| 1864 |
}
|
1831 |
}
|