The Thingiverse “Heart Gears” Phenomenon – A Physible Family Tree

Last September, I wrote over at MAKE about the Thingiverse “Cube Gears” phenomenon, briefly tracing the origin of user emmett’s Screwless Cube Gears through its evolution from Haruki Nakamura’s papercraft geared heart sculpture via user GregFrost’s printable Broken Heart thing. At the time, I really wanted to exhaust the graph of the cube gears / heart gears phenomenon, but didn’t have the available free time. I’ve had some good publishing experiences using Graphviz to generate directed graphs, before, and kept dreaming about using it to show the family tree of Thingiverse physibles descended from Broken Heart. Well, I finally got around to doing it. These data were mostly gathered manually, but Thingiverse is already tracking derivation information for things, and it would not be a great coding challenge to automate the generation of these types of graphs using Graphviz, which is free software. The SVG version, above, should be fully clickable so you can navigate to the various things as you please. If you can’t see it, for whatever reasons, there is a standalone SVG version here, and a large (non clickable) image here.

Here’s the Graphviz source:

digraph tverse_heart_gears {
graph [fontname="Helvetica",  fontsize=12, fontcolor=lightgray, bgcolor=white, tooltip="REMOVE THIS PHRASE"]; 

/* SVG tooltips are a PITA and require post-processing the SVG output to eliminate tooltips where you don't want them, e.g. over the whole background of the graph.  "REMOVE THIS PHRASE" just makes it easier to find manually. */

edge [penwidth=0.7, color="#1989FF", arrowsize=0.5];
node [shape=box, margin="0,0", penwidth=1, color="gray", label="", fontname="Helvetica", fontsize=8, fontcolor="#1989FF"];

915 [tooltip="Companion Cube by Gianteye", image="915.png", URL="http://www.thingiverse.com/thing:915"];
1614 [tooltip="Weighted Storage Cube (from Portal) by cyrozap", image="1614.png", URL="http://www.thingiverse.com/thing:1614"];
3219 [tooltip="Stellated octahedron by Wootfish", image="3219.png", URL="http://www.thingiverse.com/thing:3219"];
3575 [tooltip="Parametric Involute Bevel and Spur Gears by GregFrost", image="3575.png",  URL="http://www.thingiverse.com/thing:3575"];
4683 [tooltip="Broken Heart by GregFrost", image="4683.png",  URL="http://www.thingiverse.com/thing:4683"];
6073 [tooltip="Cube Gears by emmett", image="6073.png", URL="http://www.thingiverse.com/thing:6073"];
6190 [tooltip="Exploitable Heart by emmett", image="6190.png", URL="http://www.thingiverse.com/thing:6190"];
6291 [tooltip="Heart Gears by emmett", image="6291.png", URL="http://www.thingiverse.com/thing:6291"];
6336 [tooltip="Heart Gears on a Plate by JadeKnight", image="6336.png", URL="http://www.thingiverse.com/thing:6336"];
6375 [tooltip="Weighted Storage Cube Gears by whosawhatsis", image="6375.png", URL="http://www.thingiverse.com/thing:6375"];
6499 [tooltip="Eccentric Sphere Gears by whosawhatsis", image="6499.png", URL="http://www.thingiverse.com/thing:6499"]; 
6533 [tooltip="Gear gears by whosawhatsis", image="6533.png", URL="http://www.thingiverse.com/thing:6533"];
8581 [tooltip="Portal Companion Cube by grimm", image="8581.png", URL="http://www.thingiverse.com/thing:8581"];
9104 [tooltip="The head of Stephen Colbert by Colbert", image="9104.png", URL="http://www.thingiverse.com/thing:9104"];
9148 [tooltip="Colbert Head Gears by emmett", image="9148.png", URL="http://www.thingiverse.com/thing:9148"];
9194 [tooltip="Sun Gears by 67restomodder", image="9194.png", URL="http://www.thingiverse.com/thing:9194"];
10288 [tooltip="Pin Connectors by tbuser", image="10288.png", URL="http://www.thingiverse.com/thing:10288"];
10483 [tooltip="Screwless Cube Gears by emmett", image="10483.png",  URL="http://www.thingiverse.com/thing:10483"];
10493 [tooltip="Portal Companion Cube w/hearts by CarryTheWhat", image="10493.png", URL="http://www.thingiverse.com/thing:10493"];
10541 [tooltip="Pin Connectors V2 by tbuser", image="10541.png", URL="http://www.thingiverse.com/thing:10541"];
11253 [tooltip="Motorized Cube Gears by dougc314",  image="11253.png", URL="http://www.thingiverse.com/thing:11253"];
11660 [tooltip="Two Color World by m6mafia", image="11660.png", URL="http://www.thingiverse.com/thing:11660"];
12208 [tooltip="Screwless Heart Gears by emmett", image="12208.png", URL="http://www.thingiverse.com/thing:12208"];
14070 [tooltip="Earth Shot by WilliamAAdams", image="14070.png", URL="http://www.thingiverse.com/thing:14070"];
16442 [tooltip="MOTORIZED screwless heart gears! by Zh4x0r", image="16442.png", URL="http://www.thingiverse.com/thing:16442"];
16893 [tooltip="Keychain Screwless Heart Gears by Zh4x0r", image="16893.png", URL="http://www.thingiverse.com/thing:16893"];
16909 [tooltip="Big Love <3 - Heart Gears by faberdasher",  image="16909.png", URL="http://www.thingiverse.com/thing:16909"];
17336 [tooltip="Textured Earth by bld", image="17336.png", URL="http://www.thingiverse.com/thing:17336"];
17713 [tooltip="Earth Gears by bld", image="17713.png", URL="http://www.thingiverse.com/thing:17713"];
18061 [tooltip="Stellated Octahedron Gears by Lemon_Major", image="18061.png", URL="http://www.thingiverse.com/thing:18061"];
18134 [tooltip="Screwless Heart Gear Replicator Plates by IWorkInPixels", image="18134.png", URL="http://www.thingiverse.com/thing:18134"];
18144 [tooltip="Screwless Heart Gears - Plated by toybuilder",  image="18144.png", URL="http://www.thingiverse.com/thing:18144"];
22069 [tooltip="Gear Heart with Handle by catzpaw164",  image="22069.png", URL="http://www.thingiverse.com/thing:22069"];
23237 [tooltip="Screwless Companion Cube Gears by LocheMage", image="23237.png", URL="http://www.thingiverse.com/thing:23237"];

subgraph cluster_gregfrost {
	style="rounded,filled";
	color=lightgray;
	3575 -> 4683;
}

subgraph cluster_bld {
	style="rounded,filled";
	color=lightgray;
	17336 -> 17713;
}

subgraph cluster_tbuser {
	style="rounded,filled";
	color=lightgray;
	10288 -> 10541;
}

subgraph cluster_Zh4x0r {
	style="rounded,filled";
	color=lightgray;
	16442;
	16893;
	}

subgraph cluster_emmett {
	style="rounded,filled";
	color=lightgray;
	6073 -> 10483;
	6073 -> 6291 ;
	6190 -> 6291;
	6291 -> 12208;
	6291 -> 9148;
}

subgraph cluster_whosawhatsis {
	style="rounded,filled";
	color=lightgray;
	6375 -> 6499 -> 6533;
}

8581 -> 10493;
10493 -> 23237;
915 -> 1614;
4683 -> 6073;
4683 -> 6190;
/* 3575 -> 6073;  redundant derivations pruned */
6073 -> 6375;
/* 6073 -> 6499; redundant derivations pruned */
1614 -> 6375;
/* 10288 -> 10483; redundant derivations pruned */
10541 -> 10483;
10483 -> 11253;
10483 -> 12208;
6291 -> 9194;
6533 -> 9194;
9104 -> 9148;
6291 -> 6336;
12208 -> 22069;
12208 -> 18144;
12208 -> 18134;
12208 -> 18061;
12208 -> 17713;
14070 -> 17336;
11660 -> 17336;
12208 -> 16909;
12208 -> 16893;
12208 -> 16442;
12208 -> 23237;
3219 -> 18061;
}

These data were gathered on 2012-06-06 and are already obsolete, I should note. The graph has new nodes since then.