乐筑天下

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

块计划创建者

[复制链接]

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2008-5-1 17:05:19 | 显示全部楼层 |阅读模式
我正在构建一个块时间表创建者,它搜索所有打开的图纸并创建一个块和描述的时间表,按类型过滤。
我构建了基本代码,尽管我必须扩展它以允许时间表命名、文本大小、图层等。目标是让它100%用户可配置,因此它更适合多个学科的多个用户。我最初考虑为我的电气时间表这样做,后来决定它也适用于我的窗户和门。
因此,我目前的情况是我需要确定所有块的边界框并缩放它们以适应由边界框确定的单高度空间或双高度空间的空间限制。(即,如果块要缩放到小于70%以适合单个高度行,则使该行成为双高度。(见附图)
我将根据我们的标准为窗户和门使用其他符号,但最终我希望用户能够选择是使用块还是块内的属性。

dgb51mqkl11.PNG

dgb51mqkl11.PNG

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

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

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2008-5-1 17:52:00 | 显示全部楼层
听起来像是一个很酷的道具,基思。
看起来需要一点工作才能使它如此多才多艺。
回复

使用道具 举报

7

主题

35

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
63
发表于 2008-5-1 21:59:44 | 显示全部楼层
Keith,
在图形中循环时,您还可以计算要添加到明细表中的类似块的数量。
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2008-5-3 01:41:37 | 显示全部楼层
还行。。这是第一个化身..有限的错误检查和代码不是真正漂亮的..我没有时间组织和优化...我甚至可能不打扰
它应该适用于2000 +的任何版本的AutoCAD(在不支持它的版本中没有TrueColor或ColorBooks)
在开始时,设置时间表将是一个痛苦,直到您输入所有描述。(请参阅下面的注释)
待办事项:
将块“图标”(几何图形)添加到明细
表中 将块计数添加到明细表中
过滤已指定为明细表类型的现有块
添加“删除明细表模板”选项
允许在明细表中添加替代图标(而不是块几何体)
在明细表中添加列排序
添加功能以打开要包含在明细表中的其他图形
将机制添加到更改明细表类型时自动更新块列表
需要更多错误检查
注释:
单击块列表中的项目以添加说明
仅将描述添加到要定义的特定计划所需的项目,因为将显示所有当前块(请参阅ToDo列表中的过滤项目)
如果在单击“获取所有块”按钮后选择其他图形,则需要再次单击它以更新块列表。同样,如果您更改计划类型或创建新计划,则需要再次选择“获取所有块”按钮。
当“获取所有块”按钮更改为“插入明细表”时,必须再次选取它才能将明细表放置在活动图形中。
操作:
执行宏“生成调度”...它应该是proggie中唯一暴露的潜艇。
法律资料:
实施VLAX类版权1999-2001由Frank Oquendo(参见来源的完整版权披露)
版权2008 ResourceCAD国际
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2008-5-5 16:52:58 | 显示全部楼层
仅供参考..GetSchedules 函数中存在一个错误,该错误导致程序在读取注册表以获取已定义计划的列表时失败。如果不存在任何计划,则会生成致命错误。
GetSchedules 函数需要在 modCount 模块中替换。
  1. Public Function GetSchedules() As Variant
  2.     Dim MySettings As Variant, intSettings As Integer
  3.     Dim Dummy(0, 0) As Variant
  4.     MySettings = GetAllSettings("ScheduleCreator", "Schedules")
  5.     On Error GoTo EmptyVar
  6.     If UBound(MySettings, 1) >= 0 Then
  7.         GetSchedules = MySettings
  8.     End If
  9.     GoTo EndSub
  10. EmptyVar:
  11.     GetSchedules = Dummy
  12. EndSub:
  13. End Function

在调用函数(form initialize)中,将函数末尾的For X循环替换为:
  1.     For X = 0 To UBound(Schedules, 1)
  2.         If Schedules(X, 0)  "" Then
  3.             Set Lbl(X + 1) = New ScheduleLink
  4.             ReDim Preserve Lbl(0 To (UBound(Lbl) + 1))
  5.             Lbl(X + 1).Caption = Schedules(X, 0)
  6.             Lbl(X + 1).Tag = Schedules(X, 0)
  7.         End If
  8.     Next X

我添加了一些其他函数,只要我将它们全部解决,我就会发布新代码。
回复

使用道具 举报

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2008-5-5 19:21:32 | 显示全部楼层
基思,
这看起来很有趣。我可能不得不下载它并玩它,但我也在发帖问你是否看过这个:
http://www.codezebra.com/livinglegend.html
我玩了一会儿,它很可爱。我想你想写自己的,但这也可能给你一些其他的想法。祝你好运
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-5 15:11 , Processed in 0.634735 second(s), 67 queries .

© 2020-2025 乐筑天下

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