gpt4 book ai didi

java - 如何将鱼尾纹添加到 UMLet?

转载 作者:行者123 更新时间:2023-11-30 11:50:00 25 4
gpt4 key购买 nike

我正在使用 UMLet用于创建类图。

UMLet 允许您通过为显示编写自己的 Java 代码来添加自定义元素。然后将它们作为 .java 文件存储在程序目录中。

如何将鱼尾纹添加为自定义元素?

最佳答案

几年前我也想要同样的东西。我最终只是下载了源代码并进行了更改。我相信我使用的是 Umlet 10.0.3 或 10.3。我更改的文件是 com.umlet.element.base.Relation.java。基本上它是修改属性解析器代码。我添加了两个新端点:“m>”和“

在方法setState中我添加了:

else if (s.indexOf(">>") >= 0) {
endArrow = "<<";

// Glenn Crow Foot Mod Begin
} else if (s.indexOf("m>") >= 0) {
// Mulitplicity set -> crow's foot for ERD
endArrow = "crowsFoot";
// Glenn Crow Foot Mod End

}
else if (s.indexOf(">") >= 0) {
if (endArrow.equals("")) endArrow = "<";
}

再往下一点用同样的方法:

else if (s.indexOf("<<") >= 0) {
beginArrow = "<<";

// Glenn Crow Foot Mod Begin
} else if (s.indexOf("<m") >= 0) {
// Mulitplicity set -> crow's foot for ERD
beginArrow = "crowsFoot";
// Glenn Crow Foot Mod End

}
else if (s.indexOf("<") >= 0) {

paintEntity 方法中,我添加了以下内容:

else if (r instanceof Arrow) {
Arrow arrow = (Arrow) r;

// Glenn Crow Foot Mod Begin
if (arrow.getString().equals("crowsFoot")) {
g2.drawLine( (int) arrow.getX(), (int) arrow.getY() + arrow.getArrowEndA().y,
(int) arrow.getX() + arrow.getArrowEndA().x, (int) arrow.getY() );
g2.drawLine( (int) arrow.getX(), (int) arrow.getY() + arrow.getArrowEndB().y,
(int) arrow.getX() + arrow.getArrowEndB().x, (int) arrow.getY() );
// Glenn Crow Foot Mod End

// A.Mueller Start
} else if (!arrow.getString().equals("n")

我对结果很满意。但我不想把它放在每个版本中,而且它从未被添加到代码库中(我怀疑是因为它不够 uml-ish),所以它现在可能已经过时了。

关于java - 如何将鱼尾纹添加到 UMLet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8154991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com