纯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文件读写操作之文件读取方法详解
Jan 13 PHP
php单例模式实现(对象只被创建一次)
Dec 05 PHP
深入分析php之面向对象
May 15 PHP
php实现水仙花数示例分享
Apr 03 PHP
php+ajax实时输入自动搜索匹配的方法
Dec 26 PHP
php脚本运行时的超时机制详解
Feb 17 PHP
详解php中反射的应用
Mar 15 PHP
php利用gd库为图片添加水印
Nov 09 PHP
PHP开发中csrf攻击的简单演示和防范
May 07 PHP
PHP+Ajax实现的检测用户名功能简单示例
Feb 12 PHP
Laravel 中使用简单的方法跟踪用户是否在线(推荐)
Oct 30 PHP
PHP实现限制域名访问的实现代码(本地验证)
Sep 13 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分页实例代码分享
2011/07/28 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
2013/06/29 PHP
Linux系统下php获得系统分区信息的方法
2015/03/30 PHP
Yii2简单实现给表单添加验证码的方法
2016/07/18 PHP
php操作access数据库的方法详解
2017/02/22 PHP
PHP API接口必备之输出json格式数据示例代码
2017/06/27 PHP
PHP 实现base64编码文件上传出现问题详解
2020/09/01 PHP
使用jQuery的ajax功能实现的RSS Reader 代码
2009/09/03 Javascript
javascript使用百度地图api和html5特性获取浏览器位置
2014/01/10 Javascript
javascript连续赋值问题
2015/07/08 Javascript
基于JavaScript实现网页倒计时自动跳转代码
2015/12/28 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
理解Angular的providers给Http添加默认headers
2017/07/04 Javascript
vue富文本编辑器组件vue-quill-edit使用教程
2018/09/21 Javascript
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
JavaScript 继承 封装 多态实现及原理详解
2019/07/29 Javascript
js 压缩图片的示例(只缩小体积,不更改图片尺寸)
2020/10/21 Javascript
Python语言技巧之三元运算符使用介绍
2013/03/04 Python
python中合并两个文本文件并按照姓名首字母排序的例子
2014/04/25 Python
Python+django实现文件上传
2016/01/17 Python
Swift中的协议(protocol)学习教程
2016/07/08 Python
Python随机生成手机号、数字的方法详解
2017/07/21 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2018/05/16 Python
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
Django多进程滚动日志问题解决方案
2019/12/17 Python
Python之关于类变量的两种赋值区别详解
2020/03/12 Python
python如何实现图片压缩
2020/09/11 Python
希尔顿酒店官方网站:Hilton Hotels
2017/06/01 全球购物
Omio美国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/08 全球购物
META-INF文件夹中的MANIFEST.MF的作用
2016/06/21 面试题
财务人员个人自荐信范文
2013/09/26 职场文书
2014年人事工作总结范文
2014/11/19 职场文书
郭明义电影观后感
2015/06/08 职场文书
Python中os模块的简单使用及重命名操作
2021/04/17 Python
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
Spring Boot 底层原理基础深度解析
2022/04/03 Java/Android