乐筑天下

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

[ARX]ObjectARX managed wrapper classes参考中文档(4)

[复制链接]

30

主题

54

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2004-7-16 14:19:00 | 显示全部楼层 |阅读模式
和C++交互
.NET程序中可以包含C++代码,所以可以使用没有对应托管封装类的ObjectARX API。ObjectARX托管封装类有一个属性和一个方法,用来在托管对象和非托管对象之间进行交互。
从托管对象获取内在非托管对象的指针,可以使用UnmanagedObject属性。利用非托管对象产生托管对象,可以使用DisposableWrapper.Create()方法。
和COM交互
你可以通过.NET程序获取 Automation对象模型和其它的ObjectARX COM API。
在.NET中使用AutoCAD COM API
创建一个.NET解决方案和工程。 [/ol]
从工程菜单或解决方案浏览器中选择添加引用。[/ol]
在COM 选项,选择AutoCAD 2005 Type Library 和AutoCAD/ObjectDBX Common 16.0 Type Library. [/ol]
把Autodesk.AutoCAD.Interop命名空间加入到using 或 Imports 指令。[/ol]
你可以通过使用以下属性从相应的.NET对象获得COM对象的指针:
[U]
Application.AcadApplication[/U]
[U]
Database.AcadDatabase [/U]
[U]
Document.AcadDocument[/U]
例如,以下的C#代码使用COM程序对象来提示用户输入一个角度:((AcadApplication)Application.AcadApplication).ActiveDocument.Utility.GetAngle();从COM对象获取.NET对象,可以使用FromAcadXxx静态函数。例如,Database.FromAcadDatabase可以从COM数据库对象获得.NET数据库。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2024-11-22 00:44 , Processed in 0.202467 second(s), 54 queries .

© 2020-2024 乐筑天下

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