{"url":"https://api.github.com/gists/3305854","forks_url":"https://api.github.com/gists/3305854/forks","commits_url":"https://api.github.com/gists/3305854/commits","id":"3305854","node_id":"MDQ6R2lzdDMzMDU4NTQ=","git_pull_url":"https://gist.github.com/3305854.git","git_push_url":"https://gist.github.com/3305854.git","html_url":"https://gist.github.com/mbostock/3305854","files":{".block":{"filename":".block","type":"text/plain","language":null,"raw_url":"https://gist.githubusercontent.com/mbostock/3305854/raw/703d310b399098a243a76a50bc209167e924cfd2/.block","size":17,"truncated":false,"content":"license: gpl-3.0\n","encoding":"utf-8"},"README.md":{"filename":"README.md","type":"text/markdown","language":"Markdown","raw_url":"https://gist.githubusercontent.com/mbostock/3305854/raw/14db34992074869854e920fd7f69599370c351a3/README.md","size":520,"truncated":false,"content":"Use transition.attrTween to customize interpolation during a transition. For example, the default transform interpolation from \"rotate(0)\" to \"rotate(720)\" has no effect because 0º and 720º are equivalent; by changing the interpolator to [d3.interpolateString](https://github.com/mbostock/d3/wiki/Transitions#wiki-d3_interpolateString), you can animate the rotation.\n\n```javascript\nsymbol.transition()\n    .attrTween(\"transform\", function() {\n      return d3.interpolateString(\"rotate(0)\", \"rotate(720)\");\n    });\n```\n","encoding":"utf-8"},"index.html":{"filename":"index.html","type":"text/html","language":"HTML","raw_url":"https://gist.githubusercontent.com/mbostock/3305854/raw/4a4de97a0a7db22a90f813102a716424e85c561b/index.html","size":643,"truncated":false,"content":"<!DOCTYPE html>\n<meta charset=\"utf-8\">\n<body>\n<script src=\"//d3js.org/d3.v3.min.js\"></script>\n<script>\n\nvar width = 960,\n    height = 500;\n\nvar svg = d3.select(\"body\").append(\"svg\")\n    .attr(\"width\", width)\n    .attr(\"height\", height);\n\nsvg.append(\"g\")\n    .attr(\"transform\", \"translate(\" + (width / 2) + \",\" + (height / 2) + \")\")\n  .append(\"path\")\n    .attr(\"d\", d3.svg.symbol().type(\"cross\").size(10000))\n    .each(cycle);\n\nfunction cycle() {\n  d3.select(this).transition()\n      .duration(10000)\n      .attrTween(\"transform\", function() { return d3.interpolateString(\"rotate(0)\", \"rotate(720)\"); })\n      .each(\"end\", cycle);\n}\n\n</script>\n","encoding":"utf-8"},"thumbnail.png":{"filename":"thumbnail.png","type":"image/png","language":null,"raw_url":"https://gist.githubusercontent.com/mbostock/3305854/raw/b0cfe68e2b8784aeee82acb8e6d07fbd672883df/thumbnail.png","size":1203,"truncated":false,"content":"iVBORw0KGgoAAAANSUhEUgAAAOYAAAB4CAYAAADmBo6IAAAAGXRFWHRTb2Z0\nd2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABFVJREFUeNrs3TtPFGsYwPEX\nBBKJyk1QuUOorUn8EDYUtnbQUPphrC0safkClFiQEIoTwkXusoDiJQJZ95mE\nEyTHwwCyzJLfL5lAdAJmyJ93duaZta5cLv+TUuqqbEcJuG2NlW27rhLmbuWT\ndscDCqNU7xhA8QgThAkIE4QJCBOECQgThAkIExAmCBMQJggTECYIExAmIEwQ\nJiBMECYgTBAmIExAmCBMQJggTECYIExAmIAwQZiAMEGYgDBBmIAwAWGCMAFh\nwl3S4BDUrunp6TQ/P5+Gh4fTs2fP0tOnT1N7e3tqbm5O9fV+5wqTW/Hu3bts\nC3V1den+/fuptbU1dXZ2Zlt3d3fq6elJIyMj6dWrV1mwCJMb9vHjx38/L5fL\n6du3b9m2vr7+234dHR3p5cuXwvQak5t2dHSUtra2cu0bq2ZbW5uDJkxu2uHh\nYfr06VOufR8/fuw1pzCpht3d3fTly5dc+8aFIYRJFezs7KQfP37k2re3t9cB\nEybVsL29nXvfuI2CMKmCpaWl3PsODg46YMLkquJWR1zQiSuuFzl7q8RrzLvH\nfcwCef/+fZqYmMgmeeJKal9fX7bFoEBscUra1dWV/f3q6mqurxlDBzFsgDC5\nopWVlfTz58+0sLDwx30aGxuzsbu8V2RbWlqyAQOEyRWdn9j5L5cZLAhfv35N\nb968Sf39/dkpbay8serG6htDB7GiIkz+x9ra2l//mrGyvn379rc/i7naBw8e\nZCtpnDI/efIk+zg6OprGx8f9IITJqZh13djYqNr3imBjO3t19/j4WJgF4aps\nQUQklzlFvQkDAwN+EMLkrIODg/T58+db/TfE60+EyRkxYheD6bfJ6J4wOecy\nI3Y3xf1OYXLO8vLyrX7/uG0SV2cpBldlC2JoaCiNjY2lUqmUjeXFqe3e3l7u\nJ0iu6/QtSSiGunK5vFv52O5QFMfJyUk2Nxtxxinu5uZmNnwQW8zITk1NZReL\n/qbnz5+nDx8+eKC6GEpWzAK6d+9eevjwYbbFXOz5aGdnZ9Pc3NzFp0MNDdkQ\nQUR80crrXQ6cynINMUsbY3Z5xONeMzMz2f5xjzS2mC6KQYYYLIjVN06bFxcX\nPRomTKoVZszEnr6V5Z/CixU47p9aLYXJNUREecPM8xxmnDZ7B73i8WuyxsRp\naN5BBCN2wqRKLjOI4J0LhEmV5Hlm85QRO2FSwDC9O54wqZK8D1PHPUyTPMKk\nSuKeYx6PHj3KbpdQm9wuqTGTk5PpxYsX2ZherJ5xMSiGBOK/TIirtfHuBCFW\ny3gjLmqTWdkaFyF+//497e/vZ7FGqPGkSlNTU3r9+rUDVJtKwoQChuk1JhSQ\nMEGYgDBBmIAwQZiAMEGYgDABYYIwAWGCMAFhgjABYQLCBGECwgRhAsIEYQLC\nBIQJwgSECcIEhAnCBIQJCBOECQgThAkIE4QJCBMQJggTECbcJQ3Hx8d7lY+N\nle3I4YBbFy3u/RJgAJBebnznWi0sAAAAAElFTkSuQmCC\n","encoding":"base64"}},"public":true,"created_at":"2012-08-09T16:55:20Z","updated_at":"2016-02-09T01:30:36Z","description":"Custom Tweens","comments":0,"user":null,"comments_enabled":true,"comments_url":"https://api.github.com/gists/3305854/comments","owner":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"forks":[],"history":[{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"67f87e816976b841dde1d64573c9b77ce974b8e9","committed_at":"2016-02-09T01:30:34Z","change_status":{"total":1,"additions":1,"deletions":0},"url":"https://api.github.com/gists/3305854/67f87e816976b841dde1d64573c9b77ce974b8e9"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"642d90cba8f84e558da53b1cfce134f7dccc581a","committed_at":"2015-10-31T00:56:13Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/3305854/642d90cba8f84e558da53b1cfce134f7dccc581a"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"e9d114ffc4f034efc97a5aa5af8885ae5c31dc2d","committed_at":"2015-06-11T19:36:51Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/3305854/e9d114ffc4f034efc97a5aa5af8885ae5c31dc2d"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"73dc8c41503c7de31f75e8cc246ea23ed0d1d632","committed_at":"2013-04-09T19:46:25Z","change_status":{"total":0,"additions":0,"deletions":0},"url":"https://api.github.com/gists/3305854/73dc8c41503c7de31f75e8cc246ea23ed0d1d632"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"610b7f99df42ef8adc4fd0ca075a6f194d9568f6","committed_at":"2013-04-07T02:21:10Z","change_status":{"total":22,"additions":10,"deletions":12},"url":"https://api.github.com/gists/3305854/610b7f99df42ef8adc4fd0ca075a6f194d9568f6"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"353202553f9ad756e597f2b5112e13476869af84","committed_at":"2012-10-12T03:56:14Z","change_status":{"total":0,"additions":0,"deletions":0},"url":"https://api.github.com/gists/3305854/353202553f9ad756e597f2b5112e13476869af84"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"d9782917c93defa81e0e36c88a2afec64d4cc4a5","committed_at":"2012-08-10T03:23:09Z","change_status":{"total":4,"additions":2,"deletions":2},"url":"https://api.github.com/gists/3305854/d9782917c93defa81e0e36c88a2afec64d4cc4a5"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"962a545f139da863c2118bae9edaa7c87c22b81d","committed_at":"2012-08-09T17:00:31Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/3305854/962a545f139da863c2118bae9edaa7c87c22b81d"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"2efa5b71a6f304f25ee5d05788907242f63179e9","committed_at":"2012-08-09T16:59:07Z","change_status":{"total":8,"additions":8,"deletions":0},"url":"https://api.github.com/gists/3305854/2efa5b71a6f304f25ee5d05788907242f63179e9"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"3e274179882a8f2b2b44e59c024f3f702ca463d6","committed_at":"2012-08-09T16:56:37Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/3305854/3e274179882a8f2b2b44e59c024f3f702ca463d6"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"c8d7e697570c23edad04ca0b3e94811a3e94b0f9","committed_at":"2012-08-09T16:56:04Z","change_status":{},"url":"https://api.github.com/gists/3305854/c8d7e697570c23edad04ca0b3e94811a3e94b0f9"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"f8b8dd5aba36d13fa69d9121a1cd5f146a47a80a","committed_at":"2012-08-09T16:55:20Z","change_status":{},"url":"https://api.github.com/gists/3305854/f8b8dd5aba36d13fa69d9121a1cd5f146a47a80a"}],"truncated":false}