YOUR ACCOUNT

Login or Register to post new topics or replies
byRo
an Englishman in Brazil

Posts: 138
Filters: 8
Up to now we've seen folks generating circles by multiplying orthogonal smooth gradients. For small circles the approximation is fine, but as the circle grows it becomes squarer.

However, there is no need to approximate. With the tools available in FF you can generate exact circles.

1) Wave.Triangle, output = x, origin at centre;
2) Math.Multiply, output = sqr(x);
3) Orthogonal gradients, outputs = sqr(x) and sqr(y)
4) Blend 50%, output = (sqr(x) + sqr(y))/2;
5) Threshold to size.

Now, just need to figure out the relationship between Threshold parameter and the circle size. smile:?:

Rô

_________________________________
My favourite question is "Why?".
My second favourite is "Why not?"
  Details E-Mail
Lucato
FF addicted

Posts: 505
Filters: 39
Hey Rô, if you replace 'Wave' and 'math' for just 'Gausian' you get the same, don't you?

Exchanging the subject, have you checked this out ?
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
Ro,

i'm not even going to pretend i know why that works. i'll have to leave this as one of those that fits into the category of something sufficiently above my own level to seem as if magic.

but, i can play with it smile:)

craig

If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Quasimondo
Quasimondo

Posts: 147
Filters: 32
Quote
Lucato wrote:
Hey Rô, if you replace 'Wave' and 'math' for just 'Gausian' you get the same, don't you?


No, that will not give you the same result. What you need is a true parabola. The gaussian curve uses a different formula what you can see at angle of the outer edges.

Great work Rô!
  Details E-Mail
uberzev
not lyftzev

Posts: 1890
Filters: 36
Nice work, but for my uses I prefer a technique that produces evenly spaced concentric circles. This also produces more predictable threshhold results.

http://www.filterforge.com/filters/418.html

  Details E-Mail
byRo
an Englishman in Brazil

Posts: 138
Filters: 8
Oops: Can't edit the first post so I'll correct the Math here. It's 2x, duh smile:| .

1) Wave.Triangle, output = 2x, origin at centre;
2) Math.Multiply, output = sqr(2x);
3) Orthogonal gradients, outputs = sqr(2x) and sqr(2y)
4) Blend 50%, output = (sqr(2x) + sqr(2y))/2, but sqr(2x) + sqr(2y) can be replaced by sqr(2r) - where r is the radius;
5) Threshold(t) to size: t = sqr(2r)/2, rearranging r = root(2t)/2

Examples:
For a full-size circle r = 0.50, t = sqr(2 x 0,50)/2 = 0.5
For a half-size circle r = 0.25, t = sqr(2 x 0,25)/2 = 0.3536
If t = 0.4, r = root(2 x 0.4)/2 = 0.4472


Rô
_________________________________
My favourite question is "Why?".
My second favourite is "Why not?"
  Details E-Mail
byRo
an Englishman in Brazil

Posts: 138
Filters: 8
Quote


Lucato wrote: Hey Rô, if you replace 'Wave' and 'math' for just 'Gausian' you get the same, don't you?

Quasimondo wrote:
No, that will not give you the same result. What you need is a true parabola. The gaussian curve uses a different formula what you can see at angle of the outer edges.


I did a quick check and was going to agree with Lucato (obs: change blend to multiply also). Now I'll have a closer look and also see if I can do the math.

Rô
_________________________________
My favourite question is "Why?".
My second favourite is "Why not?"
  Details E-Mail
byRo
an Englishman in Brazil

Posts: 138
Filters: 8
The math works just fine for Gaussian alternative.

Formula is proportional to "e" to the power of sqr(-x)
When the two directons are multiplied in the Blend, the power becomes sqr(-x) + sqr(-y), which is a circle-like function - so yes it does return a true circle.

Still think the first method is easier to understand and control though. smile;)


Rô
_________________________________
My favourite question is "Why?".
My second favourite is "Why not?"
  Details E-Mail
Quasimondo
Quasimondo

Posts: 147
Filters: 32
Quote
byRo wrote:
The math works just fine for Gaussian alternative.

Formula is proportional to "e" to the power of sqr(-x) When the two directons are multiplied in the Blend, the power becomes sqr(-x) + sqr(-y), which is a circle-like function - so yes it does return a true circle.


Oh wow - I'm impressed.

Can you post the filter in the Gaussian version?
  Details E-Mail
byRo
an Englishman in Brazil

Posts: 138
Filters: 8
Quote
Quasimondo wrote:
Can you post the filter in the Gaussian version?


OK, here you go!


_________________________________
My favourite question is "Why?".
My second favourite is "Why not?"
  Details E-Mail
byRo
an Englishman in Brazil

Posts: 138
Filters: 8
Been playing around with the first method.
Using an impulse curve, you can set up the circles size to be directly proportional to the impulse width....

_________________________________
My favourite question is "Why?".
My second favourite is "Why not?"
  Details E-Mail
Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
Guys, you scare me!
  Details E-Mail
Lucato
FF addicted

Posts: 505
Filters: 39
Quote
Guys, you scare me!


Mee too! I get hard time with my poor English trying to read all these stuffs, adding all these mathematics than, pppfffff no way!!!! smile:) Guys are you from earth planet? smile:D
  Details E-Mail
uberzev
not lyftzev

Posts: 1890
Filters: 36
Minor simplification...



  Details E-Mail
deAd
Posts: 1
Filters: 2
It can be done very simply using Tiles and Kaleidoscope, and I haven't seen any squaring...
  Details E-Mail
jffe
Posts: 2869
Filters: 90
And here I was just using the *Frame* module with *corners* set to 0% ha-ha. But then I have no idea most of the time, and with a program that's as open ended as this one, there's probably 20 ways to make circles of one form another eh. smile:)

jffe
Filter Forger
  Details E-Mail
CFandM
ForgeSmith

Posts: 4761
Filters: 266
Well actually this thread pre-dates the frame component...Last posting was
Posted: June 14, 2006 5:05 pm The frame component wasn't in FF at that time..
So this was a way to get a circle at that time..
Stupid things happen to computers for stupid reasons at stupid times!
  Details E-Mail
CFandM
ForgeSmith

Posts: 4761
Filters: 266
The Frame component was first seen in the previous beta before the newest release.
That was in early Aug.
Stupid things happen to computers for stupid reasons at stupid times!
  Details E-Mail
jffe
Posts: 2869
Filters: 90
Well, that's what I get for bumping ancient threads on a boring day ha-ha. smile:)

jffe
Filter Forger
  Details E-Mail

Join Our Community!

Filter Forge has a thriving, vibrant, knowledgeable user community. Feel free to join us and have fun!

33,711 Registered Users
+18 new in 30 days!

153,531 Posts
+36 new in 30 days!

15,347 Topics
+72 new in year!

Create an Account

Online Users Last minute:

25 unregistered users.