ILog JViews framework图形工具介绍

来源:互联网 发布:淘宝店怎么关闭店铺 编辑:程序博客网 时间:2024/05/17 22:09
 
ILog JViews framework图形工具介绍
1. 什么是JViews:
a)         JViews是一个第三方软件包,是ILog公司开发的,可以帮助软件开发人员更快更有效的开发图形应用程序
b)        Java本身也可以绘制图形,
                         i.              缺陷是功能不强大,开发一个基于图形操作的软件比较复杂
                       ii.              画图方法整数,计算误差太大,jview 浮点数,计算结果准确
 
2. 计算机图形
a)         显示器点阵:显示器图形模式是把整个显示区域,利用点阵来构成图像,象素越多构成的图像越接近实际图像
b)        矢量图:用坐标系统,点线面构成图形
 
3. 显示坐标系统:
a)         左上角(0,0)点,横向宽,纵向高
b)        屏幕坐标:鼠标事件使用的是屏幕坐标,尽量不要直接在JViews图形上直接加java的MouseListener
c)        程序坐标:jview图形使用程序坐标,尽量使用JVIews包内提供的事件监听程序
d)        程序坐标包括缓冲区,滚动图形后,坐标原点变化
例子:
 
4. JViews 图形的构成
a)         支持2D,3D。我们使用2d图形
b)        点,线,面,层,填充,变换
例子:线,矩形,多边形,填充,组合图形
 
 
5. 图形操作:
a)         选择,
b)        拖动,
c)        编辑
例子:选择,拖动,编辑
 
6. 图形变换:
a)         旋转,
b)        平移,
c)        缩放,
例子:
 
7. 事件处理:事件处理的方式,在view上加事件监视程序
例子:鼠标事件(左键点击,)
 
8. 典型的应用过程:
a)         确定视图结构:你的视图上将有哪些图形构成
b)        确定操作范围:基于你的视图,用户将可以进行什么样子的操作
c)        基于操作范围,确定图形实现类的结构,
                         i.              将哪些图形分成一个单元,图形单元都需要实现哪些更新图形的方法,例如根据用户指令,视图需要将某个集装箱图形外框加粗或者变色,那么集装箱图形单元就需要一个设置边框颜色或者宽度的公共接口
                       ii.              每个图形单元,只要不是基本图形,好的做法就应该使用一个组合图形形成一个实现类,提供外部接口
d)        决定图形布局
                         i.              图形单元的宽高大小
                       ii.              图形单元的位置和间距
                      iii.              确定计算坐标点的方法
e)         决定图形单元的层次
f)         实现绘制图形
g)        实现事件监听程序
h)        测试
9. 典型的实现类结构
a)         视图类,整个应用图形程序的外部就口,
                         i.              持有视图数据类的实现,
                       ii.              持有构成视图的所有图形单元类的实现,
                      iii.              持有事件处理程序的实现。
                     iv.              提供对外部的交互,外部调用者只需要调用更新视图数据的方法,或者取得当前视图最新数据的方法
                       v.              向注册的外部程序发送视图更新的消息
b)        图形单元类
                         i.              能按照设定的属性、变化的的数据,完成绘图
                       ii.              根据需要,提供公共方法,按参数数据更新图形
c)        视图数据类
                         i.              保存整个视图绘制所依据的数据
                       ii.              根据调用,更新数据
                      iii.              根据调用,取得最新数据
d)        事件处理程序
                         i.              获取视图上的用户操作事件,和相关的图形单元
                       ii.              判断操作的逻辑属性,交给相应的逻辑处理程序
                      iii.              逻辑处理程序根据用户的操作,调用视图数据类的的更新方法
                     iv.              通知相关的外部程序
一些常用到的类:
ilog.views
The graphics framework provides the classes necessary to create a high performance 2D graphic application.
创建图形应用程序所必须的基本类
ilog.views.accelerator
Provides the default key accelerators for a manager.
键盘按键需要的类
ilog.views.graphic
Contains the predefined graphic objects of JViews.
基本图形
ilog.views.interactor
Provides the predefined interactors for a view.
应用程序用户交互使用的类
ilog.views.swing
Provides all the Swing components necessary to create an application mixing JViews and Swing.
与javaswing相结合所使用的类