designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

Hyperbolic Space: Invert a Point

July 26, 2012 | Algorithms
#hyperbolic #non-euclidean #rhinoceros

The poincare disk is still an interesting representation of hyperbolic space for me, full of mysteries. I’ve had several attempts to understand it previously (here and here). Finally, I found a resource* explaining basic concepts about it. I tried to repeat some of the constructions in Rhinoceros, (without any logical purpose). The most important part is the conversion of a Euclidean point into a hyperbolic space. There is no clear formula, for directly projecting a point into Hyperbolic space, but the method seems very interesting to me because we can do this using only a compass and straightedge. As described in previous posts, the Poincare hyperbolic space representation is an actual 3D projection that can be simulated geometrically. But from the analytic perspective, I needed proof that it can also be done with a 2D translation process.

First, we draw the hypothetical Poincare Disk (a circle, named C) as we are not math people but designers, any radius is ok. Say the center is O.

Hyperbolic Space: Invert a Point hyperbolic, non-euclidean

We’ll start with a point outside the disk, now, just place a point (say A) outside of it and connect O and A.

Hyperbolic Space: Invert a Point rhinoceros, hyperbolic

Now, we have to find the mid-point of OA. Of course with a compass and straightedge. Draw arcs from A and O with radius OA and intersect and connect those arcs to find both perpendicular direction and mid-point of OA. Call this mid-point B.

Hyperbolic Space: Invert a Point non-euclidean, rhinoceros

Draw a circle with center B and a radius of OB. This circle intersects disk C at two points. Call them P1 and P2.

Hyperbolic Space: Invert a Point hyperbolic, non-euclidean

Now, connect P1 and P2 with a line and intersect it with OA. This intersection (A’) is the hyperbolic inverse of point A in the Poincare Disk.

Hyperbolic Space: Invert a Point rhinoceros, hyperbolic

Yes, Euclidean compass and straightedge are not powerful as contemporary CAD interfaces, but interestingly we can still benefit from them, especially in architectural geometry education. It is a way of analyzing shapes and their relations, slower but deeper. I’ll simulate this process in Grasshopper3D soon. I added a little bit more (finding mid-points for example) to the method explained here; Chaim Goodman-Strauss, (2001) “Compass and Straightedge in the Poincare Disk”, The Mathematical Association of America Monthly 108, pp.38-49

Are you bored of converting just one point? You can think of repeating the same process in Grasshopper3D and putting multiple input points to it. I’ve started that kind of definition here.

Cite this post

Yazar, T. (2012, July 26). Hyperbolic Space: Invert a Point. designcoding. Retrieved August 24, 2026, from https://www.designcoding.net/how-to-invert-a-point-in-hyperbolic-space/

Related Posts

Conformal Circle Packing

September 19, 2012

After a couple of days of studying the mysterious Doyle spiral, I’ve decided to test an approach of circle packing from conformal mapping. First, I tried to understand the Poincare disk (earlier at here, here, and here and here). I used it as the hyperbolic representation of space on a two-dimensional plane. Then, I linked a regular hexagonal grid and rebuilt it after the hyperbolic distortion. This led me to find the below hexagonal grid. Therefore, it looks like a suitable…

Hyperbolic Tessellations Continued

July 26, 2012

We can create tessellations of outer points in a Poincare Disk, using the manual method explained in the last post (here). But repeating that compass and straightedge process is becoming a little useless after a couple of repeats. If you say “ok. I understood the concept, let’s get faster!” then we can model just the same process in Grasshopper3D to examine varying results in seconds; If we connect any grid of points into this definition, we can clearly see the similar…

Hyperbolic Projection of a Semi-regular Tessellation

July 7, 2012

Truncated hexagonal tessellation (or named 3-12-12) is represented in hyperbolic space (as far as I understood it). The idea is simple if you don’t mix it with complex equations. Below is the 2-dimensional representation of hyperbolic projection. Paper space is defined by the thick line there. Projection is based on a two-sheet hyperboloid surface. Euclidean version of this tessellation is described here.

Poincarés Hyperbolic Disk

June 26, 2012

This is my first attempt at representing a non-euclidean space. There are several representations of a non-euclidean space in euclidean means such as Beltrami-Klein or Klein, Poincare, Poincare half-plane, and Weierstrass. Here, I tried to understand Poincare’s approach. Random straight lines are drawn on a hypothetical hyperbolic space using a simulation of Poincare’s famous disk representation. Although there is a precise description of the disk and its construction, I used a ready-made arc component of Grasshopper3d, showing start and end points along…

Mirror by Curve

November 21, 2013

In today’s drawing class, we taught methods of drawing basic transformations by hand. Mirror was one interesting subject of that. However, then I opened Grasshopper and Rhino to test the effects of curved mirror planes. Unfortunately, I realized that there is already a curved mirror component in Grasshopper :( This might be one of the simplest ways of introducing generative deformations for design geometry.

  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #tutorial
    • #polyhedra
    • #unrolling
    • #archimedean-solid
    • #platonic-solid
    • #parametric-surface
    • #euclidean-construction
    • #relief
    • #folding
    • #truncated
    • #icosahedron
    • #buckminster-fuller
    • #tessellation
    • #icosidodecahedron
    • #dodecahedron
    • #stellated-solid
    • #octahedron
    • #tetrahedron
    • #deformation
    • #pattern
  • Search

  • Support designcoding!

  • Enjoying designcoding? Support me on Patreon to keep it growing. Thank you!

  • copyright 2026 designcoding.net | about | privacy policy | end user license agreement