乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 86|回复: 6

如何水平翻转层的几何图形?

[复制链接]

14

主题

78

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
134
发表于 2006-5-20 08:20:02 | 显示全部楼层 |阅读模式
我在一幅画中创建了一些几何图形。主要是多段线、线性尺寸和文本。
现在,我希望能够围绕垂直轴镜像特定层上的所有几何体(不保留原始几何体)。
我知道我可以使用sendcommands,但是我不愿意这样做。有什么建议吗?越简单越好!

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-5-20 09:59:52 | 显示全部楼层
哈瓦诺,你可以使用3dmirer,它不使用轴,而是使用平面。
这是翻转东西的东西。根据您的需要调整它,如果您没有选择集功能,请下载它。
[0]
回复

使用道具 举报

6

主题

94

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2006-5-20 10:58:07 | 显示全部楼层
谢谢你到目前为止。在你的帮助下,我写了这段代码。但是有些不对劲,我不知道是什么...
  1. Public Sub HorizontalFlip()
  2. 'Corrected after Bryco's hint about variable declaration syntax (ver. below).
  3. 'Now it works!
  4. Dim Thingy As AcadEntity
  5. Dim LayerName As String
  6. Dim MostLeftX as Double, MostRightX As Double  'thanks Bryco!
  7. Dim BBoxMin, BBoxMax 'variants, will later be specified by GetBoundingBox
  8. Dim FlippointA(0 To 2) as Double, FlippointB(0 To 2) As Double 'thanks Bryco!
  9. MostLeftX = 2147483647: MostRightX = -2147483647
  10. LayerName = "0" 'can be any valid layername
  11. For Each Thingy In ThisDrawing.ModelSpace
  12.     If Thingy.Layer = LayerName Then
  13.         Thingy.GetBoundingBox BBoxMin, BBoxMax
  14.         If BBoxMin(0)  MostRightX Then MostRightX = BBoxMax(0)
  15.     End If
  16. Next
  17. 'I now have MostLeftX and MostRightX for all geometry on layer.
  18. 'next, I define the mirror line, halfway between MostLeftX and MostRightX
  19. FlippointA(0) = (MostLeftX + MostRightX) / 2: FlippointB(0) = FlippointA(0)
  20. FlippointA(1) = 0: FlippointB(1) = 1
  21. FlippointA(2) = 0: FlippointB(2) = 0 'endpoints of the vertical mirror line
  22. 'finally, I want to horizontally flip all entities on the layer
  23. For Each Thingy In ThisDrawing.ModelSpace
  24.     If Thingy.Layer = LayerName Then
  25.         Thingy.Mirror FlippointA, FlippointB        'thanks Dnereb!
  26.         Thingy.Delete
  27.     End If
  28. Next
  29. End Sub

我忽略了什么?
回复

使用道具 举报

14

主题

78

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
134
发表于 2006-5-20 13:51:42 | 显示全部楼层
Dim Flippoint A(0 To 2), Flippoint B(0 To 2)As Double
只有一个是双精度
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-5-20 14:31:06 | 显示全部楼层
非常感谢布莱科!
我立即回顾了我当前的项目,发现了类似的错误变量声明。显然,我和他们一起逃脱了。
回复

使用道具 举报

14

主题

78

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
134
发表于 2006-5-20 14:47:43 | 显示全部楼层
谢谢,谢谢你,贝伦德。选择不是真正的出路。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-5-20 16:11:12 | 显示全部楼层
没有Thx,
这只是一个简单的部分,我有一个简单的用户界面。
祝你们玩得开心。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-5 16:15 , Processed in 0.566687 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表