概要 - 他のタイル ビューポートを現在のビューポートにする(VBA/ActiveX)

現在のビューポート内で点を入力したり、オブジェクトを選択できます。ビューポートを現在のビューポートにするには、ActiveViewport プロパティを使用します。

既存のビューポートの中から、1 つビューポートを選択することができます。それにはまず、Name プロパティを使って、希望のビューポートがある環境設定の名前を確認します。さらに、ビューポート環境設定が分割されている場合、その設定上の各ビューポートは LowerLeftCorner プロパティと UpperRightCorner プロパティで識別できます。

LowerLeftCorner プロパティと UpperRightCorner プロパティは、画面上でビューポートのグラフィックスの位置を示します。これらのプロパティを、次のように定義します(例として 4 分割を示します)。



この例では

ビューポートを分割し、次にウィンドウを繰り返す

この例では、ビューポートを 4 つのウィンドウに分割します。次に図面内のすべてのビューポートで繰り返しビューポート名と各ビューポートの左下と右上のコーナーを表示します。

Sub Ch3_IteratingViewportWindows()
  ' Create a new viewport and make it active
  Dim vportObj As AcadViewport
  Set vportObj = ThisDrawing.Viewports.Add("TEST_VIEWPORT")
  ThisDrawing.ActiveViewport = vportObj

  ' Split vport into 4 windows
  vportObj.Split acViewport4

  ' Iterate through the viewports,
  ' highlighting each viewport and displaying
  ' the upper right and lower left corners
  ' for each.
  Dim vport As AcadViewport
  Dim LLCorner As Variant
  Dim URCorner As Variant
  For Each vport In ThisDrawing.Viewports
    ThisDrawing.ActiveViewport = vport
    LLCorner = vport.LowerLeftCorner
    URCorner = vport.UpperRightCorner
    MsgBox "Viewport: " & vport.Name & " is now active." & _
    vbCrLf & "Lower left corner: " & _
    LLCorner(0) & ", " & LLCorner(1) & vbCrLf & _
    "Upper right corner: " & _
    URCorner(0) & ", " & URCorner(1)
  Next vport
End Sub