summaryrefslogtreecommitdiff
path: root/Connections/Shear/Finplate/nut.py
diff options
context:
space:
mode:
Diffstat (limited to 'Connections/Shear/Finplate/nut.py')
-rw-r--r--Connections/Shear/Finplate/nut.py122
1 files changed, 61 insertions, 61 deletions
diff --git a/Connections/Shear/Finplate/nut.py b/Connections/Shear/Finplate/nut.py
index 70ac7d0..a0d9397 100644
--- a/Connections/Shear/Finplate/nut.py
+++ b/Connections/Shear/Finplate/nut.py
@@ -27,12 +27,12 @@ import OCC.BRep as BRep
class Nut(object):
- def __init__(self,R,T,H,innerR1,outerR2):
+ def __init__(self,R,T,H,innerR1):
self.R = R
self.H = H
self.T = T
self.r1 = innerR1
- self.r2 = outerR2
+ #self.r2 = outerR2
self.secOrigin = numpy.array([0, 0, 0])
self.uDir = numpy.array([1.0, 0, 0])
self.wDir = numpy.array([0.0, 0, 1.0])
@@ -86,66 +86,66 @@ class Nut(object):
result_shape = BRepAlgoAPI_Cut(prism, innerCyl).Shape()
- self.secOrigin = gp_Pnt(0 , 0 , 0)
- neckNormal = gp_DZ()
- # Threading : Create Surfaces
+# self.secOrigin = gp_Pnt(0 , 0 , 0)
+# neckNormal = gp_DZ()
+# # Threading : Create Surfaces
+#
+# nutAx2_bis = gp_Ax3(self.secOrigin , neckNormal)
+# aCyl1 = Geom_CylindricalSurface(nutAx2_bis , self.T * 0.99)
+# aCyl2 = Geom_CylindricalSurface(nutAx2_bis , self.T * 1.05)
+# #aCyl3 = Geom_CylindricalSurface(nutAx2_bis , self.T * 1.11)
+# aCyl1_handle = aCyl1.GetHandle()
+# aCyl2_handle = aCyl2.GetHandle()
+# #aCyl3_handle = aCyl3.GetHandle()
+#
+# # Threading : Define 2D Curves
+# aPnt = gp_Pnt2d(2. * math.pi , self.H / 2.)
+# aDir = gp_Dir2d(2. * math.pi , self.H / 4.)
+# aAx2d = gp_Ax2d(aPnt , aDir)
+# aMajor = 2. * math.pi
+# aMinor = self.H / 7.
+# anEllipse1 = Geom2d_Ellipse(aAx2d , aMajor , aMinor)
+# anEllipse2 = Geom2d_Ellipse(aAx2d , aMajor , aMinor / 4.)
+# anEllipse1_handle = anEllipse1.GetHandle()
+# anEllipse2_handle = anEllipse2.GetHandle()
+# aArc1 = Geom2d_TrimmedCurve(anEllipse1_handle, 0 , math.pi)
+# aArc2 = Geom2d_TrimmedCurve(anEllipse2_handle, 0 , math.pi)
+# aArc1_handle = aArc1.GetHandle()
+# aArc2_handle = aArc2.GetHandle()
+# anEllipsePnt1 = anEllipse1.Value(0)
+# anEllipsePnt2 = anEllipse1.Value(math.pi)
+# aSegment = GCE2d_MakeSegment(anEllipsePnt1 , anEllipsePnt2)
+#
+# # Threading : Build Edges and Wires
+#
+# aEdge1OnSurf1 = BRepBuilderAPI_MakeEdge( aArc1_handle , aCyl1_handle)
+# aEdge2OnSurf1 = BRepBuilderAPI_MakeEdge( aSegment.Value() , aCyl1_handle)
+# aEdge1OnSurf2 = BRepBuilderAPI_MakeEdge( aArc2_handle , aCyl2_handle)
+# aEdge2OnSurf2 = BRepBuilderAPI_MakeEdge( aSegment.Value() , aCyl2_handle)
+# threadingWire1 = BRepBuilderAPI_MakeWire(aEdge1OnSurf1.Edge() , aEdge2OnSurf1.Edge())#aEdge3OnSurf1.Edge())
+# self.threading1 = threadingWire1
+# threadingWire2 = BRepBuilderAPI_MakeWire(aEdge1OnSurf2.Edge() , aEdge2OnSurf2.Edge())#aEdge3OnSurf2.Edge())
+# BRepLib.breplib.BuildCurves3d(threadingWire1.Shape())
+# BRepLib.breplib.BuildCurves3d(threadingWire2.Shape())
+#
+# # Create Threading
+#
+# aTool = BRepOffsetAPI_ThruSections(True)
+# aTool.AddWire(threadingWire1.Wire())
+# aTool.AddWire(threadingWire2.Wire())
+# aTool.CheckCompatibility(False)
+# myThreading = aTool.Shape()
+#
+# #Building the resulting compound
+#
+# aRes = TopoDS_Compound()
+# aBuilder = BRep.BRep_Builder()
+# aBuilder.MakeCompound(aRes)
+# aBuilder.Add(aRes, result_shape)
+# aBuilder.Add(aRes, myThreading)
+# final_shape = BRepAlgoAPI_Cut(result_shape, myThreading).Shape()
- nutAx2_bis = gp_Ax3(self.secOrigin , neckNormal)
- aCyl1 = Geom_CylindricalSurface(nutAx2_bis , self.T * 0.99)
- aCyl2 = Geom_CylindricalSurface(nutAx2_bis , self.T * 1.05)
- #aCyl3 = Geom_CylindricalSurface(nutAx2_bis , self.T * 1.11)
- aCyl1_handle = aCyl1.GetHandle()
- aCyl2_handle = aCyl2.GetHandle()
- #aCyl3_handle = aCyl3.GetHandle()
- # Threading : Define 2D Curves
- aPnt = gp_Pnt2d(2. * math.pi , self.H / 2.)
- aDir = gp_Dir2d(2. * math.pi , self.H / 4.)
- aAx2d = gp_Ax2d(aPnt , aDir)
- aMajor = 2. * math.pi
- aMinor = self.H / 7.
- anEllipse1 = Geom2d_Ellipse(aAx2d , aMajor , aMinor)
- anEllipse2 = Geom2d_Ellipse(aAx2d , aMajor , aMinor / 4.)
- anEllipse1_handle = anEllipse1.GetHandle()
- anEllipse2_handle = anEllipse2.GetHandle()
- aArc1 = Geom2d_TrimmedCurve(anEllipse1_handle, 0 , math.pi)
- aArc2 = Geom2d_TrimmedCurve(anEllipse2_handle, 0 , math.pi)
- aArc1_handle = aArc1.GetHandle()
- aArc2_handle = aArc2.GetHandle()
- anEllipsePnt1 = anEllipse1.Value(0)
- anEllipsePnt2 = anEllipse1.Value(math.pi)
- aSegment = GCE2d_MakeSegment(anEllipsePnt1 , anEllipsePnt2)
-
- # Threading : Build Edges and Wires
-
- aEdge1OnSurf1 = BRepBuilderAPI_MakeEdge( aArc1_handle , aCyl1_handle)
- aEdge2OnSurf1 = BRepBuilderAPI_MakeEdge( aSegment.Value() , aCyl1_handle)
- aEdge1OnSurf2 = BRepBuilderAPI_MakeEdge( aArc2_handle , aCyl2_handle)
- aEdge2OnSurf2 = BRepBuilderAPI_MakeEdge( aSegment.Value() , aCyl2_handle)
- threadingWire1 = BRepBuilderAPI_MakeWire(aEdge1OnSurf1.Edge() , aEdge2OnSurf1.Edge())#aEdge3OnSurf1.Edge())
- self.threading1 = threadingWire1
- threadingWire2 = BRepBuilderAPI_MakeWire(aEdge1OnSurf2.Edge() , aEdge2OnSurf2.Edge())#aEdge3OnSurf2.Edge())
- BRepLib.breplib.BuildCurves3d(threadingWire1.Shape())
- BRepLib.breplib.BuildCurves3d(threadingWire2.Shape())
-
- # Create Threading
-
- aTool = BRepOffsetAPI_ThruSections(True)
- aTool.AddWire(threadingWire1.Wire())
- aTool.AddWire(threadingWire2.Wire())
- aTool.CheckCompatibility(False)
- myThreading = aTool.Shape()
-
- #Building the resulting compound
-
- aRes = TopoDS_Compound()
- aBuilder = BRep.BRep_Builder()
- aBuilder.MakeCompound(aRes)
- aBuilder.Add(aRes, result_shape)
- aBuilder.Add(aRes, myThreading)
- final_shape = BRepAlgoAPI_Cut(result_shape, myThreading).Shape()
-
-
- return final_shape
+ return result_shape
\ No newline at end of file