yiqizouu 发表于 2007-3-18 10:12:00

麻烦高手给看看这段程序有什么问题

<p>麻烦高手给看看这段程序有什么问题,我想把一幅地形图的所有符合条件的直线的ENDPOINT修改,也就是向某方向延长这条直线,但延长的方向总不对,为什么?</p><p>On Error Resume Next<br/>&nbsp;&nbsp;&nbsp; <br/>Dim i, n As Long<br/>Dim newObjs As AcadLine<br/>Dim p(2)&nbsp; As Double<br/>Dim iCount As Long, iPoint As Integer</p><p>n = ThisDrawing.ModelSpace.Count</p><p>For i = 0 To n - 1<br/>&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If ThisDrawing.ModelSpace.Item(i).Thickness = "6112004" Or ThisDrawing.ModelSpace.Item(i).Thickness = "6320104" Or ThisDrawing.ModelSpace.Item(i).Thickness = "6310004" Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Set newObjs = ThisDrawing.ModelSpace.Item(i)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; X1 = newObjs.startPoint(iCount)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Y1 = newObjs.startPoint(iCount + 1)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; z1 = newObjs.startPoint(iCount + 2)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; X2 = newObjs.endPoint(iCount)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Y2 = newObjs.endPoint(iCount + 1)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; z2 = newObjs.endPoint(iCount + 2)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If ThisDrawing.ModelSpace.Item(i).length = "7" Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; p(0) = (2 * X1 - X2): p(1) = (2 * Y1 - Y2)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; p(0) = (2 * X2 - X1): p(1) = (2 * Y2 - Y1)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newObjs.endPoint = p<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newObjs.Update<br/>&nbsp;&nbsp;&nbsp;&nbsp; Else<br/>&nbsp;&nbsp;&nbsp;&nbsp; End If<br/>Next i<br/>ThisDrawing.Regen (True)<br/>MsgBox "修改完毕"</p><p>&nbsp;</p>

yiqizouu 发表于 2007-4-14 14:55:00

<p>怎么没人回答啊</p>
页: [1]
查看完整版本: 麻烦高手给看看这段程序有什么问题