标签:randomgenerator cobjects gpolygon events gcompound
学习资源来自——斯坦福大学2008年的公开课
这部分内容主要是使用java进行绘图的操作,个人觉得是挺有趣的一块内容,看完捣鼓捣鼓自己做个拼图之类的小游戏玩玩也是可以的。
8、
随机数生成器:
private RandomGenerator rgen=RandomGenerator.getInstance();
方法:
int nextInt(int low, int high)——返回一个介于两者之间的一个随机数
int nextInt(int n)——返回一个介于0~n-1的随机数
double nextDouble(double low, double high)——返回一个随机数d low<=d<high
double nextDouble()——返回一个随机数d 0<=d<1
boolean nextBoolean()——返回true的概率为50%
boolean nextBoolean(double p)——返回为true的概率为p 0<=p<1
Color nextColor()——随机产生一种颜色
赋予随机数计数器的第一个值称为种子,种子决定随机数产生的序列,一般用于测试数据
rgen.setSeed(1);——用于测试使用
模拟骰子:
super()——调用父类构造函数
acm.graphics——添加进画布中的图形是有堆叠顺序的
GCanvas——拼贴画的背景画布
画布(GCanvas)和图形程序(GraphicsProgram)具有的方法:
add(object) 向画布中添加对象
add(object,x,y) 指定显示坐标
remove(object) 移除对象
getElementAt(x,y)-frontmost or null 获取对象坐标
getHidth() 获取宽度
getHeight() 获取高度
setBackground(c)-color 设置画布背景颜色
图形程序独有的方法:
pause(milliseconds)——暂停(单位为毫秒)
waitForClick()——等待鼠标点击事件
CObjects通用方法:
setLocation(x,y)
move(dx,dy)-偏移量
getX() getY()-返回对象的x和y坐标
getHidth() getHeight()-返回长和宽
contains(x,y)-返回真假(在特定的点处是否有存在对象)
setColor(c) getColor()-设置/获取对象颜色
setVisible(flag)——true/false
isVisible()-如果对象可视visible返回true
sendToFront() sendToBack()——改变z轴顺序(最前,最后)
sendForward() sendBackward()——在z轴上移动对象
接口(Interface)——一组方法——有一组类它们都有同一组方法
填充接口:GFillable——setFilled(flag) isFilled() setFillColor(c) getFillColor()
设置对象窗口:CResizable——setSize(width,height) setBounds(x,y,width,height)
缩放接口:GScalable——scale(sf)-缩放比例 scale(sx,sy)-x,y上分别缩放
与排版有关的与字符有关的线:
基线(baseline)——字符出现位置的线(有些字符会超出)-下滑线
字符串高度(height):是指两行基准线之间的距离
上线(ascent)——指最高的字符——让字符居中显示时使用
下线(decent)——指基线下字符最远能达到的距离
11-(11)、
GPolygon——画出线段组成的对称图形
需要有一个参考点(假想参考点)——一般是图形的中心点
create an empty polygon
addVertex(x,y)——指定多边形顶点——x、y是相对于参考点的坐标
addEdge(dx,dy)——添加一个顶点与前一个点有关
GCompound——画复合的图形-把几种图形复合在一起成为一个对象
事件驱动程序(Event-driven Programs)
监听器(listener)—impot java.awt.event.*;
addMouseListeners()
addKeyListeners()
Mouse Events:
mouseClicked(e) ——点击
mousePressed(e) ——按着鼠标
mouseReleased(e)——松开鼠标
mouseMoved(e) ——移动鼠标
mouseDragged(e)——按着鼠标拖动
Keyboard Events:
keyPressed(e) ——按着鼠标
keyReleased(e) ——松开鼠标
keyTyped(e)——按下和释放的复合
图片对象:
画一个菱形(根据顶点的顺序进行连线,可自行调整顺序测试):
鼠标事件监听 :
绘制复合图形:(通过调用可以绘制如下图所示图形)
本文出自 “不发呆” 博客,请务必保留此出处http://tobeys.blog.51cto.com/10620284/1691590
标签:randomgenerator cobjects gpolygon events gcompound
原文地址:http://tobeys.blog.51cto.com/10620284/1691590