Your idea is interesting. However, it generates some questions. In general, you have too many things happening in the process: moving, rotating, scaling, intersecting, subtracting. And all of this multiplied by 2, because we are always dealing with 2 circles.
Maybe you should simplify it a bit and try to make it easier to code. What I would change is exactly the part which makes it very complicated to script: the intersection/subtraction part. But not because it is complicated to script (after all, I want to give you a hard time scripting, don't I?), but because in my opinion this operation doesn't add any value to your system. On the contrary, I think it weakens it, by removing intersections and nodes which would otherwise make the system more efficient structure-wise.
Why don't you try to keep both circles intersecting and not trim them? This would add what is missing in your examples: something that holds the whole thing together as a system.
You'll have to deal with a lot of Math in your idea, in particular Vector Math, in order to deal with all the rotation and translation of both circles together. It is hard, but doable.
You have to keep in mind what we are trying to achieve: efficiency out of beauty ad complexity. We are talking about recursion where each new iteration depends on the previous one.
Hi Liu!
ReplyDeleteYour idea is interesting. However, it generates some questions. In general, you have too many things happening in the process: moving, rotating, scaling, intersecting, subtracting. And all of this multiplied by 2, because we are always dealing with 2 circles.
Maybe you should simplify it a bit and try to make it easier to code. What I would change is exactly the part which makes it very complicated to script: the intersection/subtraction part. But not because it is complicated to script (after all, I want to give you a hard time scripting, don't I?), but because in my opinion this operation doesn't add any value to your system. On the contrary, I think it weakens it, by removing intersections and nodes which would otherwise make the system more efficient structure-wise.
Why don't you try to keep both circles intersecting and not trim them? This would add what is missing in your examples: something that holds the whole thing together as a system.
You'll have to deal with a lot of Math in your idea, in particular Vector Math, in order to deal with all the rotation and translation of both circles together. It is hard, but doable.
You have to keep in mind what we are trying to achieve: efficiency out of beauty ad complexity. We are talking about recursion where each new iteration depends on the previous one.