明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1544|回复: 3

如何得到偏移后的对象?

[复制链接]
发表于 2008-6-17 13:58:00 | 显示全部楼层 |阅读模式

set sst=sst1.offset 100

提示出现错误!!!请高手指点

发表于 2008-6-18 10:15:00 | 显示全部楼层

LZ,我估计你定义的sst类型不是Variant。

而RetVal = object.Offset(Distance)

RetVal是一个Variant类型

Variant (array of objects)
An array of the newly created objects resulting from the offset.

’代码如下:

Sub Example_Offset()
    ' This example creates a lightweight polyline
    ' and then offsets the polyline.
   
    ' Create the polyline
    Dim plineObj As AcadLWPolyline
    Dim points(0 To 11) As Double
    points(0) = 1: points(1) = 1
    points(2) = 1: points(3) = 2
    points(4) = 2: points(5) = 2
    points(6) = 3: points(7) = 2
    points(8) = 4: points(9) = 4
    points(10) = 4: points(11) = 1
    Set plineObj = ThisDrawing.ModelSpace.AddLightWeightPolyline(points)
    plineObj.Closed = True

    ' Offset the polyline
    Dim offsetObj As Variant
    offsetObj = plineObj.Offset(0.25)   
   
    Dim pLwpOffset As AcadLWPolyline
    Set pLwpOffset = offsetObj(0)    '得到偏移后的多段线
   
    '定义绿色
   Dim CorGreen As AcadAcCmColor
   Set CorGreen = AcadApplication.GetInterfaceObject("AutoCAD.AcCmColor.16")
   Call CorGreen.SetRGB(0, 255, 0)   '绿色
   pLwpOffset.TrueColor = CorGreen
      
End Sub

 楼主| 发表于 2008-7-4 23:48:00 | 显示全部楼层
非常感谢!原来偏移后的对象可能不了1个,所以是Variant
 明白了。
发表于 2008-7-5 16:49:00 | 显示全部楼层
学习了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 09:34 , Processed in 0.169086 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表