Skip to main content

3MF in the Wild – Meet Polygonica!

The 3D Printing and Additive Manufacturing 3MF standard is being utilized creatively, and in this blog series, 3MF in the Wild, we highlight companies and organizations using it. Read below to meet Polygonica and to find out why they use 3MF.

MachineWorks Ltd is a component vendor – one of those lesser-known companies that widely impact the software we use for design and manufacture. Based in Sheffield in the UK, the company has been developing polygon-based software libraries since 1994. Its MachineWorks engine is a popular choice for CNC simulation and verification in the subtractive industry.

Polygonica is the company’s second product, with many of its underlying algorithms shared with the MachineWorks product. It’s a solid modeling toolkit for processing polygon meshes. Written in C and with C# wrappers provided, it’s available for Windows, Linux, and macOS. In addition to being a component of the commercial desktop software, Polygonica integrates into several browser-based software services running in both public cloud and on-premises environments. It is used in various fields, including computer-aided design, manufacturing, engineering, additive manufacturing, scanning and metrology, medical, dental, BIM, construction, mining, and other large capital asset sectors.

Reference customers include 3D Systems, Stratasys, ANSYS, AECOM, Desktop Metal, ETEC, Nexa3D, CASTOR, CADS Additive, Zortrax, Cimatron, OPEN MIND, SimScale, and Heidenhain.

And while Polygonica’s users are happy with its performance, accuracy, and stability, there was one thing they wanted — 3MF.

After many requests for direct support of the 3MF format, Polygonica’s Consulting Engineering team developed a bridge between 3MF and Polygonica, recently made available to customers and evaluees in unsupported source code.

Let’s see the added 3MF benefits in this insightful interview with MachineWorks’ Head of Sales and Marketing, Richard Baxter.

Meet Polygonica


What products or services does Polygonica provide the additive manufacturing industry?

Polygonica provides low-level geometric operations on polygons. In additive manufacturing, these are used within applications for print preparation, slicing and build-processing, auto-quoting from web portals for service bureaus, marketplace platforms, and cloud/on-premises manufacturing estimation systems (MES).

Popularity in Polygonica is also increasing in CAE analysis processes to clean and prepare meshes before executing solvers. This includes topology optimization results for further downstream analysis.

Many apps use Polygonica internally; here are a few:

  • 3DXpert from Oqton,
  • 3D Sprint from 3D Systems,
  • GrabCAD Print from Stratasys,
  • Fabricate and Live Sinter from Desktop Metal,
  • AM Studio from CADS Additive,
  • Perfactory from ETEC,
  • Several products from ANSYS,
  • And CASTOR.

A few more influential brands within AM use Polygonica, but I’ve only permission to name a few.

Rather than talk more about healing Booleans and offsetting, I guess I can answer the question by saying Polygonica is an enabling technology for software product teams. It saves them time in the short- and long-term:

  • In the short term, it helps get to market by providing well-implemented and well-tested versions of algorithms that are difficult to implement.
  • In the long term, it helps with problems – and there always are problems. Teams don’t have to spend so long trying to fix a problem themselves, diverting away from adding new features and functionality to their product. They can throw the problems over to us, and we’ll fix it for them.

One more thing Polygonica offers is flexibility. We provide low-level, granular functionality. This functionality focus means our customers, themselves brilliant software developers, have more freedom to use the tool in different ways. They can tailor and customize it for their particular requirements.

Our current focus is building a platform for online 3DP for worldwide access.

What are the biggest challenges in the 3D Printing/AM industry?

Recently more customers are integrating CAE analysis into AM workflows to make printing more reliable. Deformation compensation is one of the features we’ve worked on for the 3.2 release (Autumn 2022). The aim is to adjust the part to compensate for measured or simulated deformation during printing. I guess that tells you something ☺

How do your solutions take advantage of 3MF?

3MF is a file format. In that sense, it’s a specification for data transfer. Customers want to extract data from and input it into Polygonica — 3MF may be one option.

Polygonica is a software library that integrates smoothly into the host application. In most cases, it uses an in-memory mesh data structure instead of relying on files. Its flexible API supports passing meshes in various neutral ways. You can think of this as analogous to how graphics data gets from your app onto your graphics card — it doesn’t go via STL or 3MF.

In scalable cloud architecture, the situation might be a bit different, and mesh data might be serialized in files and then passed around between other microservices to perform various operations. So in such architectures, file formats become more critical to regular operation.

Polygonica provides reading and writing for both STL and its own proprietary .PGS format, PGS is great for archiving data within a session but not for passing data to other systems – since only Polygonica customers would be able to read it.

We’ve had many requests from customers and potential customers to read 3MF directly into Polygonica. Sometimes I think that’s just a tick list request, but in other cases, the customer is committed to 3MF as part of the backbone of their system. Until recently, we’ve said no, as Polygonica is a mesh processing toolkit, not a file reading tool. We’re a small team and want to focus on our strengths: building fast and robust geometric operations based on polygons.

However, we had recently grown our Consulting Engineering team, so implementing example code for 3MF import and export was a good training exercise for them – and me – in learning about what life is like for a client developer using Polygonica.

We must again thank the 3MF consortium and its members for the open source lib3mf libraries – they saved us a ton of time.

We also implemented the beam lattice extension as I had been playing with Polygonica’s new multi-Boolean union to create lattices. Instead of just doing a Boolean union between two entities, the new API takes a whole bunch of entities and unions everything together in one big multi-threaded and heavily optimized bang. So the 3MF Beam Lattice extension seemed the ideal way to feed the beast with someone else’s lattice data rather than our own.

Here is a demo video that showcases the beam lattice extension:

Find 3MF example parts here: New 3MF Example Code Available for Polygonica

3MF Blog_Polygonica

Voronoi infill in hollowed version of 3Dbenchy, rendered in Adobe Dimension.

Why do you feel 3MF is important to the 3D Printing/AM ecosystem?

Data exchange is a headache for everybody working in industrial design and manufacturing. These problems are by no means limited to AM; in fact, AM seems quite late to this particular party.

There are good reasons why data exchange is a headache, depending on how you like to define good. There are differences in geometric specifications and behaviors between different systems, both significant and subtle, and there are also bugs. Engineers might rightly expect software without bugs, but sorry, this stuff is difficult.

Depending on your viewpoint, a vendor’s natural desire to keep customers within their ecosystem can make data exchange harder. I doubt most engineers would view that as good, but we’re capitalists, aren’t we? And isn’t maximizing profits precisely the motive that drives innovation?

So, having an open data exchange standard and consortium steering it is excellent for AM.

What exciting developments do you expect to see in 3D Printing/AM over the coming months or years?

I’m not an engineer, so perhaps I’m not a good person to ask. However, it’s pretty clear the full potential for AM can only be realised through significant advances – I mean real changes and innovations – on the software side. I think the really difficult challenges still lie ahead, not behind. I guess that’s a good thing for the manufacturing software industry.

What advanced 3MF capabilities do you want to support in the future (color, lattice, volumetric?)

While slightly contradicting the previous point about needed changes, I guess it’s odd that 3MF’s base is not from an existing standard such as STEP. There are two parts to that: capturing the original design geometry and achieving ISO certification or similar. I suppose that the 3MF consortium will seek certification as a standard at some point, so it boils down to why not base 3MF on already widely used and recognized geometry standards?

As an analogy, you might look at the evolution of IFC in the construction industry, which, if I understand it correctly, was at least based initially on STEP. I know this is a vast oversimplification, but in my simple way, IFC is STEP + metadata, and 3MF is STL + metadata. Sure, mentioning STL is heresy in certain circles, but I think that characterization is accurate enough for this analogy.

Of course, if CAD BREP geometry were added to 3MF, it would be a significant extension.

To answer my own question, pragmatically, I think it was undoubtedly a good thing for the geometry core of 3MF to be something straightforward for application developers to adopt without needing a CAD engine or similar. But in the future there will be a greater requirement within professional AM to transport CAD BREP geometry instead of/along with surface meshes and sometimes associated volume or implicit data.

However, as 3MF evolves, the most important thing is that it remains an open industry standard.