{"id":237,"date":"2012-08-19T09:04:26","date_gmt":"2012-08-19T08:04:26","guid":{"rendered":"http:\/\/www.joerg-seyfried.de\/?p=237"},"modified":"2021-02-09T19:47:13","modified_gmt":"2021-02-09T18:47:13","slug":"blender-2-6-remove-doubles-fuer-alle-objekteblender-2-6-remove-doubles-for-all-objects","status":"publish","type":"post","link":"https:\/\/www.joerg-seyfried.de\/alt\/2012\/08\/blender-2-6-remove-doubles-fuer-alle-objekteblender-2-6-remove-doubles-for-all-objects\/","title":{"rendered":"Blender 2.6: \u201eremove doubles\u201c f\u00fcr alle Objekte"},"content":{"rendered":"<p><!--:de-->Mal wieder eines dieser \u201eGoogle-L\u00f6cher\u201c: man findet nix zu einem Suchbegriff. Stopfen wir dieses Loch (und f\u00fcr mich ist es eine Art Zwischenablage, wenn ich das mal wieder brauchen sollte).<br \/>\n<a href=\"http:\/\/www.joerg-seyfried.de\/alt\/2012\/08\/blender-2-6-remove-doubles-fuer-alle-objekteblender-2-6-remove-doubles-for-all-objects\/blenderremalldoubles\/\" rel=\"attachment wp-att-240\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-240 size-medium\" title=\"BlenderRemAllDoubles\" src=\"https:\/\/www.joerg-seyfried.de\/alt\/wp-content\/uploads\/2012\/08\/BlenderRemAllDoubles-450x198.jpg\" alt=\"\" width=\"450\" height=\"198\"><\/a><br \/>\nProblemstellung: man hat eine 3D-Szene beispielsweise aus einem anderen Programm in Blender importiert, und w\u00fcrde gerne damit weiterarbeiten. Stellt nun aber fest, dass praktisch alle Dreiecke im Modell doppelt sind &#8211; anw\u00e4hlen, Editmode, \u201eRemove doubles\u201c, <a href=\"http:\/\/www.joerg-seyfried.de\/alt\/2012\/08\/blender-2-6-remove-doubles-fuer-alle-objekteblender-2-6-remove-doubles-for-all-objects\/bildschirmfoto-2012-08-19-um-09-52-54\/\" rel=\"attachment wp-att-242\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-242 size-thumbnail\" title=\"Bildschirmfoto 2012-08-19 um 09.52.54\" src=\"https:\/\/www.joerg-seyfried.de\/alt\/wp-content\/uploads\/2012\/08\/Bildschirmfoto-2012-08-19-um-09.52.54-150x150.jpg\" alt=\"\" width=\"150\" height=\"150\"><\/a>\u201erecalculate normals\u201c Editmode verlassen geht ja noch f\u00fcr 10 Objekte. Was aber, wenn das \u00fcber 100 sind? Richtig, Blender hat ja zum Gl\u00fcck einen eingebauten Python-Interpreter. Also ein beliebiges Blender-Fenster schnappen, die Python-Konsole aufmachen \u00fcber den kleinen Button unten links:<\/p>\n<p>\u2026und dann das hier einfach reinkopieren, ggf. noch einmal Return dr\u00fccken. Vorher m\u00fcssen die Objekte selektiert werden, die der Prozedur unterworfen werden sollen (ggf. mal mit ein paar anfangen, weil das Skript eine Weile braucht, wenn komplexe Geometrien dabei sind):<\/p>\n<pre>import bpy\nif bpy.context.selected_objects != []:\n\tfor ob in bpy.context.selected_objects:\n\t\tif ob.type == 'MESH':\n\t\t\tbpy.context.scene.objects.active = ob \n\t\t\tbpy.ops.object.mode_set(mode='EDIT') \n\t\t\tbpy.ops.mesh.select_all() \n\t\t\t# remove doubles:\n\t\t\tbpy.ops.mesh.remove_doubles() \n\t\t\t# recalculate outside normals:\n\t\t\tbpy.ops.mesh.normals_make_consistent(inside=False)\n\t\t\tbpy.ops.object.mode_set(mode='OBJECT')\n<\/pre>\n<p>&nbsp;<\/p>\n<p><!--:--><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mal wieder eines dieser \u201eGoogle-L\u00f6cher\u201c: man findet nix zu einem Suchbegriff. Stopfen wir dieses Loch (und f\u00fcr mich ist es eine Art Zwischenablage, wenn ich das mal wieder brauchen sollte). Problemstellung: man hat eine 3D-Szene beispielsweise aus einem anderen Programm in Blender importiert, und w\u00fcrde gerne damit weiterarbeiten. Stellt nun aber fest, dass praktisch alle [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[16,23,11],"tags":[27],"class_list":["post-237","post","type-post","status-publish","format-standard","hentry","category-computer","category-linux","category-mac-os-x","tag-blender"],"_links":{"self":[{"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/posts\/237","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/comments?post=237"}],"version-history":[{"count":15,"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/posts\/237\/revisions"}],"predecessor-version":[{"id":568,"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/posts\/237\/revisions\/568"}],"wp:attachment":[{"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/media?parent=237"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/categories?post=237"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.joerg-seyfried.de\/alt\/wp-json\/wp\/v2\/tags?post=237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}