{"id":188,"date":"2008-07-26T15:47:00","date_gmt":"2008-07-26T13:47:00","guid":{"rendered":"http:\/\/www.thelins.se\/johan\/blog\/2008\/07\/attracting-fractals\/"},"modified":"2008-07-26T15:47:00","modified_gmt":"2008-07-26T13:47:00","slug":"attracting-fractals","status":"publish","type":"post","link":"https:\/\/www.thelins.se\/johan\/blog\/2008\/07\/attracting-fractals\/","title":{"rendered":">Attracting Fractals"},"content":{"rendered":"<p>>So, more summer and more fractal fun. First of all, now everything is coloured by shaders. A shader, per my definition, picks the colour for any given point\/line-segment depending on direction, iterations, or group &#8211; where group can be the factor set used (IFS fractals) or angle in predefined steps (L-systems) or just zero (all other fractals).<\/p>\n<p>Below, you can see a <a href=\"http:\/\/local.wasp.uwa.edu.au\/%7Epbourke\/fractals\/ifs_leaf_b\/\">maple leaf<\/a> coloured based on the factor set used to get the specific point.<br \/><a onblur=\"try {parent.deselectBloggerImageGracefully();} catch(e) {}\" href=\"http:\/\/www.thelins.se\/johan\/uploaded_images\/colour-maple-730957.png\"><img decoding=\"async\" style=\"margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;\" src=\"http:\/\/www.thelins.se\/johan\/uploaded_images\/colour-maple-730951.png\" alt=\"\" border=\"0\" \/><\/a><br \/>The latest addition to the number of supported fractals are attractors. Below, you can see a gradient coloured <a href=\"http:\/\/en.wikipedia.org\/wiki\/Lorenz_attractor\">Lorenz attractor<\/a> from a paralell projection showiing the X and Y axes (ignoring the Z axis).<\/p>\n<p><a onblur=\"try {parent.deselectBloggerImageGracefully();} catch(e) {}\" href=\"http:\/\/www.thelins.se\/johan\/uploaded_images\/rossler-attractor-748696.png\"><img decoding=\"async\" style=\"margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;\" src=\"http:\/\/www.thelins.se\/johan\/uploaded_images\/rossler-attractor-748631.png\" alt=\"\" border=\"0\" \/><\/a>The introduction of attractors really exposed the lack of properties. The idea is that each fractal provides a range of properties (be it ints, doubles or compex numbers &#8211; perhaps also enums). These can then be queried and set from the UI using a standardized interface.<\/p>\n<p>I&#8217;m exploring all these fractal types with the goal to create a base class, AbstractFractal, that I can put into a GUI. Then, fractals can be created from plug-ins, where the plug-in factory can get the actual fractals from a set of definition files &#8211; hopefully compatible with FractInt (or very similar, so that machine conversion is possible).<\/p>\n<p>Then, all that is left is to create a nice Qt GUI and utilize QtConcurrent to get some performance from it. Also, have a bit of a sit-down and think through the whole memory situation &#8211; right now the application is somewhat hungry&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>>So, more summer and more fractal fun. First of all, now everything is coloured by shaders. A shader, per my definition, picks the colour for any given point\/line-segment depending on direction, iterations, or group &#8211; where group can be the factor set used (IFS fractals) or angle in predefined steps (L-systems) or just zero (all &hellip; <a href=\"https:\/\/www.thelins.se\/johan\/blog\/2008\/07\/attracting-fractals\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">>Attracting Fractals<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-188","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/posts\/188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/comments?post=188"}],"version-history":[{"count":0,"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/posts\/188\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/media?parent=188"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/categories?post=188"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.thelins.se\/johan\/blog\/wp-json\/wp\/v2\/tags?post=188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}