是的,你可以做一个不规则
的形状试试VBA的例子,这很奇怪
Mark
- Sub Example_ClippingEnabled()
- ' This example adds a raster image in model space.
- ' It then clips the image based on a clip boundary,
- ' and toggles the display of the clipping.
-
- Dim insertionPoint(0 To 2) As Double
- Dim scalefactor As Double
- Dim rotationAngle As Double
- Dim imageName As String
- Dim rasterObj As AcadRasterImage
-
- imageName = "C:\AutoCAD\sample\downtown.jpg"
- insertionPoint(0) = 5#: insertionPoint(1) = 5#: insertionPoint(2) = 0#
- scalefactor = 2#
- rotationAngle = 0
-
- On Error Resume Next
- ' Creates a raster image in model space
- Set rasterObj = ThisDrawing.ModelSpace.AddRaster(imageName, insertionPoint, scalefactor, rotationAngle)
-
- If Err.Description = "Filer error" Then
- MsgBox imageName & " could not be found."
- Exit Sub
- End If
-
- ZoomAll
- MsgBox "Clip the image?", , "ClipBoundary Example"
-
- ' Establish the clip boundary with an array of points
- Dim clipPoints(0 To 9) As Double
- clipPoints(0) = 6: clipPoints(1) = 6.75
- clipPoints(2) = 7: clipPoints(3) = 6
- clipPoints(4) = 6: clipPoints(5) = 5
- clipPoints(6) = 5: clipPoints(7) = 6
- clipPoints(8) = 6: clipPoints(9) = 6.75
-
- ' Clip the image
- rasterObj.clipBoundary clipPoints
-
- ' Enable the display of the clip
- rasterObj.ClippingEnabled = True
- ThisDrawing.Regen acActiveViewport
- MsgBox "Turn off the display of the clipped image.", , "ClippingEnabled Example"
-
- ' Disable the display of the clip
- rasterObj.ClippingEnabled = False
- ThisDrawing.Regen acActiveViewport
- MsgBox "Display off.", , "ClippingEnabled Example"
-
- End Sub
|