cad vba 绘制角钢_升降机,升降平台_百度空间
'为了也能绘制不等边角钢,采用了两个变量H和B,在此过程中H=B。
Dim H As Integer, B As Integer, D As Double, R As Double, R1 As Double
'***********************************************************************************************************************************

'等边角钢绘制***********************************************等边角钢绘制*********************************************************
'   6|\R1
'    | \
'    | |5
'    |D |
'    | |
'    H |
'    | |
'    | |4
'    | \   R
'    |   _3__________________2
'    |___________B_____________R1
'     0                       1
Private Sub DBJG_Btn_Click()
    Me.Hide
    '指定基点
    Dim PtBase As Variant
    ThisDrawing.Utility.InitializeUserInput 1, ""
    PtBase = ThisDrawing.Utility.GetPoint(, "指切面线{dy}点:")
   
    '计算几个关键点的位置
    Dim Pt1(0 To 2) As Double, Pt2(0 To 2) As Double, Pt3(0 To 2) As Double, Pt4(0 To 2) As Double, Pt5(0 To 2) As Double, Pt6(0 To 2) As Double
    '在我的五金表上面没有找到R1,所以这里面用R1=D。这样角钢的边上正好是1/4圆弧。
    Pt1(0) = PtBase(0) + B:                        Pt1(1) = PtBase(1):                           Pt1(2) = Pt1(2)
    Pt2(0) = PtBase(0) + B - D:                    Pt2(1) = PtBase(1) + D:                       Pt2(2) = Pt1(2)
    Pt3(0) = PtBase(0) + D + R:                    Pt3(1) = PtBase(1) + D:                       Pt3(2) = Pt1(2)
    Pt4(0) = PtBase(0) + D:                        Pt4(1) = PtBase(1) + D + R:                   Pt4(2) = Pt1(2)
    Pt5(0) = PtBase(0) + D:                        Pt5(1) = PtBase(1) + H - D:                   Pt5(2) = Pt1(2)
    Pt6(0) = PtBase(0):                            Pt6(1) = PtBase(1) + H:                       Pt6(2) = Pt1(2)
    '多线段顶点数组
    Dim A(13) As Double
    A(0) = PtBase(0)
    A(1) = PtBase(1)
    A(2) = Pt1(0)
    A(3) = Pt1(1)
    A(4) = Pt2(0)
    A(5) = Pt2(1)
    A(6) = Pt3(0)
    A(7) = Pt3(1)
    A(8) = Pt4(0)
    A(9) = Pt4(1)
    A(10) = Pt5(0)
    A(11) = Pt5(1)
    A(12) = Pt6(0)
    A(13) = Pt6(1)
    '创建多段线
    Dim objPline As AcadLWPolyline
    Set objPline = ThisDrawing.ModelSpace.AddLightWeightPolyline(A)
    '闭合多险段
    objPline.Closed = True
    '给多线段添加圆弧度,凸度是多段线顶点列表中选定顶点和下一顶点之间的圆弧所包含角度的 1/4 的正切值。
    '负的凸度值表示圆弧从选定顶点到下一顶点为顺时针方向。
    '凸度为0 表示直线段,凸度为1表示半圆。 Atn(1)为45度 两点之间为90度,因此他的1/4为 (2 * Atn(1)) / 4.
    objPline.SetBulge 1, Tan((2 * Atn(1)) / 4) '1为点一和下一个点(2点)的线段
    objPline.SetBulge 3, -Tan(Atn(1) / 2)
    objPline.SetBulge 5, Tan(Atn(1) / 2)
    objPline.Visible = True
    Unload Me
End Sub


郑重声明:资讯 【cad vba 绘制角钢_升降机,升降平台_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——