`

自定义Decoration

    博客分类:
  • GEF
阅读更多
大家都知道new PolygonDecoration就表示带箭头,但有的时候不想是箭头,想搞个圆圈,或者方块,那怎么做呢?那就只能自定义PolygonDecoration咯,我昨天自定义了一个圆圈,给大家看看吧
package com.netunit.workbench.parts;

import org.eclipse.draw2d.Ellipse; 
import org.eclipse.draw2d.RotatableDecoration; 
import org.eclipse.draw2d.geometry.Point; 
import org.eclipse.draw2d.geometry.Rectangle; 

public class CircleDecoration extends Ellipse implements RotatableDecoration { 
        private int myRadius = 5; 
        private Point myCenter = new Point(); 
        
        public void setRadius(int radius){ 
                erase(); 
                 myRadius = Math.abs(radius); 
                 bounds = null; 
                 repaint(); 
         } 
        
       public void setLineWidth(int width){ 
                 super.setLineWidth(width); 
         } 
        
         public Rectangle getBounds() { 
                if (bounds == null){ 
                        int diameter = myRadius * 2; 
                       bounds = new Rectangle(myCenter.x - myRadius, myCenter.y - myRadius, diameter, diameter); 
                      bounds.expand(lineWidth / 2, lineWidth / 2); 
              } 
                return bounds; 
       } 
         
         public void setLocation(Point p) { 
                 if (myCenter.equals(p)){ 
                         return; 
                 }        
                 myCenter.setLocation(p); 
                bounds = null; 
        } 
         
         public void setReferencePoint(Point p) { 
                //ignore, does not make sense to rotate circle 
         } 
 
} 

下面是效果图:
  • 大小: 22.5 KB
2
0
分享到:
评论

相关推荐

    自定义ItemDecoration

    而自定义`ItemDecoration`则是RecyclerView的一个高级特性,允许开发者在列表项之间或周围添加额外的装饰,比如分隔线、边距或者自定义的视觉效果。本教程将深入讲解如何创建和使用自定义的`ItemDecoration`。 首先...

    Android-RecyclerViewdecoration相关使用说明以及自动化加固的使用示例

    2. 创建自定义Decoration: 首先,创建一个类并继承RecyclerView.ItemDecoration。你需要重写以下方法: - `onDrawOver()`:在这个方法中,你可以画出在视图之上的内容,例如分割线。 - `...

    仿有赞自定义模板魔方插件

    在IT行业中,自定义模板和插件开发是提高软件灵活性和用户体验的重要手段。"仿有赞自定义模板魔方插件"是一个示例项目,它借鉴了有赞平台的魔方插件功能,旨在允许用户根据自身需求自由配置界面元素。下面我们将详细...

    ios-collection view 自定义每个section的背景view(decoration view).zip

    collection view 自定义每个section的背景view(decoration view) github:https://github.com/12207480/TYDecorationSectionLayout

    超平坦自定义小工具Build20121019.zip

    用这个工具,vb编的程序,超平坦自定义工具,会根据你的要求自动生成代码,填到Minecraft的超平坦自定义代码框里就可以了。(当然如果你把代码都背下来了你自己写代码也行啊) 比如,这就是按照你要求生成的代码...

    网页中自定义鼠标右键菜单

    text-decoration: none; display: block; } #customMenu a:hover { background-color: #f1f1f1; } ``` 在这个CSS中,`#customMenu`定义了菜单的基本样式,包括隐藏、定位、阴影和层级。`#customMenu a`定义了...

    jquery自定义下拉菜单

    text-decoration: none; display: block; } .dropdown-content a:hover { background-color: #f1f1f1; } ``` 三、jQuery实现交互 现在,我们需要使用jQuery来处理用户的点击事件,以便在点击按钮时显示或隐藏...

    基于jQuery实现的自定义下拉框控件

    text-decoration: none; } .dropdown-menu li a:hover { background-color: #f0f0f0; } ``` 4. **交互增强**:我们可以进一步增强用户体验,例如添加搜索功能、多选功能、键盘导航等。例如,添加搜索功能可以...

    ueditor不在vue项目中使用。加上公式插件和自定义按钮

    对于“加波浪线”,这可能是指在文本中插入下划波浪线的效果,通常通过CSS的`text-decoration`属性来实现,可以通过ueditor的API插入相应的HTML代码片段,比如`<span style="text-decoration: underline wavy;...

    「HTML+CSS」--自定义按钮样式【002】

    text-decoration: none; color: #fff; background-color: #4CAF50; border: none; border-radius: 5px; /* 按钮过渡效果 */ transition: all 0.3s ease; } /* 鼠标悬停时的样式 */ .custom-button:hover { ...

    TextView超链接自定义样式

    text-decoration:none;'>自定义超链接</a>"; textView.setText(Html.fromHtml(htmlText), TextView.BufferType.SPANNABLE); textView.setMovementMethod(LinkMovementMethod.getInstance()); ``` 3. **自定义...

    tailwind-text-decoration-color

    部分来自你的顺风配置颜色——所以你可以使用decoration-gray-500或自定义颜色decoration-sop-900 。安装通过npm或纱将其拉入: npm install tailwind-text-decoration-color# OR.yarn add tailwind-text-...

    select自定义样式

    select自定义样式,div+css模拟select下拉框效果,html代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html <...

    自定义通用增修删标签

    ### 自定义通用增修删标签知识点 #### 一、概览 在软件开发过程中,特别是Web应用程序中,经常需要创建一些具有通用功能的组件或模块,以提高代码复用率和开发效率。其中,“增修删”操作是最常见的业务逻辑之一。...

    「HTML+CSS」--自定义按钮样式【001】

    text-decoration: none; /* 去除下划线 */ display: inline-block; /* 显示为块级元素 */ font-size: 16px; /* 字体大小 */ margin: 4px 2px; /* 间距 */ cursor: pointer; /* 鼠标悬停时形状 */ } ``` 为了...

    个人存储博客专家-自定义模块 2023-10-23 10:27.zip

    text-decoration: none; border-radius: 3px; } ``` JavaScript可以为模块添加交互功能,例如动态效果或表单验证。 五、总结 自定义模块是博客专家提升博客品质的关键工具,通过理解和掌握HTML、CSS和JavaScript...

    jquery自定义弹窗

    text-decoration: none; cursor: pointer; } ``` 3. **jQuery实现**:接下来,我们将使用jQuery来控制弹窗的显示和关闭。首先,确保引入jQuery库。然后,添加以下代码: ```javascript $(document).ready...

    2018-4-25 自定义 css 样式调整块级图片标题显示位置1

    【自定义CSS样式调整块级图片标题显示位置】 在网页设计中,自定义CSS样式是控制元素布局和外观的关键手段。对于块级图片标题的位置调整,我们可以通过CSS选择器和属性来实现各种布局效果。以下将详细介绍如何使用...

    Flutter包为您提供自定义剪辑器以帮助您实现各种自定义形状

    decoration: BoxDecoration( shape: BoxShape.rectangle, border: Border.all(color: Colors.black), clipBehavior: Clip.antiAlias, // 使用抗锯齿效果 ), clipper: HeartClipper(), // 使用HeartClipper剪辑...

    2018-4-25 自定义 css 样式调整块级图片标题显示位置 (1)1

    在本文中,我们将探讨如何使用自定义CSS样式来调整块级图片标题的位置。自从小书匠5.7.6版本起,其HTML结构进行了调整,将`story_image_caption`放在了`story_image`标签内,使得用户可以更方便地通过CSS定制标题的...

Global site tag (gtag.js) - Google Analytics