结合使用按需加载和以索引保存图形,可以提高包含外部参照的图形的性能。按需加载可以配合 XLOADCTL 和 INDEXCTL 系统变量一同使用。打开按需加载时,如果已将索引保存到参照图形中,AutoCAD 只将参照图形中重生成当前图形所必需的数据加载到内存中。换句话说,被参照的材料是“根据需要”读取的。
要最大限度地利用按需加载的优点,需要将参照图形与图层及空间索引一起保存。当处于以下情况时,按需加载在性能上的优点最为显著:
- 剪裁外部参照以显示它的一小部分,并在外部参照的图形中保存空间索引。
- 冻结外部参照的几个图层,并且将外部参照的图形与图层索引一起保存。
要打开按需加载,请使用 XRefDemandLoad 特性。如果通过 acDemandLoadEnabledWithCopy 选项打开了按需加载,AutoCAD 将生成外部参照文件的临时副本,并按需加载该临时文件。然后在允许修改初始参照图形的同时,按需加载外部参照。如果禁用按需加载,AutoCAD 将读取整个参照图形,而忽略图层可见性或剪裁实例。
要打开图层和空间索引,请使用 SetVariable 方法设置 INDEXCTL 系统变量。以下设置适用于 INDEXCTL 系统变量:
- 0 = 不创建索引
- 1 = 创建图层索引
- 2 = 创建空间索引
- 3 = 创建空间索引和图层索引