网站建设| 数据库类| 图形图象| 程序设计| 现代办公| 操作系统| 考试认证| 网络技术| 软件工程| 电脑相关| 文学作品
网站开发| 网页制作| 操作系统| 图象图形| 考试认证| 数据库类| 程序设计| 硬件技术| 现代办公| 网络技术| 笑话频道
 
您的位置: 电脑书库首页-> 电脑文摘-> 图象图形-> AutoCAD-> 给AutoCAD 增加超级编辑命令

给AutoCAD 增加超级编辑命令
作者:breeze 来源:InterNet 加入时间:2005-1-11
相关文章
  • AutoCAD中输出位图
  • AutoCAD引发屏保文件关联问题
  • AutoCAD线条加粗秘诀
  • AutoCAD巧画角平分线
  • AutoCAD应用技巧44例
  • AutoCAD制表好帮手
  • AutoCAD工具栏丢失怎么办?
  • 将AutoCAD图形导入常用软件
  • 让AutoCAD启动为指定模板
  • AutoCAD中线型的定制和使用
  • 相关书籍:
  • AutoCAD 2002 详解
  • AutoCAD 2002 完全使用手册
  • AutoCAD 2002 入门
  • AutoCAD 2000 中文版技术大全
  • AutoCAD 2000 高级用户指南
  • AutoCAD作品展示
  • AutoCAD 2002 汉化补丁(第三版)
  • AutoCAD 2000 三维造型高级培训教程
  • ---- AutoCAD在中国有很广泛的用户基础,同时也有很多专业的、业余的开发人员。从R13版本开始,Autodesk 提供了ARX开发工具,面向对象的特性使开发人员如沐春风。有关ARX编程与ADS编程的比较这里不再赘述,此处只讲如何用ARX实现我们所要求的功能,不足之处请指正。

    ---- 许多二次开发软件均提供超级编辑命令,如Genius 14、HMCAD 6.0等等。读者或许对这些命令很感兴趣,能不能自己开发类似的功能呢?只要您对C++和ARX编程有一些了解,利用Autodesk提供的ObjectARX SDK软件包(可以到Autodesk网址上免费下载),您能很方便的写出此类程序,虽说不能和专业人员提供的超级编辑命令相媲美,但也能给您带来不少方便。本文利用ObjectARX提供的范例程序(缺省安装ObjectARX SDK后的路径是X:\OBJECTARX\ARXLABS\LAB07)进行简单的修改即可实现我们所要求的功能。以下是采用ObjectARX SDK 2.0,在MSVC 5.0编译环境下测试通过。

    

    ---- 首先我们要修改enttemp.h文件:

    

    ---- 原文件如下:

    

    class EntTemperature : public AcRxObject

    {

    public:

    ACRX_DECLARE_MEMBERS(EntTemperature);

    virtual double reflectedEnergy(AcDbEntity* pEnt) const = 0;

    };

    将斜体部分修改成如下:

    virtual Adesk::Boolean HgyModify(AcDbEntity* pEnt)

    const = 0;

    

    ---- 因为我们以后要以EntTemperature作为基类,而且HgyModify函数在继承类中要重写并要求实现动态调用,故此处必须声明为虚拟函数。Virtual关健字即为C++面向对象的重要的特性。

    ---- 第二、删除tempapp.def文件中的energy文本。

    

    ---- 第三、修改tempapp.cpp文件:

    

    ---- 1、 删除CircleTemperature、RigonTemperature及EllipseTemperature类的所有相关内容。

    

    ---- 2、 修改原文件中如下的内容:

    

    class DefaultTemperature : public EntTemperature

    {

    public:

    virtual double reflectedEnergy(AcDbEntity* pEnt) const;

    };

    double DefaultTemperature::reflectedEnergy

    (AcDbEntity* pEnt) const

    {

    ads_printf("\nThis entity has no area, and no reflection.\n");

    return -1.0;

    }

    修改后的内容如下:

    class DefaultTemperature : public EntTemperature

    {

    public:

    virtual Adesk::Boolean HgyModify(AcDbEntity* pEnt) const;

    };

    

    Adesk::Boolean DefaultTemperature::

    HgyModify(AcDbEntity* pEnt) const

    {

    ads_printf("\nThe entity hasn't defined,

    and nothing to be modified.\n");

    [文章录入员:tonny]

    相关文章
  • AutoCAD中输出位图
  • AutoCAD引发屏保文件关联问题
  • AutoCAD线条加粗秘诀
  • AutoCAD巧画角平分线
  • AutoCAD应用技巧44例
  • AutoCAD制表好帮手
  • AutoCAD工具栏丢失怎么办?
  • 将AutoCAD图形导入常用软件
  • 让AutoCAD启动为指定模板
  • AutoCAD中线型的定制和使用
  • 相关书籍:
  • AutoCAD 2002 详解
  • AutoCAD 2002 完全使用手册
  • AutoCAD 2002 入门
  • AutoCAD 2000 中文版技术大全
  • AutoCAD 2000 高级用户指南
  • AutoCAD作品展示
  • AutoCAD 2002 汉化补丁(第三版)
  • AutoCAD 2000 三维造型高级培训教程
  • 本站推荐内容

    近期主机类热搜关键词:
    美国服务器 美国服务器租用 海外服务器租用 国外服务器租用

    AutoCAD
    PhotoShop
    CorelDraw
    3D-MAX
    AutoCAD
    FreeHand
    Illustrator
    Authorware
    Director
    Maya/Rhino
    其它
    电脑教程阅读排行
    ·AutoCAD二次开发语言及工具...
    ·AutoCAD应用技巧44例
    ·AutoCAD中输出位图
    ·AutoCAD制表好帮手
    ·AutoCAD 2000设置技巧
    ·AutoCAD线条加粗秘诀
    ·将AutoCAD图形导入常用软件
    ·AutoCAD中线型的定制和使用
    ·AutoCAD巧画角平分线
    ·AutoCAD引发屏保文件关联问...