Miavir
![]() |
Just because there are bound to be questions about the new components that are not math ones, this thread. And here my own Question:
The new transform Components seem to have a 'XY Anchor', it can be set to: -Default (Size) -Max Size -Image Bounds So, what is that, and what does it do? When I tried it there seemed to be no diffrence, but the Image I tried it on may not have been optimal. In ancient Egypt, Cats used to be revered as Gods.
Cats have never forgotten this. And rightly so. |
|||
Posted: April 13, 2010 12:27 pm | ||||
KGtheway2B
![]() |
I believe the XY anchor is a sort of "pivot point". If you wanted to rotate your image not around the exact center, but based on the upper left corner you might put X=0 Y=0
Coordinate system is like this (X=0,Y=0) --------------------> + X | | | | | `````````` (X=.5,Y=.5) <-- Default Center of rotation | | | \/ +Y Try modifying the origin x, y on the rotate component, then fiddle with the "Rotation" wheel. It should be fairly intuitive after that. I'd recommend keeping the origin values fairly low, else the rotate will start to act all crazy. |
|||
Posted: April 14, 2010 1:45 am | ||||
Miavir
![]() |
Actually I understand modifying the pivot point for rotate and such. *BUT*, the 'XY Anchor' is not a point, its a simple selector type button, you may only select the three values mentioned in my first post.
So I suspect it modifies how it selects the pivot point somewhat,... but I can't figure out how since no matter what I select in XY Anchor, the resultant image has always looked the same in any of my tests. In ancient Egypt, Cats used to be revered as Gods.
Cats have never forgotten this. And rightly so. |
|||
Posted: April 14, 2010 3:13 am | ||||
Vladimir Golovin
Administrator |
The XY Anchor input is present in components that allow to specify point coordinates. It determines how the coordinate values are interpreted. It affects coordinates of all points in a component.
Default (Size) This option makes all points in the component change their positions together with the changes of the Size slider. Say, if you blend a Free Ellipse with XY Anchor set to Default(Size) with a Perlin Noise and then change the Size slider, the ellipse will 'stick' to the noise -- they will scale together, there will be no discrepancy between them as the Size value changes. In this mode, a point with coordinates of 0, 0 refers to the upper-left corner of the image, and a point with coordinates of 1, 1 refers to the lower-right corner of the rectangle Size x Size pixels wide, where Size is the current value of the Size slider. Max Size The idea behind this mode is that it makes point coordinates independent of the Size slider -- just like the Image Bounds mode described below -- while avoiding its inherent problem with non-equal distances along coordinates that may arise due to non-square images. In this mode, a point with coordinates of 0, 0 refers to the upper-left corner of the image, and a point with coordinates of 1, 1 refers to the lower-right corner of the rectangle MaxSize x MaxSize pixels wide, where MaxSize is the maximum value of the Size slider (you can see the maximum Size value by setting the Size slider to the rightmost position.) Image Bounds This option makes all points in the component independent of the Size slider. Point coordinates are interpreted as percentages of width and height of the source image loaded into Filter Forge. In this mode, a point with coordinates of 0, 0 refers to the upper-left corner of the image, and a point with coordinates of 1, 1 refers to the lower-right corner of the image, no matter if the image is square or rectangular. |
|||
Posted: April 14, 2010 4:05 am | ||||
Vladimir Golovin
Administrator |
||||
Posted: April 14, 2010 4:55 am | ||||
Vladimir Golovin
Administrator |
||||
Posted: April 14, 2010 4:57 am | ||||
Vladimir Golovin
Administrator |
Here's the example filter. Try using it on square and non-square images, with different Size slider settings.
XY Anchor r1t.ffxml |
|||
Posted: April 14, 2010 4:59 am | ||||
Miavir
![]() |
And since I was only working on square Images, I saw no result. OK, that sounds logical
![]() ![]() In ancient Egypt, Cats used to be revered as Gods.
Cats have never forgotten this. And rightly so. |
|||
Posted: April 14, 2010 7:54 am | ||||
Kraellin
![]() |
i am SO glad you are compensating for non-square more now! thank you!
If wishes were horses... there'd be a whole lot of horse crap to clean up!
Craig |
|||
Posted: April 14, 2010 1:23 pm | ||||
Miavir
![]() |
Nahhh, I'm just gonna stay square !
![]() In ancient Egypt, Cats used to be revered as Gods.
Cats have never forgotten this. And rightly so. |
|||
Posted: April 15, 2010 3:23 am | ||||
Sphinx.
![]() |
Can you explain how the radius input in Minimum, Maximum and Percentile work? It seems to ignore many intermediate values and suddenly "jump" to a higher radius..
|
|||
Posted: April 22, 2010 1:44 am | ||||
Vladimir Golovin
Administrator |
Haven't checked the code, but the jump you're seeing might be caused by the algrothm itself -- these components look at all pixels within the radius and choose one pixel that has the "most" minimum/maximim/median value. Even if you have a floating-point radius, just slightly overlapping it with a black pixel is enough for black to "take over" the output pixel. (The anti-aliasing option softens that effect slightly -- it calculates four median/minimum/maximum pixels and averages them to produce the output pixel. Technically, this is not an entirely correct approach, but it looks better than the jaggy correct version.) |
|||
Posted: April 22, 2010 4:58 am | ||||
Sphinx.
![]() |
Ah, I see. I'm still a bit uncertain about how you handle non integer inspections of the last proximity "ring" (or square I guess.. lol). Lets say the percentage radius settings result in a real pixel area of 6,789 x 6,789 and you have looked at all pixels within the integer 6 x 6 area. Now do you simply skip the last part fractional parts (via some rounding/truncation method) or do you interpolate or weigh these fractional pixels somehow, or what is going on here? What I suspect is that the fractional areas are discarded or rounded up and thats why we see the "jumps". Maybe you could store the max (or min, med) value for 6x6 and 7x7 and use the fraction as weight btwn these two? As it is now its somewhat confusing working with. I wish we could control the radius in relation to how the algorithm actually work, i.e. Set radius in relation to actual pixel steps and not percentage values, either directly or via some sort of percentage -> pixel conversion. |
|||
Posted: April 22, 2010 6:57 am |
Filter Forge has a thriving, vibrant, knowledgeable user community. Feel free to join us and have fun!
33,712 Registered Users
+18 new in 30 days!
153,537 Posts
+6 new in 7 days!
15,348 Topics
+72 new in year!
23 unregistered users.