part1.Update
'绘制 spline 的延长线
Set reference34 = part1.CreateReferenceFromObject(hybridShapePointOnPlane1)
Set reference35 = part1.CreateReferenceFromObject(hybridShapeSpline1)
Set hybridShapeExtrapol1 = hybridShapeFactory1.AddNewExtrapolLength(reference34, reference35, Abs((length7.Value - length6.Value) * 1.5)) ' 改后的参数
hybridShapeExtrapol1.ContinuityType = 0
hybridShapeExtrapol1.BorderType = 1
hybridShapeExtrapol1.LimitType = 0
hybridShapeExtrapol1.SetAssemble True
hybridShapeExtrapol1.PropagationMode = 0
hybridShapeExtrapol1.ExtendEdgesMode = False
hybridShapeExtrapol1.ConstantLengthMode = False
hybridBody1.AppendHybridShape hybridShapeExtrapol1
part1.InWorkObject = hybridShapeExtrapol1
part1.Update
'延长线和齿根圆的 corner
part1.Update
Set reference36 = part1.CreateReferenceFromObject(hybridShapeExtrapol1)
Set reference37 = part1.CreateReferenceFromObject(hybridShapeCircleCtrRad4)
Set hybridShapeCorner1 = hybridShapeFactory1.AddNewCorner(reference36, reference37, Nothing, length15.Value, 1, 1, False)
hybridShapeCorner1.DiscriminationIndex = 1
hybridShapeCorner1.BeginOfCorner = 2
hybridShapeCorner1.FirstTangentOrientation = 1
hybridShapeCorner1.SecondTangentOrientation = 1
hybridShapeCorner1.TrimMode = 2
hybridShapeFactory1.GSMVisibility reference36, 0
hybridBody1.AppendHybridShape hybridShapeCorner1
part1.InWorkObject = hybridShapeCorner1
part1.Update
'本部分程序去除部分在新建txt里
Set reference38 = part1.CreateReferenceFromObject(hybridShapePointOnPlane1)
Set reference39 = part1.CreateReferenceFromObject(hybridShapeSpline1)
Set hybridShapeExtrapol1 = hybridShapeFactory1.AddNewExtrapolLength(reference38, reference39, 1.488473)
hybridShapeExtrapol1.ContinuityType = 0
hybridShapeExtrapol1.BorderType = 1
hybridShapeExtrapol1.LimitType = 0
hybridShapeExtrapol1.SetAssemble True
hybridShapeExtrapol1.PropagationMode = 0
hybridShapeExtrapol1.ExtendEdgesMode = False
hybridShapeExtrapol1.ConstantLengthMode = False
hybridBody1.AppendHybridShape hybridShapeExtrapol1
part1.InWorkObject = hybridShapeExtrapol1
part1.Update
Set reference40 = part1.CreateReferenceFromObject(hybridShapeCorner1)
Set reference41 = part1.CreateReferenceFromObject(hybridShapeCircleCtrRad2)
Set hybridShapeIntersection1 = hybridShapeFactory1.AddNewIntersection(reference40, reference41)
hybridShapeIntersection1.PointType = 0
hybridBody1.AppendHybridShape hybridShapeIntersection1
part1.InWorkObject = hybridShapeIntersection1
part1.Update
'创建一条直线连接圆心和(分度圆与corner线交点)
Set reference42 = part1.CreateReferenceFromObject(hybridShapePointCoord2)
Set reference43 = part1.CreateReferenceFromObject(hybridShapeIntersection1)
Set hybridShapeLinePtPt1 = hybridShapeFactory1.AddNewLinePtPt(reference42,
reference43)
hybridBody1.AppendHybridShape hybridShapeLinePtPt1
part1.InWorkObject = hybridShapeLinePtPt1
part1.Update
'将上一步创建的直线按照第一步做的直线旋转
Set hybridShapeRotate1 = hybridShapeFactory1.AddNewEmptyRotate()
Set reference44 = part1.CreateReferenceFromObject(hybridShapeLinePtPt1)
hybridShapeRotate1.ElemToRotate = reference44
hybridShapeRotate1.VolumeResult = False
hybridShapeRotate1.RotationType = 0
Set reference45 = part1.CreateReferenceFromObject(hybridShapeLinePtDir1)
hybridShapeRotate1.Axis = reference45
hybridShapeRotate1.AngleValue = -90 / Val(txtCount.Text)
hybridBody1.AppendHybridShape hybridShapeRotate1
part1.InWorkObject = hybridShapeRotate1
part1.Update
'将corner进行对称操作
Set reference46 = part1.CreateReferenceFromObject(hybridShapeCorner1)
Set reference47 = part1.CreateReferenceFromObject(hybridShapeRotate1)
Set hybridShapeSymmetry1 = hybridShapeFactory1.AddNewSymmetry(reference46, reference47)
hybridShapeSymmetry1.VolumeResult = False
hybridBody1.AppendHybridShape hybridShapeSymmetry1
part1.InWorkObject = hybridShapeSymmetry1
part1.Update
'画一个比齿顶圆直径大5mm的圆以便进行裁剪操作
Set hybridShapeFactory1 = part1.HybridShapeFactory
Set hybridShapePointCoord6 = hybridShapeFactory1.AddNewPointCoord(0#, 0#, 0#)
hybridBody1.AppendHybridShape hybridShapePointCoord6
part1.InWorkObject = hybridShapePointCoord6
part1.Update
Set reference1 = part1.CreateReferenceFromObject(hybridShapePointCoord6)
Set originElements1 = part1.OriginElements
Set hybridShapePlaneExplicit1 = originElements1.PlaneXY
Set reference2 = part1.CreateReferenceFromObject(hybridShapePlaneExplicit1)
Set hybridShapeCircleCtrRad6 = hybridShapeFactory1.AddNewCircleCtrRad(reference1, reference2, False, length5.Value + 5)
hybridShapeCircleCtrRad6.DiameterMode = True
hybridShapeCircleCtrRad6.SetLimitation 1
hybridBody1.AppendHybridShape hybridShapeCircleCtrRad6
part1.InWorkObject = hybridShapeCircleCtrRad6
part1.Update