X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOM_SWIG%2FGEOM_tube_geom.py;h=4c927c75c642d83a0169397fc34fecba067eae22;hb=b5e1dcdd78a65f6747d02786a193b0d62c7d575c;hp=1e2d91689262c763a25899ea23fb1410972e5029;hpb=392885c1a8d50369708bbe5e6b44033ed8b8ba51;p=modules%2Fgeom.git diff --git a/src/GEOM_SWIG/GEOM_tube_geom.py b/src/GEOM_SWIG/GEOM_tube_geom.py index 1e2d91689..4c927c75c 100755 --- a/src/GEOM_SWIG/GEOM_tube_geom.py +++ b/src/GEOM_SWIG/GEOM_tube_geom.py @@ -1,24 +1,26 @@ -# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# -*- coding: iso-8859-1 -*- +# Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. # -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. # -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # + #============================================================================== # Info. # Bug (from script, bug) : tube_geom_corrected.py, PAL5243 @@ -29,7 +31,10 @@ # Geometrie du cas test # import salome -from geompy import * +salome.salome_init() +import GEOM +from salome.geom import geomBuilder +geompy = geomBuilder.New(salome.myStudy) # # base de l'assemblage @@ -39,16 +44,16 @@ l_base = 150. h_base = 75. e_base = 6. -base_bot = MakeBox(0.,0.,0.,L_base,l_base,e_base) -base_top = MakeTranslation(base_bot,0.,0.,h_base-e_base) -base_front = MakeBox(0,0,0,L_base,e_base,h_base) -base_rear = MakeTranslation(base_front,0.,l_base,0.) +base_bot = geompy.MakeBox(0.,0.,0.,L_base,l_base,e_base) +base_top = geompy.MakeTranslation(base_bot,0.,0.,h_base-e_base) +base_front = geompy.MakeBox(0,0,0,L_base,e_base,h_base) +base_rear = geompy.MakeTranslation(base_front,0.,l_base,0.) -tmp = MakeBoolean(base_top,base_rear,3) -tmp = MakeBoolean(tmp,base_bot,3) -base = MakeBoolean(tmp,base_front,3) +tmp = geompy.MakeBoolean(base_top,base_rear,3) +tmp = geompy.MakeBoolean(tmp,base_bot,3) +base = geompy.MakeBoolean(tmp,base_front,3) -addToStudy(base,"base") +geompy.addToStudy(base,"base") # # traverse # @@ -57,103 +62,103 @@ h_trav = 300. e_trav = 7. marge = 15. -flange_left = MakeBox(0.,0.,0,e_trav,L_trav,h_trav) -flange_right = MakeTranslation(flange_left,L_trav-e_trav,0.,0.) -flange_front = MakeBox(0.,0.,0,L_trav,e_trav,h_trav) -flange_rear = MakeTranslation(flange_front,0.,L_trav-e_trav,0.) +flange_left = geompy.MakeBox(0.,0.,0,e_trav,L_trav,h_trav) +flange_right = geompy.MakeTranslation(flange_left,L_trav-e_trav,0.,0.) +flange_front = geompy.MakeBox(0.,0.,0,L_trav,e_trav,h_trav) +flange_rear = geompy.MakeTranslation(flange_front,0.,L_trav-e_trav,0.) -tmp = MakeBoolean(flange_left,flange_rear,3) -tmp = MakeBoolean(tmp,flange_right,3) -flange = MakeBoolean(tmp,flange_front,3) +tmp = geompy.MakeBoolean(flange_left,flange_rear,3) +tmp = geompy.MakeBoolean(tmp,flange_right,3) +flange = geompy.MakeBoolean(tmp,flange_front,3) # # left chamfer # import math length = e_trav/math.sin(math.pi/4.) -p1 = MakeVertex(0,0,0) -p2 = MakeVertex(0,1,0) -yaxis = MakeVector(p1, p2) -cut_left = MakeBox(0.,-marge,0.,-length,L_trav+marge,length) -cut_left = MakeRotation(cut_left,yaxis,-math.pi/4.) -cut_left = MakeTranslation(cut_left,e_trav,0.,0.) +p1 = geompy.MakeVertex(0,0,0) +p2 = geompy.MakeVertex(0,1,0) +yaxis = geompy.MakeVector(p1, p2) +cut_left = geompy.MakeBox(0.,-marge,0.,-length,L_trav+marge,length) +cut_left = geompy.MakeRotation(cut_left,yaxis,-math.pi/4.) +cut_left = geompy.MakeTranslation(cut_left,e_trav,0.,0.) # # right chamfer # -symPlaneYZ = MakePlane( - MakeVertex(L_trav/2.,0.,0.), - MakeVector(p1,MakeVertex(1.,0.,0.)), 10000. ) -cut_right = MakeMirrorByPlane(cut_left,symPlaneYZ) +symPlaneYZ = geompy.MakePlane( + geompy.MakeVertex(L_trav/2.,0.,0.), + geompy.MakeVector(p1,geompy.MakeVertex(1.,0.,0.)), 10000. ) +cut_right = geompy.MakeMirrorByPlane(cut_left,symPlaneYZ) # # front chamfer # -xaxis = MakeVector(p1,MakeVertex(1.,0.,0.)) -cut_front = MakeBox(-marge,0.,0.,L_trav+marge,length,length) -cut_front = MakeRotation(cut_front,xaxis,3.*math.pi/4.) -cut_front = MakeTranslation(cut_front,0.,e_trav,0.) +xaxis = geompy.MakeVector(p1,geompy.MakeVertex(1.,0.,0.)) +cut_front = geompy.MakeBox(-marge,0.,0.,L_trav+marge,length,length) +cut_front = geompy.MakeRotation(cut_front,xaxis,3.*math.pi/4.) +cut_front = geompy.MakeTranslation(cut_front,0.,e_trav,0.) # # rear chamfer # -symPlaneXZ = MakePlane( - MakeVertex(0.,L_trav/2.,0.), - MakeVector(p1,MakeVertex(0.,1.,0.)), 10000. ) -cut_rear = MakeMirrorByPlane(cut_front,symPlaneXZ) +symPlaneXZ = geompy.MakePlane( + geompy.MakeVertex(0.,L_trav/2.,0.), + geompy.MakeVector(p1,geompy.MakeVertex(0.,1.,0.)), 10000. ) +cut_rear = geompy.MakeMirrorByPlane(cut_front,symPlaneXZ) # # chamfer # -trav = MakeBoolean(flange,cut_left,2) -trav = MakeBoolean(trav,cut_right,2) -trav = MakeBoolean(trav,cut_front,2) -trav = MakeBoolean(trav,cut_rear,2) -trav = MakeTranslation(trav, +trav = geompy.MakeBoolean(flange,cut_left,2) +trav = geompy.MakeBoolean(trav,cut_right,2) +trav = geompy.MakeBoolean(trav,cut_front,2) +trav = geompy.MakeBoolean(trav,cut_rear,2) +trav = geompy.MakeTranslation(trav, L_base/2.-L_trav/2., l_base/2.-L_trav/2., h_base) -addToStudy(trav,"trav") +geompy.addToStudy(trav,"trav") # # Welding # -ground = MakeBox(-1000.,-1000.,0.,1000.,1000.,-1000.) -weld_left = MakeBoolean(cut_left,ground,2) -weld_right = MakeBoolean(cut_right,ground,2) -weld_front = MakeBoolean(cut_front,ground,2) -weld_rear = MakeBoolean(cut_rear,ground,2) +ground = geompy.MakeBox(-1000.,-1000.,0.,1000.,1000.,-1000.) +weld_left = geompy.MakeBoolean(cut_left,ground,2) +weld_right = geompy.MakeBoolean(cut_right,ground,2) +weld_front = geompy.MakeBoolean(cut_front,ground,2) +weld_rear = geompy.MakeBoolean(cut_rear,ground,2) # # Assembly # -coarse_weld = MakeBoolean(weld_left,weld_rear,3) -coarse_weld = MakeBoolean(coarse_weld,weld_right,3) -coarse_weld = MakeBoolean(coarse_weld,weld_front,3) +coarse_weld = geompy.MakeBoolean(weld_left,weld_rear,3) +coarse_weld = geompy.MakeBoolean(coarse_weld,weld_right,3) +coarse_weld = geompy.MakeBoolean(coarse_weld,weld_front,3) # # Cleaners # -left_cleaner = MakeBox(0.,-10*marge,0.,-10.*marge,10.*marge,10.*marge) -left_cleaner = MakeRotation(left_cleaner,yaxis,math.pi/4.) -left_cleaner = MakeTranslation(left_cleaner,-e_trav-2.*marge,0.,-2.*marge) +left_cleaner = geompy.MakeBox(0.,-10*marge,0.,-10.*marge,10.*marge,10.*marge) +left_cleaner = geompy.MakeRotation(left_cleaner,yaxis,math.pi/4.) +left_cleaner = geompy.MakeTranslation(left_cleaner,-e_trav-2.*marge,0.,-2.*marge) -right_cleaner = MakeMirrorByPlane(left_cleaner,symPlaneYZ) +right_cleaner = geompy.MakeMirrorByPlane(left_cleaner,symPlaneYZ) -front_cleaner = MakeBox(-10*marge,0.,0.,10.*marge,10.*marge,10.*marge) -front_cleaner = MakeRotation(front_cleaner,xaxis,3.*math.pi/4.) -front_cleaner = MakeTranslation(front_cleaner,0.,2.*marge-e_trav,2.*marge) +front_cleaner = geompy.MakeBox(-10*marge,0.,0.,10.*marge,10.*marge,10.*marge) +front_cleaner = geompy.MakeRotation(front_cleaner,xaxis,3.*math.pi/4.) +front_cleaner = geompy.MakeTranslation(front_cleaner,0.,2.*marge-e_trav,2.*marge) -rear_cleaner = MakeMirrorByPlane(front_cleaner,symPlaneXZ) +rear_cleaner = geompy.MakeMirrorByPlane(front_cleaner,symPlaneXZ) # # Welding # -weld = MakeBoolean(coarse_weld,left_cleaner,2) -weld = MakeBoolean(weld,rear_cleaner,2) -weld = MakeBoolean(weld,right_cleaner,2) -weld = MakeBoolean(weld,front_cleaner,2) -weld = MakeTranslation(weld, +weld = geompy.MakeBoolean(coarse_weld,left_cleaner,2) +weld = geompy.MakeBoolean(weld,rear_cleaner,2) +weld = geompy.MakeBoolean(weld,right_cleaner,2) +weld = geompy.MakeBoolean(weld,front_cleaner,2) +weld = geompy.MakeTranslation(weld, L_base/2.-L_trav/2., l_base/2.-L_trav/2., h_base) -weldId = addToStudy(weld,"weld") +weldId = geompy.addToStudy(weld,"weld") # # Assembly # -assemblage = Partition([base ,weld ,trav]) -assemblageId = addToStudy(assemblage, "assemblage") +assemblage = geompy.Partition([base ,weld ,trav]) +assemblageId = geompy.addToStudy(assemblage, "assemblage") salome.sg.updateObjBrowser(1) # # Display