我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網(wǎng)站首頁 > CAD新聞

關(guān)于在布局中增加圖元等操作的一些認識

時間:2011-01-02 17:41:53 來源:未知

以下都是這些天研究布局的成果(能力有限導致認識有限,包涵)

    我目前是先激活某個圖紙空間(布局),然后再增加圖元,但是當圖紙比較大的時候,重生成模型的時候比較長。那能不能不激活圖紙空間,就能直接在某個布局中寫入圖元?

我目前代碼:

    Dim Textlayout As Object
    Set Textlayout = ThisDrawing.Layouts.Item(layoutItemI)

    ThisDrawing.ActiveLayout = Textlayout

里面layoutItemI是我傳入的一個參數(shù)。就是能不能不用激活(ThisDrawing.ActiveLayout = Textlayout),用某個方法吧圖元增加到不激活圖紙空間。(很遺憾沒有找到方法)

目前的認識一:只有先激活某個圖紙空間,才能在里面增加圖元(但是可以修改圖元,我目前在布局中插入頁碼就是用這個方法)

------------------------------------------------

修改1:認識一是錯的。因為可以不激活某個圖紙空間而在里面增加圖元

如下:

Sub tt()
Dim blkdef As AcadBlock
Set blkdef = ThisDrawing.Layouts.Item("布局1").Block
Dim pt1(2) As Double, pt2(2) As Double
pt2(0) = 10
blkdef.AddLine pt1, pt2
End Sub

    當圖紙比較大的時候,重生成模型的時候比較長,那能不能點擊布局選項卡的時候讓他不重生成模型呢?

    于是找CAD系統(tǒng)變量,看有沒有什么變量能夠控制它,找到了LAYOUTREGENCTL變量,摘錄如下

LAYOUTREGENCTL
類型: 整數(shù)
保存位置: 注冊表
初始值: 2
指定“模型”選項卡和布局選項卡中的顯示列表的更新方式。 對于每個選項卡,更新顯示列表的方法可以是切換到該選項卡時重生成圖形,也可以是切換到該選項卡時將顯示列表保存到內(nèi)存并只重生成修改的對象。 修改 LAYOUTREGENCTL 設(shè)置可以提高性能。
0 每次切換選項卡都會重生成圖形。
1 當在當前“模型”選項卡和上一個布局選項卡之間切換時,顯示列表將被保存到內(nèi)存中并禁止對它們進行重生成。 對于其他所有的布局選項卡,切換到它們時仍然進行重生成。
2 第一次切換選項卡時會重生成圖形。 對于繪圖任務(wù)中的其余選項卡,顯示列表保存到內(nèi)存,切換到這些選項卡時禁止重生成。
修改 LAYOUTREGENCTL 設(shè)置得到的性能取決于若干個因素,包括圖形大小和類型、包含在圖形中的對象、可用內(nèi)存容量以及其他打開的圖形或應(yīng)用程序的影響。 LAYOUTREGENCTL 設(shè)置為 1 或 2 時,所使用的額外內(nèi)存量為“模型”選項卡的顯示列表的大小乘以為之保存顯示列表的每個布局中的視口數(shù)目。
當 LAYOUTREGENCTL 設(shè)置為 1 或 2,性能總體變慢時,或者在顯示列表為之保存的選項卡之間進行切換時,可以考慮設(shè)置為 0 或 1 以尋求工作環(huán)境的最優(yōu)平衡。 有關(guān)性能設(shè)置的其他信息,請參見“系統(tǒng)”選項卡(位于“選項”對話框中)。
不論 LAYOUTREGENCTL 設(shè)置為何值,如果重新定義塊或放棄選項卡切換,在第一次切換到任意包含保存視口的選項卡時重生成圖形。

從上面看出不管設(shè)置哪個值,每次都會更新,不同的只是是否緩存。