[Jö...] Posted September 13, 2021 Share Posted September 13, 2021 Hallo, ist es möglich den Schwerpunkt eines gescannten Teils auszugeben? Ich habe eine STL eines Feingussteils das später noch bearbeitet wird. Das Teil selbst ist in der Theorie rotationssymmetrisch. Im Soll-Ist-Vergleich ist nach Best-Fit auf die relevante Fläche der Innenkontur, eine möglicherweise ungünstige Massenverteilung auf der Aussenkontur erkennbar. Grüße Jörg Link to comment Share on other sites More sharing options...
[Je...] Posted September 14, 2021 Share Posted September 14, 2021 Hallo Jörg, DE-Verseion adhoc ist der Schwerpunkt nicht als Konstruktionselement in der Software verfügbar. - Wir nehmen den Wunsch aber sehr gern auf. Eine Möglichkeit wie Du es aber mit den erweiterten Bordwerkzeugen schaffen kannst, besteht dennoch. Als Voraussetzung müsstest du mindestens SW2020 sowie eine Professional Lizenz (ermöglicht Skripting) haben. Denn hiermit kannst du dir 'Benutzerdefinierte Elemente' anlegen, welche in Deinem Fall einen Punkt darstellen. Damit der Punkt weiß was er machen soll, fütterst du diesen mit von Dir spezifizierten Eigenschaften/Berechnungen im Python (Skripting). Soviel zur Theorie, folgend etwas mehr Infos. Das Python in der gom-Umgebung kann auf externe Bibliotheken zugreifen Schwerpunktberechung wird in der bibliothek stl.mesh angeboten Die stl Bibliotheken müsste einmal bei dir installiert werden, anschließend kannst du darauf zugreifen numpy ist eine weitere Bibliothek, welche bei der Datenhandhabe sehr hilft. Ein Beispiel folgend, bei dem die Funktion mit der Netzinformation (Netzpunkte, Netzdreiecke) gefüttert wird. der Schwerpunkt (center of gravity) als X/Y/Z ausgegeben wird. EN-version adhoc, the center of gravity is not available as a design element in the software. - However, we will gladly take up your request. However, there is a possibility how you can create it with the extended on-board tools. As a prerequisite you must have at least SW2020 and a professional license (enables scripting). Because with this you can create 'user defined elements', which in your case represent a point. So that the point knows what to do, you feed it with properties/calculations specified by you in python (scripting). So much for the theory, following some more info. The python in the gom environment can access external libraries Center of gravity calculation is provided in the library stl.mesh The stl libraries would have to be installed once at your site, then you can access them numpy is another library which helps a lot with data handling. An example follows, where the function is fed with the mesh information (mesh vertices, mesh faces). the center of gravity is output as X/Y/Z. ---------------- from stl import mesh import numpy as np def center_of_gravity(vert, face): num_t = len(face) data = np.zeros(num_t, dtype=mesh.Mesh.dtype) for i in range(num_t): data['vectors'][i] = np.array(vert[face[i][0:3]][0:3]) volume, cog, inertia = mesh.Mesh(data, remove_empty_areas=False).get_mass_properties() return (cog) ---------------- Ich hoffe das hilft Dir weiter. Bei Fragen einfach fragen. Is the answer sufficient for you? If you have any questions, just ask. Gruß, Jens Link to comment Share on other sites More sharing options...
[Jö...] Posted September 15, 2021 Author Share Posted September 15, 2021 Guten Morgen Jens, vielen Dank für die ausführliche Antwort. Ich vermute SW2020 steht für Solid Works? Das steht schon mal zur Verfügung. Leider lässt GOM Pro noch auf sich warten ? , die Mühlen der Software-Investitions-Beschaffung mahlen langsam. Zumindest für mich wäre das Feature zukunftsfähig, da ich oft mit Gussteilen zu tun habe, die später einer hohen Rotationsgeschwindigkeit ausgesetzt sind. Grüße Jörg Link to comment Share on other sites More sharing options...
[Je...] Posted September 15, 2021 Share Posted September 15, 2021 Moin Jörg, ich bin mit SW2020 in den gom-internen Fachjargon gerutscht. Damit meinte ich eine GOM Inspect Pro ab dem Releasejahr 2020. (Mit SW meinte ich nicht SolidWorks sondern einfach nur Software.) Ich drücke Dir die Daumen für eine rasche Beschaffung der Software. ? Gruß, Jens Link to comment Share on other sites More sharing options...
[Ru...] Posted October 14, 2021 Share Posted October 14, 2021 Please sign in to view this quote. When I try this option I'm getting this message "cannot import name 'mesh' from 'stl'. Any suggestion? Link to comment Share on other sites More sharing options...
[Je...] Posted October 15, 2021 Share Posted October 15, 2021 (edited) Hey Ruben, This Error is caused by some missing libraries. In your case the Python is not able to make use of line 1 of the code. So the library stl (which includes the sub-functionality mesh) is missing. The same could be the case with numpy. To solve this issue, please make use of the system script 'Install Python Package' which can be found through: --> Scripting >>> Script Choice >>> Tools >>> Install Python Package. In here you type in the missing Python library and the GOM Inspect will install the add-on automatically. stl --> numpy --> Hope this helps! Edited October 15, 2021 Link to comment Share on other sites More sharing options...
[Ru...] Posted October 18, 2021 Share Posted October 18, 2021 Thank you very much, now the code is working correctly but nothing happened. There is no new point or any message with the cog. Link to comment Share on other sites More sharing options...
[Je...] Posted October 21, 2021 Share Posted October 21, 2021 True, the output (as well as the input) is not part of the suggestion above. To activate/run the definition I shared, you need to call it with the necessary input. For def center_of_gravity(vert, face) this means you need to have: .. The mesh points as a numpy array handed over as vert --> vert = np.array(your_mesh.data.coordinate)[0] .. The mesh triangles as a numpy array handed over as face --> face = np.array(your_mesh.data.triangle)[0] The output of center_of_gravity can then be handed over to a variable which could be part of a print() at the end. But please be aware, the result highly depends on the quality of your mesh. If there are (larger) holes given in the mesh, the calculated CoG can be questioned! Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in