`
lggege
  • 浏览: 375224 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Eclipse 绘图的新选择 Zest - 轻量级可视化工具包

    博客分类:
  • GEF
阅读更多
偶尔去GEF网站上看看, 发现在GEF的分类下除了Draw2d外,还加了一个项目: Zest. (太久没关注了, 汗~```)

介绍URL: http://www.eclipse.org/gef/zest/
Demo源码URL: http://www.eclipse.org/gef/zest/snippets.php

下面这段是从IBM developerworks抄来的.
引用
Zest 是一个轻量级可视化工具包,该工具包将在传统 GEF 编辑器顶部提供类似于 JFace 的包装。Zest 已经在 JFace 之后被模型化,并且所有 Zest 视图都与现有的 Eclipse 视图一样遵守相同的标准和约定(认为包括标签和内容提供程序)。这意味着可以在 Zest 中利用现有应用程序中使用的提供程序、操作和侦听程序。此外,Zest 拥有可重用布局,可以轻松地应用到您的可视化结果中。



总结:
1. Zest是基于Draw2d上的图像化模块.

2. widgets包下只提供了极少量的widgets, 可快速上手.

IContainer 容器的基类.
Graph 容器. 最底层的容器. 类似于GEF里面Diagram的概念,或者SWT中的Shell的概念.
GraphContainer 容器.看名字也知道是一个包含GraphNode的容器. 就像swt里面的Section,可下拉,可收缩. 长像,效果和Section也很像.


GraphItem Node的基类.

GraphNode 节点,就是图上的一个节点.
GraphConnection 连接线,连接2个GraphNode的连线. 当然, GraphNode可以自己连接自己.


具体的效果:


3. Zest简单,能做的事情也比较有限. 如果只需考虑可视化而不需编辑等功能,完全可以使用 Zest。比如:无逻辑的 组织结构图,流程图 等完全可以使用Zest来完成.


注意:
目前提供的 org.eclipse.zest.core 和 org.eclipse.zest.layouts 都不是Eclipse插件, 需要直接加到你项目的ClassPath中.

后记;
基于Zest, Eclipse实现了一个PDE的工具,PDE Incubator Dependency Visualization 插件依赖的分析器.
URL: http://www.eclipse.org/pde/incubator/dependency-visualization/index.php

实例代码:
public class GraphSnippet1 {
	public static void main(String[] args) {
		Display d = new Display();
		Shell shell = new Shell(d);
		shell.setText("GraphSnippet1");
		shell.setLayout(new FillLayout());
		shell.setSize(400, 400);

		Graph g = new Graph(shell, SWT.NONE);

		GraphNode n = new GraphNode(g, SWT.NONE, "Paper");
		GraphNode n2 = new GraphNode(g, SWT.NONE, "Rock");
		GraphNode n3 = new GraphNode(g, SWT.NONE, "Scissors");
		new GraphConnection(g, SWT.NONE, n, n2);
		new GraphConnection(g, SWT.NONE, n2, n3);
		new GraphConnection(g, SWT.NONE, n3, n);
		g.setLayoutAlgorithm(new SpringLayoutAlgorithm(LayoutStyles.NO_LAYOUT_NODE_RESIZING), true);

		shell.open();
		while (!shell.isDisposed()) {
			while (!d.readAndDispatch()) {
				d.sleep();
			}
		}
	}
}

代码总结:
就是这么简单. 和SWT,JFace在一起, 完全没有任何问题. 可以快速的做出一个效果来.


代码效果图:

  • 描述: GraphContainer
  • 大小: 3.4 KB
  • 大小: 7.3 KB
  • 描述: 类图
  • 大小: 13.1 KB
  • 大小: 3.5 KB
分享到:
评论
1 楼 hegang 2013-06-07  
请问这种画出来的图如何在网页中显示呢?而不是窗口化的显示

相关推荐

    maven_eclipse_GEF-zest-3.7.1_m2e-extras_m2e.zip

    这个版本的GEF-Zest可以帮助开发者在Eclipse环境中创建和编辑复杂的图形界面,提升应用程序的可视化水平。 最后,"m2e-extras"是m2e的扩展插件,提供了更多的Maven支持,特别是对于某些特定的Maven插件或构建过程。...

    GEF-zest-3.6.1.zip

    GEF-zest-3.6.1.zipGEF-zest-3.6.1.zipGEF-zest-3.6.1.zipGEF-zest-3.6.1.zipGEF-zest-3.6.1.zipGEF-zest-3.6.1.zip

    eclipse插件 GEF-SDK-3.4.0.zip

    本压缩包"GEF-SDK-3.4.0.zip"提供了GEF的软件开发工具包,帮助开发者在Eclipse环境中创建功能丰富的图形编辑工具。 1. **GEF介绍** GEF是Eclipse平台的一个核心部分,它提供了一套框架和服务,用于构建基于模型的...

    Python库 | zbs.zest-1.1.24.tar.gz

    对于zbs.zest-1.1.24.tar.gz这样的源码包,我们首先需要将其解压,可以使用Python内置的`tarfile`模块或者命令行工具如`tar`来完成。解压后,我们可以看到源代码文件,包括Python模块、测试脚本、文档等。在Python中...

    zest-creator:用于创建有效的 zest 脚本并与脚本交互的节点包

    Zest Creator 工具,用于创建有效的 zest 脚本并通过辅助方法与脚本交互。 使用 安装它: ```bash $ npm i zest-creator ``` 需要它并使用: ```js var ZestCreator = require('zest-creator'); var opts = { ...

    Zest - New Tab for Marketing Content-crx插件

    通过选择与您的专业需求相关的主题来个性化您的内容提要,并自定义Zest的主题以提高阅读效率。 通过包含60,000多种已出版内容的数据库进行研究,并按内容类型,受欢迎程度,相关性和新鲜度进行过滤。 安装Zest New ...

    zest-runner:Zest runner 的 JavaScript 实现

    Zest 脚本的运行时。 使用 安装它: ```bash $ npm i zest-runner ``` 需要它并使用: ```js var ZestRunner = require('zest-runner'); var opts = { sourceType: 'file', file: 'abc.zst' }; var zr = new ...

    西数WDC WD3200BPVT固件-80ZEST0-板号1672-WD-WXB1AC064983-01.01A01-0015002M-256-1091-KL

    标题中的“西数WDC WD3200BPVT固件-80ZEST0-板号1672-WD-WXB1AC064983-01.01A01-0015002M-256-1091-KL”涉及到的是西部数据(Western Digital,简称WD)的一款硬盘,具体型号为WD3200BPVT。固件是硬盘的重要组成部分...

    Eclipse插件开发--gef开发指南与入门系列宝典

    同时,熟悉GEF也能为你打开通往其他图形工具如GMF(Graphical Modeling Framework)和Zest(图可视化库)的大门。 总的来说,Eclipse插件开发结合GEF框架是一项强大且富有挑战性的技术。随着你对这个领域的深入探索...

    Zest - Distilled Marketing Content-crx插件

    将新标签转变为消费营销知识的强大平台---面向营销人员的知识构建平台:Zest结合了社区管理和AI来提供您所需的高级技能内容Zest确保您仅收到高质量的营销内容并杀死他们浪费您时间的信息过载使Zest脱颖而出的原因是...

    eclipse gef 插件 最新版本

    Eclipse GEF(Graphical Editing Framework)插件是Eclipse IDE中的一个重要组成部分,主要用于构建图形化用户界面,尤其是用于创建图形编辑器。它为开发者提供了一套完整的框架,用于开发基于模型的图形编辑工具,...

    Zest - The Zendesk Colour Coder-crx插件

    对Zendesk票证进行颜色编码,以帮助可视化和组织您的工作流程。 内文·乔治(Nevin George)开发 什么是热情? 简而言之,这是组织Zendesk门票的简便方法! 通过Zest,您可以通过个性化为票证添加颜色来自定义票证...

    maven与eclipse集成所需插件

    4. **创建Maven项目**: 也可以通过Eclipse创建新的Maven项目。在“File” > “New” > “Other”中,选择“Maven Project”。在向导中,可以选择基本的Maven archetype(模板)来创建项目结构。 5. **同步Maven配置...

    GEF-ALL-3.7.1

    ECLIPSE相关插件 解决eclipse安装插件时提示以下错误 Java代码 Software being installed: Maven Integration for Eclipse (Required) 0.12 . 1.20110112 - 1712 Java代码 Software being installed: Maven ...

    Eclipse插件开发:GEF入门系列宝典

    - 它提供了一套图形工具,如绘图工具、选择工具和连接线工具。 - GEF支持命令模式,使得操作可以撤销/重做。 - 它还包含布局管理器,用于自动调整图形元素的位置和大小。 3. **模型-视图-控制器(MVC)**: - ...

    eclipse常用插件安装

    8. **GEF和Zest**:GEF(Graphical Editing Framework)是Eclipse中用于图形编辑的框架,而Zest则是其可视化组件。在Eclipse 3.6.1中,可能需要单独安装Zest以解决m2eclipse插件的依赖问题。Zest插件的下载地址是:...

    maven插件安装以及eclipse安装maven插件的资料

    Maven是Java开发中的一款重要构建工具,它管理项目依赖、构建流程,并且提供了一套标准的方式来组织项目结构。Eclipse是一款流行的集成开发环境(IDE),它通过插件系统可以扩展各种功能,包括对Maven的支持。本文将...

    org.eclipse.gef

    GEF 的引入使得在 Eclipse 中开发图形化应用程序变得更加容易,特别适合创建基于模型的系统设计工具和可视化编程环境。 在使用 GEF 时,开发者可以利用其提供的核心组件来实现以下关键功能: 1. **图形编辑器基础*...

    lemon-zest-fest

    Lemon Zest Festival Web应用程序 该项目是使用版本8.1.2生成的。 分行 拉出最新的main分支并创建您要使用的新分支 配置 运行npm i以安装依赖项 开发 运行ng serve可以在localhost:4200上localhost:4200运行应用程序...

Global site tag (gtag.js) - Google Analytics