找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: gdzhou

[求助]:MicroStation宏的问题

[复制链接]
发表于 2004-10-21 14:43:05 | 显示全部楼层
最初由 MicroStation迷 发布
[B]从CAD向MS导入时有选项可以控制不导成共享单元而为普通单元! [/B]

请问怎样做到?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-10-21 19:01:02 | 显示全部楼层
我是用DOs下的批处理来转的!!!所以就没什么选项默认就行了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-21 19:23:28 | 显示全部楼层
使用drop命令不就都转过来了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-10-21 23:04:07 | 显示全部楼层
呵呵,跳题了,现在主要问题不是这个!
是怎么用宏实现批处理替换单元
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-22 10:05:51 | 显示全部楼层
laixc66  :
当你在V7下选File→Import DWG/DXF时会出现一对话框,选其中的Settings→General可出现如图所示的对话框,请看红色所圈部分。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-22 10:18:20 | 显示全部楼层
gdzhou:
我就用如下几行就搞定了单元替换。我不知道你对单元替换的含义和我理解的是否一样。单元替换是在单元库中的单元被改变后想改变DGN图中的单元才用。所以不需要设置什么激活单元名,全部选中所有元素,MS会自己在库中和DGN中找同名的单元来替换。
Dim point as MbePoint
point.x = 0.0
point.y = 0.0
point.z = 0.0
MbeSendCommand "choose all"
MbeSendCommand "REPLACE CELLS EXTENDED "
MbeSendDataPoint point
MbeSendReset
附图是我将你的CEL中的H6110由圆形改成圆形加十字叉后又以H6110存入单元库(当然事先得删除原来的H6110),再执行上面我这段小宏所得的结果!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-10-22 12:46:59 | 显示全部楼层
呵呵,可能是理解不一样吧!
我的目的是把图形中一些指定的单元替换成单元库中指定的单元,而在图形中的单元是在单元库中所没有的
按照你的理解应该是更新吧
下面给个样图吧!!对于调试那个程序应该有些帮助。

我用的是winrar3.4b1压缩的
MS迷兄有没有MSN
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-22 20:15:13 | 显示全部楼层
我这里还是不能下载XDCAD上的附件,不知为什么???
总出现一个保存为attachment.htm文件的提示。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-22 22:04:36 | 显示全部楼层
直接下载 不要使用下载软件
如果还是这样问题 那么你把保存的文件名改成*.rar试试
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-10-22 23:19:38 | 显示全部楼层
那我再给你个别的链接吧
http://www.k65.net/mail/url.php?n=Z2R6aG91PS9zYW1wbGUv
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-23 09:08:30 | 显示全部楼层
用密码zgd进不去呀!?

-----------------------------------------------------
“如果在执行前先把替换单元的工具条点起后,一次就可以替换成功 ”实际上在这种情况下,MS只是执行了MbeSendData功能,我们的REPLACE CELL EXTENDED命令根本没有被执行。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-23 11:40:55 | 显示全部楼层
样图的那个链接是没有密码的

--------
如果是那样的话,怎样才能在宏中实现替换呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-10-23 12:25:31 | 显示全部楼层
主要是怎么在宏中可以对文件批处理进行替换
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-24 10:27:27 | 显示全部楼层
不用REPLACE CELL EXTENDED命令,直接提取现有单元的原点,放置新单元,再删除选择集。
下面这段代码实现选第一层所有红色单元,用DECID单元替换。未考虑单元的缩放和旋转。

Sub Main
   Dim elemSet as New MbeElementSet
   Dim setMember as MbeSetMember
   Dim elem as New MbeElement
   Dim point As MbePoint
   
   MbeSetAppVariable "SELECTBY", "selectorGlobals.level[0]", 1&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.level[1]", 0&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.level[2]", 0&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.level[3]", 0&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.colorButton", -1&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.color", 3&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[0]", 5011&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[1]", -1224&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[2]", -30&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[3]", -1&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[4]", -1&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[5]", -65&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[6]", -1&
   MbeSetAppVariable "SELECTBY", "selectorGlobals.typemask[7]", -1&
   MbeSendCommand "SELECTBY EXECUTE "

   MbeSetAppVariable "", "tcb->activecell", "DECID"
   tmpStatus = elemSet.fromSelectionSet(0)
   status = elemSet.getFirst(setMember)
   Do While status = MBE_Success
      tmpStatus = elem.fromFile(setMember.filePos, setMember.fileNum)
      If elem.type = MBE_CellHeader Then
         tmpStatus = elem.getOrigin(point)
         MbeSendCommand "PLACE CELL ICON "
         MbeSendDataPoint point
      End If
      status = elemSet.getNext (setMember)
    Loop
   
    MbeSendCommand "DELETE"   
End Sub
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-10-25 13:42:30 | 显示全部楼层
好,我去试试!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-25 13:06 , Processed in 0.430673 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表