Dim i As Double 'BY icax-cooltie
a = 0.5
b = 1
Dim tempC(0 To 2) As Double
Dim tempCir As AcadCircle
Dim r As Double
Set tempCir = ThisDrawing.ModelSpace.AddCircle(tempC, r + 0.1)
Dim ip As Variant
Dim dis As Double
Do
i = (a + b) / 2
tempC(0) = l1.StartPoint(0) + (l1.EndPoint(0) - l1.StartPoint(0)) * i
tempC(1) = l1.StartPoint(1) + (l1.EndPoint(1) - l1.StartPoint(1)) * i
r = l1.Length * i
tempCir.Delete
Set tempCir = ThisDrawing.ModelSpace.AddCircle(tempC, r)
ip = tempCir.IntersectWith(L2, acExtendThisEntity)
dis = Sqr((ip(0) - ip(3)) ^ 2 + (ip(1) - ip(4)) ^ 2)
If dis > 60 Then
b = i
Else
a = i
End If
Loop Until Abs(dis - 60) < 0.00001作者: lcyhust 时间: 2008-8-17 11:14
想不出用几何法如何做!作者: tielong168 时间: 2008-8-18 09:54
CAD做不出
有答案没作者: lixianhua188 时间: 2008-8-18 16:30
明显的三点画圆,作者: windy.cai 时间: 2008-8-20 10:04
還是用PRO/E一下就出來了,,CAD除了算還不會,哪位高手教教作者: caiguanghui 时间: 2008-8-20 16:24
看下我做的,不知道是否正确,呵呵作者: dfsrain 时间: 2008-9-8 17:49 标题: 回复 25楼 caiguanghui 的帖子 没看懂,怎么做的作者: ws132 时间: 2008-9-9 14:52
大家真厉害
我都搞不出来作者: lywml 时间: 2008-9-14 13:06 标题: 这样? 是这样么?作者: 米仔 时间: 2008-9-16 17:22
易过借火,这也叫难题,用CAXA两下搞出来,是软件有问题,不要老把软件的缺点当难题出来考人。