{"id":63,"date":"2004-09-01T12:00:00","date_gmt":"2004-09-01T12:00:00","guid":{"rendered":"https:\/\/eric.tedjamulia.com\/blog\/java-tendron\/"},"modified":"2004-09-01T12:00:00","modified_gmt":"2004-09-01T12:00:00","slug":"java-tendron","status":"publish","type":"post","link":"https:\/\/eric.tedjamulia.com\/blog\/java-tendron\/","title":{"rendered":"Drawing things with recursion"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">I made a little Java drawing experiment called Tendron. It starts with a few lines and turns into a branching, rather plant-like scribble. There is not really a game here; I just wanted to see what the pattern would do.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A Cluster creates four Tendril objects pointing into different quadrants. Each tendril draws short randomized line segments, then creates another cluster at its endpoint with a shorter length. The recursion stops when the length gets too small.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That is the whole trick: a simple shape calls a smaller version of the same process, and the picture gets complicated on its own. The drawing changes when it is painted again because the step sizes are random. I like how much can come out of a small recursive rule without having to describe the final picture ahead of time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/etedj.com\/projects\/java\/Applets\/Tendron\/\">Tendron source and applet<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I made a little Java drawing experiment called Tendron. It starts with a few lines and turns into a branching, rather plant-like scribble. There is not really a game here; I just wanted to see what the pattern would do. A Cluster creates four Tendril objects pointing into different quadrants. Each tendril draws short randomized [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[42],"tags":[46,45,43,30],"class_list":["post-63","post","type-post","status-publish","format-standard","hentry","category-java-applets","tag-awt","tag-high-school","tag-java","tag-recursion"],"_links":{"self":[{"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/posts\/63","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/comments?post=63"}],"version-history":[{"count":0,"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/posts\/63\/revisions"}],"wp:attachment":[{"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/media?parent=63"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/categories?post=63"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eric.tedjamulia.com\/blog\/wp-json\/wp\/v2\/tags?post=63"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}