fogbound.net




Tue, 14 Nov 2023

My Geometry BS, revisited

— SjG @ 7:14 pm

So, back in January, I posted about being back on my BS with geometry programs. Not too long after that, I think, I got distracted and changed focus and didn’t work on the code at all.

Well, in keeping with the idea that it’s better to do something half-assed than not do it at all, I’ve posted the code, such as it is. It’s a kaleidoscope-like thing written in Javascript, and outputs in SVG for all your re-use needs.

The programs flaws are many. It uses only line segments, not splines, so curves are not smooth. It doesn’t actually merge the line segments into continuous shapes, so the resultant SVG files are huge. And it’s written in Javascript, so in addition to all the mistakes I’ve made, it’s got bugs that may not even be mine.

Still, I think it’s fun to play with. Maybe one day, I’ll write code to merge the line segments, and possibly weave overlapping lines into knot patterns (which was the original intent). But for now, here it is: Tiler.


Thu, 9 Nov 2023

Winking Hummer

— SjG @ 4:33 pm

I was doing my usual skulking about and chasing the garden hummingbirds, when this one made it clear it knew what was up.

(That’s not CG, AI, or fakery. The image is animated from two successive frames, shooting at 7fps)


Mon, 18 Sep 2023

Borderline

— SjG @ 12:21 pm

When designing visual stuff, I often would like the ability to create a patterned frame for whatever it is I’m doing. It’s not so much work to drag and move image tiles around to make a nice frame, but I wanted to make it easier.

Thus “Borderline” was born. It’s a JavaScript tool for laying out tiles into frame designs, with a few automated features to make playing around easier.

Borderline lets you arrange small SVG files to form a border. It optionally does some rotational and mirroring transforms to make the pattern look nice.

It includes a small collection of custom, original SVG tiles to use for making nice borders. You can also “upload” your own! (since this all takes place in your browser, nothing actually gets uploaded to a server or leaves your local machine).

Once you’re happy with your design, you can export the entire border as an SVG suitable for printing or modification in your favorite vector graphics application.

You should be able to use just about any SVG file as a tile, although if it’s too big or complicated your browser may run out of memory and behave badly.

You can try it here: Borderline. Source is available at Codeberg.


Fri, 30 Jun 2023

Perspective correction and uncanny valley

— SjG @ 8:23 am

It’s interesting how optical corrections to “fix perspective” can end up making something look simultaneously “correct” and very, very wrong.

When I say “fix perspective,” I’m talking about the convergence of lines due to perspective. The further something is from your eye, the smaller it appears, so if you’re looking up at a building, the top looks narrower than the bottom. Similarly, if it’s not in the center of the frame, the different vanishing points combine with general lens distortion to make a funny-house mirror image.

This building does not, in fact, get smaller on the higher floors.

Now, optically, your eye sees perspective this way too, but the image-processing in the brain tends to counter it. What you “know” about the building overrides what you’re seeing, and you don’t really notice that it’s going all pointy on top. Weirdly, something that doesn’t bother us when we’re out on the street tends to bother a lot of people when they see it in photography.

In the old days, if you wanted to prevent this perspective narrowing of an architectural feature, you’d use an expensive and somewhat esoteric piece of equipment called a “tilt shift lens.” It would allow you to align the lens with the plane of what you’re photographing, and thereby cancel out some of the distortions. What that means in practical terms is that you can, in a controlled way, counter the convergence of lines due to perspective.

Now we do the same with ordinary lenses and software.

Where the “uncanny valley” comes in is that the convergence due to perspective can be fixed, but the point of view does not actually change. Where you see this dramatically is in something like this tower, where the perspective is telling your eye that you’re seeing it straight on, while the point of view of the constituent beams is from below. It’s mildly Escheresque. Compare the “corrected” and “uncorrected” views below.

I guess the solution is to always photograph everything using remote-controlled drones that sit in the perfect perspective spot, and then fix any lens distortions.


Sun, 28 May 2023

Caution!

— SjG @ 9:43 am

I recently came across this site for creating warning signs of various sorts. It was intended for use by those who operate laboratories and research facilities. It was pointed out to me because it has a random sign generation function, which creates some funny and absurd signs, perfect for your surrealist academies.

My mind, however, went to Shakespeare.