{"id":57,"date":"2007-10-20T23:03:04","date_gmt":"2007-10-21T04:03:04","guid":{"rendered":"http:\/\/www.visophyte.org\/blog\/2007\/10\/20\/pretty-polish\/"},"modified":"2009-04-01T08:22:16","modified_gmt":"2009-04-01T13:22:16","slug":"pretty-polish","status":"publish","type":"post","link":"https:\/\/www.visophyte.org\/blog\/2007\/10\/20\/pretty-polish\/","title":{"rendered":"Pretty Polish"},"content":{"rendered":"<p><img decoding=\"async\" src=\"http:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2007\/10\/pretty-pretty.png\" alt=\"pretty-pretty.png\" \/><\/p>\n<p>As part of a continuing effort to make visophyte&#8217;s byproducts look attractive, I implemented a bit more shiny today.  Using <a href=\"http:\/\/skdstudio.com\/blog\/aqua-sphere-effect-photoshop-tutorial\">this aqua sphere effect photoshop tutorial at skdstudio.com<\/a> as a basis, I have made the simple circle renderer support a &#8216;pretty&#8217; option.<\/p>\n<p>Unfortunately, this took a lot longer than I was hoping.  Cairo lacks a Gaussian blur mechanism, PIL only supports 5&#215;5 image kernels (iterative application is too slow), and using SciPy was absurdly slow and didn&#8217;t even work right before I gave up on it.  Thankfully, in my googling it turned out that <a href=\"http:\/\/en.wikipedia.org\/wiki\/Box_blur\">box blurs<\/a> can be used to approximate a Gaussian blur.  So visophyte&#8217;s cairo renderer now has a home-grown &#8220;box blur&#8221; filter using a boxcar average to keep the iterations and redundant calculations down.\u00a0 (And only using the <em>array<\/em> module, so no new dependencies.)<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2007\/10\/mailman-pretty-circles.png\" alt=\"mailman-pretty-circles.png\" \/><\/p>\n<p>The latter vis is just the same vis as in my post about <a href=\"\/blog\/2007\/10\/01\/cairo-bakes-pretty-pies\/\">pretty pie charts<\/a>, but with the pie visualizations replaced with circles.  A net loss in information, but perhaps a net gain in prettiness?  (Utility probably stays about the same&#8230;)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As part of a continuing effort to make visophyte&#8217;s byproducts look attractive, I implemented a bit more shiny today. Using this aqua sphere effect photoshop tutorial at skdstudio.com as a basis, I have made the simple circle renderer support a &hellip; <a href=\"https:\/\/www.visophyte.org\/blog\/2007\/10\/20\/pretty-polish\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[13],"tags":[128,39],"class_list":["post-57","post","type-post","status-publish","format-standard","hentry","category-shiny","tag-shiny","tag-visophyte"],"_links":{"self":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts\/57","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/comments?post=57"}],"version-history":[{"count":1,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts\/57\/revisions"}],"predecessor-version":[{"id":244,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts\/57\/revisions\/244"}],"wp:attachment":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/media?parent=57"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/categories?post=57"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/tags?post=57"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}