Drawing Spherical Lunes in 2D

  • I
  • Thread starter Smed
  • Start date
  • #1
36
1

Summary:

How do you draw a 2D pattern of a 3D spherical lune?

Main Question or Discussion Point

I ultimately want to make a sewing pattern of a ball. If I have an n-hosohedra, how do I figure out the equation of the curves that make up each lune in 2D?
 

Answers and Replies

  • #2
andrewkirk
Science Advisor
Homework Helper
Insights Author
Gold Member
3,831
1,418
Assuming you are using ordinary, flat material, your lunes will need to be quite thin because they will have a flat geometry that differs from the curved geometry of a proper lune. The thinner the lune, the less that will be a practical problem. Using material that is a bit stretchy can also help make it less of a problem.

I would make a flat approximation of a thin lune of a n-hosohedron (for n large, say at least 18) by choosing a fairly large m (say > 100) and defining each approximate lune as consisting of 2m segments in sequence, starting with a triangle, (m-1) gradually fattening trapezia to get to the equator, then another (m-1) thinning trapezia and ending with another small triangle. Each segment has left-right symmetry, eg the triangles are isosceles.

The k-th segment (counting away from the pole with the triangle as segment 1) will have its top in the plane ##P_{k-1}## parallel to the equatorial plane with latitude (k-1) * pi / 2m and its base in the plane ##P_{k}## parallel to the equatorial plane with latitude k * pi / 2m.

The height of each segment is equal to one side of a regular 4m-sided polygon.

The base of the k-th segment is the same length as one side of a regular n-sided polygon with radius (distance from centre to any vertex) equal to the radius of the cross section of the sphere that lies in plane ##P_{k}##.

From that specification you can plot a flat shape of a lune to use as a stencil using ordinary Euclidean geometry.

The tricky bit will be sewing the lunes together, because you need to fold the lunes as you sew, to make their edges align. You can't just lay two lunes flat next to one another and sew. Hand sewing would work. To do the sewing by machine, you can only really do one segment at a time. To be practical, that may mean using a smaller value of m so that your segments are taller. Using slightly stretchy material will ameliorate problems arising from the bigger bends that using a smaller value of m will generate.

BTW most of the sewn round balls I know about are either an alternation of pentagons and hexagons (soccer ball) or a combination of sets of almost-rectangular strips that alternate orientation (volleyball). I think those designs are stronger, as is needed for a ball that has to contain pressurised air. But I have seen balls sewn with lunes used for toys, where the ball is full of stuffing.
 
  • #3
pbuk
Science Advisor
Gold Member
1,437
423
I don't think an 18-hosohedron will work unless it is enormous, there will be too much seam. With sufficiently stretchy material a 4-hosohedron is perfectly feasible and is a familiar piece of equipment for jugglers who call it a 'thud'.

For larger numbers of sides the seams at the poles (where you have n seams coming together) become a problem; this can be overcome by using two circles of material as 'polar caps' as in the familiar inflatable beach ball (typically a 6-hosohedron).

You can sketch a reasonable pattern by hand (or using french curves or a flexible ruler) as long as you remember that the angle at the top is ## 360° \over n ##. Draw this angle first and then make sure it forms a tangent to your curves. Once you have drawn the curve on the material (which is your sewing line), cut out the material leaving enough for a seam.
 
  • #4
36
1
Thank you both for taking the time to reply. An inflatable beach ball is another example of what I have in mind.

@andrewkirk I'm having a bit of difficulty following how each trapezoid will change its shape as you approach the equator. It sounds like the height and width of the trapezoids are changing linearly, which I would think would just leave me with a diamond shape at the end. Perhaps the answer is here where I didn't entirely follow you,
The base of the k-th segment is the same length as one side of a regular n-sided polygon with radius (distance from centre to any vertex) equal to the radius of the cross section of the sphere that lies in plane .
@pbuk the rough sketch approach is what I've been using along with knowledge of the top angle, but I'm surprised there isn't a known polynomial equation that describes these shapes.
 
  • #5
pbuk
Science Advisor
Gold Member
1,437
423
I'm surprised there isn't a known polynomial equation that describes these shapes.
It wouldn't be a polynomial, but it is easy enough to find an equation for the curve - and there is probably a name for it but I can't put my finger on it at the moment. I'll have a look when I have pencil and paper in front of me later.

The key is this:
The base of the k-th segment is the same length as one side of a regular n-sided polygon with radius (distance from centre to any vertex) equal to the radius of the cross section of the sphere that lies in plane ##P_{k}##.
 
  • #6
pbuk
Science Advisor
Gold Member
1,437
423
It wouldn't be a polynomial, but it is easy enough to find an equation for the curve - and there is probably a name for it but I can't put my finger on it at the moment. I'll have a look when I have pencil and paper in front of me later.

The key is this:
No, that's not right - the point I think we are missing is that the length of the curved edge must be the semi-circumference of the sphere, not the centre of the piece (which is going to need to stretch). This makes it harder...
 
  • #7
andrewkirk
Science Advisor
Homework Helper
Insights Author
Gold Member
3,831
1,418
I'm having a bit of difficulty following how each trapezoid will change its shape as you approach the equator.
Here are pictures to help, made to scale. In the filenames the first number is the number of lunes and the second is the number of segments in each hemisphere of a lune (so each lune has twice that number of segments). In case the file names aren't visible, the diagrams are for a four-lune and a twelve-lune ball. In each case, a lune is shown with 1, 2, 3 and 10 polygonal segments in each hemisphere. The 10-segment lune looks indistinguishable from a smooth curve, to my fuzzy eyes at least!

My partner, who is an expert at sewing, says you could use a machine to join two lunes by putting two lunes back to back and sewing through the aligned edge at one side. It'll get progressively more tricky as the number of lunes you have sewn together increases. I expect the last few would have to be done by hand. She said that English paper-piecing would make the edges neater.

Each lune cut-out would have extrinsic but not intrinsic curvature, because it is cut from flat fabric. That means the lune fabric would need to stretch a bit to match the intrinsic curvature of its segment of the sphere. But if you have quite a few lunes (say at least twelve) the curvature should be small enough to not be a problem.

By the way, lunes like in the first diagram lune.4.1 would make an octahedron - one of the five platonic solids - although this octahedron is not regular (correction: after fixing an error in the horizontal scale, it is regular).


lune.4.1.png
lune.4.2.png
lune.4.3.png
lune.4.10.png
lune.12.1.png
lune.12.2.png
lune.12.3.png
lune.12.10.png
 
Last edited:
  • #8
pbuk
Science Advisor
Gold Member
1,437
423
No, that's not right. In order to get as smooth a 3D shape as possible, there are two important things to get exactly right:
  • the angles at the top of the pieces must add up to 360°
  • there must be no angle at the mid point
These are much more important than the precise profile of the curve between these points.

By the way, lunes like in the first diagram lune.4.1 would make an octahedron - one of the five platonic solids - although this octahedron is not regular.
This should give you a clue that your pieces are too high - obviously a regular octahedron would be a better approximation to a sphere.
 
  • #9
andrewkirk
Science Advisor
Homework Helper
Insights Author
Gold Member
3,831
1,418
In order to get as smooth a 3D shape as possible, there are two important things to get exactly right:
  • the angles at the top of the pieces must add up to 360°
  • there must be no angle at the mid point
We cannot get anything exactly right, because we are using flat fabric pieces to approximate a surface that is nowhere flat. But we can approximate the shape. The higher the values we take for the two parameters I specified in my first post, the closer the approximation will be. The limit of the angle sum at the pole, as both n and m approach infinity, will be 360 degrees. But in fact it will come very close even for quite modest values of those parameters. Similarly, the angle at the midpoint approaches 180 degrees (straight) as m (the number of segments in half a lune) approaches infinity.

Naturally the case with four lunes, each of only two segments - the octahedron - is a poor approximation. Nobody would suggest using only four lunes, or only two segments. The purpose of including those drawings was to demonstrate how quickly the approximation improves as we increase the number of segments, and also because it makes it easier to conceptualise the shape of the segments.

your pieces are too high ... a regular octahedron would be a better approximation to a sphere.
That's an excellent observation. It made me realise I got the horizontal scale wrong in the diagrams. The shape is indeed a regular octahedron. I've redone the diagrams with the scale corrected, and replaced the ones in my post above.

In drawing the diagrams I used the following equation for the distance to the lune outline from its centre line:
$$r \cos \theta\sin(\pi/n)$$
where ##\theta## is the elevation of the point above the equatorial plane and n is the number of lunes. That is half the length of an edge of the regular n-gon inscribed in the latitudinal circle at latitude ##\theta##.

The shape, for high m (number of segments per lune) is very close to the convex hull of n evenly spaced longitudinal great circles. It's what we'd get if we made a wire ball out of n evenly spaced longitudinal great circles and covered it in cling wrap. As n goes to infinity, that shape approximates a sphere.

More generally, the shape for any n and m is the convex hull of points on the surface of a sphere at the intersections of latitudinal lines of which there are m-1 in each hemisphere, excluding the equator, and n evenly spaced longitudinal lines (meridians). It's what we'd get if we made a spiky ball of radial wires going from the centre of a sphere to those points, and covered it with cling wrap that was strong enough not to be pierced by the ends of the wires. The shape is a polyhedron, so the surface is flat everywhere except at edges and vertices (which is required as we are using flat fabric) and it is easy to see that it approximates a sphere as n and m go to infinity.

I attach the R code used to produce the plots, for anybody that is interested.

Code for diagrams:
n.lat.rng <- c(1, 2, 3, 10)
#  c(5,10,20, 50) # number  of latitudinal segments per hemisphere - span pi / 2
n.long.rng <- c(4, 12) # number of lunes (around the equator - span 2 pi)
r <- 1
setwd('/media/data/temp')

cols <- rep('black', 100)
#cols <- c('blue', 'green', 'red', 'black')

for (n.long in n.long.rng){
  for (i in 1:length (n.lat.rng)){
    png(paste('lune.', n.long, '.', n.lat.rng[i], '.png', sep = '' ))
    lats <- pi * (seq(0, 1, 1/(2 * n.lat.rng[i])) - 0.5)
    dr <- r * diff(cos(lats)) * cos(pi / n.long)
    dz <- r * diff(sin(lats))
    dh <- sqrt(dz^2 + dr^2)
    x <- c(0, cumsum(dh))
    y1 <- r * cos(lats) * sin(pi / n.long)
    plot(x = range(x), y = 1.1 * max(y1) * c(-1, 1), type = 'n',pty = 's', asp = 1, xlab = '', ylab = '')
    lines(x, y1, col = cols[i])
    lines(x, -y1, col = cols[i])
    for (j in 1:length(x))
      lines(x = rep(x[j], 2), y = c(-1,1) * y1[j])
    dev.off()
  }
}
 
Last edited:
  • #10
pbuk
Science Advisor
Gold Member
1,437
423
We cannot get anything exactly right, because we are using flat fabric pieces to approximate a surface that is nowhere flat.
I am talking about the 2d curve of the edge of the fabric, not the 3d shape the piece adopts when stretched.

But we can approximate the shape. The higher the values we take for the two parameters I specified in my first post, the closer the approximation will be. The limit of the angle sum at the pole, as both n and m approach infinity, will be 360 degrees.
Agreed, in the limit you have specified (almost) the right curve.

Naturally the case with four lunes, each of only two segments - the octahedron - is a poor approximation. Nobody would suggest using only four lunes, or only two segments. The purpose of including those drawings was to demonstrate how quickly the approximation improves as we increase the number of segments, and also because it makes it easier to conceptualise the shape of the segments.
I'm afraid four-lune balls are very common as I wrote in #3; here is a picture of one:

jac-products-thud-juggling-ball-180g-colour-red-green-[2]-1481-p.jpg


Source: https://www.jacjuggling.co.uk/jac-products-thud-juggling-ball-180g-1439-p.asp.

These balls are nearly perfect spheres and this is achieved by having the top of the pieces tangent to an angle of exactly 90° and the equator exactly smooth.

In drawing the diagrams I used the following equation for the distance to the lune outline from its centre line:
$$r \cos \theta\sin(\pi/n)$$
where ##\theta## is the elevation of the point above the equatorial plane and n is the number of lunes. That is half the length of an edge of the regular n-gon inscribed in the latitudinal circle at latitude ##\theta##.
I think that is nearly right - only nearly because the elevation you have taken is transformed when the material stretches. I think in order to take that stretch into account you need to use the length of the edge of the curve at that latitude.

It's what we'd get if we made a spiky ball of radial wires going from the centre of a sphere to those points, and covered it with cling wrap that was strong enough not to be pierced by the ends of the wires.
But we haven't got cling film shrinking onto a wire frame, we have got material stretching outwards under pressure.
 
  • #11
36
1
This is really great, thanks so much for sharing your code as well!

I'll give this a try and report back.
 
Last edited:

Related Threads on Drawing Spherical Lunes in 2D

Replies
1
Views
3K
Replies
5
Views
892
  • Last Post
Replies
4
Views
1K
  • Last Post
Replies
4
Views
2K
  • Last Post
Replies
2
Views
1K
Replies
2
Views
2K
Replies
12
Views
2K
Replies
1
Views
3K
Replies
11
Views
991
Replies
3
Views
2K
Top