`
253317239
  • 浏览: 7005 次
  • 性别: Icon_minigender_1
  • 来自: 鄂尔多斯
文章分类
社区版块
存档分类
最新评论

gmf中用fillShape()加了阴影后,怎么把框置到内部!!

阅读更多
我在做Eclipse插件过程中,需要在已经有的UML类图中添加阴影效果,以显现立体效果。加了阴影效果后,graphic的图表框确还在外边。怎么把外边的框添加到阴影的里边去(不是阴影的外部)?我的UML效果图是:(见附件)
我的添加阴影的方法是:protected void fillShape(Graphics graphics)
         {
/** don't modify the r directly */
Rectangle r = getBounds();

Rectangle.SINGLETON.setBounds(r);
Rectangle.SINGLETON.y -= 1;
Rectangle.SINGLETON.width += 1;
Rectangle.SINGLETON.height += 1;

int shadowDepth = 10;
int rectangleWidth = r.width - shadowDepth;
int rectangleHeight = r.height -shadowDepth;

Color foreground = graphics.getForegroundColor();
Color background = graphics.getBackgroundColor(), shadow = ColorUtilities.darker(foreground);

int x = r.x + shadowDepth;
int y = r.y + shadowDepth;

/**
* trace shadow
*/
for (int i = shadowDepth - 1; i >= 0; i--)
{
shadow = lighter(background, i, shadowDepth);
graphics.setBackgroundColor(shadow);
graphics.fillRectangle(x, y, rectangleWidth, rectangleHeight);
if (i > 0)
{
x--;
if (fillBottom)
y--;
}
}
graphics.setBackgroundColor(background);
graphics.setForegroundColor(foreground);
graphics.fillRectangle(x, y, rectangleWidth, rectangleHeight);
}
  • 描述: 不显示outline但显示ComparterOutline的类图
  • 大小: 9.8 KB
  • 描述: 选中时的效果,显示了外边的NodeFigure
  • 大小: 143.7 KB
  • 描述: 显示选中第一个CompartMent的区域。
  • 大小: 194.2 KB
分享到:
评论

相关推荐

    eclipse gmf tutorial中用到的mindmap.ecore

    eclipse gmf tutorial中用到的mindmap.ecore文件,官方链接已经失效了。

    图形建模框架GMF综述

    ### 图形建模框架GMF综述 #### 引言 在软件开发过程中,图形建模作为一种有效的沟通手段,帮助工程师们清晰地表达系统结构、流程逻辑和其他关键要素。传统上,开发人员依赖如Rational Rose或Sybase PowerDesigner...

    gmf 1.7 最新版的gmf

    安装Eclipse GMF插件后,开发者可以通过以下步骤创建图形编辑器: 1. **创建模型**:使用EMF生成数据模型,这可以是XML Schema、Ecore模型或其他形式的模型定义。 2. **设计编辑器**:使用GMF Designer工具,设计...

    org.eclipse.gmf.rar

    《深入解析Eclipse GMF RAR技术》 在软件开发领域,Eclipse是一个广泛使用的集成开发环境(IDE),而GMF(Graphical Modeling Framework)则是Eclipse社区提供的一款强大的图形建模框架。本文将深入探讨GMF中的RAR...

    GMF Tutorial中文版

    GMF区分了"toolsmith"(使用GMF构建插件的开发者)和"user"(使用这些插件的开发者),并强调在透视图中,GMF应尽可能隐藏内部模型的复杂性。 教程还涉及了GMF的核心组成部分——概念模型和工具定义模型。概念模型...

    GMF 开发文档

    - **GMF Dashboard:** 创建新项目后,会显示GMF Dashboard(图1),它将指导用户完成整个开发过程,并成为主要的交互界面。 ##### 2.2 域模型创建与选择 - **域模型:** 首先需要创建或选择一个先前准备好的域模型...

    GMF数据表建模例子

    1. **GMF简介**:GMF是一种模型到模型(M2M)和模型到视图(M2V)的转换框架,它基于Eclipse Modeling Framework (EMF) 和 Graphical Editing Framework (GEF)。GMF简化了创建自定义图形编辑器的过程,通过生成代码...

    GMF教程.doc

    【GMF教程】GMF(Graphics Modeling Framework)是Eclipse平台下的一个图形...通过这个教程,读者可以了解到如何利用GMF构建一个简单的Mindmap图形编辑器,这对于理解GMF框架和开发自定义图形工具具有重要的实践意义。

    GMF实例解析.pdf

    因此,在安装GMF后,还需要关注Taipan的特定依赖项,并按照指导进行安装。 通过深入研究和重构Taipan,读者可以逐步熟悉GMF的API,理解其设计理念,并掌握如何使用GMF创建自己的图形化编辑器。这样的实践不仅有助于...

    15 分钟学会 Eclipse GMF

    Eclipse GMF(Graphics Modeling Framework)是Eclipse平台下的一个开源工具,用于构建图形化建模和编辑环境。本教程将带你快速掌握Eclipse GMF的核心概念和使用方法,让你在15分钟内对GMF有初步的认识。 一、...

    Eclipse插件 GMF

    Eclipse插件GMF,全称为Graphical Modeling Framework,是Eclipse平台上的一个重要组成部分,主要用于构建可视化的建模工具。这个框架提供了一种强大的方式,让开发者能够创建出具有图形界面的模型编辑器,用于设计...

    GMF EMF

    GMF(Generic Modeling Framework)是Eclipse Modeling Framework (EMF)的一个扩展,它提供了一种通用的方法来构建基于模型的应用程序。GMF旨在简化图形用户界面(GUI)的开发,特别是那些涉及图表编辑和可视化任务...

    eclipse gef ve gmf

    GMF允许开发者定义复杂的模型和图形表示,通过模型到模型(M2M)和模型到视图(M2V)转换来生成编辑器的代码。GMF的强项在于它的自动化能力,可以自动生成编辑器的大部分代码,包括图形表示、编辑操作以及与模型的...

    GMF实例解析(PDF版)

    ### GMF实例解析:Taipan案例深度剖析 #### 前言:GMF与图形化编辑器的革新 在IT领域,特别是软件工程中,图形化编辑器的开发一直是复杂且具有挑战性的任务。传统的图形编辑器开发往往依赖于MVC(Model-View-...

    GMF Tourial中文版(一)

    - 通过学习该教程,开发者不仅可以掌握如何使用GMF构建高效、灵活的图形化编辑器,还能了解到如何优化Eclipse的配置以适应不同的硬件环境。 - 对于想要深入研究Eclipse平台下的图形化应用开发的读者来说,**GMF ...

    GMF相关资料

    GMF,全称为Generic Mapping Tools,是一个开源的地理信息系统,用于创建、编辑和展示地理数据。这个工具在地学、环境科学以及地球物理学等领域广泛应用,因其强大的地图制作和数据分析功能而受到专业人士的喜爱。本...

    一个简单的GMF实例

    【标题】:“一个简单的GMF实例” 在IT领域,GMF(Graphical Modeling Framework)是Eclipse项目的一部分,主要用于创建图形化编辑器。这个“一个简单的GMF实例”可能是一个教程或者示例项目,旨在帮助开发者理解...

Global site tag (gtag.js) - Google Analytics