转:http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115632.html
GMF中的Link有两个,分别是基于Type的和基于Reference的。对于前者,在ecore模型中有一个类对应这个连接,创建一个连接即创建了该类的一个实例,试想,如果一个模型比较复杂,有很多连接时,这种方法要在模型中要为连接建立很多与业务无关的类,使得模型非常复杂;对于后者,没有必要为每个连接在ecore中建立一个类,而是设置该连接对应的Reference即可。下面用一个school的模型来说明基于Reference的连接的建立方法,这个模型非常简单,如下图(用gmf插件生成的对应school.ecore的school.ecore_diagram):一个学校里边有很多老师和学生,每个老师会指导多个学生,这里的指导关系是Teacher类的一个Reference,名字为tutoringStudents,我们打算在GMF编辑器中用Node来表示老师和学生,老师对学生的指导关系用Link来表示。

该模型命名为school.ecore, 然后生成school.genmodel,再按照常规方法建立school.gmfgraph, school.gmftool.
最后建立最关键的school.gmfmap,首先为mapping元素建立两个Top Node Reference,分别对应Teacher和School,然后建立代表老师指导学生关系的link mapping, Validate无错后,生成school.gmfgen,在生成Diagram code,最后运行效果图如下:

分享到:
相关推荐
2. **图形编辑器生成**:基于定义的模型,GMF能自动生成图形编辑器的代码,包括图形的绘制、布局以及与模型数据的交互。 3. **图元工厂**:GMF提供图元工厂,用于创建和管理图形元素,包括形状、连接线等,这些元素...
【GMF教程】GMF(Graphics Modeling Framework)是Eclipse平台下的一个图形建模框架,用于构建基于模型的图形编辑工具。本教程是基于英文教程的实践与翻译,旨在帮助读者理解并掌握如何使用GMF创建一个Mindmap编辑器...
GMF(Generic Modeling Framework)是Eclipse Modeling Framework (EMF)的一个扩展,它提供了一种通用的方法来构建基于模型的应用程序。GMF旨在简化图形用户界面(GUI)的开发,特别是那些涉及图表编辑和可视化任务...
1. 模型(Model):存储数据的结构,基于Ecore定义。 2. 图形模型(Diagram Model):表示模型的可视化表示,包括形状、连接线等。 3. 节点模型(Node Model):图形模型中的具体元素,如形状。 4. 连接模型(Edge ...
教程基于GMF的2.0M4版本,随着GMF的持续发展,教程内容也会不断更新以涵盖最新的功能。有兴趣的读者可以从指定链接下载示例工程源码及相关内容。 GMF的系统需求包括Eclipse 3.3,但需要注意的是,为了使Eclipse正常...
1. **GMF简介**:GMF是一种模型到模型(M2M)和模型到视图(M2V)的转换框架,它基于Eclipse Modeling Framework (EMF) 和 Graphical Editing Framework (GEF)。GMF简化了创建自定义图形编辑器的过程,通过生成代码...
GMF,全称是Graphical Modeling Framework,是Eclipse建模项目中的一个重要组成部分,它建立在GEF(Graphical Editor Framework)和EMF(Eclipse Modeling Framework)之上,为开发基于图形界面的编辑器提供了一种更...
《深入解析Eclipse GMF RAR技术》 在软件开发领域,Eclipse是一个广泛使用的集成开发环境(IDE),而GMF(Graphical Modeling Framework)则是Eclipse社区提供的一款强大的图形建模框架。本文将深入探讨GMF中的RAR...
GMF的核心理念是基于模型驱动的开发(Model Driven Development, MDD)。在这个框架下,开发者首先定义一个领域特定的语言(Domain Specific Language, DSL),然后利用这些DSL来创建模型,最后通过GMF将这些模型...
《基于GMF的可视化建模平台》 在IT行业中,可视化建模是一种高效的设计和开发工具,它通过图形化的方式帮助开发者理解、设计和实现复杂的系统。本资料包聚焦于“行业分类-设备装置”,介绍了一个基于GMF(Graphical...
在此背景下,GMF(Graphical Modeling Framework)应运而生,作为GEF和EMF的进一步封装,它提供了一个更为友好的图形化开发环境和运行时框架,极大地简化了基于EMF和GEF的图形化编辑器的开发流程。尽管如此,理解GMF...
GEF是一个用于构建图形用户界面的框架,特别是为创建基于图的编辑器提供支持。它提供了基础的绘图功能,包括图形元素的创建、布局、选择、连接和拖放等操作。GEF允许开发者定义自己的模型,并通过模型驱动的方式来...
GMF是基于EMF和GEF的,它在两者的基础上提供了更为高级的功能和服务,主要包括: - **模型驱动的开发**:GMF提供了一整套模型驱动的开发环境,允许开发者通过图形界面定制自己的领域模型。开发者可以定义模型中的...
4. **交互性**:GMF提供了丰富的交互功能,如拖放、连接线、多选等,使用户可以方便地操作图形元素。 5. **可扩展性**:GMF设计灵活,允许开发者通过插件系统扩展其功能,适应各种特定需求。 6. **与Eclipse集成**...
### GMF 开发 FSM 的完整实例解析 #### 引言 GMF(Graphical Modeling Framework)是Eclipse项目的一部分,它提供了一套完整的工具和框架用于创建图形化编辑器,帮助开发者快速构建复杂的模型编辑器。本文档将通过...
使用Eclipse GMF进行可视化建模的实战资料,包含概念介绍和示例代码。
- **mindmap**是一款基于GMF开发的思维导图应用,通过此案例可以深入了解GMF如何帮助开发者快速构建出直观易用的图形化编辑器。 #### 四、GMF系统需求与配置 - 对于**Eclipse 3.3**版本,尤其是对于低配机器(例如...
GMF,全称为Generic Mapping Tools,是一个开源的地理信息系统,用于创建、编辑和展示地理数据。这个工具在地学、环境科学以及地球物理学等领域广泛应用,因其强大的地图制作和数据分析功能而受到专业人士的喜爱。本...