明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1037|回复: 7

[.net群] 2013-06-24 明经 AutoCAD.NetApi (2474812) 群聊记录:[image={9B5ABF0F-7054-0BC8-B2CF-2FCE

 关闭 [复制链接]
发表于 2013-6-24 01:16:30 | 显示全部楼层 |阅读模式
[vb.net]请教 01:16:30
[qqimg]oldimg/{9B5ABF0F-7054-0BC8-B2CF-2FCE79A6A445}.jpg[/qqimg]
 楼主| 发表于 2013-6-24 13:13:45 | 显示全部楼层
[xingang1005]星光 13:13:45
读取选中实体的扩展数据怎么写
从O开始 13:14:01
xdata
 楼主| 发表于 2013-6-24 13:25:14 | 显示全部楼层
萝卜 13:25:14
GetXDataForApplication
[xingang1005]星光 13:26:43
..
 楼主| 发表于 2013-6-24 13:59:07 | 显示全部楼层
[xingang1005]星光 13:59:07
[qqimg]oldimg/{6AF2BB8F-BD57-1341-A15B-A1E753D57676}.jpg[/qqimg]我不想要读取时的提示要怎么改
[zhengjian211]疯狂青蛙 14:00:34
把每句的意思搞清不就行了
[xingang1005]星光 14:01:14
时间有限
我也想慢慢来
[zhengjian211]疯狂青蛙 14:01:40
这不是有不有限的问题
这都要问的话,后面不用弄了. 这是最基础的
[xingang1005]星光 14:02:16
一个半月从C#白痴做到现在没办法
s 14:02:34
把ed.writeMessage这三行注释掉。
[zhengjian211]疯狂青蛙 14:02:45
和语言没关系
你单步调试不就知道了
[xingang1005]星光 14:04:07
@s 你理解错了 我是不想要那个“请选择读取对象的提示”
ed.writeMessage这三行注释掉  这个我知道是命令行输出
从O开始 14:04:50
 你这水平很难开发的
换个构造函数
[zhengjian211]疯狂青蛙 14:05:12
你做过开发吗
[xingang1005]星光 14:05:16
[zhengjian211]疯狂青蛙 14:05:26
把那个字删掉留空就行了
不要提示,如何来获取呢?
[xingang1005]星光 14:06:06
[zhengjian211]疯狂青蛙 14:06:55
把你的需求描述清楚 这是基本
[xingang1005]星光 14:07:01
我是要直接读取实体的扩展数据 而且不给用户提示 我只是对CAD里的函数不熟
从O开始 14:07:27
这个代码和扩展数据一点关系也没有
你找错了吧
[xingang1005]星光 14:08:41
[qqimg]oldimg/{76E55A10-B2B0-E543-EE1E-C516ADC7EDD6}.jpg[/qqimg]
这是什么
从O开始 14:09:12
[xingang1005]星光 14:09:24
我只是想后台读出我写在这里的数据
[xingang1005]星光 14:10:51
一个学信息管理的 突然来搞编程没办法 不会的还真是多
[zhengjian211]疯狂青蛙 14:11:26
换个人吧
【C#】雪域残阳 14:11:48
程序谁都可以开发吧 我想
只要愿意 谁都可以去学 开发
[zhengjian211]疯狂青蛙 14:12:10
太懒了
给你个可运行的源码
自己去研究吧
在群共享
[xingang1005]星光 14:12:43
所以你们不要说我问的问题太菜  我是还没弄清楚远离
[xingang1005]星光 14:13:30
不是懒  我现在一天八小时都在看这个敲代码
 楼主| 发表于 2013-6-24 14:23:35 | 显示全部楼层
[zhengjian211]疯狂青蛙 14:23:35
慢慢来 先弄hello world
急不出东西,实在不爽辞职算了
[xingang1005]星光 14:24:11
不行的 我不想放弃
[C#]咸鱼 14:24:21
有个过程。开始很慢,上路就好了。
[zhengjian211]疯狂青蛙 14:24:22
让你干自己不擅长的事情,催这么急,也不是什么好单位.
分工一比遭
[C#]咸鱼 14:24:42
要上路才行,才知道要做啥,要问啥,能得到啥。。。
[xingang1005]星光 14:26:28
我感觉再坚持一段时间我就会了 我现在就剩图层和扩展数据不知道  其他的虽然不熟好歹算看完了
从O开始 14:27:20
你都做得啥功能?
[xingang1005]星光 14:33:23
等我做个动画给你看看
[xingang1005]星光 14:37:58
我可以让代码生成任意大小的一个柜子 然后双击弹出参数 和修改参数
[zhengjian211]疯狂青蛙 14:38:38
你这都实现了,还搞不明白扩展数据
[xingang1005]星光 14:39:18
我目前就是在做修改啊
[zhengjian211]疯狂青蛙 14:39:31
别人做好的?
[xingang1005]星光 14:39:31
我目前要做的就是修改参数 我想把参数写进扩展数据然后可以修改大小
我自己做的
[C#]紫爱leslie 14:40:42
生成人一大小的柜子时候你不写扩展数据?要到修改参数在写扩展数据?
[xingang1005]星光 14:40:54
纯粹个人一点一点的摸索 累的够呛 虽然有的我自己都不懂但是也弄出来了 一点一点的死抠
[zhengjian211]疯狂青蛙 14:41:10
发个图看看
gif图
[xingang1005]星光 14:41:20
扩展数据我已经写进去了 读取不会
[C#]紫爱leslie 14:41:27
都能写进去了还不会读啊。。。
网上找个读取的不就行了
[xingang1005]星光 14:42:36
GIF太大不让我发啊
[C#]紫爱leslie 14:43:06
List tvList = new List();

             XDB.Database db = XDB.HostApplicationServices.WorkingDatabase;
             DocumentCollection document = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager;
             using (DocumentLock aclock = document.GetDocument(db).LockDocument())
             {
                 using (XDB.OpenCloseTransaction trans = db.TransactionManager.StartOpenCloseTransaction())
                 {
                     XDB.BlockTable bt = (XDB.BlockTable)trans.GetObject(db.BlockTableId, XDB.OpenMode.ForRead);
                     XDB.Entity theEntity = (XDB.Entity)trans.GetObject(mObjId, XDB.OpenMode.ForRead);

                     XDB.ResultBuffer resBuf = theEntity.GetXDataForApplication(appName);
                     if (resBuf != null)
                     {
                         tvList.AddRange(resBuf.AsArray());
                         resBuf.Dispose();
                     }

                     trans.Commit();
                 }
             }
得了看你那么累,发个源码给你吧
[C#]咸鱼 14:44:04
[xingang1005]星光 14:44:11
这个代码要引用DotNetARX
[xingang1005]星光 14:44:45
TypedValue这个东西是啥
从O开始 14:45:18
数据类型
[xingang1005]星光 14:46:07
TypedValue
[C#]紫爱leslie 14:46:17
这个哪需要引用DotNetARX。。。。。
[xingang1005]星光 14:46:32
[qqimg]oldimg/{36A47CD9-D9D6-676C-752D-D94BBF3764B6}.jpg[/qqimg]
[C#]紫爱leslie 14:46:46
我最讨厌一个版本需要一个编译,还弄什么DotNetARX。。。
CaptainDavid 14:46:49
[qqimg]oldimg/{2598701E-545B-D7FA-5841-840D63A08DEB}.gif[/qqimg]
[xingang1005]星光 14:47:21
[qqimg]oldimg/{36A47CD9-D9D6-676C-752D-D94BBF3764B6}.jpg[/qqimg]
[zhengjian211]疯狂青蛙 14:47:42
DotNetARX 反向编译下
自己再扩充点
[C#]紫爱leslie 14:48:01
就是这个实际
[xingang1005]星光 14:48:09
我不想要读取时的提示 但是PromptEntityResult ent = ed.GetEntity("请选择读取对象");这个东西怎么用不知道
从O开始 14:48:31
这个是提示你选择对象  ,这有什么不理解的
[C#]紫爱leslie 14:48:36
你还是把基础搭好吧
[xingang1005]星光 14:49:09
理解 我是要把他去掉
从O开始 14:49:17
getentity getpoint getstring  getselection、、、、、、
[C#]紫爱leslie 14:49:20
PromptEntityResult 类来接受ed.GetEntity("请选择读取对象")方法
[xingang1005]星光 14:51:17
唉 我就是后台读取 得去掉这个 读数据
[C#]紫爱leslie 14:51:41
听的好晕
[VB.NET/VBA津]绒绒 14:51:47
扩展记录,Xrecord中的数据可以修改吗?
从O开始 14:52:02
  一个图例如果有多个对象,你要修改肯定需要先选择修改的对象
要不你就遍历图形
[xingang1005]星光 14:52:41
你们都没整明白我想表达什么 
从O开始 14:52:59
你都没说明白我们肯定不会明白
[C#]咸鱼 14:53:01
用户不得有操作,直接偷偷的处理。。。
[xingang1005]星光 14:53:18
是啊
[C#]咸鱼 14:53:34
去掉就去掉呗。
【C#】雪域残阳 14:53:55
他是要去掉“请选择……”
从O开始 14:54:12
肯定不是
他是用户不选择对象
告诉你了遍历图形
[xingang1005]星光 14:54:37
帮我写一个方法我看看 就是读取选中的实体扩展数据 就行  不给任何用户提示的
[C#]咸鱼 14:54:50
程序控制选择集。
[xingang1005]星光 14:55:13
还有6天就要交任务了
[沪C#]无情剑客 14:55:14
用户不选择对象,CAD怎么知道需要显示哪个扩展数据?
要是有1w个实体,CAD又不知道你要显示哪个的扩展数据
[xingang1005]星光 14:55:59
用户不用选择 只要用户点击了该实体就读取那一个实体的扩展数据 但是没有提示
从O开始 14:56:32
事件?
[xingang1005]星光 14:57:36
就是 当用户选中了一个实体是就自动获取该实体的扩展数据 就需要这么一个方法
【C#】雪域残阳 14:57:47
明白了
就是一堆东西放那里
[xingang1005]星光 14:57:58
但是不需要给用户提示
[沪C#]无情剑客 14:57:59
点击了就是选择了
【C#】雪域残阳 14:58:06
用户那鼠标点
[xingang1005]星光 14:58:12
[沪C#]无情剑客 14:58:16
直接用ed.getXXX().....
【C#】雪域残阳 14:58:23
就跟高版本CAD的快捷特性一样
不需要任何的提示
[沪C#]无情剑客 14:58:41
高版本是悬浮,不是点的
【C#】雪域残阳 14:58:55
你点了 同样有的
而且更多
[xingang1005]星光 14:59:01
他只要一点 就自动获取了 然后弹出的窗体来提取扩展数据进行操作
【C#】雪域残阳 14:59:27
一样的
[沪C#]无情剑客 14:59:32
点了就是操作了,那个get有几种方法你直接用无参的就行了
【C#】雪域残阳 14:59:36
CAD的特性 就是这样 的
[xingang1005]星光 15:00:07
我用无参老是出错
[zhongmica`][C#]小寒 15:01:53
你不会传个NULL?
[xingang1005]星光 15:02:09
[qqimg]oldimg/{95974CB2-4D1B-09DD-F5C7-8B5934C07F2D}.jpg[/qqimg]帮我改一下,就是后台偷偷的读取,不用给用户提示
[zhongmica`][C#]小寒 15:02:41
ed.getentity("");
[xingang1005]星光 15:03:30
不行的 那样改还是会有一个“:”符号
[zhongmica`][C#]小寒 15:03:47
null
[xingang1005]星光 15:03:49
而且不是自动的读取需要点选
null报错
[C# ARX]ahlzl 15:04:02
事件,拾取事件
从O开始 15:04:22
告诉你了   事件
[xingang1005]星光 15:04:49
代码我已经发了 哪个老大帮忙改几句 也好让我豁然开朗
从O开始 15:05:02
[qqimg]oldimg/{288ECDB0-7205-3AB0-6DD2-695B151F6066}.jpg[/qqimg]
[xingang1005]星光 15:05:05
这几天脑袋都僵了
从O开始 15:05:09
和这个代码一点关系也没有
[沪C#]无情剑客 15:05:10
上班不编程
[zhengjian211]疯狂青蛙 15:06:02
屏蔽双击事件 弹出自定义窗体
[xingang1005]星光 15:06:23
这个我会啊 我已经写好了 双击的事件
[zhengjian211]疯狂青蛙 15:06:43
研究下那事件的参数
[xingang1005]星光 15:06:54
[qqimg]oldimg/{403ADDAE-B473-D375-0747-3AC5C760C164}.jpg[/qqimg]
[zhengjian211]疯狂青蛙 15:06:58
肯定有封装双击实体的id
[xingang1005]星光 15:08:40
我再弄弄 一样一样来 目前我还有修改 加材质加图层这三样没弄好
[zhengjian211]疯狂青蛙 15:12:23
acaddoc.BeginDoubleClick += new _DAcadDocumentEvents_BeginDoubleClickEventHandler(beginDoubleClick);.
你事件选错了
[xingang1005]星光 15:14:09
DocumentCollection dm = Application.DocumentManager;
           dm.DocumentLockModeChanged += new DocumentLockModeChangedEventHandler(dm_DocumentLockModeChanged);这个?
这不是关联事件吗
[zhengjian211]疯狂青蛙 15:14:47
看字面就知道
[zhengjian211]疯狂青蛙 15:15:38
 楼主| 发表于 2013-6-24 19:06:34 | 显示全部楼层
[xingang1005]星光 19:06:34
还有代码可以抄
 楼主| 发表于 2013-6-24 21:35:38 | 显示全部楼层
[C#]存在 21:35:38
我用SendStringToExecute向命令行发送了一个画圆的命令,请问如何通过程序把圆找到啊
[VB&c++]阿华 21:40:09
呵呵
[C#]存在 21:40:26
怎么弄啊
从O开始 21:40:50
不用命令,自己创建
[VB&c++]阿华 21:40:59
窗口缩放到圆的范围
[C#]存在 21:41:25
我还要对圆进行拉伸操作
要程序自己找到
从O开始 21:42:36
不用命令,自己创建
[C#]存在 21:43:03
我们是打算用命令实现
能不能找到用命令画的实体啊
从O开始 21:43:40
从O开始 21:44:35
[C#]存在 21:44:58
有没有方法啊
从O开始 21:46:09
告诉你自己创建圆不理解你问什么偏用命令
[C#]存在 21:46:48
我们打算用参数化表达建模
[C#]存在 21:47:21
通过程序操作CAD建模命令生成三维实体
[VB&c++]阿华 21:48:24
向命令行发送命令的方式很难找到创建的实体
[C# ARX]ahlzl 21:48:32
只用命令,干不了什么事的
[C#]存在 21:49:14
啊 这条路不通吗
[C# ARX]ahlzl 21:49:26
死路一条
[VB&c++]阿华 21:49:35
发送命令以后,等待几秒,然后通过选择集吧
[VB&c++]阿华 21:50:33
用实体类型和圆心等来选择,估计你也不会
从O开始 21:51:07
代码创建是最简单的方式,你要自己考虑清楚
[VB&c++]阿华 21:51:47
也可以选择最后加入数据的实体
[VB&c++]阿华 21:52:26
也可以选择最后加入数据库的实体
[C#]存在 21:54:17
我如果代码创建一个圆 ,在用命令更改圆半径,
那么圆还能找到吗
[C# ARX]ahlzl 21:54:37
当然
[VB&c++]阿华 21:55:08
你用代码创建圆,可以得到数据库给你的ID
[C# ARX]ahlzl 21:55:17
只会用CAD命令,你是寸步难行。
[C#]存在 21:56:31
这样啊  那我就用代码创建实体,用命令对该实体进行操作
从O开始 21:56:58
还用命令?
代码操作不是更好
[C# ARX]ahlzl 21:58:25
寸步难行!
[C#]存在 21:58:35
那么命令这么多,代码可以调用命令的类库什么的吗
从O开始 21:59:01
你还是从基础慢慢来吧,要不你后面肯定会遇到很多问题
[C#]存在 21:59:49
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-6 07:25 , Processed in 0.196786 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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