仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 423|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页编程之利用AspImage制造图形(二)

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:29:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。后面我们讲了怎样使用AspImage来制造柱图,柱图还好办,最少有关于长方形的函数,我们能够来
借用,可是假如是,饼图怎样办?
有的伴侣不是说了,AspImage上不是有Pie的函数吗?是呀,它是有,可是它的谁人也太难用了。
豆腐没有举措,经由同事的匡助,使用我们高中进修的三角形公式(三角形公式?有无弄错?)
终究做出了如许的函数,并且利用起来十分的便利。人人请看
FunctionDrawPie(ArrNum,arrText)
函数功效:依据指定的数值和显现,他们均是数组
**********以下是变量界说**************************
dimintTotal以后
dimi
dimintSettledAngle
dimarrColor(6)
----------以下是代码入手下手--------------------------
设置色彩
i=0
arrColor(i)=RGB(255,255,255)
i=i+1
arrColor(i)=RGB(255,255,0)
i=i+1
arrColor(i)=RGB(255,0,255)
i=i+1
arrColor(i)=RGB(0,255,255)
i=i+1
arrColor(i)=RGB(255,0,0)
i=i+1
arrColor(i)=RGB(0,255,0)
i=i+1
arrColor(i)=RGB(0,0,255)
i=i+1
以下入手下手对数据举行处置
起首失掉数目的总数

intTotal=0
fori=0toUBOUND(ArrNum)
intTotal=intTotal+ArrNum(i)
Next

SetImage=Server.CreateObject("AspImage.Image")

设定图像的地区巨细
Image.MaxX=300
Image.MaxY=300
天生渐进色
Image.GradientTwoWayrgb(41,137,204),vbWhite,0,1

处置角度
intSettledAngle=0
intRectStart=0
fori=0toubound(ArrNum)
intAngle=(arrNum(i)/intTotal)*360
一个一个的画扇区,终极分解一个完全的圆
setImage=DrawSinglePie(Image,360-intSettledAngle,arrColor(i))

在图像的最下方对图像内容举行形貌
Image.BackgroundColor=arrColor(i)
Image.RectangleintRectStart+10*(i+1),250,intRectStart+10*(i+1)+10,260
Image.TextOutarrText(i),intRectStart+10*(i+1)+10,245,false

在图像的最下方对图像内容举行形貌
Image.BackgroundColor=arrColor(i)
Image.RectangleintRectStart+10*(i+1),270,intRectStart+10*(i+1)+10,280
Image.TextOutcstr(intAngle)&"%",intRectStart+10*(i+1)+10,265,false
intRectStart=intRectStart+50
intSettledAngle=intSettledAngle+intAngle
next
Image.FileName=server.MapPath("http://edu.cnzz.cn/NewsInfo/test.jpg")
Image.SaveImage
setImage=nothing
Response.Write"<imgsrc=http://edu.cnzz.cn/NewsInfo/test.jpg>"
EndFunction

functionDrawSinglePie(Image,intAngle,intColor)
函数功效:依据指定的角度和色彩画一个矩形
**************以下是变量界说********************
constpi=3.1415926圆周率
dimpii经由180角转换后的圆周,弧度
dimx1,x2,x3,x44个X坐标
dimy1,y2,y3,y44个Y坐标
dimintR圆的半径,这个半径不是真实的圆的半径,可是能够用来流动圆心的地位
--------------以下是代码入手下手--------------------
**********************************
*
*(x1,y1),(x2,y2)和圆心必需在经由过程(0,0)的斜角45的直线上
***********************************
pii=pi/180
ifintAngle>360then
intAngle=intAngle-360
endif
x1=10
y2=10
x2=250
y2=250

intR=(x1+x2)/2
************************************
*
*以下使用三角形公式失掉响应Point的坐标
************************************
ifintAngle<135then
角度不敷135
angle=intAngle*pii
x3=tan(angle-45*pii)*intR+intR
y3=0
x4=0
y4=0
elseifintAngle=135then
x3=(intR)*2
y3=intR
x4=0
y4=0
elseifintAngle<315then
angle=intAngle*pii
intTemp=(intR/tan(angle-135*pii))-intR
x3=250+intTemp
y3=250
x4=0
y4=0
elseifintAngle=315then
x3=(-intR)*2
y3=intR
x4=0
y4=0
else
angle=intAngle*pii
x3=tan(angle-45*pii)*intR+intR
y3=0
x4=0
y4=0
endif

Image.BackgroundColor=intColor
Image.Piex1,y1,x2,y2,x3,y3,x4,y4

Image.TextOut360-intAngle,(125+x3)/2+20,(125+y3)/2+20,false
Image.TextOutintRatio,intPosX,intPosY,false

setDrawSinglePie=Image
endfunction

最初我们在使用drawPie中传送要显现的数据的数组就能够了。减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-19 14:53:33 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-1-26 11:46:16 来自手机 | 只看该作者
没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。
透明 该用户已被删除
地板
发表于 2015-2-4 15:16:45 | 只看该作者
那么,ASP.Net有哪些改进呢?
兰色精灵 该用户已被删除
5#
发表于 2015-2-10 02:47:39 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
小女巫 该用户已被删除
6#
发表于 2015-2-28 16:16:05 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
因胸联盟 该用户已被删除
7#
发表于 2015-3-10 02:05:16 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
小魔女 该用户已被删除
8#
发表于 2015-3-17 04:10:05 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
只想知道 该用户已被删除
9#
发表于 2015-3-23 19:02:49 | 只看该作者
运用经典的例子。并且自己可以用他来实现一些简单的系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方,加上自己的设计,那就更上一个层次了,也就会真正地感到有所收获。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 07:50

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表