singlegu 发表于 2006-6-3 08:08:00

使用AddArc方法画圆弧的问题

各位大虾:
       我使用AddArc画圆弧,只能画在XY平面或是与XY平面平行,请问如何画在YZ平面或XZ平面中啊

xinghesnak 发表于 2006-6-3 08:47:00

其实他不是总和XY平面平行的,如果你在增加圆弧之前先将用户坐标系转到YZ平面(你想要的平面上),你会发现程序画出的圆弧也相应的转换过来了。。。。。。所以说AddArc函数和用户坐标系有关,你只要之前改到你想要的平面上就行了!

singlegu 发表于 2006-6-3 10:10:00

那请问用哪个函数可以改啊

xinghesnak 发表于 2006-6-3 10:44:00

sendcommand发送ucs命令,然后就自定义呗!

singlegu 发表于 2006-6-4 15:18:00

大哥,是不是在画之前,先转换坐标,再画弧,我程序如下,可画出来的圆弧还是和XY平面平行的,能帮我看看哪里错了吗
Sub example_Arc()
    ThisDrawing.SendCommand "UCS" & vbCr & "N" & vbCr & "X" & vbCr & "90" & vbCr
    Dim arcObj As AcadArc
    Dim centerPoint(0 To 2) As Double
    Dim radius As Double
    Dim startAngleInDegree As Double
    Dim endAngleInDegree As Double
   
    centerPoint(0) = 50
    centerPoint(1) = 0
    centerPoint(2) = 50
    radius = 50
    startAngleInDegree = 90#
    endAngleInDegree = 180#
   
   
   
    Dim startAngleInRadian As Double
    Dim endAngleInRadian As Double
    startAngleInRadian = startAngleInDegree * 3.141592 / 180#
    endAngleInRadian = endAngleInDegree * 3.141592 / 180#
    Set arcObj = ThisDrawing.ModelSpace.AddArc(centerPoint, radius, startAngleInRadian, endAngleInRadian)
End Sub

xinghesnak 发表于 2006-6-5 11:50:00

不是啊,你用完你的程序确实还是和坐标系一致,是XY面,可是现在用的坐标系是用户坐标系,是你自己建的.你切换到世界坐标系下看看,就看到是XZ面了........

singlegu 发表于 2006-6-5 19:20:00

大哥,不是很明白你的意思,可以告诉我是缺了哪一步吗

xinghesnak 发表于 2006-6-6 08:48:00

就是说你运行完程序后再恢复到世界坐标系下看看,应该和你想要的结果一致的!
页: [1]
查看完整版本: 使用AddArc方法画圆弧的问题