Fractals

  • To follow on from this recent topic, today's post looks at a simple script to generate various hyperbolic tessellations, laying them out in an order that makes some sense of the progressive nature of the patterns that can be generated using the HT command. Here's an AutoCAD script (which can be saved as an .scr and executed using the SCRIPT command) to generate all the valid {n k} patterns where n <= 11 and k <= 7 (n being the number of sides in each polygon, k is the number of polygons that meet at each vertex). The application module…

  • Following on from the post introducing this series, and the last post focused on generating simple hyperbolic geometry, this post looks at generating hyperbolic tessellations inside AutoCAD. Having "borrowed" some C++ code, last time, today we're going to borrow some Java. That's one of the great things about the C family of languages: the relatively small amount of work that's often needed to move code between environments. πŸ™‚ This article, written by David E. Joyce, Professor of Mathematics and Computer Science at Clark University, has provided the best information I could find with regards to a hyperbolic tiling algorithm (especially…

  • A regular follower of this blog and someone I now consider a friend through our online interactions, Alex Fielder, recently laid down the gauntlet for the topic of the coming series of posts. He started with Twitter… … and then moved on to The Swamp (which he thankfully also brought to my attention using Twitter). Alex has become interested in an area that I can see becoming increasingly relevant: given the fact that 3D printing is an additive, rather than subtractive or mold-based, process, shouldn't we take advantage of this fact to optimise the composition of an object's internal structure?…

  • I recently stumbled across this post which inspired me to do something similar in AutoCAD (the fact that both posts cover Fibonacci spirals and use F# is about where the similarity ends - they do things quite differently). Fibonacci spirals are an approximation of the golden spiral, which for old timers out there will be reminiscent of the AutoCAD R12 (it was R12, wasn't it?) design collateral - the same as this one from AME 2.1 - which I still find cool after all these years. πŸ™‚ The first thing was to create a function that returns a portion of…

  • I've been threatening to implement this for a few posts, now, so I decided it was finally time for me to put my money where my mouth is. πŸ™‚ This post extends the series I've been writing on turtle graphics (here's the most recent part, from which you'll find links to its predecessors). This series has been about developing a turtle graphics engine using C#, eventually extending it for 3D. The series so far has focused very much on the engine, but from very early on it was my intention to use this engine to implement a subset of the…

  • What, yet another part? The series that just goes on and on... πŸ™‚ To catch up, here are parts 1, 2, 3, 4 and 5, and the original post. This post looks at more organic forms, once again, but this time in 3D. I had lots of fun with this one: I took the principle shown in Part 2, where we looked at adding random factors to fractal patterns when creating 2D trees and extended it to work with the 3D version of the TurtleEngine. The principle is the same, we're just creating three branches at relatively evenly spaced angles…

  • Once again I've ended up extending this series in a way I didn't originally expect to (and yes, that's a good thing :-). Here are parts 1, 2, 3 and 4, as well as the post that started it all. After thinking about my initial 3D implementation in Part 4, I realised that implementing pen colours and widths would actually be relatively easy. Here's the idea: Each section of a different width and/or pen colour is actually a separate extruded solid Whenever we start a new section we start off by creating a circular profile of the current pen width…

  • I just couldn't resist coming back to this fun (at least for me πŸ™‚ series... for reference here are parts 1, 2 and 3, while the series really started here. There are two main places I wanted to take this implementation: firstly it really needed to be made 3D, which is the focus of this post, and I still then want to take it further by implementing a turtle graphics-oriented language (one could probably call it a Domain Specific Language, the domain being turtle graphics), which is likely to be a subset or variant of Logo. This is likely to…

  • In the introductory post we first looked at a simple turtle graphics engine for AutoCAD, which was followed up by this series looking at using it to generate fractals (here are parts 1 & 2). This post continues the organic fractal theme, by looking at another fractal found in nature, the humble fern. I found some simple Logo code in a presentation on the web: to fern :size if :size < 4 [stop] fd :size / 25 lt 90 fern :size * .3 rt 90 rt 90 fern :size * .3 lt 90 fern :size * .85 bk :size /…

  • This series start with this initial post, where we looked at an implementation of a simple turtle graphics engine inside AutoCAD, and followed on with this previous post, where we refined the engine and looked at how we could use it to generate complex fractals with relatively little code. In this post we take a further look at fractal generation using the turtle graphic engine, with the particular focus on introducing randomness to generate more realistic, organic forms. On a side note, fractals and the use of randomness in design are two of my favourite topics, so this post is…