乐筑天下

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

关于块定义AttributeDefinition

[复制链接]

34

主题

124

帖子

4

银币

后起之秀

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

铜币
260
发表于 2010-7-30 11:29:00 | 显示全部楼层 |阅读模式
为什么块定义AttributeDefinition建立之后不能修改其Position,即使修改提交了还是变回原来的,
。。。。
          attref.Position = New Point3d(p.X, p.Y, 0)------此时已经变掉
            trans.Commit()
           dim p as Point3d=attref.Position ---------此时又恢复了
回复

使用道具 举报

34

主题

124

帖子

4

银币

后起之秀

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

铜币
260
发表于 2010-7-30 16:01:00 | 显示全部楼层
该如何修改已存在的AttributeDefinition的Position啊???
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-7-31 10:27:00 | 显示全部楼层
是属性定义还是属性参照?
回复

使用道具 举报

34

主题

124

帖子

4

银币

后起之秀

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

铜币
260
发表于 2010-8-2 08:45:00 | 显示全部楼层
属性定义,属性参照也一样改不了
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-8-2 09:55:00 | 显示全部楼层
如果是改def,ref是不会跟着改的
直接改ref
另外,最好把定义和参照的含义先搞清楚
回复

使用道具 举报

34

主题

124

帖子

4

银币

后起之秀

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

铜币
260
发表于 2010-8-2 10:03:00 | 显示全部楼层
是,我知道得自己写程序改,但是不知道怎么改,因为我直接改掉commit之后没有被修改掉,还出现上面那个情况
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-8-2 11:27:00 | 显示全部楼层
我这没有问题
  1.          [CommandMethod("tt5")]
  2.         public static void test25()
  3.         {
  4.             Document doc = Application.DocumentManager.MdiActiveDocument;
  5.             Editor ed = doc.Editor;
  6.             Database db = doc.Database;
  7.             using (var tr = db.TransactionManager.StartTransaction())
  8.             {
  9.                 var bt = tr.GetObject(db.BlockTableId, OpenMode.ForRead) as BlockTable;
  10.                 var btr = tr.GetObject(bt["A"], OpenMode.ForWrite) as BlockTableRecord;
  11.                 foreach (var id in btr)
  12.                 {
  13.                     var attdef = tr.GetObject(id, OpenMode.ForWrite) as AttributeDefinition;
  14.                     if (attdef != null)
  15.                     {
  16.                         attdef.Position += new Vector3d(10, 10, 0);
  17.                     }
  18.                 }
  19.                 tr.Commit();
  20.             }        }
回复

使用道具 举报

34

主题

124

帖子

4

银币

后起之秀

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

铜币
260
发表于 2010-8-2 13:06:00 | 显示全部楼层
我也很纳闷,对于TextString,角度,颜色,大小等都能改掉,就Position改不掉,见鬼了
回复

使用道具 举报

34

主题

124

帖子

4

银币

后起之秀

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

铜币
260
发表于 2010-8-2 15:58:00 | 显示全部楼层
是不是块也得做什么变动啊
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2010-8-2 22:31:00 | 显示全部楼层
我测试的结果是改掉了。。。。。。
你的Cad版本?
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-6-29 03:48 , Processed in 3.327883 second(s), 73 queries .

© 2020-2025 乐筑天下

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