How do I quickly make a face in a rectangle with holes.

I am trying to make a face between a rectangle, and a number of holes inside it. Right now, it takes me more than an hour to get from the “Without face” to the “With face” step in Blender. There must be a quicker way to do this…

Essentially what I am trying to to:

  1. Add 2D rectangle without face
  2. Add a number of non overlapping 2D circles (and other shapes) inside this mesh on the same plane.
  3. Make face between edge of holes, and outer rectangle.

Right now I build a lattice work of edges inside,and after selecting the edges I use “bridge edge loop”. This works, but takes me hours to do. There must be a smarter & quicker way.

Try Alt+F to fill the mesh and then X / Limited Dissolve if you’re ok with ngons. You cannot have holes in faces so you cannot remove all edges

Why not export the design as curves out of LibreCAD, import the curves into Blender and then just use Blender’s curve tools to fill and extrude the object?

Why bother with mesh unless you absolutely have to?
You can convert to mesh at any time with Alt-C > Mesh from Curve.

another way would be to use knife cut !

happy bl

Why not to use Blender’s primitives?


Because in blender I cannot use offset, filet, extend and join lines at crossings. I can also not easily calculate area and measure distances. All the typical CAD tools. If there where blender tools to do this, this would be the way to go. How it is now a tool like LibreCAD will make 2D precision drawings very quickly.


I like what you do in your post, please show the mouse clicks/buttons as I can not replicate your result.

Importing the file as curves is the method I tried. However, somewhere in the process Blender (or LibreCAD) messes up the dxf file. I have attached the picture of the direct curve import. What I do now, is that I cut the LibreCAD file in half, and then mirror the half back. Importing the curves works fine, and long as I don’t try to import a full circle (or elipse). This may also contribute to the problem, because the circle you see, actually consists of two half circles with the vertices of each half circle on top of each other. The same is true for the rectangles, they are just lines with the vertices on top of each other.

Once I convert the shape to a mesh, I can join these “sub shapes” using the “remove duplicates” command.

In general I don’t mind converting to a mesh, because I need to add a filet to some of the edges as well, and as far as I read up on curves, this is essentially not possible. I will use boolean intersection operations later in the design process (which is again not possible with curves?). I have attached some more pictures to show what I will be doing later in the process. Everything that is a purely “2D extruded” shape, I will CNC machine directly from LibreCAD via the dxf file. Import into blender is only to confirm it fits. However, there are a number of 3D shapes (baffles, Dome) for which I will finalise the design in blender, and use the blender STL file to machine in the cnc.

This is exactly what I am trying to achieve. Thank you, this simple tip saved me a LOT of time.:D. To get the funny tweeter shape to work as well, I needed to change the “Remove Doubles” setting to 0.001 for merge distance.

Standard merge distance

Merge distance set to 0.001 (Only 1 vertex removed, so although it looked continuous, it was not :()

In order to summarize (and maybe it will help someone else) this is my current workflow from LibreCAD to Blender:

  1. LibreCAD: program and file units: INCH
  2. In order to circumvent the issue with importing circles, I cut the LibreCAD design in half, and mirror it back again.
  3. Export file as dxf (does not matter what version, tried from 7 to 14)
  4. In Blender, Import dxf, use unit scale factor 0.3048 (Even if you use Imperial units in Blender, you need to convert to metric).
  5. Convert to mesh (Alt+C->Mesh from curve)
  6. Edit Mode, (W-> Remove doubles)
  7. (Alt+F) to fill
  8. X, limited dissolve to clean up


Not a LibreCAD user, so I’m not sure what formats it can or can not export to. I did a quick mockup of your design in Inkscape and exported that as an SVG file (example).

After that it’s as easy as

  1. File > Import > SVG.
  2. (optional) Scale and/or move object into position.
  3. In the curve settings: Make sure “Shape” is set to 2D and “Fill” is set to both.
  4. (optional) Set an “Extrude” value to give the object thickness.

Thank you for your help. LibreCAD only exports dxf. I did go the inkscape route before, but I always got the scale wrong in blender. In the future, when I only need 2d plates, I will try your route:
LibreCAD->export dxf->Inkscape->Export svg->Blender->Nice curve only plate.