Kaynağa Gözat

Fix for internal buffers, looks like the geolib wasn't accepting the negative buffer size.
So now the internal buffers are generated in the same way as the external buffers and only the internal rings are returned
Issue #280

Victor Benso 6 yıl önce
ebeveyn
işleme
bc467785d0
1 değiştirilmiş dosya ile 3 ekleme ve 3 silme
  1. 3 3
      flatcamEditors/FlatCAMGeoEditor.py

+ 3 - 3
flatcamEditors/FlatCAMGeoEditor.py

@@ -3751,7 +3751,7 @@ class FlatCAMGeoEditor(QtCore.QObject):
             return
 
         pre_buffer = cascaded_union([t.geo for t in selected])
-        results = pre_buffer.buffer(-buf_distance + 1e-10, resolution=32, join_style=join_style)
+        results = pre_buffer.buffer(buf_distance + 1e-10, resolution=32, join_style=join_style)
 
         if results.is_empty:
             self.app.inform.emit(_("[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value."))
@@ -3761,9 +3761,9 @@ class FlatCAMGeoEditor(QtCore.QObject):
             return
         if type(results) == MultiPolygon:
             for poly in results:
-                self.add_shape(DrawToolShape(poly.exterior))
+                self.add_shape(DrawToolShape(poly.interiors))
         else:
-            self.add_shape(DrawToolShape(results.exterior))
+            self.add_shape(DrawToolShape(results.interiors))
 
         self.replot()
         self.app.inform.emit(_("[success] Interior buffer geometry created."))