文档章节

学绘秀曲线图

涂孟超
 涂孟超
发布于 2014/09/26 15:33
字数 272
阅读 17
收藏 0

偶然从 http://blog.csdn.net/hero82748274/archive/2010/02/10/5304386.aspx 看到了秀曲线图, 就用 GDI 模仿了一下; 如果用 GDI+ 绘制, 图形会细腻很多.



procedure TForm1.FormPaint(Sender: TObject);
var
  i,j,num,X,Y: Integer;
begin
  num := 60;
  X := 300;
  Y := 300;
  ClientWidth := 2 * X;
  ClientHeight := 2 * Y;

  Canvas.Pen.Width := 1;
  Canvas.Pen.Color := clWhite;
  Canvas.Brush.Color := clNavy;
  Canvas.FillRect(ClientRect);

  for i := 0 to num do for j := 0 to 1 do
  begin
    Canvas.MoveTo(X, i*10);
    if i < 30 then
      if j = 0 then Canvas.LineTo(X-i*10, Y) else Canvas.LineTo(X+i*10, Y)
    else
      if j = 0 then Canvas.LineTo(X-(num-1-i)*10, Y) else Canvas.LineTo(X+(num-1-i)*10, Y);
  end;
end;

 
 
 
 
 

 

 

  



procedure TForm1.FormPaint(Sender: TObject);
var
  i,j,num,n,X,Y: Integer;
  angle: Single;
  pts: array of array of TPoint;
begin
  num := 20;
  n := 6; { 改为 n := 11 就是成了下一个图形 }
  angle := -2 * PI / n;
  X := 210;
  Y := 210;
  ClientWidth := 2*X;
  ClientHeight := 2*Y;

  Canvas.Pen.Width := 1;
  Canvas.Pen.Color := clWhite;
  Canvas.Brush.Color := clNavy;
  Canvas.FillRect(ClientRect);

  SetLength(pts, n+1, num);
  for i := 0 to n do
  begin
    for j := 0 to num-1 do
    begin
      pts[i,j] := Point(Trunc(j*10*Cos(angle*i)+X), Trunc(j*10*Sin(angle*i)+Y));
      Canvas.MoveTo(pts[i,j].X, pts[i,j].Y);
      if i = 0 then
        Canvas.LineTo((num-j)*10+X, Y)
      else
        Canvas.LineTo(pts[i-1, num-1-j].X, pts[i-1, num-1-j].Y);
    end;
  end;
end;

 
 
 
 
 

 

 

  



本文转载自:http://www.cnblogs.com/del/archive/2010/02/10/1667347.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
中学成绩查询分析系统--phpcj

一个用于中学的成绩查询及分析系统,php+mysql 制作 基本功能: 查询学生的历次考试成绩,并显示名次变化曲线图; 自动统计平均分、及格率、优秀率、最高分、最低分、最优生、学困生等,还可...

石家庄清风
2011/02/07
6.8K
1
如何快乐的学英语?

英语,对于我们很多人来说就像是“最熟悉的陌生人”。从小学到大学,英语这门课程伴随了十多年时间,但每次见到外国人时就深深感到词到用时方恨少, 各种尴尬时刻总是不期而至。 举个栗子 有...

cathyli
2016/07/06
31
0
美图吴欣鸿预测未来十年趋势 AI 技术占一半

5月18日,美图公司在北京举办“美图秀秀十年分享派对”。美图公司创始人兼CEO吴欣鸿提出了美与社交的战略布局,并预测了图片影像领域十大趋势。 吴欣鸿首先回顾了美图秀秀十年历程—— 2008...

技术小能手
05/21
0
0
干货|不同的损失函数会对深度神经网络带来什么样的影响?

二次损失函数会在神经元犯了明显错误的情况下使得网络学习缓慢,而使用交叉熵损失函数则会在明显犯错的时候学的更快。 今天,我们主要来谈谈不同的损失函数会对深度神经网络带来什么样的影响...

行者武松
03/05
0
0
室内设计要学哪些内容?要学哪些软件?

第一部分 学习室内设计理论基础知识 第二部分 学习平面彩色图绘制 第三部分 学习室内施工图绘制 一、专业课程 室内设计原理、人体工程学、识图与制图、装饰材料与施工工艺、装饰设备与工程实...

mymay2
06/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

[雪峰磁针石博客]软件测试专家工具包1web测试

web测试 本章主要涉及功能测试、自动化测试(参考: 软件自动化测试初学者忠告) 、接口测试(参考:10分钟学会API测试)、跨浏览器测试、可访问性测试和可用性测试的测试工具列表。 安全测试工具...

python测试开发人工智能安全
今天
2
0
JS:异步 - 面试惨案

为什么会写这篇文章,很明显不符合我的性格的东西,原因是前段时间参与了一个面试,对于很多程序员来说,面试时候多么的鸦雀无声,事后心里就有多么的千军万马。去掉最开始毕业干了一年的Jav...

xmqywx
今天
2
0
Win10 64位系统,PHP 扩展 curl插件

执行:1. 拷贝php安装目录下,libeay32.dll、ssleay32.dll 、 libssh2.dll 到 C:\windows\system32 目录。2. 拷贝php/ext目录下, php_curl.dll 到 C:\windows\system32 目录; 3. p...

放飞E梦想O
今天
0
0
谈谈神秘的ES6——(五)解构赋值【对象篇】

上一节课我们了解了有关数组的解构赋值相关内容,这节课,我们接着,来讲讲对象的解构赋值。 解构不仅可以用于数组,还可以用于对象。 let { foo, bar } = { foo: "aaa", bar: "bbb" };fo...

JandenMa
今天
1
0
OSChina 周一乱弹 —— 有人要给本汪介绍妹子啦

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享水木年华的单曲《中学时代》@小小编辑 手机党少年们想听歌,请使劲儿戳(这里) @须臾时光:夏天还在做最后的挣扎,但是晚上...

小小编辑
今天
48
8

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部