laipp 发表于 2005-6-18 01:10:00

后天答辩,紧急求助一个关于面域问题...

如何将不同类型的曲线(首尾依次相连且封闭)选做一个面域....



例如:直线+圆弧+轻便多义线+直线.


我对圆弧与多义线的衔接点不知道如何下手....



拜求各位老师了.....

mccad 发表于 2005-6-18 06:25:00

首先应了解AddRegin方法中的参数ObjectList。它是对象数组,可以由直线、圆弧、圆、椭圆弧、优化多段线和样条曲线等不同对象组成,也就是说一个边界可以同时由不同类型的对象组成,只要这些对象首尾相连组成封闭区域。
如有3个对象组成封闭区域,分别为直线Line1,圆弧Arc2,优化多段线LWPLine3。则ObjectList这样定义:Dim ObjectList(2) As AcadEntity
Set ObjectList(0) = Line1
Set ObjectList(1) = Arc2
Set ObjectList(2) = LWPLine3圆弧的定义AddArc使用的是这样的语法:
AddArc(Center, Radius, StartAngle, EndAngle)
所以一般情况下需要先定义生成圆弧,然后用圆弧的端点属性StartPoint和EndPoint属性再生成其它对象,这样就能保证封闭。

laipp 发表于 2005-6-18 07:21:00

多谢明总...

laipp 发表于 2005-6-18 09:22:00

但是.现在我想用LWPLINE与LINE衔接,发现LWPline的端点属性不可用,"显示不支持该属性或方法"


应当怎么办?

hnge 发表于 2005-6-18 22:03:00

你把Lwpline.explode看看

zyh0312 发表于 2005-6-19 09:31:00

Sub Example_Addregion()<BR>                       Dim lines(0 To 1) As AcadEntity<BR>                       <BR>                       Dim startPoint(0 To 2) As Double<BR>                       Dim endPoint(0 To 2) As Double<BR>                       <BR>                       startPoint(0) = 1: startPoint(1) = 1: startPoint(2) = 0<BR>                       endPoint(0) = 4: endPoint(1) = 4: endPoint(2) = 0<BR>                       <BR>                       Set lines(0) = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint)<BR>                       <BR>                       Dim points(0 To 7) As Double<BR>                       <BR>                       points(0) = 1: points(1) = 1<BR>                       points(2) = 2: points(3) = 1<BR>                       points(4) = 3: points(5) = 2<BR>                       points(6) = 4: points(7) = 4<BR>                                                       <BR>                       Set lines(1) = ThisDrawing.ModelSpace.AddLightWeightPolyline(points)<BR>                       <BR>                       Dim regionObj As Variant<BR>                       regionObj = ThisDrawing.ModelSpace.AddRegion(lines)


End Sub<BR>


不知这段程序符合你的意思么,只要保证多义线的起始点与直线的起始点相对应就可以了。
页: [1]
查看完整版本: 后天答辩,紧急求助一个关于面域问题...