Gets the coordinates that define the portion of the layout to plot.
Supported platforms: Windows only
VBA:
object.GetWindowToPlot LowerLeft, UpperRight
Type: Layout, PlotConfiguration
The object this method applies to.
Access: Output-only
Type: Variant (two-element array of doubles)
The X and Y values for the lower-left window.
Access: Output-only
Type: Variant (two-element array of doubles)
The X and Y values for the upper-right window.
No return value.
The window coordinates are taken from the origin.
The units for these values are specified by the PaperUnits property.
The PlotType property must be set to acWindow for these coordinates to be used for the plot.
VBA:
Sub Example_GetWindowToPlot() ' This example allows the user to define an area in the current layout to plot ' and displays a plot preview of the defined area. ' ' * Note: You will have to exit the plot preview ' before the VBA example will stop and control will be returned AppActivate ThisDrawing.Application.Caption Dim point1 As Variant, point2 As Variant ' Get first point in window point1 = ThisDrawing.Utility.GetPoint(, "Click the lower-left of the window to plot.") ReDim Preserve point1(0 To 1) ' Change this to a 2D array by removing the Z position ' Get second point in window point2 = ThisDrawing.Utility.GetPoint(, "Click the upper-right of the window to plot.") ReDim Preserve point2(0 To 1) ' Change this to a 2D array by removing the Z position ' Send information about window to current layout ThisDrawing.ActiveLayout.SetWindowToPlot point1, point2 ' Read back window information ThisDrawing.ActiveLayout.GetWindowToPlot point1, point2 MsgBox "Press any key to plot the following window:" & vbCrLf & vbCrLf & _ "Lower Left: " & point1(0) & ", " & point1(1) & vbCrLf & _ "Upper Right: " & point2(0) & ", " & point2(1) ' Make sure the instruction is to plot a view, not some other plot style ThisDrawing.ActiveLayout.PlotType = acWindow ' Send Plot To Window ThisDrawing.ActiveLayout.ConfigName = "DWG to PDF.pc3" ThisDrawing.Plot.DisplayPlotPreview acFullPreview End Sub
Visual LISP:
(vl-load-com) (defun c:Example_GetWindowToPlot() ;; This example allows the user to define an area in the current layout to plot ;; and displays a plot preview of the defined area. ;; ;; * Note: You will have to exit the plot preview ;; before the VBA example will stop and control will be returned (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; Get first point in window (setq point1 (vlax-variant-value (vla-GetPoint (vla-get-Utility doc) nil "Click the lower-left of the window to plot."))) ;; Change this to a 2D array by removing the Z position (setq pointTemp1 (vlax-make-safearray vlax-vbDouble '(0 . 1))) (vlax-safearray-put-element pointTemp1 0 (vlax-safearray-get-element point1 0)) (vlax-safearray-put-element pointTemp1 1 (vlax-safearray-get-element point1 1)) ;; Get second point in window (setq point2 (vlax-variant-value (vla-GetCorner (vla-get-Utility doc) point1 "Click the upper-right of the window to plot."))) ;; Change this to a 2D array by removing the Z position (setq pointTemp2 (vlax-make-safearray vlax-vbDouble '(0 . 1))) (vlax-safearray-put-element pointTemp2 0 (vlax-safearray-get-element point2 0)) (vlax-safearray-put-element pointTemp2 1 (vlax-safearray-get-element point2 1)) ;; Send information about window to current layout (vla-SetWindowToPlot (vla-get-ActiveLayout doc) pointTemp1 pointTemp2) ;; Read back window information (vla-GetWindowToPlot (vla-get-ActiveLayout doc) 'point1 'point2) (setq point1 (vlax-safearray->list point1) point2 (vlax-safearray->list point2)) (alert (strcat "Press any key to plot the following window:" "\nLower Left: " (rtos (nth 0 point1) 2) ", " (rtos (nth 1 point1) 2) "\nUpper Right: " (rtos (nth 0 point2) 2) ", " (rtos (nth 1 point2) 2))) ;; Make sure the instruction is to plot a view, not some other plot style (vla-put-PlotType (vla-get-ActiveLayout doc) acWindow) ;; Send Plot To Window - A plot device must be set before a preview can be created (vla-DisplayPlotPreview (vla-get-Plot doc) acFullPreview) )