规划整个反应堆过程
在本课中,您需要定义几个新函数。本课没有向您介绍新代码的所有方面的详细信息,而是概述了代码背后的概念。在本课程结束时,您将拥有创建与第 1 课中运行的示例程序相同的花园小径应用程序所需的所有源代码。 注意:在开发和调试基于 reactor 的应用程序时,总是有可能使 AutoCAD® 处于不稳定状态。这可能是由多种情况引起的,例如无法从已删除的实体中删除反应堆。因此,建议在开始第 7 课之前,关闭 Visual LISP,同时保存所有打开的文件,退出 AutoCAD,然后重新启动这两个应用程序。
首先加载第 6 课结束时存在的项目。 在花园小径应用中还有两项明显的工作要做:
您还需要考虑如何处理程序中的全局变量。通常,希望在整个 AutoCAD 图形任务中保留全局变量的值。然而,就反应堆而言,情况并非如此。为了说明这一点,假设您的花园路径应用程序的用户在一张图形中绘制了多条花园路径。执行此操作后,用户会擦除它们,首先一次擦除一个,然后一次擦除两个,依此类推,直到擦除一条路径以外的所有路径。 第 5 课介绍了一个全局变量,负责为即将擦除的折线存储指向反应器的指针。当声明为 时,该事件会让您知道折线即将被擦除。在事件触发之前,折线实际上不会被移除。*reactorsToRemove**reactorsToRemove*gp:outline-erasedgp:command-ended 用户首次删除折线时,一切正常。在 中,存储指向反应器的指针。当火灾发生时,你移除与反应堆所连接的折线相关的瓷砖,一切都很好。然后,用户决定擦除两条路径。因此,应用程序将获得两个对 的调用,每个调用对应于即将擦除的折线。您必须预料到两个潜在问题:gp:outline-erasedgp:command-endedgp:outline-erased
以下是用户使用单个擦除命令擦除两条花园路径需要发生的一系列事件。请注意如何处理全局变量:
除了全局之外,应用程序还包括一个全局,用于存储指向将要修改的任何折线的指针。本课稍后将介绍应用程序的另外两个全局变量。*reactorsToRemove**polyToChange* |
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-3-5 17:47
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.