<div dir="ltr"><div>Hi Lepy, <br></div><div><br></div><div>I think the <span style="font-family:monospace">embed <font face="arial,sans-serif">function is what you're looking for: <br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><a href="https://gitlab.onelab.info/gmsh/gmsh/blob/master/api/gmsh.py#L2319">https://gitlab.onelab.info/gmsh/gmsh/blob/master/api/gmsh.py#L2319</a></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif">It's more general than "Point in Surface", because it can do Curves in Surfaces, etc. <br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif">Make sure to call </font>synchronize <font face="arial,sans-serif">before trying to embed points. <br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif">
</font></span><div><span style="font-family:monospace"><font face="arial,sans-serif">The modified script is: <br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace">import gmsh<br><br>gmsh.initialize()<br><br>gmsh.option.setNumber("General.Terminal", 1)<br>gmsh.option.setNumber("Mesh.Algorithm", 6)<br>gmsh.option.setNumber("Mesh.RecombineAll", 1)<br><br>gmsh.model.add("square")<br>gmsh.model.geo.addPoint(0, 0, 0, 0.6, 1)<br>gmsh.model.geo.addPoint(1, 0, 0, 0.6, 2)<br>gmsh.model.geo.addPoint(1, 1, 0, 0.5, 3)<br>gmsh.model.geo.addPoint(0, 1, 0, 0.4, 4)<br>gmsh.model.geo.addLine(1, 2, 1)<br>gmsh.model.geo.addLine(2, 3, 2)<br>gmsh.model.geo.addLine(3, 4, 3)<br>line4 = gmsh.model.geo.addLine(4, 1)<br><br>gmsh.model.geo.addCurveLoop([1, 2, 3, line4], 1)<br>gmsh.model.geo.addPlaneSurface([1], 6)<br><br>gmsh.model.geo.addPoint(.5, .5, 0, 0.1, 5)<br><br># make sure synchronize before adding point! <br>gmsh.model.geo.synchronize()<br><br># embed point 5 (dim 0) in surface 6 (dim 2)<br>gmsh.model.mesh.embed(0, [5], 2, 6)<br>gmsh.model.mesh.generate(2)<br><br>gmsh.write("embedded.msh")</span></div><span style="font-family:monospace">

</span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif">Without embedded point:</font></span></div><div><div><img src="cid:ii_jzk0a7xu1" alt="image.png" width="520" height="482"><br></div><span style="font-family:monospace"></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif">With 
<span style="font-family:monospace"><font face="arial,sans-serif">embedded </font></span>

point:<br></font></span></div><div><div><img src="cid:ii_jzk092mu0" alt="image.png" width="520" height="514"></div><div><br></div><div>Sincerely, <br></div><div>Max <br></div><span style="font-family:monospace"></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"><br></font></span></div><div><span style="font-family:monospace"><font face="arial,sans-serif"></font></span><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Aug 20, 2019 at 11:01 AM <<a href="mailto:lepy@mailbox.org">lepy@mailbox.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
<br>
I want to use the Python API from gmsh to mesh a 2D surface with a local mesh refinement.<br>
<br>
How can I add a point to a surface to get a finer mesh around some inner points?<br>
<br>
It should be the Python version of   <br>
<br>
Point{5} In Surface{6};<br>
<br>
Thanks<br>
<br>
Lepy<br>
<br>
gmsh.initialize()<br>
<br>
gmsh.option.setNumber("General.Terminal", 1)<br>
gmsh.option.setNumber("Mesh.Algorithm", 6)<br>
gmsh.option.setNumber("Mesh.RecombineAll", 1)<br>
<br>
gmsh.model.add("square")<br>
gmsh.model.geo.addPoint(0, 0, 0, 0.6, 1)<br>
gmsh.model.geo.addPoint(1, 0, 0, 0.6, 2)<br>
gmsh.model.geo.addPoint(1, 1, 0, 0.5, 3)<br>
gmsh.model.geo.addPoint(0, 1, 0, 0.4, 4)<br>
gmsh.model.geo.addLine(1, 2, 1)<br>
gmsh.model.geo.addLine(2, 3, 2)<br>
gmsh.model.geo.addLine(3, 4, 3)<br>
line4 = gmsh.model.geo.addLine(4, 1)<br>
<br>
gmsh.model.geo.addCurveLoop([1, 2, 3, line4], 1)<br>
gmsh.model.geo.addPlaneSurface([1], 6)<br>
<br>
gmsh.model.geo.addPoint(.5, .5, 0, 0.1, 5)<br>
<br>
??? gmsh.model.geo.addPoint2Surface(???)<br>
<br>
gmsh.model.geo.synchronize()<br>
gmsh.model.mesh.generate(2)<br>
<br>
_______________________________________________<br>
gmsh mailing list<br>
<a href="mailto:gmsh@onelab.info" target="_blank">gmsh@onelab.info</a><br>
<a href="http://onelab.info/mailman/listinfo/gmsh" rel="noreferrer" target="_blank">http://onelab.info/mailman/listinfo/gmsh</a><br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>Max Orok</div><div>Contractor<br></div></div><div dir="ltr"><a href="http://www.mevex.com" target="_blank">www.mevex.com</a><br><br><img src="https://docs.google.com/uc?export=download&id=1fHTIiW4OMUjQr1iOkspQ7wiEsxunoOs0&revid=0B6x5w-5zVaEjSkpwbm5oY29jbG1XMzJoYldXTmJpNGFtb3dVPQ" width="164" height="42"><br></div></div></div></div></div></div>