Messages 1 - 45 of 94
First | Prev. | 1 2 3 | Next | Last |
ThreeDee
![]() |
Fo the longest time, I've been wondering how to realize something resembling freehand paths in FF. Today I made my first real breakthrough in this. This simple little picture has a story to tell.
![]() |
|||||||||
Posted: April 7, 2012 1:50 pm | ||||||||||
ThreeDee
![]() |
The story is that it is "drawn" from two (random) noise gradient inputs which give the X and Y coordinates OVER TIME for a single point.
With the help little script that I put together, the location of this point over time is drawn all the same time onto the canvas. I will describe this in more detail in the near future. |
|||||||||
Posted: April 7, 2012 1:59 pm | ||||||||||
SpaceRay
![]() |
WOW!! This could be very interesting and and could be something very good for FF to have freehand paths!!
Nice example you have put and amazing that this comes from two noise gradients inputs with a script and... the other things you have used I will wait for your more detailed description Put a note, do not disturb, GENIUS working ![]() |
|||||||||
Posted: April 7, 2012 2:42 pm | ||||||||||
Morgantao
![]() |
I love how it's a closed path, and not just a random squigly line going nowhere.
Genius at work indeed! ![]() |
|||||||||
Posted: April 7, 2012 5:26 pm | ||||||||||
ThreeDee
![]() |
||||||||||
Posted: April 8, 2012 4:13 am | ||||||||||
ThreeDee
![]() |
||||||||||
Posted: April 8, 2012 4:16 am | ||||||||||
ThreeDee
![]() |
And converts the gray values at these points to X and Y positions.
![]() |
|||||||||
Posted: April 8, 2012 4:18 am | ||||||||||
ThreeDee
![]() |
With ten points that looks like random points, but as you increase the number of points, you start getting a line. Here is the same with 128 points.
![]() |
|||||||||
Posted: April 8, 2012 4:19 am | ||||||||||
ThreeDee
![]() |
And finally, we connect the dots:
![]() |
|||||||||
Posted: April 8, 2012 4:20 am | ||||||||||
ThreeDee
![]() |
When you change the variation, you get a different x and y points and a different resulting line.
![]() |
|||||||||
Posted: April 8, 2012 4:23 am | ||||||||||
ThreeDee
![]() |
When you scale up the noise, you get simpler shapes.
![]() |
|||||||||
Posted: April 8, 2012 4:24 am | ||||||||||
ThreeDee
![]() |
And smaller scale noise gives you more scribbles for your money.
![]() |
|||||||||
Posted: April 8, 2012 4:27 am | ||||||||||
SpaceRay
![]() |
WOW!! Wonderful results!! Like very much how you have been able to make the scribbles from LOTS of points multiplied to form lines. Great work.
|
|||||||||
Posted: April 8, 2012 4:30 am | ||||||||||
ThreeDee
![]() |
Different types of noise inputs give different results. Block noise gives you more angular lines.
![]() |
|||||||||
Posted: April 8, 2012 4:32 am | ||||||||||
ThreeDee
![]() |
A contrasty cells noise tends towards the edges...
Due to the complexity of the line, I had to use 1000 points here, so it is pretty slow. Nevertheless, quite a charming little scribble. ![]() |
|||||||||
Posted: April 8, 2012 4:49 am | ||||||||||
ThreeDee
![]() |
But wait, now the fun really starts: Two sine curves fed in as inputs gives you...
![]() |
|||||||||
Posted: April 8, 2012 4:52 am | ||||||||||
ThreeDee
![]() |
Did you guess what two sine curves blended together would make?
![]() |
|||||||||
Posted: April 8, 2012 4:59 am | ||||||||||
ThreeDee
![]() |
Or three?
![]() |
|||||||||
Posted: April 8, 2012 5:07 am | ||||||||||
ThreeDee
![]() |
Just add elevation gradient:
![]() |
|||||||||
Posted: April 8, 2012 5:11 am | ||||||||||
ThreeDee
![]() |
Never gonna look at a sine curve the same way again.
![]() |
|||||||||
Posted: April 8, 2012 5:17 am | ||||||||||
ThreeDee
![]() |
Thought you would never ask. Yes, you can use it for surface filters as well, although render times rapidly get into the CPU- and patience-testing ranges.
![]() |
|||||||||
Posted: April 8, 2012 5:49 am | ||||||||||
xirja
![]() |
2d parametric curves in FF, an excellent breakthrough! Does it use a bomber and how are the points connected? Is it possible to get variable line thickness as a function (x^2+y^2)^(1/2) like this:
http://www.youtube.com/watch?v=Md1q2oShx8A _____________________________________________________
http://web.archive.org/web/2021062908...rjadesign/ _____________________________________________________ |
|||||||||
Posted: April 8, 2012 8:12 am | ||||||||||
ThreeDee
![]() |
No, it is a script that draws the points and the lines in between. Currently the lines are straight lines.
Yes, this can be easily included in the script. |
|||||||||
Posted: April 8, 2012 9:05 am | ||||||||||
ThreeDee
![]() |
Here's the line drawing scrippet.
The nice thing is that the script calculates the distance from the line and end points, so you can vary the line thickness by just thresholding the output. Line Drawing scrippet.ffxml |
|||||||||
Posted: April 8, 2012 9:10 am | ||||||||||
ThreeDee
![]() |
Actually, no need to put it in the script, you can just threshhold it with a circular gradient: ![]() |
|||||||||
Posted: April 8, 2012 9:52 am | ||||||||||
ThreeDee
![]() |
Heh, the next step was easier than I expected...
Not real fast in rendering, but it's the real thing. ![]() |
|||||||||
Posted: April 8, 2012 11:27 am | ||||||||||
ThreeDee
![]() |
Okay, so what to do with all this?
Inputting actual X and Y values is quite tedious, for to make the above Bezier curve, you have to use 8 inputs, x and y values for all four points defining the curve. So that makes 8 sliders It seems the more sensible approach is to use the built-in noises as sources for x and y information. Or to program the values mathematically for such things as a fractal tree. Or for wireframed 3D objects. Or road maps between cities. Or tessalation patterns. Now off to figuring out how to filled those closed shapes... |
|||||||||
Posted: April 8, 2012 11:47 am | ||||||||||
ThreeDee
![]() |
Oh yeah, one more thing. The script output actually looks like the picture below. It gives the distance from the nearest line. Then it can be put through a threshold or other things to give the desired line weight etc.
![]() |
|||||||||
Posted: April 8, 2012 12:00 pm | ||||||||||
ThreeDee
![]() |
It wasn't too hard getting the fills. But now it is slow as molasses with both the line and the fill, so needs some optimization.
![]() |
|||||||||
Posted: April 8, 2012 1:38 pm | ||||||||||
lipebianc
![]() |
This is awesome, ThreeDee!!!!
You're raising the bar in the filter construction territory! ![]() Thank you for your efforts, congratulations and respect for your achievement! "From the moment we are born, we start being filtered..." |
|||||||||
Posted: April 8, 2012 1:51 pm | ||||||||||
xirja
![]() |
Totally! Splines AND filling, oh yeah! Looking forward to this one! Also its nice to have opacity on the filling so that you can get gradations on the overlaps, such as:
![]() _____________________________________________________
http://web.archive.org/web/2021062908...rjadesign/ _____________________________________________________ |
|||||||||
Posted: April 8, 2012 3:01 pm | ||||||||||
SpaceRay
![]() |
I totally agree with lipebianc and I say the same as you. Congratulations for your work.
WOW! very well done and very beautiful geometric shape, good work. ALSO like very much all the beautiful and awesome works you have in your website here |
|||||||||
Posted: April 8, 2012 3:37 pm | ||||||||||
Skybase
![]() |
Sweeet! Love the script, very simple but so awesomely done!
|
|||||||||
Posted: April 8, 2012 9:21 pm | ||||||||||
Kraellin
![]() |
3D, did you mean the line drawing scrippet to draw more than straight lines, cause that's all it seems to do?
If wishes were horses... there'd be a whole lot of horse crap to clean up!
Craig |
|||||||||
Posted: April 8, 2012 9:58 pm | ||||||||||
ThreeDee
![]() |
Yes, that scrippet demonstrates drawing just one line. I'm still trying to come up with a more sensible path-drawing filter that I could submit to the filter library. Maybe I'll make something out of the sine curve input version. That will include the multiple-line drawing script. |
|||||||||
Posted: April 9, 2012 4:39 am | ||||||||||
ThreeDee
![]() |
I put the Sine-O-Graph filter in the queue, so you'll be able to dissect it. It is actually a fairly simple script.
![]() |
|||||||||
Posted: April 9, 2012 8:18 am | ||||||||||
xirja
![]() |
Oh right ![]()
Many exciting possibilities there for sure.
And then I go and suggest opacity, bumping my graphic. I'm really not a smart ass most days, really ![]()
Thanks SpaceRay, those were done in Mathematica (totally script and pixel based), so to be able to do something similar in Filter Forge is the tops. I've already found FF to be far superior in doing density plots using the scripting component; in a pixel based environment it is painfully slow. ...scalpel...check ![]() _____________________________________________________
http://web.archive.org/web/2021062908...rjadesign/ _____________________________________________________ |
|||||||||
Posted: April 9, 2012 8:56 am | ||||||||||
ThreeDee
![]() |
||||||||||
Posted: April 9, 2012 11:43 am | ||||||||||
ThreeDee
![]() |
||||||||||
Posted: April 9, 2012 12:31 pm | ||||||||||
ThreeDee
![]() |
||||||||||
Posted: April 9, 2012 1:18 pm | ||||||||||
Ghislaine
![]() |
Great ! I love wireframed 3D objects. The last example is awesome. For more comprehension, because all this seems to me a bit complicated, can you post the settings for the last one when your Sine-O-Graph filter will be in the library, please ?
![]() visit https://gisoft.ca |
|||||||||
Posted: April 9, 2012 3:07 pm | ||||||||||
ThreeDee
![]() |
Hi Ghislaine,
The last example is a different version of the script, so you can't do it with the Sine-O-Graph. Not sure if this one is going to end up in the library. |
|||||||||
Posted: April 10, 2012 12:06 pm | ||||||||||
Ghislaine
![]() |
3D wrote
Please, it would be kind if you share this one with us. Hoping I will see this other wonder in the library. Thanks for sharing the version 1. ![]() visit https://gisoft.ca |
|||||||||
Posted: April 10, 2012 2:17 pm | ||||||||||
ThreeDee
![]() |
Revisiting the good old fractal tree, this time with actual lines and overlap...
![]() |
|||||||||
Posted: April 10, 2012 2:19 pm | ||||||||||
Skybase
![]() |
Of course you'd do that lol. Sounds like the next step is to go even above and beyond. L-Systems? hehe
|
|||||||||
Posted: April 10, 2012 2:45 pm |
Filter Forge has a thriving, vibrant, knowledgeable user community. Feel free to join us and have fun!
33,712 Registered Users
+19 new in 30 days!
153,533 Posts
+31 new in 30 days!
15,348 Topics
+73 new in year!
33 unregistered users.