The Mercator Projection

  • formats
  • 2018/06/04
  • Comments Off on The Mercator Projection

The much-maligned Mercator Projection is indeed by unsuitable for maps (famously it renders Greenland as large as Africa when in fact it is as large as Saudi Arabia): What is rarely mentioned is that the Mercator projection is infinite. That is, if you extended it further north and further south the magnification would become more…


Dolly Zoom using Möbius Transforms

  • formats
  • 2018/05/03
  • Comments Off on Dolly Zoom using Möbius Transforms

Dolly zoom is the technique of zooming/panning a camera while a dolly moves the subject towards or away from the camera. The combined effect is that the subject doesn’t change size but the background moves in a weird way that distorts perspective. This effect was pioneered in the movie Vertigo but has been used countless…


3-Sphere notes

Rotations A rotation in 2 dimensions leaves one single point stationary. A rotation in 3 dimensions leaves an axis stationary. A rotation in 4 dimensions leaves a plane stationary. So in 4d everything rotates around a plane. Now we can additionally choose to rotate that stationary plane, thereby doing 2 planar rotations at once. I…


Intuition for Semi-Direct Products

  • formats
  • 2017/10/19
  • Comments Off on Intuition for Semi-Direct Products

Example 1: C3⋊C2 = S3 You can’t do the complicated stuff with being clear on the simple stuff. So to clarify semi-direct products lets start with pretty much the simplest case. C3xC2 = C6 is a direct product. Thus, C3 and C2 are normal subgroups of the cyclic group C6 which has order 6. C3⋊C2…


Intuitions for SU(2) and SO(3)

  • formats
  • 2017/09/26
  • Comments Off on Intuitions for SU(2) and SO(3)

This article is about a single strange topic which doesn’t have a pithy title but which manifests in several areas: Gimbal Lock Orientation Entanglement Quantum Mechanics The theory of rotation groups The underlying concepts that relate these topics comes from Group Theory/Abstract Algebra. I understood the algebra behind these concepts but had little or no…


Tetrahedral symmetry

I was curious how one would go about rendering a triangle group using Möbius transforms. It took a while! I wanted to jot down the underlying theory so I wouldn’t forget it later. Perhaps these notes will be of interest to others as well. Here goes: Given a triangle with angles π/l, π/m, π/n, you…


Congruence Group Γ(2)

  • formats
  • 2017/03/21
  • Comments Off on Congruence Group Γ(2)

Modular Group Γ(1) generated the hyperbolic tessellations seen previously. Its generators are: Or in matrix form:  [0,1;-1,0], [1,1;1,0]. The Congruence Group Γ(2) can be generated by these matrices: [1,2;0,1], [1,0;-2,1] The tiling looks like this: You can view a version I wrote in Three.js/WebGl here. You can spin it and pan and zoom. It is clear…


Ford Circles and Farey Graphs

  • formats
  • 2017/03/18
  • Comments Off on Ford Circles and Farey Graphs

Here is an image of a tessellation or tiling of the upper half-plane. Under some group of symmetries, an initial triangle (for instance the one in orange) covers the plane without overlaps. (The initial triangle is not ideal because only one of its angles is 0). The group of symmetries used are those of the…


Tessellation of the Hyperbolic Plane on the Riemann Sphere

  • formats
  • 2017/03/05
  • Comments Off on Tessellation of the Hyperbolic Plane on the Riemann Sphere

I’m interested in learning more about the modular group and this article looking into hyperbolic tessellations represents my initial efforts to collect my thoughts on the topic. We are familiar with hyperbolic tessellations from the artwork of M.C. Escher and from numerous renderings of the Poincare Disk (which was really invented by Beltrami, not Poincaré):…


Möbius Transformations on Spherical Photos and Videos

  • formats
  • 2016/09/12
  • Comments Off on Möbius Transformations on Spherical Photos and Videos

Spherical Video presents some interesting challenges, for instance, how do you zoom? Or how do you rotate on any arbitrary axis? As the mathematician Henry Segerman pointed out in a post for EleVR, you can achieve both of the above using Möbius transformations. The transformations are conformal (they preserve angles), and they map circles to…


Thought Bubbles

A window is a two-dimensional hole in a two-dimensional plane that allows you to see into a three-dimensional world. So what if we could make three-dimensional holes? The original idea came from a three.js demo by altered qualia where he was demo’ing fresnel shaders: I didn’t care much about fresnel shaders, but was intrigued by…


Complex Surfaces

I wrote a separate version of formula toy that handles complex functions. So, you can type in a function like: f=sqrt(g). Both f and g are expected to be complex functions:     g = u + iv and     f = w + ix where u is the real component of g, v is the…


Torus Knots

Formula Toy is a simple and free WebGL app I wrote that allows you to enter in 3-d formulas and see the resulting surface. Sort of like Desmos, but for 3D. When I first wrote it you could express your formulas in 3 different coordinate systems: cartesian, spherical (polar), and cylindrical. I recently add toroidal…


Rotations, Transformations – Geometries and Meshes

  • formats
  • 2015/01/17
  • Comments Off on Rotations, Transformations – Geometries and Meshes

I was driving myself batty trying to get all my rotations and transformations to behave correctly in three.js. So in these kind of cases one must always pare down to essentials. As follows: Lets create a simple mesh and place it on the scene: // Example 1 var geo = new THREE.BoxGeometry(5,5,20,32); _mesh = new…


Drawing Pentatope Cross-Sections in three.js

  • formats
  • 2014/12/27
  • Comments Off on Drawing Pentatope Cross-Sections in three.js

A triangle is the simplest regular figure in 2 dimensions. Its 3 dimensional analogue is a tetrahedron. Its 4 dimensional analogue is the pentatope. Another term for these 3 geometries is: simplex. Many articles online explain these further. I wanted to view what it would look like if a pentatope passed through our 3-dimensional space.…


Minecraft Menger Sponge – STEAM project.

What has zero volume and an infinite surface area? A Menger Sponge of course. If your child is a Minecraft fan like my 7 year old, then this simple fractal can be used to make a good afternoon STEAM project that teaches math and programming concepts. (Note you should already know how to modify Minecraft…


CVision: Computer Vision Workbench

  • formats
  • 2014/07/06
  • Comments Off on CVision: Computer Vision Workbench

CVision: A computer vision WorkBench and Utilities written in WinForms that wraps OpenCV. I wrote it for my purposes, there is plenty to improve: Features: Has all OpenCV color options and color maps. Histogram Equalization 4 Blurs Many Morph Modes: ERODE, DILATE, OPEN, CLOSE, GRADIENT, TOPHAT, BLACKHAT You can specify morph type (RECT, CROSS,…


The Visual Representation of High Dimension Spaces

Our brains struggle visualizing spaces with more than 3 dimensions. This is a problem we tried to address in our FaceCloud and FaceField projects. We present here a possible solution using fractional dimensions to represent higher dimensions. The examples here are all based on the Eigenfaces face recognition algorithm where we were dealing with high…


Face Field Update

10 Synthetic Faces are now on display at the Chicago Cultural Center through August, as part of Adelheid Mers’ “Enter the Matrix” exhibit. They look great in large format and are quite powerful. Some photos below. These are faces pulled at random from the 60-dimensional PCA space that we have been working with for some…


Formula Toy

Back at the age of 17, thanks to the liberal access policies of Indiana University’s Wrubel Computing Center, I was able to write short little computer programs (on cards!) that would graph 3 dimensional surfaces using a pen plotter. The little nerd that was me was thrilled at the results, and my bedroom wall was…

Home Archive for category "Uncategorized"