<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
  <meta name="Generator" content="Zarafa WebApp v7.1.11-45875">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <title>AW: [Gmsh] Merge .stp file - scaling issue</title>
</head>
<body>
<p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span id="_mce_caret" data-mce-bogus="true"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">Actually this is what I also thought. But to give an example: I draw a planar surface 10m x 10m and Export as .stp, this Information is correctly stored in the .stp-file </span></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span id="_mce_caret" data-mce-bogus="true"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">(the .stp file says: #112=(<br>LENGTH_UNIT()<br>NAMED_UNIT(*)<br>SI_UNIT($,.METRE.)<br>);</span></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">I can also load this .stp file in other drawing softwares (AutoCAD, Rhino), and it always recognises correctly the u</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">nits. But once I merge this file in Gmsh, the surface gets scaled, basically the edge Point now gets the coordinates (10000, 10000, 0), even though in the .stp-file it still had the coordinates (10, 10, 0). This does not happen when the Units in the .stp files are set to Millimeters. So it is definitely Gmsh (resp. OpenCASCADE) who does something with the unit Settings.<br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">I have figured out a workaround for now but it seems error prone to me.<br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">Is there actually a way to control this or just to ignore Units once importing the .stp file in Gmsh?<br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">Cheers<br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">Daniel<br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br data-mce-bogus="1"></span></p><p style="margin: 0px; padding: 0px;" hasownproperty=" function hasOwnProperty() {     [native code] } " valueof=" function valueOf() {     [native code] } " isprototypeof=" function isPrototypeOf() {     [native code] } " propertyisenumerable=" function propertyIsEnumerable() {     [native code] } " tolocalestring=" function toLocaleString() {     [native code] } " tostring=" function toString() {     [native code] } " constructor=" function Object() {     [native code] } " data-mce-style="padding: 0; margin: 0;"><span id="_mce_caret" data-mce-bogus="true"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;" data-mce-style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;"><br></span></span></p><blockquote style="margin: 0px 5px; padding-left: 5px; border-left-color: rgb(50, 95, 186); border-left-width: 2px; border-left-style: solid;"><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt;">-----Ursprüngliche Nachricht-----<br><span><strong>Von:</strong> Christophe Geuzaine <cgeuzaine@ulg.ac.be></span><br><span><strong>Gesendet:</strong> Die 17 März 2015 12:50</span><br><span><strong>An:</strong> Sonntag, Daniel Alexander <daniel-alexander.sonntag@itke.uni-stuttgart.de></span><br><span><strong>CC:</strong> gmsh@geuz.org</span><br><span><strong>Betreff:</strong> Re: [Gmsh] Merge .stp file - scaling issue</span><br><br></span><div><pre style="white-space: pre-wrap; -ms-word-wrap: break-word;" wrap=""><br>> On 12 Mar 2015, at 18:34, Sonntag, Daniel Alexander <daniel-alexander.sonntag@itke.uni-stuttgart.de> wrote:<br>> <br>> Hello,<br>> <br>> I am currently playing around with gmsh to mesh surfaces imported as .stp file (exported from Rhino3d), but somehow once merging the .stp file the unit setting seem to get confused. Example: the .stp file is exported in meters, but once I import the file via Merge the unit gets changed to millimeters (or in other words the geometry gets scaled by a factor 1000). So once I reimport the mesh it is also scaled up by a factor 1000.<br>> <br>> Is there a way to control this or to disable such scaling?<br>> <br><br>We use OpenCASADE to import .stp files; if there's a 1000x scaling, probably the files have some mm units referenced in them? (Gmsh does not have any units.)<br><br>> Any help is appreciated,<br>> <br>> Cheers<br>> Daniel<br>> _______________________________________________<br>> gmsh mailing list<br>> gmsh@geuz.org<br>> http://www.geuz.org/mailman/listinfo/gmsh<br><br>-- <br>Prof. Christophe Geuzaine<br>University of Liege, Electrical Engineering and Computer Science <br>http://www.montefiore.ulg.ac.be/˜geuzaine<br><br><br><br></pre></div></blockquote>
</body>
</html>