When we started the project we had very limited knowledge of the anatomy of the human heart. Therefore our first order of business was to learn more about all the different parts of the heart, what their function is and about various congenital heart defects. The cardiologists in Leiden helped us with this by showing us several preserved hearts and explaining the basics of how the heart works. They also provided us with some online courses from which we could learn even more. This took up most of the first week. At the same time we took a look at the segmented CT-scan of a patient’s heart that they had already prepared for us, so we could see if we could work with it.

From CT to CAD

At this point our knowledge of CAD-software and file types that could be used to create a printable model was very limited. Especially working with meshes was something we had little to no experience with. Because the file created with the CT-scan was a mesh, we spent quite some time researching other options. We looked for ways to convert a mesh into a NURBS model, we searched for existing models that we could adjust and change and even tried to model a heart from scratch. All with varying but not very promising results. Converting a mesh didn’t work at all or resulted in a model that was difficult to work with, as were most of the existing models we found. Creating a heart from scratch seemed possible but was very time consuming.

But then we had a breakthrough. We found a piece of software that allowed us to easily adjust the mesh models from the CT-scans. Working with the model from the scan would mean a higher anatomical accuracy. To get the computer model as close to the scanned heart as possible, Leiden scanned one of the preserved hearts for us. Because a preserved heart is not beating and inside a body anymore it is possible to use more radiation and get a higher resolution. However, we could not get everything out of the scan. The valves were too thin to see, so we had to model them ourselves.

Progress in the process

At this point everyone in the group started to get their own place in the process and develop their own specialty. This prevented us from doing any double work and made it possible to learn new software and techniques in a very short time. We had someone who cleaned up the mesh model and made it into a solid, someone who modeled the coronary arteries, someone who modeled the valves and someone who put everything together into a correct, printable model. During this process we also started making our first test prints, which were mostly valves, to see what the materials were really like and how thin, soft or hard we could make everything.

Printing

It ended up taking longer than we initially thought and wanted to start printing our first entire heart. This was due to the fact that it took us a long time to find the appropriate software, learn how to use it and also combining all the separate parts we had into one printable solid. However, because we did take our time for this process we ended up with a set of steps that were easy to repeat. So once we had our first printed heart and the cardiologists from LUMC gave us some very useful feedback about the anatomy of it, we were able to improve the heart quite fast. Not only did we adjust it anatomically, we also gave various parts of the heart different colors and material properties. We did this with the purpose of making it easier for patients to understand the model.

In the end we had a printed model of a healthy heart, without defects. The colors of the model were not exactly what we wanted yet, due to it being too late to switch the colors in the printer. However the different colors that we did use gave a good impression of what is possible. The different material settings also turned out well and both could be easily adjusted for a next print if necessary. The valves could anatomically still be located a bit better and maybe the heart could also be cut in a different location, or more than one, to make them more visible. But with the process we created and our skills that we are still developing as we go, this could all be easily changed.

Up next

The next step would be to create a model of a heart with a defect. The same methods as we used for a normal heart can be used for this. Fitting in the modeled parts in an anatomically correct way will probably be a bit more challenging, because the defect can make the heart look very different. This makes it more difficult to find the right location of, for instance, the valves. However, with the expertise of the cardiologists at LUMC it is definitely possible.

The Science Fair, october 27th, was the chance for us to present our work to our collegues and other interested people. For this event we made two informative posters which showed the global process we went trough, from scan to printable CAD-model. We also displayed our prints, including the latest, just finished improvement of the previous heart. There was quiet some interest in our project, and it was nice to get some critical questions to answer, like: what value can this really add to the existing products? Instead of some other projects, no media attention was given to us. It was nice to see all the other projects, and to see all the people that passed by and took a look to this Science Fair.

Since we were using the CT-scans that the LUMC cardiologists provided us with, we had a model of the heart that was more or less anatomically correct. However, the valves were missing from this model. The scan had a resolution with voxels of approximately 1 by 1 millimeter. Because the cusps of the valves and the heart strings are thinner than that, they didn’t show up on the CT-scan. Therefore we had to model them ourselves.

The aortic and pulmonary valves look quite similar. They are both semilunar valves and consist of three leaflets that are shaped like a half full moon, hence the name. These were fairly simple to model in Rhino. We did a test print to see what material combination we could or should use and to show in Leiden. We got some useful feedback. On the first try the connections of the cusps with the artery were located in a single plane, while in reality the leaflets are attached to the arteries in semi-circles. This was quite easily fixed so then the aortic and pulmonary valve could be placed inside the heart. Because the aorta and the pulmonary artery always roughly have the shape of a circle, this model can be used in almost any heart.

The tricuspid and mitral valve were more of a challenge. They are also quite similar, except for one major difference: the tricuspid valve has three cusps and the mitral has two. Therefore the modeling principles could be used for both, but they did result in two separate models. What made it difficult to model were the very thin heart strings that protrude from the edges of the leaflets and connect them with the papillary muscles that are attached to the walls of the ventricles. Every heart is shaped a little differently, especially ones with a cardiac defect. For that reason it was vital that the valve would be easy to adjust and the heart strings could be deformed and their ends dragged to connect to different places. At the same time we had to make sure the cusps and strings were thick enough to print properly. Our test piece showed that the strings and the leaflets required a minimal thickness of 1 millimeter and probably more to increase the durability. Anatomically this would not be entirely correct, but it would still look small in relation to the rest of the heart and show how the connection is made. In Rhino we modeled the leaflets as one piece, because in a real heart they are all connected as well. The strings were created separately and made adjustable with Grasshopper, which we also used to automatically combine all the parts into a closed polysurface so that the valve would be printable.

In the end we had three separate models. One that can be used as the aortic and pulmonary valve, one tricuspid valve and one mitral valve. The semilunar valve can be placed in the heart model by simply scaling and rotating it. The ventricular valves can be put in the right position by deforming the cusps and dragging the heart strings to the right place.

The coronary arteries have a very complex structure and are lying around the myocard of the hearth. The coronary arteries can be split into two parts: the right coronary artery and the left coronary artery. They both begin in the aortic sinuses respectively the left and right aortic sinuses. The middle aortic sinus doesn’t have a connection with a coronary artery.

The right coronary artery is follows the border between the right atrium and right ventricle in the sulci of the hearth. When the sulci is reaching the interventricular septum of the hearth the sulci and the right coronary artery is turning and follows his way on the interventricular septum as the posterior interventricular branch of the right coronary artery.

The left coronary artery splits into two veins: the Circumflex branch of left coronary artery and the anterior interventricular branch. The Circumflex follows the border of the left atrium and the left ventricle in the sulci of the heart. The end of the Circumflex is near the spot were the posterior interventricular branch of right coronary artery at the interventricular septum.

The anterior interventricular branch is following the sulci on the interventricular septum of the hearth. The interventricular branch ends near the end of the posterior interventricular branch of right coronary artery.

These 3 veins are the main veins of the hearth. They split up in multiple branches that are going into the myocard to muscles of the heart of blood. For the printed model it is only necessary to visualize these tree veins, because it is very heart to see which way the branches are following.

After we had made the valves which fitted every heart that could be modelled we faced the next challenge: to print you need a solid. We could place the valves at the right place but the problem was that both the surface of the heart and the surface of the valve were intersecting with each other. When we tried to mesh Boolean in rhino the fan from your laptop creates such a lifting effect that your laptop actually begins to float or it spontaneously combusts. So we came to the conclusion that we needed to search for another solution that using Rhino.

Our friends from Autodesk had the ideal program which we could use to mix the meshes, join them, or Boolean difference them. This program helped us throughout the rest of the project and was our savior. Every patch that needed to be done, every Boolean difference or union, this program would fix everything for us.

Each and every model that is used in anatomy classes uses colours to give a visual representation of the oxygen deprived and enriched parts of the heart. This is also what we wanted to create in our model, give a good representation of which part of the heart does what and which colour fits this. To do so we needed to cut the atria and ventricles from the hearth, give them an offset and make them in to a solid. This sounds like a pretty straight forward job, it turned out the other way. Because of the very complex shape the parts of the heart has creating an offset in Rhino was a hard task. After a lot of tinkering, mending holes and patching stuff finally it was done. An offset ventricle and atrium on the right and left side. Each part was Boolean differenced with the whole heart so there was no overlap and the atria and ventricle where separate layers so they could both be given an individual colour.

To give an accurate representation of the human heart it needs it valves. The hearth has four valves which are in different places and have different sizes. Each of the valves is connected to the hearth or even to each other. Seen the fact that every heart of every human is different we needed to make a system where we modelled the valves and could deform them later without losing their generic shape.

The scans from the LUMC were in, downloaded and ready to work with. To make a printable file the scan needed to be ONE surface, the problem still was that the CT scans gave us an image which consisted out of multiple smaller surfaces. A lot of cleaning needed to be done, but how. Rhino is a beautiful modelling program but when it comes to meshes it offers us not so much, and so the next search for a modelling program which could model meshes in a quick and easy manner began. After downloading multiple trails, and have tried many programs we found the savior, geomagic. Geomagic offers many platforms on which you can work with meshes. This is where we found the program which we use by now. The program deforms the mesh into a clay shape which could be stretched and moulded. We patched the holes in the model, made it a solid and converted into a smooth and beautiful STL file. Now the real work began…….