首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Eclipse GMF开始

从Eclipse GMF开始
EN

Stack Overflow用户
提问于 2011-05-04 10:03:36
回答 3查看 1.3K关注 0票数 0

我是Eclipse GMF的新手,并且能够成功地完成思维导图教程。在那之后,我开始使用它开发一个图形编辑器。我已经使用XML模式生成域模型。现在我需要开发图形,工具和地图定义models.But我对它没有太多的了解。在哪里我可以对他们有一个很好的了解?

EN

回答 3

Stack Overflow用户

发布于 2011-05-11 18:52:33

GMF框架确实缺乏其他类似的库(如EMF、JFace等)的适当文档,当我开始使用GMF时(不久前),我主要通过GMF Forum阅读。然而,eclipse建模项目书中有2-3章专门介绍了GMF。我发现它们相当乏味、乏味,而且过于详细。它可以更多地作为参考,而不是教程……

票数 2
EN

Stack Overflow用户

发布于 2013-01-19 20:20:07

您可以使用此过程来使用GMF创建一个功能强大的图形编辑器。

我将使用以下eclipse包使一切变得简单。

工具名称:EuGENia,它是Epsilon Eclipse包的一部分,可从www.eclipse.org/epsilon获得

步骤1:-创建一个空的EMF项目(我希望你可能知道这一点)

步骤2:-按照上的语法在模型文件夹中创建file_name.emf文件

步骤3:-右键单击.emf文件,然后单击"Generate Ecore Model“。这将生成.ecore文件

步骤4:-可以使用.ecore文件生成.genmodel文件

第5步:-从这里开始有两种方法

选项1:-右键单击.ecore文件,然后在Eugenia类别下单击“生成GMF编辑器”。

选项2:-遵循以下步骤

选项2,步骤1:-右键单击.ecore文件,然后在Eugenia类别下单击"Generate GMF tool,graph and map model“。

选项2,步骤2:-在eclipse中打开GMF Dashboard View,如所示,然后将上面生成的所有文件作为输入提供给GMF Dashboard,然后您可以生成所需的编辑器。

解释:-

正如Protostome所说的那样,GMF缺乏适当的文档,所以我不得不寻找方法来完成我的工具。因此,经过长时间的搜索,我找到了我在步骤1中给出的链接,它解决了我的许多问题。我将向您解释EuGENia框架如何处理*.emf文件。

*.emf基本上是一个以文本方式描述Ecore模型的文件。Emfatic是该工具使用的后台技术。EuGENia框架利用了这个文件,并对其进行了扩展,将与GMF相关的属性作为属性添加到我们正在使用Emfatic语法编写的ecore模型中(用户可以在该链接中看到EuGENia支持的各种属性)。

这做了大部分的基础工作,为我们提供了一个可以工作的GMF编辑器。

注意:虽然这给了我们一个很好的开始,但我发现很难做一些事情,比如基于某种路由算法在图表上排列图像等(例如,当我想要显示父子表关系时,这个工具可以垂直或水平地对所有内容进行标记,直到现在我才能改变这种行为)。

这是我与GMF编辑的经验,如果你需要进一步的帮助或者如果你对我的解释有任何疑问,请告诉我

票数 2
EN

Stack Overflow用户

发布于 2013-08-10 22:49:34

在完成思维导图教程之后,您可以为理解做的最好的事情是,找出这些向导真正为mindMap.diagram生成java代码所做的工作。这是我真正理解的。

mindmap.ecore -定义我们需要实现的java类。

mindmap.genmodel -用于生成我们在.ecore文件上定义的java模型代码。

现在我们有了模型对象的java代码。接下来,需要图像来表示这些对象。使用Graphical Definition Model向导为它们生成图形。mindmap.gmfgraph -模型对象的图形(节点、链接)。尝试更改其属性值。

接下来,我们需要定义在工具托盘中应该显示什么对象。对于使用的工具定义模型向导。mindmap.gmftool -使用.ecore文件选择应在托盘中的对象。

下一个重要的是要很好地理解。在这里,我们将生成的java模型对象连接到它的图形(在.gmfgraph中生成)、工具托盘(在.gmftool中定义)。检查它的属性值几次。mindmap.gmfmap -映射对象定义及其视图

然后我们可以使用create mindmap.gmfgen来生成代码。生成的代码将在具有新思维导图模型的新eclipse模型中运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5877695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档