Back
Featured image of post Computer-Aided Design

Computer-Aided Design

Week 2

This week is all about CAD (computer-aided design). I have a bit of an advantage since I’m already familiar with several of the modeling packages introduced to us in class, but there is always room to deepen my comfort with the tools as well as just becoming a more efficient modeler. I also want to become more familiar and comfortable with designing parametrically, and/or designing with generative tools.

This week began with downloading a lot of software onto my laptop.

Assignments

Our task for this week is:

  • Model (raster, vector, 2D, 3D, render, animate, simulate, …) a possible final project, compress your images and videos, and post it on your class page

2D Modeling

There are two main types of 2D modeling: Raster based and Vector based. It comes down to whether data is stored about/in individual pixels (raster images) or by a mathematical description of the shape (vector).

Raster Based

  • Common software includes GIMP, Krita, Photoshop, Pixlr, and photopea.
  • Composed of pixels - very small square, each describes the amount of red, blue, and green
  • many file formats available: .tiff, .png, .jpg, …
  • rich textures and gradients

Vector Based

  • Used in GIS mapping, CAD (Computer aided drafting), and vector graphic design & illustration
  • Common software includes Fusion 360, Rhino, inkscape, adobe illustrator, corel draw, linearity curve design, and vectr

2D Logo Design in Inkscape

In class we did a quick demo with Inkscape, an open source vector based software which has a huge community of users. In fact, that community has created many scripts and plugins, including ones which allow you to connect directly to the laser cutter, vinyl cutter, and embroidery tool.

I’ve used Inkscape previously in maker settings and am a big fan, so I’ll use Inkscape to design a 2D logo.

My team at work calls ourselves the CardioEngineering Team. We are a team of professional engineers uniquely positioned within the world-renowned Boston Children’s Heart Center. Our “Zero Distance” model of working alongside our medical colleagues allows our team to focus engineering resources on clinically relevant problems. We elicit feedback from healthcare providers at every stage of the problem-solving process; any solution we offer must accommodate the unique environment of a hospital or OR. We support cardiac care providers and surgeons in developing and delivering the highest caliber of care to patients and their families.

The trouble is, we’ve been so busy working on these problems that we haven’t done much in terms of building a public facing presence for ourselves! For instance, it’s been four years that I’ve worked for this team and despite multiple “we really should have a website to showcase some of our work” conversations we still don’t have a website. Or a logo. I’ll use this week’s assignment at least to do some brainstorming on possible logo designs!

Some other logo thoughts/ideation:

  • should be relatively consistent in color scheme and/or style and/or overall look with the standard Boston Children’s hospital (BCH) logo
  • reflect the idea that we’re working with hearts. could incorporate triangles since we’re generating meshes
  • could incorporate some ’engineering’ componenents such as electical symbols or gears
  • incorporate symmetry or mirroring or some effect to represent “zero distance” model of collaborative work between the engineers on my team and the medical providers we work with
  • “outside the box” thinking
  • I want it to be only 2 (maybe 3) colors so it’s easy to embroider onto a jacket for instance
  • ECG heartbeat trace? zipper? (a sternotomy scar is called a “zipper” colloquially)? stitching pattern?
  • 2D with clear boundaries but could appear 3D with use of shading effect

I started by inserting a PNG of the BCH logo into my inkscape document and using the Trace Bitmap feature to generate the vectors from the raster image.

Vectorizing the BCH logo
Vectorizing the BCH logo

I removed the words (which were also converted into mathematical representations of the letters rather than editable text) by double clicking into the SVG to get into edit point mode, selecting the points I wanted to erase, and deleting.

Cleaning up the SVG
Cleaning up the SVG

The SVG as generated by the Bitmap Tracing tool is black, so I used the Color Picking tool in the Fill and Stroke menu to match the color to that of the original BCH logo.

Changing the color of an object using Color Picking tool
Changing the color of an object using Color Picking tool

Then I did a web search and pulled in a bunch of other images for effects and other logos I liked to build a sort of inspiration board. I put this inspiration board on a separate layer called “Inspiration” to keep my work clean.

Inspiration board
Inspiration board

I decided to play with the concept of “outside the box” thinking and also borrow some design elements from the original BCH logo (the colors of dark blue and white, and the border). I also liked the mesh heart. I again used the tracebitmap tool, and played with standard geometric shapes (rectangle), fill and stroke, and layering different ways to arrive at the logo below which combines the existing BCH logo with the mesh heart:

CardioEngineering Team Logo V1
CardioEngineering Team Logo V1

Here’s the finished version!

File Download

Generative AI exercise in logo ideation

Because one of my goals for this course is learning how to better leverage generative AI tools in my workflow, I went ahead and asked Google’s version of Generative AI, Bard, to generate some logo concepts for me.

These are the concepts it generated:

Concept 1: Heart with gears

  • This logo features a heart shape made up of interlocking gears, representing the collaboration between engineers and medical providers.
  • The gears could be in two different colors, such as blue and green, to represent the different disciplines.
  • The logo could be three-dimensional to give it a sense of depth and complexity.

Concept 2: Triangular heart with puzzle pieces

  • This logo features a heart shape made up of triangular puzzle pieces, representing the team’s ability to solve complex problems.
  • The puzzle pieces could be in two different colors, such as red and yellow, to represent the different ways the team approaches problems.
  • The logo could be flat or three-dimensional.

Concept 3: EKG waveform with brainwaves

  • This logo features an EKG waveform (representing the heart) intertwined with brainwaves (representing the engineering mind).
  • The two waveforms could be in two different colors, such as blue and green, to represent the different disciplines.
  • The logo could be flat or three-dimensional.

Concept 4: Heart with infinity symbol

  • This logo features a heart shape with an infinity symbol inside it, representing the team’s commitment to continuous improvement and innovation.
  • The heart and infinity symbol could be in two different colors, such as red and blue, to represent the team’s passion and expertise.
  • The logo could be flat or three-dimensional.

I wouldn’t say it nailed any of them, and I was hoping it would generate some examples of each of this but apparently Bard is “still learning to create images so I can’t help you with that yet.”

3D Modeling

Through my work you could say that I’m already pretty comfortable with working with organic shapes and 3D modeling hearts, so I’m going to skip over the part where I go from raw imaging files (DICOM file format) to the surface models which describe the contours of the cardiac chambers and vessels (I’ve exported these to STL format). At the hospital where I work we use a commercially available, closed software package called Mimics Innovation Suite (Materialise N.V.) to do the segmentation (going from the volumetric data set of 2D DICOM files –> 3D surface model). If you’re interested in learning how to segment digital 3D models from medical imaging such as a CT or MRI, I’d suggest looking into an open source tool called 3D Slicer. It’s not as user friendly as Mimics but has a large community of users and many modules (of varying levels of documentation).

Materialise Suite: 3-Matic

For Fab Academy CAD purposes, I’ll start with the surface model of an anonymized structurally normal heart. This is within 3-Matic, part of the Materialise package. One of the advantages of using this tool is that it’s really good at handling organic structures and large numbers of triangles, although it doesn’t offer parametric design. Unfortunately it is a closed program so you won’t be able to follow along unless you have the Mimics Innovation Suite (particularly 3-matic) available to you, so the files that I link will be the STLs I export.

Starting point with the blood pool of a structurally normal heart

At this point, each chamber and vessel is an individual part. But ultimately I want to end up with one part where the cardiac chambers and vessels are hollow.

From there I did some triangle wrangling to remove any overlapping triangles or holes in the mesh, and performed a smoothing operation to each of the cardiac chambers and vessels.

I added a thickness offset of 2mm externally to each of the smoothed chambers, and performed a boolean union with the part representing the outer surface of the myocardium (the heart muscle).

Left heart (blue) and right heart (red) blood volumes shown with the offset part
Left heart (blue) and right heart (red) blood volumes shown with the offset part

Although there are aspects of the CAD that aren’t very intuitive in this software, and there’s not history or parametric design capabilities, it does have a handy feature where you can ‘Trim’ a part by drawing a shape on the screen over the part you want to remove and the software will perform an infinite cut extrude normal to the plane of the screen.

Showing how the trim tool can be used to trim away extra branches from the Pulmonary arteries
Showing how the trim tool can be used to trim away extra branches from the Pulmonary arteries

Next another boolean, this time subtraction of the outermost surface to get one part for the heart with a hollow blood pool.

Next I created a base by creating a rectangle that overlapped with the bottom of the heart and then doing a boolean subtraction offset to subtract the shape of the heart model from the base with 1mm of space so it would sit nicely on top. I trimmed away material so the edges of the base followed the projection of the heart/followed the profile of the heart.

Lofting
Lofting

Loft result
Loft result

Smoothing
Smoothing

Another feature of my model will be windows in the walls of heart that can be removed to visualize the structures/connections of the chambers within the heart.

I added a window by first sketching a curve on the surface of the heart, over the right ventricle (RV).

Sketching where I want the RV window
Sketching where I want the RV window

Then I perfomed a cut extrude with the sketch, adding a slight draft angle and cutting into the heart wall:

Here’s the result:

File Downloads

  • 3-matic file (unfortunately the file won’t open unless you have a license, and the software is not opensource) | zip file
  • STL files | zip file

Fusion 360

I didn’t get a chance to play with parameterizing the windows or base in Fusion 360, or rendering.

Blender

I ran out of time to try rendering here so I’ll add it in next week.

Reflections

For 2D vector work, Inkscape is my preferred tool.

Built with Hugo | Using a personally adjusted version of Nadieh Bremer's website and the theme Stack