java公路几何图,Java8 中文教程

构造区域几何(CAG)是通过对现有形状执行布尔运算来创建新几何形状的过程。在 Java 2D API 中,Area类实现Shapeinterface并支持以下布尔操作。

64cb91cc2ebc86feb98f7fbf879cb37c.gifUniond8b007ce7770200bc3f55b840318931f.gifSubtraction

79cdec7afd2f848ae4b23df20a76f489.gifIntersection3d6a8a54dc483093502e967fa99ae80b.gif异或(XOR)

Example: Areas

在此示例中,Area个对象根据多个椭圆构造了梨形。

Note:

如果看不到 Servlets 正在运行,则需要至少安装Java SE 开发套件(JDK)7版本。

Pear.java包含此 Servlets 的完整代码。

每个叶子都是通过在两个重叠的圆上执行相交而创建的。

leaf = new Ellipse2D.Double();

...

leaf1 = new Area(leaf);

leaf2 = new Area(leaf);

...

leaf.setFrame(ew-16, eh-29, 15.0, 15.0);

leaf1 = new Area(leaf);

leaf.setFrame(ew-14, eh-47, 30.0, 30.0);

leaf2 = new Area(leaf);

leaf1.intersect(leaf2);

g2.fill(leaf1);

...

leaf.setFrame(ew+1, eh-29, 15.0, 15.0);

leaf1 = new Area(leaf);

leaf2.intersect(leaf1);

g2.fill(leaf2);

重叠的圆还用于通过减法运算来构造茎。

stem = new Ellipse2D.Double();

...

stem.setFrame(ew, eh-42, 40.0, 40.0);

st1 = new Area(stem);

stem.setFrame(ew+3, eh-47, 50.0, 50.0);

st2 = new Area(stem);

st1.subtract(st2);

g2.fill(st1);

梨的身体是通过对圆形和椭圆形进行联合操作而构造的。

circle = new Ellipse2D.Double();

oval = new Ellipse2D.Double();

circ = new Area(circle);

ov = new Area(oval);

...

circle.setFrame(ew-25, eh, 50.0, 50.0);

oval.setFrame(ew-19, eh-20, 40.0, 70.0);

circ = new Area(circle);

ov = new Area(oval);

circ.add(ov);

g2.fill(circ);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值