纯PHP生成的一个树叶图片画图例子


Posted in PHP onApril 16, 2014

效果:

 

提示:保存到PHP文件然后在浏览器中打后即可看到和效果图一样的一张图片。

<?php
$im=imagecreate(670,500); 
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF); 
$g = imagecolorallocate($im, 0x00, 0x00, 0x00); 
define("PII",M_PI/180); 
function drawLeaf($g,$x,$y,$L,$a){ 
        global $im; 
        $B = 50; 
        $C =9; 
        $s1 = 2; 
        $s2 = 3 ; 
        $s3 = 1.2; 
        if($L > $s1) 
        { 
            $x2 = $x + $L * cos($a * PII); 
            $y2 = $y + $L * sin($a * PII); 
            $x2R = $x2 + $L / $s2 * cos(($a + $B) * PII); 
            $y2R = $y2 + $L / $s2 * sin(($a + $B) * PII); 
            $x2L = $x2 +$L / $s2 * cos(($a - $B) * PII); 
            $y2L = $y2 + $L / $s2 * sin(($a - $B) * PII); 
            $x1 = $x + $L / $s2 * cos($a * PII); 
            $y1 = $y + $L / $s2 * sin($a * PII); 
            $x1L = $x1 + $L / $s2 * cos(($a - $B) * PII); 
            $y1L = $y1 + $L / $s2 * sin(($a - $B) * PII); 
            $x1R = $x1 + $L / $s2 * cos(($a + $B) * PII); 
            $y1R = $y1 + $L / $s2 * sin(($a + $B) * PII); 
            ImageLine($im,(int)$x,  (int)$y,  (int)$x2,  (int)$y2,  $g); 
            ImageLine($im,(int)$x2, (int)$y2, (int)$x2R, (int)$y2R, $g); 
            ImageLine($im,(int)$x2, (int)$y2, (int)$x2L, (int)$y2L, $g); 
            ImageLine($im,(int)$x1, (int)$y1, (int)$x1L, (int)$y1L, $g); 
            ImageLine($im,(int)$x1, (int)$y1, (int)$x1R, (int)$y1R, $g); 
            drawLeaf($g, $x2,  $y2,  $L / $s3, $a + $C); 
            drawLeaf($g, $x2R, $y2R, $L / $s2, $a + $B); 
            drawLeaf($g, $x2L, $y2L, $L / $s2, $a - $B); 
            drawLeaf($g, $x1L, $y1L, $L / $s2, $a - $B); 
            drawLeaf($g, $x1R, $y1R, $L / $s2, $a + $B); 
           } 
} 
drawLeaf($g,300,500,100,270); 
header("Content-type: image/png"); 
imagepng($im);
?>
PHP 相关文章推荐
PHP XML操作类DOMDocument
Dec 16 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
Jun 24 PHP
跟我学Laravel之请求(Request)的生命周期
Oct 15 PHP
php计算多维数组中所有值总和的方法
Jun 24 PHP
PHP实现抓取迅雷VIP账号的方法
Jul 30 PHP
PHP实现操作redis的封装类完整实例
Nov 14 PHP
Symfony2学习笔记之系统路由详解
Mar 17 PHP
PHP下载文件的函数实例代码
May 18 PHP
eclipse php wamp配置教程
Jun 30 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
Oct 10 PHP
PHP实现带进度条的Ajax文件上传功能示例
Jul 02 PHP
thinkphp5实现微信扫码支付
Dec 23 PHP
通过dbi使用perl连接mysql数据库的方法
Apr 16 #PHP
php sybase_fetch_array使用方法
Apr 15 #PHP
强制PHP命令行脚本单进程运行的方法
Apr 15 #PHP
用PHP和Shell写Hadoop的MapReduce程序
Apr 15 #PHP
php获取mysql字段名称和其它信息的例子
Apr 14 #PHP
PHP检测移动设备类mobile detection使用实例
Apr 14 #PHP
PHP删除数组中空值的方法介绍
Apr 14 #PHP
You might like
上传多个文件的PHP脚本
2006/11/26 PHP
PHP 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
PHP Curl多线程原理实例详解
2013/11/06 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
2014/10/15 PHP
Smarty保留变量用法分析
2016/05/23 PHP
Yii框架结合sphinx,Ajax实现搜索分页功能示例
2016/10/18 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
PHP7.1实现的AES与RSA加密操作示例
2018/06/15 PHP
jquery 删除cookie失效的解决方法
2013/11/12 Javascript
ExtJs纵坐标值重复问题的解决方法
2014/02/27 Javascript
解决Vue 通过下表修改数组,页面不渲染的问题
2018/03/08 Javascript
JS实现快递单打印功能【推荐】
2018/06/21 Javascript
Vuex 使用及简单实例(计数器)
2018/08/29 Javascript
JS返回页面时自动回滚到历史浏览位置
2018/09/26 Javascript
如何制作一个Node命令行图像识别工具
2018/12/12 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
js中值引用和地址引用实例分析
2019/06/21 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
深入讲解Python编程中的字符串
2015/10/14 Python
python如何压缩新文件到已有ZIP文件
2018/03/14 Python
Pandas 同元素多列去重的实例
2018/07/03 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
2020/05/20 Python
你应该知道的30个css选择器
2014/03/19 HTML / CSS
公共事业管理本科生求职信
2013/10/07 职场文书
护理专业大学生自我推荐信
2014/01/25 职场文书
软件部经理岗位职责范本
2014/02/25 职场文书
党员民主评议总结
2014/10/20 职场文书
答谢词范文
2015/01/05 职场文书
2016大学军训心得体会
2016/01/11 职场文书
反四风问题学习心得体会
2016/01/22 职场文书
导游词之天津古文化街
2019/11/09 职场文书
教你用Python写一个植物大战僵尸小游戏
2021/04/25 Python
MySQL数据库压缩版本安装与配置详细教程
2021/05/21 MySQL
SpringBoot集成MongoDB实现文件上传的步骤
2022/04/18 MongoDB
python使用pycharm安装pyqt5以及相关配置
2022/04/22 Python