打造超酷的PHP数据饼图

2016-01-29 14:14 50 1 收藏

打造超酷的PHP数据饼图,打造超酷的PHP数据饼图

【 tulaoshi.com - PHP 】

源代码:

//+------------------------+

//| pie3dfun.PHP//公用函数 |

//+------------------------+

define("ANGLE_STEP", 5); //定义画椭圆弧时的角度步长

function draw_getdarkcolor($img,$clr) //求$clr对应的暗色

{

$rgb = imagecolorsforindex($img,$clr);

return array($rgb["red"]/2,$rgb["green"]/2,$rgb["blue"]/2);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/php/)

}

function draw_getexy($a, $b, $d) //求角度$d对应的椭圆上的点坐标

{

$d = deg2rad($d);

return array(round($a*Cos($d)), round($b*Sin($d)));

}

function draw_arc($img,$ox,$oy,$a,$b,$sd,$ed,$clr) //椭圆弧函数

{

$n = ceil(($ed-$sd)/ANGLE_STEP);

$d = $sd;

list($x0,$y0) = draw_getexy($a,$b,$d);

for($i=0; $i<$n; $i++)

{

$d = ($d+ANGLE_STEP)$ed?$ed:($d+ANGLE_STEP);

list($x, $y) = draw_getexy($a, $b, $d);

imageline($img, $x0+$ox, $y0+$oy, $x+$ox, $y+$oy, $clr);

$x0 = $x;

$y0 = $y;

}

}

function draw_sector($img, $ox, $oy, $a, $b, $sd, $ed, $clr) //画扇面

{

$n = ceil(($ed-$sd)/ANGLE_STEP);

$d = $sd;

list($x0,$y0) = draw_getexy($a, $b, $d);

imageline($img, $x0+$ox, $y0+$oy, $ox, $oy, $clr);

for($i=0; $i<$n; $i++)

{

$d = ($d+ANGLE_STEP)$ed?$ed:($d+ANGLE_STEP);

list($x, $y) = draw_getexy($a, $b, $d);

imageline($img, $x0+$ox, $y0+$oy, $x+$ox, $y+$oy, $clr);

$x0 = $x;

$y0 = $y;

}

imageline($img, $x0+$ox, $y0+$oy, $ox, $oy, $clr);

list($x, $y) = draw_getexy($a/2, $b/2, ($d+$sd)/2);

imagefill($img, $x+$ox, $y+$oy, $clr);

}

function draw_sector3d($img, $ox, $oy, $a, $b, $v, $sd, $ed, $clr) //3d扇面

{

draw_sector($img, $ox, $oy, $a, $b, $sd, $ed, $clr);

if($sd<180)

{

list($R, $G, $B) = draw_getdarkcolor($img, $clr);

$clr=imagecolorallocate($img, $R, $G, $B);

if($ed180) $ed = 180;

list($sx, $sy) = draw_getexy($a,$b,$sd);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/php/)

$sx += $ox;

$sy += $oy;

list($ex, $ey) = draw_getexy($a,

来源:https://www.tulaoshi.com/n/20160129/1492827.html

延伸阅读
闪电壁纸包括两个大的部分:云彩和闪电;云彩部分直接用PS自带的云彩滤镜制作,并控制好范围及局部渲染好高光;闪电部分直接使用闪电笔刷,增加一点发光样式即可。 最终效果 1、新建一个1024 * 768,分辨率为72像素的画布,也可以根据自己屏幕大小设置尺寸。然后用油漆桶工具把背景填充暗蓝色:#1C036F,如下图。 图1 2、...
本教程介绍非常独特的火焰图形的制作方法。作者示例用的是线条图形,如果是实物图则需要转为线条图后再制作。制作过程并不复杂,先用图层样式简单给图形加上一些颜色和光感。然后用液化滤镜等把边缘稍微扭曲,最后用火焰素材加上火焰即可。 原图 最终效果 1、新建一个大小合适的背景,填充黑色,导入图形或者文字。(直接打...
标签: PHP
转自:http://www1.blog.163.com/article/-Bov-01EjrIa.html<?php  set_time_limit(36000);   $orders = 9; //目标表序号   $dbNames = array("seeditbbs","seedblog"); //备份多库  $con = mysql_connect("localhost","root","h67g4n9s8l"); //h67g4n...
最终效果图 1、打开素材图片,选择自己比较拿手的抠图工具将人物抠出来,在抠图时注意使人物轮廓圆滑,如下所示,在选择素材时,最好要强壮感觉很酷的人物。 2、选择“钢笔工具”在人物身上进行纹身图案的绘制,左侧的图是路径在人物身上的效果,为了方便读者观察纹身图案,我将人物隐藏,如右图,如果自己想不出来可以在网...
本教程介绍对比较大的暖色照片调色方法。调色的时候需要由淡到深的慢慢调整。先用曲线等把图片的色调调成淡黄色,然后再适当加重,直到自己满意为止。 原图 最终效果 1、打开图片,ctrl+alt+~ 选取高光部分选区。 2、创建曲线调整层,参数设置如下图。 3、在刚刚的曲线1层上继...

经验教程

145

收藏

68
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部