6863523 |
January 13, 2017 12:09 |
python script to create geometry for salome, and then mesh
1 Attachment(s)
Dear All,
I am trying to create the geometry for salome via Python script.
The geometry is like in the attachment.
I exported the original Python script from salome via dump study and changed the coordinates for the small squares.
But when I load the script in salome, there is an error like:
Code:
>>> execfile(r"/home/LEPT/ywang/OpenFOAM/ywang-3.0.1/run/salome/UCUCscript.py")
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/home/LEPT/ywang/OpenFOAM/ywang-3.0.1/run/salome/UCUCscript.py", line 52, in <module>
Edge_8 = geompy.MakeEdge(Vertex_8, Edge_5_vertex_2)
File "/usr/local/salome/INSTALL/GEOM/lib/python2.7/site-packages/salome/salome/geom/geomBuilder.py", line 284, in OpenCallClose
res = theFunction(self, *args, **kwargs)
File "/usr/local/salome/INSTALL/GEOM/lib/python2.7/site-packages/salome/salome/geom/geomBuilder.py", line 4562, in MakeEdge
RaiseIfFailed("MakeEdge", self.ShapesOp)
File "/usr/local/salome/INSTALL/GEOM/lib/python2.7/site-packages/salome/salome/geom/geomBuilder.py", line 299, in RaiseIfFailed
raise RuntimeError, Method_name + " : " + Operation.GetErrorCode()
RuntimeError: MakeEdge : The end points are too close
The Python script is
Code:
import sys
import salome
salome.salome_init()
theStudy = salome.myStudy
import salome_notebook
notebook = salome_notebook.NoteBook(theStudy)
sys.path.insert( 0, r'/home/LEPT/ywang/OpenFOAM/ywang-3.0.1/run/salome')
###
### GEOM component
###
import GEOM
from salome.geom import geomBuilder
import math
import SALOMEDS
import numpy as np
geompy = geomBuilder.New(theStudy)
O = geompy.MakeVertex(0, 0, 0)
OX = geompy.MakeVectorDXDYDZ(1, 0, 0)
OY = geompy.MakeVectorDXDYDZ(0, 1, 0)
OZ = geompy.MakeVectorDXDYDZ(0, 0, 1)
Vertex_1 = geompy.MakeVertex(0, 0, 0)
Vertex_2 = geompy.MakeVertex(1, 0, 0)
Vertex_3 = geompy.MakeVertex(1, 1, 0)
Vertex_4 = geompy.MakeVertex(0, 1, 0)
Edge_1 = geompy.MakeEdge(Vertex_1, Vertex_2)
Edge_2 = geompy.MakeEdge(Vertex_2, Vertex_3)
Edge_3 = geompy.MakeEdge(Vertex_3, Vertex_4)
Edge_1_vertex_2 = geompy.GetSubShape(Edge_1, [2])
Edge_4 = geompy.MakeEdge(Vertex_4, Edge_1_vertex_2)
Vertex_5 = geompy.MakeVertex(19.138425, 21.870465, 0)
Vertex_6 = geompy.MakeVertex(29.745015, 21.870465, 0)
Vertex_7 = geompy.MakeVertex(29.745015, 32.477055, 0)
Vertex_8 = geompy.MakeVertex(19.138425, 21.870465, 0)
Edge_5 = geompy.MakeEdge(Vertex_5, Vertex_6)
Edge_6 = geompy.MakeEdge(Vertex_6, Vertex_7)
Edge_7 = geompy.MakeEdge(Vertex_7, Vertex_8)
Edge_5_vertex_2 = geompy.GetSubShape(Edge_5, [2])
Edge_8 = geompy.MakeEdge(Vertex_8, Edge_5_vertex_2)
Vertex_9 = geompy.MakeVertex(3.051645, 11.103165, 0)
Vertex_10 = geompy.MakeVertex(13.658235, 11.103165, 0)
Vertex_11 = geompy.MakeVertex(13.658235, 21.709755, 0)
Vertex_12 = geompy.MakeVertex(3.051645, 11.103165, 0)
Edge_9 = geompy.MakeEdge(Vertex_9, Vertex_10)
Edge_10 = geompy.MakeEdge(Vertex_10, Vertex_11)
Edge_11 = geompy.MakeEdge(Vertex_11, Vertex_12)
Edge_9_vertex_2 = geompy.GetSubShape(Edge_9, [2])
Edge_12 = geompy.MakeEdge(Vertex_12, Edge_9_vertex_2)
# Face_1 = geompy.MakeFaceWires([Edge_1, Edge_2, Edge_3, Edge_4, Edge_5, Edge_6, Edge_7, Edge_8], 1)
geompy.addToStudy( O, 'O' )
geompy.addToStudy( OX, 'OX' )
geompy.addToStudy( OY, 'OY' )
geompy.addToStudy( OZ, 'OZ' )
geompy.addToStudy( Vertex_1, 'Vertex_1' )
geompy.addToStudy( Vertex_2, 'Vertex_2' )
geompy.addToStudy( Vertex_3, 'Vertex_3' )
geompy.addToStudy( Vertex_4, 'Vertex_4' )
geompy.addToStudy( Vertex_5, 'Vertex_5' )
geompy.addToStudy( Vertex_6, 'Vertex_6' )
geompy.addToStudy( Vertex_7, 'Vertex_7' )
geompy.addToStudy( Vertex_8, 'Vertex_8' )
geompy.addToStudy( Vertex_9, 'Vertex_9' )
geompy.addToStudy( Vertex_10, 'Vertex_10' )
geompy.addToStudy( Vertex_11, 'Vertex_11' )
geompy.addToStudy( Vertex_12, 'Vertex_12' )
geompy.addToStudy( Edge_1, 'Edge_1' )
geompy.addToStudy( Edge_2, 'Edge_2' )
geompy.addToStudy( Edge_3, 'Edge_3' )
geompy.addToStudyInFather( Edge_1, Edge_1_vertex_2, 'Edge_1:vertex_2' )
geompy.addToStudy( Edge_4, 'Edge_4' )
geompy.addToStudy( Edge_5, 'Edge_5' )
geompy.addToStudy( Edge_6, 'Edge_6' )
geompy.addToStudy( Edge_7, 'Edge_7' )
geompy.addToStudyInFather( Edge_5, Edge_5_vertex_2, 'Edge_5:vertex_2' )
geompy.addToStudy( Edge_8, 'Edge_8' )
geompy.addToStudy( Edge_9, 'Edge_9' )
geompy.addToStudy( Edge_10, 'Edge_10' )
geompy.addToStudy( Edge_11, 'Edge_11' )
geompy.addToStudyInFather( Edge_9, Edge_9_vertex_2, 'Edge_9:vertex_2' )
geompy.addToStudy( Edge_12, 'Edge_12' )
#geompy.addToStudy( Face_1, 'Face_1' )
if salome.sg.hasDesktop():
salome.sg.updateObjBrowser(1)
Thank you in advance for any suggestions.
Best Regards,
Bill
|