Humbertogo 发表于 2007-7-17 15:18:05

选择案例角度

我试图简单地选择不同的角度,
但当dblangle = 135或225时,什么都没有选择
:ugly:
选择案例dblangle
案例0,135,180,225
**** Hidden Message *****

Humbertogo 发表于 2007-7-17 15:22:41

你到底想做什么?

Humbertogo 发表于 2007-7-17 15:23:14

角度是用弧度测量的,所以这可能会给你带来问题

Humbertogo 发表于 2007-7-17 15:26:56

dblradians = ThisDrawing。Utility.AngleFromXAxis(PolySp,PolyEp)
dblangle = dblradians *(180/PI)
选择大小写dblangle
大小写0,135,180,225
dblAng = 0 *(PI/180)

我只是尝试将135,180,225度转换为0

Humbertogo 发表于 2007-7-17 15:29:17

我不知道你是否错过了打字,但是什么是dblAng与dblangles? 如果要将它们全部设置为 0,为什么不 dblAng = 0?

DaveW 发表于 2007-7-17 15:32:43

dblangle=dbl弧度*(180/PI)'conv弧度到度数
dblAng是我的返回值

Bryco 发表于 2007-7-17 15:34:53


你是对的,但我不能选择135和225

Humbertogo 发表于 2007-7-17 15:41:02

好吧,我试图复制你的问题,我认为你的问题是小数点。
Option Explicit
Sub Example_AngleFromXAxis()
    ' This example finds the angle, in radians, between the X axis
    ' and a line defined by two points.
   
    Dim pt1(0 To 2) As Double
    Dim pt2(0 To 2) As Double
    Dim retAngle As Double
   
    pt1(0) = 2: pt1(1) = 5: pt1(2) = 0
    pt2(0) = 5: pt2(1) = 2: pt2(2) = 0
   
    ' Return the angle
    retAngle = ThisDrawing.Utility.AngleFromXAxis(pt1, pt2)
    retAngle = RtoD(retAngle)'*****   added by cmdrduh
    ' Create the line for a visual reference
'*****   added by cmdrduh
    Dim intretangle As Integer
    intretangle = CInt(retAngle)
    Select Case intretangle
    Case 0
    MsgBox "0"
    Case 315
    MsgBox "315"
    End Select
   
' end of*****   added by cmdrduh   
    Dim lineObj As AcadLine
    Set lineObj = ThisDrawing.ModelSpace.AddLine(pt1, pt2)
    ZoomAll
   
    ' Display the angle found
    MsgBox "The angle in radians between the X axis and the line is " & retAngle, , "AngleFromXAxis Example"
   
End Sub
'*****   added by cmdrduh
Private Function DtoR(d As Double)      ' Degrees to Radians
      Const PI = 3.14159265
      DtoR = (PI * d) / 180
End Function
Private Function RtoD(r As Double)      ' Radians to Degrees
      Const PI = 3.14159265
      RtoD = (180 * r) / PI
End Function
这个函数是有帮助的,我添加了选择案例部分。 我无法找到315度线,直到我使用CInt()将双精度转换为整数。 你可以做类似的事情,或者扩大你的选择案例

Humbertogo 发表于 2007-7-17 15:57:47


谢谢

DaveW 发表于 2007-7-17 16:16:45

也许有更好的办法,但是我现在太累了,不想思考。也许有个大师能帮上忙。
页: [1] 2
查看完整版本: 选择案例角度