刘金雨的Blog
mirror of http://log4think.com
打车抬表费用图
Code
<
html
>
<
script
type
="text/javascript"
src
="wz_jsgraphics.js"
></
script
>
<
body
>
<
script
type
="text/javascript"
>
<!--
function
getPrice(distance, night) {
var
unitPrice
=
2.0
,
basicDistance
=
3
,
basicPrice
=
10
,
extDistance
=
15
,
extPrice
=
3.0
;
var
price
=
0.0
;
if
( distance
==
0
)
return
0
;
if
( distance
<=
basicDistance )
return
basicPrice;
if
( distance
<=
extDistance ) {
price
=
basicPrice
+
unitPrice
*
(distance
-
basicDistance);
return
price;
}
price
+=
basicPrice
+
unitPrice
*
(extDistance
-
basicDistance)
+
extPrice
*
(distance
-
extDistance)
return
price;
}
function
getPriceWithReset(distance, night, reset) {
if
( reset
==
0
) {
return
getPrice(distance, night);
}
else
{
return
getPrice(reset, night)
*
Math.floor(distance
/
reset) + getPrice(distance % reset, night);
}
}
var
coordXUnit
=
8
, coordYUnit
=
3
,
basicX
=
100
, basicY
=
50
,
coordMaxX
=
101
, coordMaxY
=
251
;
function
drawString(str, x, y) {
jg.drawString(str, basicX
+
x
*
coordXUnit, basicY
+
(coordMaxY
-
y)
*
coordYUnit);
}
function
drawPoint(x, y) {
drawLine(x, y, x, y);
}
function
drawLine(x1, y1, x2, y2) {
jg.drawLine(basicX
+
x1
*
coordXUnit, basicY
+
(coordMaxY
-
y1)
*
coordYUnit, basicX
+
x2
*
coordXUnit, basicY
+
(coordMaxY
-
y2)
*
coordYUnit);
}
function
drawPolyline(ax, ay) {
var
axx
=
new
Array(), ayy
=
new
Array();
for
(
var
e
in
ax) {
axx.push(basicX
+
(ax[e]
*
coordXUnit) );
}
for
(
var
e
in
ay) {
ayy.push(basicY
+
(coordMaxY
-
ay[e])
*
coordYUnit);
}
jg.drawPolyline(axx, ayy);
}
function
drawCoordinate() {
jg.setColor(
"
#ee8800
"
);
drawLine(
0
,
0
, coordMaxX,
0
);
drawLine(
0
,
0
,
0
, coordMaxY);
drawString(
0
,
-
2
,
-
2
);
for
(
var
i
=
1
; i
<
coordMaxX; i
++
) {
if
(i
%
5
==
0
) {
//
draw grid
jg.setStroke(Stroke.DOTTED);
drawLine(i,
0
, i, coordMaxY);
//
draw mark
jg.setStroke(
0
);
drawLine(i,
0
, i,
-
2
);
drawString(i, i
-
1
,
-
3
);
}
else
{
drawLine(i,
0
, i,
-
1
);
}
}
for
(
var
i
=
1
; i
<
coordMaxY ; i
++
) {
if
(i
%
5
==
0
) {
//
draw grid
jg.setStroke(Stroke.DOTTED);
drawLine(
0
, i, coordMaxX, i);
//
draw mark
jg.setStroke(
0
);
drawLine(
0
, i,
-
2
, i);
drawString(i,
-
7
, i
+
1
);
}
else
{
drawLine(
0
, i,
-
1
, i);
}
}
}
function
drawPriceLine(night, reset) {
var
ax
=
new
Array(), ay
=
new
Array();
for
(
var
d
=
1
; d
<
80
; d
++
) {
ax.push(d);
ay.push(getPriceWithReset(d, night, reset));
}
drawPolyline(ax, ay);
}
//
///////////// main section ///////////////
var
jg
=
new
jsGraphics();
jg.setFont(
"
verdana,geneva,sans-serif
"
,
"
10px
"
, Font.PLAIN);
drawCoordinate();
drawString(
"
reset:
"
,
0
,
-
10
);
jg.setColor(
"
#000000
"
);
drawPriceLine(
0
,
0
);
drawString(
"
0
"
,
5
,
-
10
);
jg.setColor(
"
#FF0000
"
);
drawPriceLine(
0
,
10
);
drawString(
"
10
"
,
10
,
-
10
);
jg.setColor(
"
#00FF00
"
);
drawPriceLine(
0
,
15
);
drawString(
"
15
"
,
15
,
-
10
);
jg.setColor(
"
#0000FF
"
);
drawPriceLine(
0
,
20
);
drawString(
"
20
"
,
20
,
-
10
);
//
/////////////// from wangjing to my home, 35KM /////////////////
jg.setColor(
"
#880000
"
);
var
xp
=
new
Array(), yp
=
new
Array();
for
(
var
i
=
10
; i
<
30
; i
++
) {
xp.push(i);
yp.push(getPriceWithReset(
35
,
0
, i));
}
drawPolyline(xp, yp);
drawString(getPriceWithReset(
35
,
0
,
15
),
0
,
-
20
);
jg.paint();
//
-->
</
script
>
</
body
>
</
html
>
绿色通道:
好文要顶
关注我
收藏该文
与我联系
posted on 2009-07-05 05:39
古月春秋(刘云涛)
阅读(112)
评论(0)
编辑
收藏
注册用户登录后才能发表评论,请
登录
或
注册
,
返回博客园首页
。
首页
博问
闪存
新闻
园子
招聘
知识库
最新IT新闻
:
·
Chrome将给老机带来更快的3D绘图性能
·
在线支付创业公司Stripe获红杉资本等1800万美元的投资,公司估值达1亿美元
·
创新工场孵化公司磊友科技今天正式推出首款大型手机HTML5网页游戏《黎明帝国》
·
霍金的伟大与不幸
·
Linux为什么成功?因为它的失败是免费的!
»
更多新闻...
最新知识库文章
:
·
高级编程语言的发展历程
·
如何学习一门新的编程语言?
·
学习不同编程语言的重要性
·
为什么我喜欢富于表达性的编程语言
·
计算机专业的女生为什么要学编程
»
更多知识库文章...
China-pub 2011秋季教材巡展
China-Pub 计算机绝版图书按需印刷服务
公告
昵称:
古月春秋(刘云涛)
园龄:
7年8个月
粉丝:
2
关注:
0
导航
博客园
首页
新随笔
联系
订阅
管理
<
2009年7月
>
日
一
二
三
四
五
六
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
统计
随笔 - 21
文章 - 5
评论 - 48
引用 - 1
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
我的标签
SharpDevelop
(4)
源码
(4)
MySQL
(1)
mysqlcc
(1)
perl
(1)
vi
(1)
随笔分类
c/un*x(13)
(rss)
dotNet
(rss)
feeling(5)
(rss)
SharpDevelop 源码分析(4)
(rss)
随笔档案
2009年7月 (1)
2006年6月 (2)
2006年4月 (2)
2006年2月 (1)
2006年1月 (1)
2005年11月 (1)
2005年9月 (4)
2005年7月 (3)
2005年5月 (1)
2004年10月 (4)
2004年6月 (1)
相册
photo
Blog
baggio785的专栏
(rss)
VonGates 學習筆記
编程
ASPCOOL BLOG
(rss)
Eclipse插件开发
Java中文处理
Microsoft .Net Framework SDK QuickStart Tutorials
Microsoft patterns & practices
Shared Source Common Language Infrastructure 1.0 Release
中学生解 Google 编程赛模拟题
自责啊~居然是用javascript写的
管理
Microsoft Solutions Framework (MSF)
Microsoft Solutions Framework Version 3 White Papers
Microsoft 解决方案框架
TechNet 技术指南
职业经理自修手册
技术参考
Channel9
Generic ADO.net Data Access
(rss)
MaxVirtual Data Library
MBI - Microsoft Business Integrator
MSDN Magazine
MSDN 中文站点
Shadowfax
其它
BBS 水木清华站 BLOG
BBS水木清华站
Blog on 27th Floor
Inside.NET
Thinking in Java 3rd Edition
洪峰
令狐葱乱炖军事
维基百科
最新评论
阅读排行榜
评论排行榜
推荐排行榜