1 Introduction

The motivation for this research comes from architectural geometry [17], an area that deals with geometric and computational problems related to the realization of geometric complexity in architecture. In particular, the realization of architectural freeform structures is a big challenge. One problem in this context, is the design of support structures that are formed by curved beams along freeform surfaces, realizing façades and roofs. Our work is motivated by a remarkable instance of such structures, developed by Eike Schling and Denis Hitrec at TU Munich (see Fig. 1). These structures are formed by developable strips, which are orthogonal to a minimal surface S and aligned with a grid of asymptotic curves of S. This implies that the asymptotic curves of S are geodesics on the developable strips, and thus, the structure can be built from rectangular planar strips of sheet metal. Asymptotic directions on a minimal surface are orthogonal, and thus, the structures exhibit right node angles at the intersections of strips (which are usually within tolerance to straight line segments).

Fig. 1
figure 1

The INSIDE-OUT pavilion by Schling and Hitrec on the campus of TU Munich. (image: Felix Noe)

We are interested in a generalization of these structures: structures formed by developable strips with a rectangular development, orthogonal to a base surface S, and the node angles should be constant, but not necessarily right. Hence, the base surface S must have a constant angle between asymptotic directions, and therefore, must have negative Gaussian curvature \(K <0\) and a constant ratio \(\kappa _1/\kappa _2\) of principal curvatures.

Another problem in architectural geometry is the coverage of a freeform surface with panels [6]. It is an advantage if multiple curved panels can be built with the same mold. A surface with constant \(\kappa _1/\kappa _2\) has just a one-parameter family of second-order surface elements, and thus, there is the hope that one can find a panelization which uses only a rather small number of molds. Here, also the case \(K>0\) is of interest.

1.1 Previous Work

Despite the simple definition, there is surprisingly little known about surfaces with constant \(\kappa _1/\kappa _2\), except for \(\kappa _1/\kappa _2 = \pm 1\), i.e., the sphere and minimal surfaces.

Another known case is an ideal Mylar balloon (see e.g., [14, 15]) which is obtained by gluing two equally sized discs of flexible, but inextensible, foil along their common border, and blowing it up. This particular surface of revolution has a constant ratio of principal curvatures of \(\kappa _1/\kappa _2 = 2\). Further surfaces of revolution of that sort, with positive and negative ratios of principal curvatures have appeared in other contexts, e.g., in [9, 11].

Surfaces with a relation between the principal curvatures (where the relation is independent of the surface point) are called Weingarten surfaces (Sect. 2.1). A particular subclass, commonly denoted by ‘linear’ Weingarten surfaces, consists of those surfaces with an affine linear relation between the Gauss and mean curvatures. These type of linear Weingarten surfaces have been discretized (see, e.g., [4] and references therein), but note that linearity in the Gauss and mean curvatures does not imply linearity in the principal curvatures. Consequently, the surfaces we are interested in are not linear Weingarten surfaces in that sense.

Surfaces f(uv) with a constant angle between asymptotic lines and with the property that \(\Vert f_u\Vert = \Vert f_v\Vert \), which are called generalized Chebyshev nets, have been investigated in [18, 19, 22]. Stäckel [22] shows that with the restriction \(\Vert f_u\Vert = \Vert f_v\Vert \) surfaces with a constant ratio of principal curvatures are just surfaces of revolution.

In architectural geometry, basic differential geometric and computational aspects of curved support structures formed by developable strips, have been studied by Tang et al. [23].

1.2 Contributions and Overview

Since there is little known about smooth surfaces with a constant ratio of principal curvatures, we first study those in Sect. 2. The focus is on a novel Christoffel-type transformation which generates these surfaces from appropriate spherical curvature-line parametrizations.

In Sect. 3, we present a discretization of that smooth Christoffel-type transformation in the setting of discrete conjugate nets, and characterize those nets which admit this type of transformation. We apply these transformations to spherical principal nets to obtain discretized nets with a constant ratio of principal curvatures in an appropriate sense. We also show that our discrete nets fulfill the characterizing equation for surfaces with a constant ratio of principal curvatures, in terms of a particular discrete curvature theory.

In Sect. 4, we turn to a discretization based on asymptotic nets which fits well into a recently proposed optimization framework for exploring the solution space of underdetermined systems of at-most quadratic constraints [24]. We also show how to handle the available degrees of freedom, or in other words, to generate appropriate input for design. Finally, we provide a few illustrative examples for support structures with a constant node angle.

2 Smooth Surfaces

Before we start to investigate discretizations of surfaces with a constant ratio of principal curvatures, we analyze properties of the corresponding smooth surfaces, some of which we will discretize later.

To make our formulas look symmetric, we introduce two real values \(\alpha , \beta \in {\mathbb {R}}\setminus \{0\}\) such that our characterizing equation becomes

$$\begin{aligned} \frac{\kappa _1}{\kappa _2} = \frac{\beta }{\alpha } \quad \text {or}\quad \alpha \kappa _1 = \beta \kappa _2. \end{aligned}$$
(1)

2.1 Weingarten Surfaces

Surfaces with curvature radii \(r_1 = \kappa _1^{-1}, r_2 = \kappa _2^{-1}\) related by an equation of the form

$$\begin{aligned} W(r_1, r_2) = 0 \end{aligned}$$

are so called Weingarten surfaces. From (1), it follows immediately that surfaces with a constant ratio of principal curvatures are Weingarten surfaces since the characterizing equation in this case would be the linear equation \(W(r_1, r_2) = \beta r_1 - \alpha r_2 = 0\). Any equation for the curvature radii which characterizes Weingarten surfaces can be rewritten in terms of the Gaussian curvature \(K = \kappa _1 \kappa _2\) and mean curvature \(H = \frac{1}{2} (\kappa _1 + \kappa _2)\) since the principal curvatures can be expressed in terms of Gaussian and mean curvature as \(\kappa _1 = H + \sqrt{H^2 - K}\) and \(\kappa _2 = H - \sqrt{H^2 - K}\). Consequently, (1) can be rewritten as

$$\begin{aligned} \alpha (H + \sqrt{H^2 - K}) = \beta (H - \sqrt{H^2 - K}), \end{aligned}$$

and after rearranging and squaring, (1) becomes

$$\begin{aligned} 4 \alpha \beta H^2 - (\alpha + \beta )^2 K = 0, \quad \text {or}\quad \frac{H^2}{K} = \frac{(\alpha + \beta )^2}{4 \alpha \beta } = \text {const}. \end{aligned}$$
(2)

2.2 A Christoffel-Type Transformation

In this section, we would like to study a particular type of transformation of conjugate nets \(f:{\mathbb {R}}^2 \rightarrow {\mathbb {R}}^3\) independently from the theory of surfaces with a constant ratio of principal curvatures. In Sect. 2.3, we will bridge to our main topic and make a connection to the famous Christoffel transformation [5].

First, let us recall what conjugacy means. Two tangent vectors ab in the tangent plane \(T_pf\) are said to be conjugate, if they are orthogonal with respect to the second fundamental form. Consequently, if \(a = a_1 v_1 + a_2 v_2\) and \(b = b_1 v_1 + b_2 v_2\) are expressed as a linear combination of the principal directions \(v_1, v_2\), then conjugacy means \((a_1, a_2) \bigl ( {\begin{matrix} \kappa _1 &{} 0\\ 0 &{} \kappa _2 \end{matrix}} \bigr ) \bigl ( {\begin{matrix} b_1\\ b_2 \end{matrix}} \bigr ) = 0\). The map which maps a tangent at p in the tangent plane \(T_p f\) to its conjugate tangent is an involutive projective automorphism of the line pencil through p, the involution of conjugate lines.

A conjugate net\(f:{\mathbb {R}}^2 \rightarrow {\mathbb {R}}^3\) is then a parametrization of a surface where, at each point, the tangents to the parameter lines are conjugate. This is equivalent to the mixed derivative being orthogonal to the surface normal, i.e., \(f_{u, v} \perp n\).

Let us consider two conjugate nets \(f, f^*:{\mathbb {R}}^2 \rightarrow {\mathbb {R}}^3\) and \(\alpha , \beta \in {\mathbb {R}}\setminus \{0\}\). The two conjugate nets are said to be parallel or related by a Combescure transformation if, at each point, the partial derivatives are parallel, i.e., \(f_u \parallel f^*_u\) and \(f_v \parallel f^*_v\).

As such, a particular case of Combescure transformations is governed by

$$\begin{aligned} f^*_u = \frac{\alpha }{\lambda ^2} \,f_u \quad \text {and}\quad f^*_v = \frac{\beta }{\lambda ^2}\, f_v, \end{aligned}$$
(3)

for some \(\lambda :{\mathbb {R}}^2 \rightarrow {\mathbb {R}}_{>0}\). The existence of \(f^*\) and \(\lambda \) for a given conjugate net f such that the system of PDEs (3) is integrable is equivalent to the existence of \(\lambda \) fulfilling the integrability condition \(f^*_{uv} = f^*_{vu}\). Therefore

$$\begin{aligned} (\alpha - \beta ) f_{uv} = 2 \alpha (\log \lambda )_v f_u - 2 \beta (\log \lambda )_u f_v. \end{aligned}$$
(4)

Note that our assumption of f being a conjugate net would also follow from (4), i.e., from the integrability of (3).

Consequently, assuming that f is additionally an orthogonal net, i.e., \(f_u \perp f_v\) everywhere, implies that f is a curvature-line parametrization. Note that orthogonality would follow automatically if we would assume f to be spherical, because all conjugate nets on the sphere are orthogonal. Therefore, also assuming orthogonality, we obtain from (4)

$$\begin{aligned}&(\alpha - \beta ) \langle f_{uv}, f_u\rangle = 2 \alpha (\log \lambda )_v \langle f_u, f_u\rangle \\&\text {and}\\&(\alpha - \beta ) \langle f_{uv}, f_v\rangle = -2 \beta (\log \lambda )_u \langle f_v, f_v\rangle , \end{aligned}$$

or equivalently, using \((\Vert f_u\Vert ^2)_v = 2 \langle f_{uv}, f_u\rangle \),

$$\begin{aligned} \frac{\alpha - \beta }{4 \alpha } \,(\log \Vert f_u\Vert ^2)_v = (\log \lambda )_v \quad \text {and}\quad \frac{\beta - \alpha }{4 \beta } \,(\log \Vert f_v\Vert ^2)_u = (\log \lambda )_u. \end{aligned}$$

Consequently, by integrating the two equations, we obtain two possibilities for \(\lambda \). Note that as we integrate the first equation by v, we have to add a function which only depends on u. Analogously, integrating the second equation by u implies adding a function only depending on v. For the sake of simplicity of expressions that will follow, we write these functions with constant factors: \(\frac{\beta - \alpha }{2 \alpha \beta }\, g(u)\) and \(\frac{\alpha - \beta }{2 \alpha \beta }\, h(v)\). Now, integration yields

$$\begin{aligned}&\log \lambda = \frac{\alpha - \beta }{4 \alpha }\, \log \Vert f_u\Vert ^2 + \frac{\beta - \alpha }{2 \alpha \beta }\, g(u)\\&\text {and}\\&\log \lambda = \frac{\beta - \alpha }{4 \beta }\, \log \Vert f_v\Vert ^2 + \frac{\alpha - \beta }{2 \alpha \beta }\, h(v), \end{aligned}$$

which, after taking the exponential on both sides, yields

$$\begin{aligned} \lambda = \big ( e^{-g(u)} \Vert f_u\Vert ^\beta \big ) ^{\frac{\alpha - \beta }{2 \alpha \beta }} \quad \text {and}\quad \lambda = \big ( e^{-h(v)} \Vert f_v\Vert ^\alpha \big ) ^{\frac{\beta - \alpha }{2 \alpha \beta }}. \end{aligned}$$
(5)

Finally, we arrive at two explicit expressions for \(\lambda \), which both must be the same as a necessary condition for \(\lambda \) to exist. The following theorem says that this necessary condition is also sufficient.

Theorem 2.1

Let f be a curvature-line net and \(\alpha , \beta \in {\mathbb {R}}\setminus \{0\}\). Then there exists up to translation and scaling, a unique curvature-line net \(f^*\) and a function \(\lambda :{\mathbb {R}}^2 \rightarrow {\mathbb {R}}_{>0}\) such that f and \(f^*\) are related by a Combescure transformation governed by (3) if and only if

$$\begin{aligned} \Vert f_u\Vert ^\beta \cdot \Vert f_v\Vert ^\alpha = e^{g(u) + h(v)} , \end{aligned}$$
(6)

for some functions g(u), h(v), or equivalently

$$\begin{aligned} \partial _u \partial _v \log (\Vert f_u\Vert ^\beta \cdot \Vert f_v\Vert ^\alpha ) = 0. \end{aligned}$$

The transformed net \(f^*\) is then of the same type except that \(\alpha \) and \(\beta \) are replaced by their reciprocals, i.e., its characterizing equation is

$$\begin{aligned} \partial _u \partial _v \log (\Vert f^*_u\Vert ^{\frac{1}{\beta }} \cdot \Vert f^*_v\Vert ^{\frac{1}{\alpha }}) = 0. \end{aligned}$$
(7)

Proof

The considerations above imply that (6) is necessary for the existence of \(f^*\).

On the other hand, if (6) holds we can define \(\lambda \) in either way of the two equal representations (5). Inserting \(\lambda \) into (4) implies that the integrability condition for \(f^*\) is fulfilled.

As for uniqueness (up to translation and scaling) of \(f^*\) for given f, \(\alpha \), and \(\beta \), we first look at its definition, (3). Only a change in \(\lambda \) can elicit a change in \(f^*\), so we have to check how much freedom we have for the choice of \(\lambda \) once we are given f, \(\alpha \), and \(\beta \). Consequently, (5) implies that we have to check the freedom to choose g(u) and h(v). Equation (6) implies that g(u) and h(v) can change in such a way that \(e^{g(u) + h(v)}\) does not change, i.e., adding to g(u) a constant c and at the same time subtracting the same constant c from h(v), so that \(g(u) \rightarrow g(u) + c\) and \(h(v) \rightarrow h(v) - c\). This change makes it so that \(\lambda \) is multiplied by \(e^{-c\frac{\alpha - \beta }{2 \alpha \beta }}\), and therefore, that \(f^*\) is scaled by \(e^{c \frac{\alpha \beta }{\alpha - \beta }}\).

As for (7): for the lengths of the derivatives of \(f^*\), we have

$$\begin{aligned}&\Vert f^*_u\Vert ^{\frac{1}{\beta }} \cdot \Vert f^*_v\Vert ^{\frac{1}{\alpha }} \overset{\small (3)}{=} \biggl \Vert \frac{\alpha }{\lambda ^2}\, f_u\biggr \Vert ^{\frac{1}{\beta }} \cdot \biggl \Vert \frac{\beta }{\lambda ^2} \,f_v\biggr \Vert ^{\frac{1}{\alpha }}\\&\quad \overset{\small (5)}{=} \bigg \Vert \frac{\alpha f_u}{\big ( e^{-g(u)} \Vert f_u\Vert ^\beta \big )^{\frac{\alpha - \beta }{\alpha \beta }}} \bigg \Vert ^{\frac{1}{\beta }} \cdot \bigg \Vert \frac{\beta f_v}{\big ( e^{-h(v)} \Vert f_v\Vert ^\alpha \big )^{\frac{\beta - \alpha }{\alpha \beta }} } \bigg \Vert ^{\frac{1}{\alpha }}\\&\quad = |\alpha |^\frac{1}{\beta } |\beta |^\frac{1}{\alpha } \bigl (e^{g(u) \frac{\alpha - \beta }{\beta } + h(v) \frac{\beta - \alpha }{\alpha }}\bigr )^{\frac{1}{\alpha \beta }} \big ( \Vert f_u\Vert ^\beta \Vert f_v\Vert ^\alpha \big )^{\frac{1}{\alpha \beta }} \overset{\small (6)}{=} |\alpha |^\frac{1}{\beta } |\beta |^\frac{1}{\alpha } e^{\frac{g(u)}{\beta ^2} + \frac{h(v)}{\alpha ^2}}, \end{aligned}$$

wherein the last expression is a product of univariate functions that vanishes after \(\partial _u \partial _v\). \(\square \)

Remark 2.2

In the special case where \(\alpha + \beta = 0\), (6) simplifies to

$$\begin{aligned} \frac{\Vert f_u\Vert }{\Vert f_v\Vert } = e^{\frac{1}{\alpha } (g(u) + h(v))}. \end{aligned}$$

This means that any orthogonal parametrization f, which has that property, is a conformal parametrization in its “wider” definition, i.e. \(f_u \perp f_v\) and \(\log \big (\frac{\Vert f_u\Vert }{\Vert f_v\Vert }\big )_{uv} = 0\). Therefore, in this special case, Theorem 2.1 implies that f is an isothermic net and the special Combescure transformation (3) is the well-known Christoffel transformation [5]. We therefore make the following definition.

Definition 2.3

We call two curvature-line nets f and \(f^*\) related by a Christoffel-type transformation if they are related by (3).

Remark 2.4

Note that, if f fulfills (6), then Theorem 2.1 implies the existence of \(f^{*}\), which itself fulfills (7), implying again by Theorem 2.1 the existence of \(f^{**}\) via

$$\begin{aligned} f^{**}_u = \frac{1}{\alpha \mu ^2}\, f^*_u \quad \text {and}\quad f^{**}_v = \frac{1}{\beta \mu ^2}\, f^*_v, \end{aligned}$$
(8)

for some function \(\mu \). The uniqueness statement of Theorem 2.1 implies that \(f^{**}\) equals f up to scaling and translation since f solves (8) for \( \mu = 1/\lambda \).

Remark 2.5

Note that an appropriate reparametrization \({\tilde{f}}(u, v) = f(\varphi _1(u), \varphi _2(v))\) with \(\varphi _1(u) = \int e^{\frac{-g(u)}{\beta }}\, du\) and \(\varphi _2(v) = \int e^{\frac{-h(v)}{\alpha }}\, dv\) simplifies the general (6) to

$$\begin{aligned} \Vert {\tilde{f}}_u\Vert ^\beta \cdot \Vert {\tilde{f}}_v\Vert ^\alpha = 1. \end{aligned}$$

Remark 2.6

The Christoffel transformation, as well as the Weierstrass representation, generate minimal surfaces from an isothermic parametrization of the unit sphere. The usual input data for the Weierstrass representation is a holomorphic map on the Riemann sphere, which is then also the Gauss map n of the surface. Thus, we could also express the condition that n is the Gauss map of a curvature-line net f, in terms of the Riemann sphere: Denote by \(w:{\mathbb {C}}\rightarrow {\mathbb {C}}\), the stereographic projection of n. Then, f is a net with a constant ratio of principal curvatures if and only if w fulfills

$$\begin{aligned} \partial _u \partial _v \log \frac{|w_u|^\beta |w_v|^\alpha }{(1 + |w|^2)^{\alpha + \beta }} = 0. \end{aligned}$$

This can easily be verified by pushing forward the metric from the sphere onto the plane (getting the metric of the Riemann sphere).

2.3 Surfaces from the Gauss Map

Christoffel [5] constructs minimal surfaces by applying a transformation (which is now called the Christoffel transformation) to an isothermic parametrization of the unit sphere, which is then also the Gauss map of the minimal surface.

The Christoffel-type transformation described in Sect. 2.2 is a generalization of Christoffel’s original transformation, and agrees with the Christoffel transformation in a special case (when \(\alpha + \beta = 0\)).

With the following theorem, we obtain surfaces with a constant ratio of principal curvatures by applying this Christoffel-type transformation (3) to spherical curvature-line nets fulfilling (6).

Theorem 2.7

Let \(\alpha , \beta \in {\mathbb {R}}\setminus \{0\}\), and let \(n:{\mathbb {R}}^2 \rightarrow S^2\) be a spherical curvature-line parametrization with

$$\begin{aligned} \partial _u \partial _v \log (\Vert n_u\Vert ^\beta \cdot \Vert n_v\Vert ^\alpha ) = 0. \end{aligned}$$

Then the net \(f :=n^*\), that we obtain from n by applying the Christoffel-type transformation (3), is a surface with a constant ratio of principal curvatures.

Proof

Rodrigues’ formula for a curvature-line parametrized surface reads

$$\begin{aligned} -\kappa _1 f_u = n_u \quad \text {and}\quad {-\kappa _2} f_v = n_v. \end{aligned}$$

Equation (3), on the other hand, implies

$$\begin{aligned} f_u = \frac{\alpha }{\lambda ^2}\, n_u \quad \text {and}\quad f_v = \frac{\beta }{\lambda ^2}\, n_v, \end{aligned}$$

and therefore, \(\alpha \kappa _1 = \beta \kappa _2\). \(\square \)

Remark 2.8

In relative differential geometry (cf. e.g. [21]), the principal curvatures are not measured with respect to the unit sphere, as their Gauss map, but rather with a different sufficiently-regular surface instead. However, the curvature theory for surfaces in relative differential geometry is defined in such a way that Rodrigues’ formula still holds. This implies that Theorem 2.7 still gives us surfaces with a constant ratio of principal curvatures in the context of relative differential geometry, where n need not be on the unit sphere.

2.4 In the Projective Model of Möbius Geometry

A classical way of studying Möbius geometry in \({\mathbb {R}}^3\cup \{\infty \}\) is by lifting its points and spheres to points of a 4-dimensional real projective space. To describe geometric properties and objects in Möbius geometry, the underlying 5-dimensional vector space \({\mathbb {R}}^{4, 1}\) is equipped with the Minkowski inner product of signature \((++++-)\). An appropriate lifting map has the following form (see e.g. [2]):

$$\begin{aligned} \text {point } p = (p_1, p_2, p_3) \in {\mathbb {R}}^3&\longmapsto \textstyle \big (p_1, p_2, p_3, \frac{\Vert f\Vert ^2 - 1}{2}, \frac{\Vert f\Vert ^2 + 1}{2}\big )\\ \text {point at infinity } \infty&\longmapsto \big (0, 0, 0, \frac{1}{2}, \frac{1}{2}\big )\\ \text {sphere with center }c\in {\mathbb {R}}^3,\text { radius }r&\longmapsto \textstyle \big (c_1, c_2, c_3, \frac{\Vert c\Vert ^2 - r^2 - 1}{2}, \frac{\Vert c\Vert ^2 - r^2 + 1}{2}\big )\\ \text {plane }\langle n, x\rangle = d\text { with normal vector }n \in S^2&\longmapsto (n_1, n_2, n_3, d, d) . \end{aligned}$$

In Proposition 2.9, we observe an interesting behaviour of the cross-ratio of ‘point-model representatives’ of special Möbius-geometry elements related to our surfaces. For that, we need the notion of principal curvature spheres which are the two spheres consisting of points x satisfying the equations

$$\begin{aligned} \biggl \Vert x - \biggl (f + \frac{1}{\kappa _i} \,n\biggr )\biggr \Vert ^2 = \kappa _i^2, \quad i = 1, 2, \end{aligned}$$

where f is the surface and n is the unit normal vector of f. At each point of a surface the point, the tangent plane, and the two curvature spheres belong to the same parabolic sphere pencil, and are thus mapped to four points on a straight line in the projective model. It therefore makes sense to compute their cross-ratio.

Proposition 2.9

Let \({\hat{f}}, {{\hat{\tau }}}, {\hat{s}}_1, {\hat{s}}_2\) be the lifts to the projective model of Möbius geometry of, respectively, the surface point f, the tangent plane \(\tau \), and the two curvature spheres \(s_1, s_2\). Then, at each point of a surface with a constant ratio of principal curvatures, the cross-ratio is constant and equals

$$\begin{aligned} {{\,\mathrm{cr}\,}}({\hat{f}}, {{\hat{\tau }}}, {\hat{s}}_1, {\hat{s}}_2) = \frac{\alpha }{\beta }. \end{aligned}$$

Proof

For the sake of brevity, we write f and n instead of their components within the 5-dimensional vectors of the homogeneous coordinates in the projective model. As such, the lifts of \(f, \tau , s_i\) read

$$\begin{aligned} {\hat{f}}&= \biggl (f, \frac{\Vert f\Vert ^2 - 1}{2}, \frac{\Vert f\Vert ^2 + 1}{2}\biggr ), \quad {{\hat{\tau }}} = (n, \langle n, f\rangle , \langle n, f\rangle ), \\ {\hat{s}}_i&= \biggl (f + \kappa _i^{-1} n, \frac{\Vert f + \kappa _i^{-1} n\Vert ^2 - \kappa _i^{-2} - 1}{2}, \frac{\Vert f + \kappa _i^{-1} n\Vert ^2 - \kappa _i^{-2} + 1}{2}\biggr ). \end{aligned}$$

Consequently, we can express the curvature sphere lifts as a linear combination of the lifts of the point and the tangent plane (which also confirms that these four elements lie on a line in the projective model):

$$\begin{aligned} {\hat{s}}_i = {\hat{f}} + \frac{1}{\kappa _i}\, {{\hat{\tau }}}. \end{aligned}$$

The cross-ratio of four collinear points in homogeneous coordinates a, b, \(\nu _1 a + \nu _2 b\), \(\mu _1 a + \mu _2 b\) is \(\frac{\nu _1}{\nu _2} : \frac{\mu _2}{\mu _1}\). With that definition, we obtain the cross-ratio

$$\begin{aligned} {{\,\mathrm{cr}\,}}({\hat{f}}, {{\hat{\tau }}}, {\hat{s}}_1, {\hat{s}}_2) = {{\,\mathrm{cr}\,}}\biggl ({\hat{f}}, {{\hat{\tau }}}, {\hat{f}} + \frac{1}{\kappa _1}\, {{\hat{\tau }}}, {\hat{f}} + \frac{1}{\kappa _2} \,{\hat{\tau }}\biggr ) = \frac{\kappa _2}{\kappa _1} \overset{\small (1)}{=} \frac{\alpha }{\beta }, \end{aligned}$$

which is what we wanted to show. \(\square \)

Note that, even though we can express the ratio of the principal curvatures in terms of the cross-ratio, it does not imply that the ratio of the principal curvatures is Möbius invariant.

2.5 Pencils of Conjugate Nets

In this section, we primarily show that surfaces with a constant ratio of principal curvatures are characterized by the existence of a particular pencil of conjugate nets. We briefly recalled the notion of conjugate tangents and conjugate nets at the beginning of Sect. 2.2.

Theorem 2.10

Let f denote a net without umbilical and parabolic points. Then the following are equivalent:

  1. (a)

    The net f has a constant ratio of principal curvatures.

  2. (b)

    Let \(\{c_t\}\) be a family of curves which intersect the curvature-lines at a constant angle, and let \(\{d_t\}\) be the family of curves conjugate to \(\{c_t\}\) (which exists; see e.g. [7]). Then, the curves \(\{d_t\}\) also intersect the curvature-lines at a constant angle (Fig. 2, left).

  3. (c)

    There is a pencil of conjugate nets (cf. [13]), such that each net has a constant intersection angle with their parameter lines, and the parameter lines of any two nets also intersect each other at a constant angle.

  4. (d)

    There exist two conjugate nets on the surface, such that, at any two different points, the corresponding all angles between the four tangents of their parameter lines are the same (see Fig. 2, right).

Proof

(a) \(\Rightarrow \) (b)::

Let \(a = a_1 v_1 + a_2 v_2\) be a tangent vector of a curve from \(c_t\) at some point and expressed in the basis of the principal directions \(v_1, v_2\). By assumption, each tangent vector forms a constant angle with the principal directions, which implies \(a_1 : a_2 = \mathrm{const}\). Since, to each tangent line in the tangent plane, there is a unique conjugate tangent with direction \(b = b_1 v_1 + b_2 v_2\), fulfilling \((a_1, a_2) \big ( {\begin{matrix} \kappa _1 &{} 0\\ 0 &{} \kappa _2 \end{matrix}} \big ) \bigl ( {\begin{matrix} b_1\\ b_2 \end{matrix}} \bigr ) = 0\) or equivalently \((a_1, a_2) \big ( {\begin{matrix} \beta &{} 0\\ 0 &{} \alpha \end{matrix}} \big ) \bigl ( {\begin{matrix} b_1\\ b_2 \end{matrix}} \bigr ) = 0\), we also have \(b_1 : b_2 = \mathrm{const}\).

(b) \(\Rightarrow \) (c)::

For each angle \(\varphi \in [0, \pi )\), there is a family of curves \(\{c_t^\varphi \}\) on the surface which intersect one family of principal lines at the given angle \(\varphi \). The pencil we are looking for in (c), is formed by all such families \(\{c_t^\varphi \}\) together with their corresponding families of conjugate curves \(\{d^\varphi _t\}\) (which are given by (b)). The angle \(\varphi \) is the parameter of the pencil. The intersection angles between \(c^\varphi _t\) and \(d^\varphi _t\) can be decomposed as the sum of the angles they form with the principal directions, which are constant by assumption.

(d) is just a special case of (c): take any two conjugate nets of the pencil. Then, each net has a constant intersection angle with their parameter lines, and the parameter lines of any two nets also intersect each other at a constant angle. Consequently, at any two different points, the ‘stars’ consisting of the four tangents to the four parameter lines are congruent to each other.

(d) \(\Rightarrow \) (a)::

The involution of conjugate lines is determined by two pairs of lines and their image lines. Since given the two pairs of conjugate tangents are the same at each point by assumption, so is the involution of conjugate lines. Therefore, the second fundamental forms in the basis of the principal directions are multiples of each other, and consequently, \(\kappa _1 : \kappa _2 = \mathrm{const}\) everywhere. \(\square \)

Fig. 2
figure 2

Left: a family of pairs of conjugate directions along a curvature line on a surface with a constant ratio of principal curvatures. If the intersection angle of one family of directions with the curvature line is constant, then so is the other. Right: there exist two conjugate nets on the surface, such that the angles between the four tangents to the parameter lines is the same at each point

3 Discretization with Conjugate Nets

In this section, we propose a discretization of smooth surfaces with a constant ratio of principal curvatures. Our discretization idea is not to “wish” for a constant ratio of a discretization of the principal curvatures of the mesh (which might be worthwhile studying in a suitable setting). Rather, we develop a discrete analogue of the Christoffel-type transformation (3), for which we show properties similar to those of the smooth case (Sect. 2.2). By doing that, we obtain a generalization of the well-known discrete Christoffel duality (cf. [2, 3]). In Sect. 3.4, we will show that the characterizing (2) for the smooth case also holds for our discretization.

For the entirety of this section, the objects, i.e., the discrete surfaces, are represented by discrete conjugate nets, which are nets with planar quadrilateral faces. Later in Sect. 4, we will consider a discretization in a different setting, namely that of asymptotic nets.

3.1 A Discrete Christoffel-Type Transformation

A discrete conjugate net \({\mathscr {M}}\) is a mesh with \({\mathbb {Z}}^2\)-combinatorics, where each face is a planar quadrilateral in \({\mathbb {R}}^3\). Two conjugate nets \({\mathscr {M}}\) and \({\mathscr {M}}^*\) (with the same combinatorics) are said to be parallel or related by a discrete Combescure transformation, if corresponding edges are parallel. In that case, a transformation of \({\mathscr {M}}\) into \({\mathscr {M}}^*\) is called a discrete Combescure transformation. To study a particular Combescure transformation, we first introduce some notions on quadrilaterals, the basic building block of our meshes.

Let m be the intersection point of the diagonals of a quadrilateral \(f = (f_1, f_2, f_3, f_4)\). Then, the vertices of f can be expressed as

$$\begin{aligned} f_1 = m + a_1 e_1, \quad f_2 = m + a_2 e_2, \quad f_3 = m + a_3 e_1, \quad f_4 = m + a_4 e_2, \end{aligned}$$
(9)

with \(a_i \in {\mathbb {R}}\), and \(e_1 \parallel f_1 - f_3\), \(e_2 \parallel f_2 - f_4\) being unit vectors along the diagonals (see Fig. 3, left).

From now on, we assume that the vertices of the quadrilateral lie on the boundary of their convex hull. This ‘convex hull’ assumption implies positivity of the product

$$\begin{aligned} p :=a_1 a_2 a_3 a_4 \ge 0. \end{aligned}$$
Fig. 3
figure 3

The vertices of the quadrilateral f are expressed with their oriented distance to the intersection point m of their diagonals. The value \(p = a_1 a_2 a_3 a_4\) can be positive or negative depending on whether the vertices lie on the boundary of their convex hull or not. The vertices of circular quadrilaterals (right) always lie on the boundary of their convex hull

We will frequently use the first forward difference operator, which is very commonly denoted by \(\Delta \), i.e., \(\Delta f_i = f_{i + 1} - f_i\).

Proposition 3.1

Let f be a quadrilateral and \(p = a_1 a_2 a_3 a_4\) be as before. Further, let \(\alpha , \beta , \gamma _f \in {\mathbb {R}}\setminus \{0\}\) and \(\sigma \in \{\pm 1\}\). Then there exists a quadrilateral \(f^*\), which is edgewise parallel to f, and which has the following edge vectors (indices taken modulo 4)

$$\begin{aligned} \Delta f^*_i = \gamma _f \cdot \biggl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \frac{\alpha - \beta }{a_{i} a_{i + 1}} \biggr ) \Delta f_i. \end{aligned}$$
(10)

Proof

To show that the vectors \(\Delta f^*_i\) are edges of an actual quadrilateral \(f^*\), we have to show that the four edge vectors add up to zero. For that, we can neglect the common scaling factor \(\gamma _f\).

$$\begin{aligned} \sum _{i = 1}^4 \Delta f^*_i&= \frac{\alpha + \beta }{\sqrt{p}} \sum _{i = 1}^4 \Delta f_i + \sigma (\alpha - \beta ) \sum _{i = 1}^4 \frac{\Delta f_i}{a_{i} a_{i + 1}}\\&\overset{(9)}{=} 0 + \sigma (\alpha - \beta ) \biggl ( \frac{a_2 e_2 - a_1 e_1}{a_1 a_2} + \frac{a_3 e_1 - a_2 e_2}{a_2 a_3} + \cdots + \frac{a_1 e_1 - a_4 e_2}{a_4 a_1} \biggr ), \end{aligned}$$

which after canceling, is easily seen to be a telescoping sum that sums to zero. \(\square \)

Remark 3.2

Observe the similarity of (10) to that of the smooth Christoffel-type transformation (3): the differentials are replaced by the difference, \(\partial _u, \partial _v \leftrightarrow \Delta \), and the ‘second-order terms’ in the denominator \(\lambda ^2 \leftrightarrow a_i a_{i + 1}, \sqrt{a_1 a_2 a_3 a_4}\).

Further, notice that transformation (10) in the special case that \(\alpha + \beta = 0\), assumes the form of the well-known discrete Christoffel transformation for Koenigs nets [3] or at least for one quadrilateral:

$$\begin{aligned} \Delta f^*_i = \frac{1}{a_i a_{i + 1}}\, \Delta f_i. \end{aligned}$$

Recall that also, in the smooth setting, the case \(\alpha + \beta = 0\) characterizes the Christoffel transformation (see Remark 2.2). Thus, the following definition is sensible.

Definition 3.3

We call two discrete conjugate nets \({\mathscr {M}}\) and \({\mathscr {M}}^*\) with the same combinatorics related by a discrete Christoffel-type transformation if all corresponding pairs of faces \((f, f^*)\) are related by (10), wherein we allow for scalings \(\gamma _f\) of each face f.

Fig. 4
figure 4

We construct a sequence of quadrilaterals \(f^*\) to a given quadrilateral f using (10) for different \(\zeta = \beta : \alpha \) (from \(\zeta = 1.5\) to \(\zeta = -1.5\) with a step size of \(-0.5\)). The quadrilaterals are scaled individually. Note that \(f = f^*\) for \(\zeta = 1\)

Note that so far, we have only applied transformation (10) to one single quadrilateral, and it cannot be expected that an entire mesh can be transformed that way. In analogy to the smooth case, where we have an integrability condition (6) for the existence of a transformed surface \(f^*\), we have to expect a discrete integrability condition in our discrete setting as well. We will provide such a condition in Theorem 3.10.

A series of transformed quadrilaterals \(f^*\) from f using (10) for different \(\zeta :=\beta : \alpha \) (from \(\zeta = 1.5\) to \(\zeta = -1.5\) with step size \(-0.5\)) is, up to individual scaling, illustrated by Fig. 4.

Proposition 3.4

The directions \(d_1, d_2\) along the diagonals of \(f^*\) can be computed from the (unit length) directions \(e_1, e_2\) of the diagonals of f in the following way:

$$\begin{aligned} d_1 = \frac{\alpha + \beta }{\sqrt{p}} \,e_1 + \sigma \,\frac{\alpha - \beta }{a_1 a_3} \,e_2 \quad \text {and}\quad d_2 = \frac{\alpha + \beta }{\sqrt{p}} \,e_2 + \sigma \,\frac{\alpha - \beta }{a_2 a_4}\, e_1. \end{aligned}$$
(11)

Proof

To obtain the direction of the diagonal \(d_1 \parallel f^*_3 - f^*_1\), we add two adjacent edge vectors: \(f^*_3 - f^*_2 + f^*_2 - f^*_1 = \Delta f^*_1 + \Delta f^*_2\) which, using (10), reads

$$\begin{aligned} f^*_3 - f^*_1 = \biggl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \frac{\alpha - \beta }{a_{1} a_{2}} \biggr ) (f_2 - f_1) + \biggl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \frac{\alpha - \beta }{a_{2} a_{3}} \biggr ) (f_3 - f_2), \end{aligned}$$

where we neglected the common factor \(\gamma _f\) since we are only interested in the direction. Making use of the notation of (9) we collect the coefficients of \(e_1\) and \(e_2\), and get

$$\begin{aligned} f^*_3 - f^*_1 = \biggl [\frac{\alpha + \beta }{\sqrt{p}}\, (a_3 - a_1)\biggr ] e_1 + \sigma \biggl [\frac{\alpha - \beta }{a_1 a_3} \,(a_3 - a_1)\biggr ] e_2, \end{aligned}$$
(12)

which is \((a_3 - a_1)\) times the claimed direction vector. The direction of the other diagonal is found analogously. \(\square \)

In analogy to Remark 2.4, we will also determine \(f^{**}\) for the discrete case in Proposition 3.7. To that end, let us represent the vertices of \(f^*\) in the same way as f (i.e., in analogy to (9)):

$$\begin{aligned} f^*_1 = m^* + a^*_1 e^*_1, \quad f^*_2 = m^* + a^*_2 e^*_2, \quad f^*_3 = m^* + a^*_3 e^*_1, \quad f^*_4 = m^* + a^*_4 e^*_2, \end{aligned}$$

where \(e^*_1 :=\frac{d_1}{\Vert d_1\Vert }\) and \(e^*_2 :=\frac{d_2}{\Vert d_2\Vert }\), since \(e^*_1 \parallel f^*_1 - f^*_3 \) and \(e^*_2 \parallel f^*_2 - f^*_4 \).

Lemma 3.5

For the oriented distances \(a^*_i\) from \(m^*\) to \(f^*_i\), we get

$$\begin{aligned} a^*_1 = A^*_1 \Vert d_1\Vert , \quad a^*_2 = A^*_2 \Vert d_2\Vert , \quad a^*_3 = A^*_3 \Vert d_1\Vert , \quad a^*_4 = A^*_4 \Vert d_2\Vert , \end{aligned}$$

with

$$\begin{aligned} A^*_i :=\frac{1}{4 \alpha \beta } \biggl [ a_i (\alpha + \beta )^2 + a_{i + 2} (\alpha - \beta )^2 + \sigma \biggl ( \frac{\sqrt{p}}{a_{i + 1}} + \frac{\sqrt{p}}{a_{i + 3}} \biggr ) (\alpha ^2 - \beta ^2) \biggr ]. \end{aligned}$$

Proof

We have

$$\begin{aligned}&\biggl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \,\frac{\alpha - \beta }{a_{1} a_{2}} \biggr ) (a_2 e_2 - a_1 e_1) \overset{\small (10)}{=} \Delta f^*_1 = (m^* + a^*_2 e^*_2) - (m^* + a^*_1 e^*_1)\\&\quad = A^*_2 \Vert d_2\Vert \,\frac{d_2}{\Vert d_2\Vert } - A^*_1 \Vert d_1\Vert \, \frac{d_1}{\Vert d_1\Vert }\\&\quad \overset{\small (11)}{=} A^*_2 \biggl ( \frac{\alpha + \beta }{\sqrt{p}} \,e_2 + \sigma \, \frac{\alpha - \beta }{a_2 a_4}\, e_1 \biggr ) - A^*_1 \biggl ( \frac{\alpha + \beta }{\sqrt{p}}\, e_1 + \sigma \, \frac{\alpha - \beta }{a_1 a_3} \,e_2 \biggr ), \end{aligned}$$

which leads to the system

$$\begin{aligned} \left( \begin{matrix} -\frac{\alpha + \beta }{\sqrt{p}} &{}\quad \sigma \frac{\alpha - \beta }{a_2 a_4}\\ -\sigma \frac{\alpha - \beta }{a_1 a_3} &{}\quad \frac{\alpha + \beta }{\sqrt{p}} \end{matrix} \right) \left( \begin{matrix} A^*_1\\ A^*_2 \end{matrix} \right) = \left( \begin{matrix} -a_1 \bigl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \frac{\alpha - \beta }{a_{1} a_{2}}\bigr )\\ \phantom {-} a_2 \bigl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \frac{\alpha - \beta }{a_{1} a_{2}}\bigr ) \end{matrix} \right) , \end{aligned}$$

whose solution gives us \(A^*_1\) and \(A^*_2\), and analogously, we obtain \(A^*_3\) and \(A^*_4\). \(\square \)

Lemma 3.6

We have the identity

$$\begin{aligned} \frac{A^*_1 A^*_3}{a_1 a_3} = \frac{A^*_2 A^*_4}{a_2 a_4}. \end{aligned}$$

Proof

Using \(p = a_1 a_2 a_3 a_4\) and \(\sigma ^2 = 1\), we compute

$$\begin{aligned} \frac{A^*_1 A^*_3}{a_1 a_3}&= \frac{1}{16 \alpha ^2 \beta ^2}\, \biggl [ (\alpha + \beta )^4 + (\alpha - \beta )^4 + 2 (\alpha ^2 - \beta ^2)^2\\&\quad + \biggl ( \frac{a_1}{a_3} + \frac{a_3}{a_1} + \frac{a_2}{a_4} + \frac{a_4}{a_2} \biggr ) (\alpha ^2 - \beta ^2)^2\\&\quad + 2 \sigma \sqrt{p} \biggl ( \frac{1}{a_1} + \frac{1}{a_3} \biggr ) \biggl ( \frac{1}{a_2} + \frac{1}{a_4} \biggr ) (\alpha ^4 - \beta ^4) \biggr ]. \end{aligned}$$

The right hand side of this equation is symmetric under the exchange \((a_1, a_3) \leftrightarrow (a_2, a_4)\). Consequently, the computation of \(\frac{A^*_2 A^*_4}{a_2 a_4}\) is the same, which is what we wanted to show. \(\square \)

The following proposition is the discrete analogue to Remark 2.4, i.e., we show that after applying the \({}^*\)-transformation twice, we obtain the original quadrilateral up to scaling and translation.

Proposition 3.7

\(f^{**}\) is similar to f, and

$$\begin{aligned} \Delta f^{**}_i = \bigg ( \frac{\frac{1}{\alpha } + \frac{1}{\beta }}{\sqrt{p^*}} + \sigma \frac{\frac{1}{\alpha } - \frac{1}{\beta }}{a^*_i a^*_{i + 1}} \bigg ) \Delta f^*_i, \end{aligned}$$

which corresponds to transformation (10) if we replace \((\alpha , \beta )\) by \(\bigl (\frac{1}{\alpha }, \frac{1}{\beta }\bigr )\).

Proof

From the definition of the \({}^*\)-construction, (10), we immediately get that the edges of f and \(f^{**}\) are parallel. Consequently, f and \(f^{**}\) are similar if and only if the diagonals are parallel too. It is sufficient to show \(f^{**}_3 - f^{**}_1 \parallel f_3 - f_1\) or equivalently \(f^{**}_3 - f^{**}_1 \parallel e_1\). Since we are only interested in the direction of the diagonal and not in its length we just compute its linear span:

$$\begin{aligned}&\textstyle {{\,\mathrm{sp}\,}}{(f^{**}_3 - f^{**}_1)} = {{\,\mathrm{sp}\,}}{d_1^*} \!\! \overset{\phantom {{}^*}\small (11)^*}{=} \!\! {{\,\mathrm{sp}\,}}{ \biggl ( \frac{\frac{1}{\alpha } + \frac{1}{\beta }}{\sqrt{p^*}} \,e^*_1 + \sigma \, \frac{\frac{1}{\alpha } - \frac{1}{\beta }}{a^*_1 a^*_3}\, e^*_2 \biggr ) } \\&\quad = {{\,\mathrm{sp}\,}}{ \biggl ( \frac{\alpha + \beta }{\sqrt{p^*}}\, \frac{d_1}{\Vert d_1\Vert } - \sigma \, \frac{\alpha - \beta }{a_1^* a_3^*}\, \frac{d_2}{\Vert d_2\Vert } \biggr ) }\\&\quad = \textstyle {{\,\mathrm{sp}\,}}{ \biggl ( \frac{\alpha + \beta }{\sqrt{p^*} \Vert d_1\Vert } \biggl ( \frac{\alpha + \beta }{\sqrt{p}}\, e_1 + \sigma \, \frac{\alpha - \beta }{a_1 a_3}\, e_2 \biggr ) - \sigma \, \frac{\alpha - \beta }{a_1^* a_3^* \Vert d_2\Vert } \biggl ( \frac{\alpha + \beta }{\sqrt{p}}\, e_2 + \sigma \,\frac{\alpha - \beta }{a_2 a_4}\, e_1 \biggr ) \biggr ) }\\&\quad = \textstyle {{\,\mathrm{sp}\,}}{ \biggl ( \ldots e_1 + \biggl ( \sigma \, \frac{\alpha ^2 - \beta ^2}{\sqrt{p^*} \Vert d_1\Vert a_1 a_3} - \sigma \, \frac{\alpha ^2 - \beta ^2}{\sqrt{p} \Vert d_2\Vert a^*_1 a_3^*} \biggr ) e_2 \biggr ) }. \end{aligned}$$

Consequently, \(f^{**}_3 - f^{**}_1\) is parallel to \(e_1\) if and only if

$$\begin{aligned} \frac{1}{\sqrt{p^*} \Vert d_1\Vert a_1 a_3} - \frac{1}{\sqrt{p} \Vert d_2\Vert a^*_1 a_3^*} = 0, \end{aligned}$$

which, using Lemma 3.5, is equivalent to

$$\begin{aligned} \frac{\sqrt{ A_1^* \Vert d_1\Vert A_2^* \Vert d_2\Vert A_3^* \Vert d_1\Vert A_4^* \Vert d_2\Vert }\, \Vert d_1\Vert }{\sqrt{a_1 a_2 a_3 a_4}} = \frac{\Vert d_2\Vert \, A_1^* \Vert d_1\Vert A^*_3 \Vert d_1\Vert }{a_1 a_3}, \end{aligned}$$

which in turn, is equivalent to

$$\begin{aligned} \sqrt{\frac{ A_1^* A_2^* A_3^* A_4^* }{a_1 a_2 a_3 a_4}} = \frac{A_1^* A^*_3}{a_1 a_3}. \end{aligned}$$

Now, Lemma 3.6 implies that the last equation is true which concludes the proof. \(\square \)

3.2 Characterization of Nets \({\mathscr {M}}\) Which Allow for Christoffel-Type Transformations

In this section, we discuss the conditions for a net \({\mathscr {M}}\) so that there exists a Christoffel-type transform \({\mathscr {M}}^*\) (see Definition 3.3). We know how to construct a quadrilateral \(f^*\) from a given quadrilateral f via (10), but we do not know if all transformed quadrilaterals will fit together and form a mesh. We allow for different scalings of each individual transformed face \(f^*\), but for example, as we go around applying (10) to the faces around a vertex, we have no guarantee that the transformed faces will close up, and consequently, generate a net.

In the following two sections, we derive a discrete analogue of the smooth integrability condition (6). We describe an algebraic and a geometric characterization of such nets \({\mathscr {M}}\) which allow for a discrete Christoffel-type transformation.

3.2.1 Algebraic Characterization

Fig. 5
figure 5

Left: Four quadrilaterals around a white vertex. The values q are defined via (13) on the illustrated oriented diagonals. Center: Illustration of the geometric condition on \({\mathscr {M}}\) for the existence of a discrete Christoffel-type transform \({\mathscr {M}}^*\) (here for \(\alpha + 2\beta = 0\)): The three lines \((t^a_{42} t^b_{13})\), \((t^c_{24} t^d_{31})\) and \((f^a_4 f^b_3)\) intersect at one point if and only if the Christoffel-type transform \({\mathscr {M}}^*\) (right) exists

In this section, we will characterize meshes \({\mathscr {M}}\) which allow for a discrete Christoffel-type transformation (10). This condition is local, and it is defined on the four faces around a vertex. We call the four faces abcd (see Fig. 5, left). In (9), we denoted by \(a_i\) the oriented distances from the intersection point of the diagonals to the vertices; here, we do the same but for each of the four quadrilaterals, denoting accordingly the distances by \(a_i\), \(b_i\), \(c_i\), \(d_i\).

On each of the oriented diagonals of our oriented nets, we define a real-valued function q. Its value on the oriented diagonal between i and k in the oriented face \(a = (i, j, k, l)\) is (recall \(p = a_1 a_2 a_3 a_4\) and also see Fig. 5, left):

$$\begin{aligned} q_{ikj}^a(\alpha , \beta ) \! :=\! \frac{\sqrt{p} (\alpha \!+\! \beta ) + \sigma a_k a_j (\alpha \!-\! \beta )}{\sqrt{p} (\alpha \!+\! \beta ) + \sigma a_i a_j (\alpha \!-\! \beta )}. \end{aligned}$$
(13)

Consequently, the value of q for the same diagonal, but with opposite orientation, is \( q_{kil}^a(\alpha , \beta ) \!=\! \frac{\sqrt{p} (\alpha \!+\! \beta ) + \sigma a_i a_l (\alpha \!-\! \beta )}{\sqrt{p} (\alpha \!+\! \beta ) + \sigma a_k a_l (\alpha \!-\! \beta )} \). The relation between the two orientations is given by the following lemma.

Lemma 3.8

In every quadrilateral, we have

$$\begin{aligned} q_{ikj}^a(\alpha , \beta ) = \frac{a_k}{a_i}\, q_{kil}^a(\alpha , -\beta ). \end{aligned}$$
(14)

Proof

We start with the right hand side (recall \(\sigma ^2 = 1\))

$$\begin{aligned} \frac{a_k}{a_i}\, q_{kil}^a(\alpha , -\beta )&= \frac{a_k}{a_i} \cdot \frac{\sqrt{p} (\alpha - \beta ) + \sigma a_i a_l (\alpha + \beta )}{\sqrt{p} (\alpha - \beta ) + \sigma a_k a_l (\alpha + \beta )} \cdot \frac{\sqrt{p}}{\sqrt{p}} \cdot \frac{\sigma }{\sigma }\\&= \frac{a_k}{a_i} \cdot \frac{\sigma a_i a_j a_k a_l (\alpha - \beta ) + \sqrt{p} a_i a_l (\alpha + \beta )}{\sigma a_i a_j a_k a_l (\alpha - \beta ) + \sqrt{p} a_k a_l (\alpha + \beta )} = q_{ikj}^a(\alpha , \beta ), \end{aligned}$$

which is what we wanted to show. \(\square \)

Remark 3.9

In the special case of Koenigs nets, the function q simplifies to the discrete multiplicative 1-form \(q_{ik}\)

$$\begin{aligned} q_{ik} :=q_{ikj}^{a}(\alpha , -\alpha ) = \frac{a_k}{a_i} = \frac{1}{q_{kil}^{a}(\alpha , -\alpha )} = \frac{1}{q_{ki}} \end{aligned}$$

as \(\alpha + \beta = 0\) (cf. [2] for the discrete multiplicative 1-form on Koenigs nets). Note that in contrast to Koenigs nets, in our more-general setting, q is not a multiplicative 1-form, i.e., \(q_{ikj}^a(\alpha , \beta ) \ne 1/q_{kil}^a(\alpha , \beta )\).

With the following theorem we show how q can be used to locally characterize nets \({\mathscr {M}}\) which can be transformed into a mesh \({\mathscr {M}}^*\) via the Christoffel-type transformation (10).

Theorem 3.10

There is a discrete Christoffel-type transform \({\mathscr {M}}^*\) of a quadrilateral net \({\mathscr {M}}\) if and only if around each vertex of \({\mathscr {M}}\) the product of the corresponding q’s is 1 (for the notation see also Fig. 5, left):

$$\begin{aligned} q_{421}^a(\alpha , \beta ) \cdot q_{132}^b(\alpha , \beta ) \cdot q_{243}^c(\alpha , \beta ) \cdot q_{314}^d(\alpha , \beta ) = 1, \end{aligned}$$
(15)

or equivalently,

$$\begin{aligned} q_{243}^a(\alpha , \beta ) \cdot q_{314}^b(\alpha , \beta ) \cdot q_{421}^c(\alpha , \beta ) \cdot q_{132}^d(\alpha , \beta ) = \frac{a_4 b_1 c_2 d_3}{a_2 b_3 c_4 d_1}. \end{aligned}$$

Proof

Let us denote by \(k^a_{ij}\), \(k^b_{ij}\), \(k^c_{ij}\), \(k^d_{ij}\) the coefficient of \(\Delta f_i\) in (10) without \(\gamma _f\), i.e., for example

$$\begin{aligned} k^b_{23} = \biggl (\frac{\alpha + \beta }{\sqrt{p}} + \sigma \,\frac{\alpha - \beta }{b_{2} b_{3}} \biggr ), \end{aligned}$$

so that \(\Delta f^*_2 = \gamma _b k^b_{23} \Delta f_2\). Recall that, for Christoffel-type transformations \({\mathscr {M}}\rightarrow {\mathscr {M}}^*\), we allow for scalings \(\gamma _f\) of each face f. Consequently, the four transformed quadrilaterals around a common central vertex fit together in \({\mathscr {M}}^*\) if and only if there exist four scaling factors \(\gamma _a, \gamma _b, \gamma _c, \gamma _d \in {\mathbb {R}}\setminus \{0\}\) such that

$$\begin{aligned} \gamma _a k^a_{23} = \gamma _b k^b_{14}, \quad \gamma _b k^b_{34} = \gamma _c k^c_{12}, \quad \gamma _c k^c_{14} = \gamma _d k^d_{23}, \quad \gamma _d k^d_{12} = \gamma _a k^a_{34}. \end{aligned}$$

The existence of these scaling factors is equivalent to the equation

$$\begin{aligned} 1 = \frac{\gamma _a}{\gamma _b} \cdot \frac{\gamma _b}{\gamma _c} \cdot \frac{\gamma _c}{\gamma _d} \cdot \frac{\gamma _d}{\gamma _a} = \frac{k^b_{14}}{k^a_{23}} \cdot \frac{k^c_{12}}{k^b_{34}} \cdot \frac{k^d_{23}}{k^c_{14}} \cdot \frac{k^a_{34}}{k^d_{12}}. \end{aligned}$$

Rearranging the last term yields

$$\begin{aligned} 1 = \frac{k^a_{34}}{k^a_{23}} \cdot \frac{k^b_{14}}{k^b_{34}} \cdot \frac{k^c_{12}}{k^c_{14}} \cdot \frac{k^d_{23}}{k^d_{12}}. \end{aligned}$$
(16)

Now, for example for ‘a’, we have for these ratios:

$$\begin{aligned} \frac{k^a_{34}}{k^a_{23}} = \frac{\frac{\alpha + \beta }{\sqrt{p}} + \sigma \, \frac{\alpha - \beta }{a_{3} a_{4}}}{\frac{\alpha + \beta }{\sqrt{p}} + \sigma \,\frac{\alpha - \beta }{a_{2} a_{3}}} = \frac{\sqrt{p} (\alpha + \beta ) + \sigma a_1 a_2 (\alpha - \beta )}{\sqrt{p} (\alpha + \beta ) + \sigma a_1 a_4 (\alpha - \beta )} = q_{421}^a(\alpha , \beta ), \end{aligned}$$

where the last equality is gotten from (13). Consequently, using (13) and (16), we get

$$\begin{aligned} 1 = q_{421}^a(\alpha , \beta ) \cdot q_{132}^b(\alpha , \beta ) \cdot q_{243}^c(\alpha , \beta ) \cdot q_{314}^d(\alpha , \beta ), \end{aligned}$$

which implies the equivalence of the constructability of \({\mathscr {M}}^*\) from \({\mathscr {M}}\) and the claimed property of q. The second equation of the theorem follows immediately from (14). \(\square \)

From Proposition 3.7, we know that \(f^{**}\) is similar to f, i.e., the transform \({\mathscr {M}}^{**}\) of the transform \({\mathscr {M}}^*\) is similar to the original \({\mathscr {M}}\). In particular, we obtain that \({\mathscr {M}}^*\) fulfills the same type of compatibility condition as \({\mathscr {M}}\) in Theorem 3.10 except that \((\alpha , \beta )\) is replaced by \((1/\alpha , 1/\beta )\).

Corollary 3.11

Each four quadrilaterals around a vertex in \({\mathscr {M}}^*\) fulfill

$$\begin{aligned} q_{421}^a(\alpha ^{-1}, \beta ^{-1}) \cdot q_{132}^b(\alpha ^{-1}, \beta ^{-1}) \cdot q_{243}^c(\alpha ^{-1}, \beta ^{-1}) \cdot q_{314}^d(\alpha ^{-1}, \beta ^{-1}) = 1. \end{aligned}$$

3.2.2 Geometric Characterization

In analogy to the characterization of discrete Koenigs nets in [3], the algebraic characterization, given by Theorem 3.10, has a similar incidence-geometric interpretation. To see this, consider the quadrilateral \(a = (f^a_1, f^a_2, f^a_3, f^a_4)\) with the value \(q_{ikl}^a\) from (13) defined on the oriented diagonal \(ik = f^a_i - f^a_k\). The affine combination

$$\begin{aligned} t^a_{ik} = \frac{1}{1 - q^a_{ikl}}\, f_i - \frac{q^a_{ikl}}{1 - q^a_{ikl}}\, f_k \end{aligned}$$
(17)

determines a point on the diagonal. We denote again the four faces around a vertex by abcd. For an illustration of the notation, see Fig. 5.

Theorem 3.12

Let \({\mathscr {M}}\) be a planar quadrilateral net. Then the three lines \((t^a_{42} t^b_{13})\), \((t^c_{24} t^d_{31})\) and \((f^a_4 f^b_3)\) intersect in one point if and only if there exists a discrete Christoffel-type transform \({\mathscr {M}}^*\) of \({\mathscr {M}}\) (see Fig. 5, center and right). And the analogous property holds for the three lines \((t^a_{42} t^d_{31})\), \((t^b_{13} t^c_{24})\) and \((f^a_2 f^d_3)\). Note, that \(f^a_2 = f^b_1\), etc.

Proof

A generalization of Ceva’s theorem to a 4-gon [10, Prop. 2.6] states: For a (possibly non-planar) quadrilateral \(B_1, \ldots , B_4\) with points \(A_1, \ldots , A_4\) on its edges, i.e., \(A_i \in (B_i B_{i + 1})\), we have the following equivalence:

figure a

\( (A_1 A_2), (A_3 A_4), (B_1 B_3) \) intersect in one point if and only if

$$\begin{aligned} \prod _{i = 1}^4 \,\frac{A_i - B_i}{A_i - B_{i + 1}} = 1, \end{aligned}$$

where the fractions are ratios of parallel vectors. This theorem immediately implies our theorem as the fractions are exactly the values of q. \(\square \)

3.3 Circular Nets with a Constant Ratio of Principal Curvatures

A circular net is a net where all faces have a circumcircle, meaning that all its vertices lie on a circle. In the previous section, we were considering \({\mathscr {M}}\) as the Gauss image of a net \({\mathscr {M}}^*\) with a constant ratio of principal curvatures. It is therefore a sensible assumption for the net \({\mathscr {M}}\) to be ‘spherical’. One common way of interpreting a net being spherical is that all its vertices lie on a sphere, which then is a circular net (since all faces are planar). Therefore, all such spherical nets, and all their parallel nets, are circular. For these nets, the formulas for the discrete Christoffel-type transformation (10), as well as those for the diagonals, simplify. The reason for this simplification is the “power of a point theorem”, which implies

$$\begin{aligned} a_1 a_3 = a_2 a_4 \end{aligned}$$
(18)

for the values \(a_i\) defined by (9).

Proposition 3.13

Let f be a circular quadrilateral. Then, up to scalings, (10) transforms the edges like

$$\begin{aligned} \Delta f^*_i = \gamma _f \biggl ( (\alpha + \beta ) + \varepsilon \sigma (\alpha - \beta )\, \frac{a_{i + 3}}{a_{i}} \biggr ) \Delta f_i, \end{aligned}$$

whereas the directions of the diagonals transform like

$$\begin{aligned} e_1 \rightarrow d_1 \!=\! (\alpha + \beta ) e_1 + \varepsilon \sigma (\alpha - \beta ) e_2, \ \text {and}\ e_2 \rightarrow d_2 \!=\! (\alpha - \beta ) e_1 + \varepsilon \sigma (\alpha + \beta ) e_2, \end{aligned}$$
(19)

with \(\varepsilon = 1\) if f is self-intersecting and \(\varepsilon = -1\) otherwise (see Fig. 3, right). Note that the transformation of the diagonals does not depend on the \(a_i\)’s.

Proof

For the edges, we multiply the vector (10) by \(\sqrt{p}\) and obtain for the coefficient of \(\sigma (\alpha - \beta )\)

$$\begin{aligned} \frac{\sqrt{p}}{a_{i} a_{i + 1}}&= {{\,\mathrm{sgn}\,}}(a_{i} a_{i + 1})\, \frac{\sqrt{a_1 a_2 a_3 a_4}}{\sqrt{a_{i}^2 a_{i + 1}^2}} = {{\,\mathrm{sgn}\,}}(a_{i} a_{i + 1}) \sqrt{\frac{a_{i + 2} a_{i + 3}}{a_i a_{i + 1}}}\\&\overset{(*)}{=} {{\,\mathrm{sgn}\,}}(a_{i} a_{i + 1}) \sqrt{\frac{a_{i + 3}^2}{a_i^2}} = {{\,\mathrm{sgn}\,}}(a_i^2 a_{i + 1} a_{i + 3}) \frac{a_{i + 3}}{a_i}, \end{aligned}$$

where we use (18) in the form \(a_i a_{i + 2} = a_{i + 1} a_{i + 3}\) at \((*)\). Observe \(\varepsilon = {{\,\mathrm{sgn}\,}}(a_{i + 1} a_{i + 3})\) (cf. Fig. 3 right). As for the diagonals, we multiply the first vector of (11) by \(\sqrt{p}\) and obtain for the coefficient of \(\sigma (\alpha - \beta ) e_2\)

$$\begin{aligned} \frac{\sqrt{p}}{a_1 a_3} = {{\,\mathrm{sgn}\,}}(a_1 a_3)\, \frac{\sqrt{a_1 a_2 a_3 a_4}}{\sqrt{a_1^2 a_3^2}} = {{\,\mathrm{sgn}\,}}(a_1 a_3) \sqrt{\frac{a_2 a_4}{a_1 a_3}} \overset{\small (18)}{=} {{\,\mathrm{sgn}\,}}(a_1 a_3) = \varepsilon , \end{aligned}$$

see also Fig. 3, right. \(\square \)

Remark 3.14

In the case of a circular quadrilateral, \(f^*\) can be easily constructed from f by placing the first edge \(f^*_1 - f^*_2 \parallel f_1 - f_2\) and then drawing the diagonals parallel to the vectors as described by Proposition 3.13, which both form the same angle with \(e_i\) (see Fig. 6, right). Then parallelly translate the remaining edges, and intersect with the existing lines as indicated by Fig. 6, right.

Fig. 6
figure 6

The discrete Christoffel-type transformation in the circular case, for \(\alpha = 2, \beta = 3\). The directions \(d_1, d_2\) of the new diagonals deviate from the old directions \(e_1, e_2\) by the same angle

3.4 Discrete Gaussian and Mean Curvature

In analogy to the smooth setting, we will connect the discrete Christoffel-type transformation to discrete surfaces with a constant ratio of principal curvatures.

As mentioned before, we will obtain discrete surfaces with a constant ratio of principal curvatures not by considering discrete principal curvatures (like e.g. from the ‘discrete Rodrigues’ formula’ \(-\kappa _{ij} (f^*_i - f^*_j) = (f_i - f_j)\) in [1]). Instead, we obtain a discrete version of (2) for nets \({\mathscr {M}}^*\) that are Christoffel-type transforms of nets \({\mathscr {M}}\), which we will consider as the Gauss map of \({\mathscr {M}}^{*}\). It turns out that the discrete Gaussian, and mean, curvature, which are derived from Steiner’s formula for parallel meshes [1], fulfill a discrete analogue of (2), as we will see in the following.

This curvature theory [1] provides a discrete Gaussian-, and a discrete mean-, curvature notion that are defined on the pairs of corresponding faces \((f, f^*)\) of a polyhedral surface \({\mathscr {M}}^*\) with respect to an edgewise parallel surface \({\mathscr {M}}\), the Gauss map. Both meshes, \({\mathscr {M}}^*\) and \({\mathscr {M}}\) must have the same combinatorics.

For a pair of corresponding faces \(f^* = (f^*_1, \ldots , f^*_n) \in {\mathscr {M}}^*\) and \(f = (f_1, \ldots , f_n) \in {\mathscr {M}}\), the curvatures are defined as (cf. [1])

$$\begin{aligned} K_{f, f^*} = \frac{{{\,\mathrm{area}\,}}(f)}{{{\,\mathrm{area}\,}}(f^*)}, \quad H_{f, f^*} = -\frac{{{\,\mathrm{area}\,}}(f^*, f)}{{{\,\mathrm{area}\,}}(f^*)}, \end{aligned}$$

where \({{\,\mathrm{area}\,}}(f^*, f) = \frac{1}{4} \sum _{i = 1}^n [\det (f^*_i, f_{i + 1}, N) + \det (f_i, f^*_{i + 1}, N)]\) is the mixed area of two edgewise parallel polygons and where N is a unit normal vector of the plane containing \(f^*\). Note that \({{\,\mathrm{area}\,}}(f) = {{\,\mathrm{area}\,}}(f, f)\) is the oriented area of the polygon f, and that \({{\,\mathrm{area}\,}}(f^*, f)\) is a symmetric bilinear form on the vector space of parallel n-gons (cf. [1, 16]).

The characterizing property in our discretization is a discretized version of (2). We obtain it by simply replacing the smooth Gaussian, and mean, curvature by their discrete counterparts (Fig. 7):

$$\begin{aligned} 4 \alpha \beta H_{f, f^*}^2 - (\alpha + \beta )^2 K_{f, f^*} = 0. \end{aligned}$$
(20)

Definition 3.15

We call a mesh or net \({\mathscr {M}}^*\) a net with a constant ratio of principal curvatures with respect to its Gauss map \({\mathscr {M}}\) if each corresponding pair of faces \((f, f^*)\) fulfills (20). The ratio is then defined to be \(\alpha : \beta \).

Fig. 7
figure 7

Discrete conjugate surfaces of revolution with a constant ratio of principal curvatures. The faces are planar (even circular) quadrilaterals. From left to right: \(\kappa _1/\kappa _2 = 4, 2, -2, -4\)

Remark 3.16

Note that the discrete curvature theory [1] is defined for general polyhedral meshes (not just with quadrilateral faces). Consequently, Definition 3.15 for discrete surfaces with a constant ratio of principal curvatures can be understood in this generality. However, we will restrict ourselves in the present paper, to the quadrilateral case.

Notice the symmetry of (20): If a pair of edgewise parallel polygons \((f, f^*)\) fulfills (20) then the reversed pair \((f^*, f)\) also fulfills the same equation, with the same \(\alpha \) and \(\beta \). This means that \({\mathscr {M}}\) also is a mesh with a constant ratio of principal curvatures with respect to the “Gauss map” \({\mathscr {M}}^*\). Observing

$$\begin{aligned}&H_{f, \nu f^*} = \frac{1}{\nu }\, H_{f, f^*}, \quad K_{f, \nu f^*} = \frac{1}{\nu ^2}\, K_{f, f^*}, \quad H_{\mu f, f^*} = \mu H_{f, f^*},\\&\quad K_{\mu f, f^*} = \mu ^2 K_{f, f^*}, \end{aligned}$$

we see that, if (20) holds for the pair \((f, f^*)\), then it also holds for the pair \((\nu f^*, \mu f)\), with \(\nu , \mu \in {\mathbb {R}}\setminus \{0\}\). Further, (20) is invariant under independent translations of \(f^*\) and f. Consequently, the property of being a mesh with a constant ratio of principal curvatures, is invariant under similarities of the form \(f^* \mapsto \nu R f^* + a\), with \(\nu \in {\mathbb {R}}\setminus \{0\},\ R \in O(3),\ a \in {\mathbb {R}}^3\), if the Gauss map \({\mathscr {M}}\) is rotated in the same way, i.e., \(f \mapsto R f\).

Moreover, the oriented area and the oriented mixed area are multiplied by \(\det (A)\) as we apply an affine transformation \(x \mapsto Ax + a\) (with \(A \in \mathrm{GL}_3({\mathbb {R}}), a \in {\mathbb {R}}^3\)) to \(f^*\) and f simultaneously. Consequently, we obtain the following proposition.

Proposition 3.17

Let \(F(x) :=A x + a\) with \(A \in \mathrm{GL}_3({\mathbb {R}}), a \in {\mathbb {R}}^3\) and \(\nu \in {\mathbb {R}}\setminus \{0\}\).

  1. (a)

    If \({\mathscr {M}}^*\) is a net with a constant ratio of principal curvatures with respect to its Gauss map \({\mathscr {M}}\), then so is \(\nu F({\mathscr {M}}^*)\) with respect to \(F({\mathscr {M}})\).

  2. (b)

    The property of being the Gauss map of a net with a constant ratio of principal curvatures is affinely invariant.

Furthermore, applying an isometry does not change the oriented area and the oriented mixed area up to sign, which implies that we can do computations with these ‘areas’ in the plane, and omit the normal vector N in the formulas.

The following theorem shows that the construction from Proposition 3.1 yields a pair of edgewise parallel faces \((f, f^*)\) which fulfills (2). It, therefore, provides a transformation of a net \({\mathscr {M}}\) into a discrete surface \({\mathscr {M}}^*\) with a constant ratio of principal curvatures, assuming such a mesh \({\mathscr {M}}^*\) exists. The characterization of meshes \({\mathscr {M}}\) such that \({\mathscr {M}}^*\) is a net with a constant ratio of principal curvatures with respect to \({\mathscr {M}}\), is precisely the same as for the existence of a Christoffel-type transform \({\mathscr {M}}^*\) (Theorems 3.10 and 3.12). This will become clear after the next theorem, which says that both \({\mathscr {M}}^*\)’s are actually the same.

Theorem 3.18

Let \({\mathscr {M}}^*\) be a discrete Christoffel-type transform of \({\mathscr {M}}\). Then, \({\mathscr {M}}^*\) is a mesh with a constant ratio of principal curvatures with respect to \({\mathscr {M}}\).

Proof

We will show (20) for a pair of parallel polygons \((f, f^*)\) related via (10). Its ingredients are \(H_{f, f^*}\) and \(K_{f, f^*}\), which are composed of areas and mixed areas. To simplify the computation, we take advantage of the formula for the mixed area that uses only ‘half’ as many indices in the sum (which can be found in [16]):

$$\begin{aligned} 2 {{\,\mathrm{area}\,}}(f^*, f) = \!\!\!\!\!\! \sum _{i \in \{1, 3, \ldots , n - 1\}} \!\!\!\!\!\! \det (f^*_i, f_{i + 1} - f_{i - 1}). \end{aligned}$$

In our case, \(n = 4\), so it reads

$$\begin{aligned} 2 {{\,\mathrm{area}\,}}(f^*, f) = \det (f^*_1, f_2 - f_4) + \det (f^*_3, f_4 - f_2) = \det (f^*_1 - f^*_3, f_2 - f_4), \end{aligned}$$

and consequently,

$$\begin{aligned} 2 {{\,\mathrm{area}\,}}(f^*) = \det (f^*_1 - f^*_3, f^*_2 - f^*_4), \quad \text {and}\quad 2 {{\,\mathrm{area}\,}}(f) = \det (f_1 - f_3, f_2 - f_4). \end{aligned}$$

Inserting expressions in terms of the basis \(e_1, e_2\), i.e., (9) and (12), yields

$$\begin{aligned} 2 {{\,\mathrm{area}\,}}(f^*, f)&= \det \biggl ( (a_1 - a_3) \biggl ( \frac{\alpha + \beta }{\sqrt{p}}\, e_1 + \sigma \,\frac{\alpha - \beta }{a_1 a_3}\, e_2 \biggr ), a_2 e_2 - a_4 e_2 \biggr )\\&= (a_1 - a_3) (a_2 - a_4)\, \frac{\alpha + \beta }{\sqrt{p}} \det (e_1, e_2), \end{aligned}$$

and recalling \(p = a_1 a_2 a_3 a_4\) and \(\sigma ^2 = 1\),

$$\begin{aligned} 2 {{\,\mathrm{area}\,}}(f^*)&= (a_1 - a_3) (a_2 - a_4) \nonumber \\ {}&\quad \times \det \biggl ( \frac{\alpha + \beta }{\sqrt{p}}\, e_1 + \sigma \, \frac{\alpha - \beta }{a_1 a_3}\, e_2, \frac{\alpha + \beta }{\sqrt{p}}\, e_2 + \sigma \, \frac{\alpha - \beta }{a_1 a_3}\, e_1 \biggr ) \nonumber \\&= (a_1 - a_3) (a_2 - a_4) \biggl ( \frac{(\alpha + \beta )^2}{p} - \frac{\sigma ^2 (\alpha - \beta )^2}{p} \biggr ) \det (e_1, e_2),\nonumber \\&= \frac{4 \alpha \beta }{p}\, (a_1 - a_3) (a_2 - a_4) \det (e_1, e_2), \end{aligned}$$
(21)

and

$$\begin{aligned} 2 {{\,\mathrm{area}\,}}(f) = \det (a_1 e_1 - a_3 e_1, a_2 e_2 - a_4 e_2) = (a_1 - a_3) (a_2 - a_4) \det (e_1, e_2). \end{aligned}$$

Finally, we show our main equation

$$\begin{aligned} 4 \alpha \beta H_{f, f^*}^2 - (\alpha + \beta )^2 K_{f, f^*} = 0 , \end{aligned}$$

which is equivalent to

$$\begin{aligned} 4 \alpha \beta {{\,\mathrm{area}\,}}(f^*, f)^2 - (\alpha + \beta )^2 {{\,\mathrm{area}\,}}(f^*) {{\,\mathrm{area}\,}}(f) = 0, \end{aligned}$$

by simply inserting our just-prepared expressions. \(\square \)

So the discrete Christoffel-type transformation, transforms a spherical net \({\mathscr {M}}\), which fulfills the discrete integrability condition (15) around each face, into a mesh \({\mathscr {M}}^*\) with a constant ratio of principal curvatures (in analogy to Theorem 2.7).

3.5 Special Cases \(\alpha - \beta = 0\), \(\alpha + \beta = 0\), \(\alpha \beta = 0\)

We consider three different special cases where the ratio of the principal curvatures, expressed in \(\alpha \) and \(\beta \), takes on three special values.

\(\underline{\alpha - \beta = 0}\): This case is equivalent to the condition \(H_{f, f^*}^2 - K_{f, f^*} = 0\) and corresponds, for smooth surfaces, to \(\kappa _1 = \kappa _2\), i.e., every point is an umbilic, which is to say that it must be a plane or a sphere. This is reflected in the discrete setting by the trivial transformation \(\Delta f_i \overset{\alpha = \beta }{\longmapsto } \Delta f^*_i = \frac{2 \alpha }{\sqrt{p}} \Delta f_i\) (cf. (10)), which is a similarity. Consequently, if \({\mathscr {M}}\) is a ‘spherical’ mesh, then so is the transformed mesh \({\mathscr {M}}^*\). The corresponding diagonals of \(f^*\) and f are parallel (see (11)).

\(\underline{\alpha + \beta = 0}\): This case is very well studied, and we have considered this case as a special case several times before. It is equivalent to \(H_{f, f^*} = 0\), and the pair \((f, f^*)\) is related by the well-known discrete Koenigs duality [3]. If \({\mathscr {M}}\) is a ‘spherical’ Koenigs net, then the transformed mesh \({\mathscr {M}}^*\), the dual, exists and is a discrete minimal surface. Non-corresponding diagonals are parallel, i.e., \(f^*_3 - f^*_1 \parallel f_4 - f_2\) and \(f^*_4 - f^*_2 \parallel f_3 - f_1\).

\(\underline{\alpha \beta = 0:}\) Even though we have excluded case where \(\alpha \) or \(\beta \) takes the value 0, we can still interpret how (10) transforms a quadrilateral. In this case, each quadrilateral f of \({\mathscr {M}}\) is transformed into a quadrilateral \(f^*\) of \({\mathscr {M}}^*\) with parallel diagonals, since inserting \(\alpha = 0\) (or analogously \(\beta = 0\)) into (11) yields, for the directions of the two diagonals, (recall \(\sigma ^2 = 1\))

$$\begin{aligned}&d_1 = \beta \biggl ( \frac{e_1}{\sqrt{p}} - \sigma \, \frac{e_2}{a_1 a_3} \biggr )\\&\text {and}\\&d_2 = \beta \biggl ( \frac{e_2}{\sqrt{p}} - \sigma \, \frac{e_1}{a_2 a_4} \biggr )= - \frac{\sigma \beta \sqrt{p}}{a_2 a_4} \biggl ( \frac{e_1}{\sqrt{p}} - \sigma \, \frac{e_2}{a_1 a_3} \biggr ), \end{aligned}$$

and thus, parallelity. Planar-quadrilateral nets with that property are called T-nets or Moutard-nets, and play an important role in discrete differential geometry. It turns out that these special T-nets have vanishing oriented area (i.e., \({{\,\mathrm{area}\,}}(f^*) = 0\)), which can easily be verified by inserting \(\alpha \beta = 0\) into (21).

3.6 The Gauss Map as Discrete Cauchy Problem

In this section, we investigate the problem of finding a net \({\mathscr {M}}\) that is a Gauss map of a net \({\mathscr {M}}^*\) with a constant ratio of principal curvatures, but without knowing \({\mathscr {M}}^*\). And in particular, we are interested in how many degrees of freedom we have, or how much data for the appropriate initial value problem we can prescribe. We will have to consider different settings: general and circular nets, as well as positive and negative ratios \(\alpha : \beta \).

Interestingly, it appears that it is easier to show the existence of a solution to the Cauchy problem in the more-restrictive case of circular nets, than for the more general case of non-circular nets. This is due to the fact that our formulas for the transformation simplify, see Proposition 3.13.

Theorem 3.19

Suppose we are given two ‘orthogonally intersecting’ strips of circular quadrilaterals (see Fig. 8, left). Then, these two strips can be extended to a rectangular patch with \({\mathbb {Z}}^2\) combinatorics such that \({\mathscr {M}}\) is the Gauss map of a net \({\mathscr {M}}^*\) with a negative constant ratio of principal curvatures.

Proof

Consider the three faces \(f^b, f^c, f^d\) of \({\mathscr {M}}\) around the vertex where the two given strips meet (see Fig. 8). These faces can always be transformed (via (10) plus appropriate scaling) into three faces \(f^{*b}, f^{*c}, f^{*d}\) of a mesh \({\mathscr {M}}^*\), which we are looking for. What remains to show, is that we can construct the missing face \(f^a\) around the same vertex to fill in the gap in such a way, that a corresponding face \(f^{*a}\) would exist on a potential transformed mesh \({\mathscr {M}}^*\) (i.e., without leaving any gaps or overlaps).

From the three faces \(f^b, f^c, f^d\), we can read off the direction \(e^a_2\) that \(f^a\) would have (see Fig. 9, left), and similarly, from the three faces \(f^{*b}, f^{*c}, f^{*d}\), we can read off the direction \(d^a_2\) of the diagonal that \(f^{*a}\) would have. And since we are in the ‘circular’ case (Proposition (3.13)), the direction \(d^a_2\) has then to be composed of the diagonals of \(f_a\), via (19):

$$\begin{aligned} \rho d^a_2 = (\alpha - \beta ) e^a_1 + \varepsilon \sigma (\alpha + \beta ) e^a_2, \end{aligned}$$

for some \(\rho \in {\mathbb {R}}\). Recall that \(e^a_1, e^a_2\) are unit vectors. So the entire existence question reduces to the question of whether such a vector \(e^a_1\) exists so that the above equation is fulfilled. For that, it is best to look at Fig. 9 (right): the normalized vector \(e^a_1\) exists if the circle centered at the base of \(e^a_2\) with radius \(|\alpha - \beta |\) intersects the line that has direction \(d^a_2\).

Now, the negativity of the ratio of the principal curvatures is important. It implies \(\alpha< 0 < \beta \) or \(\alpha> 0 > \beta \). In both cases, we have \(|\alpha + \beta | \le \big ||\alpha | + |\beta |\big | = |\alpha - \beta |\). Consequently, the aforementioned circle intersects the line that has direction \(d^a_2\), giving us two possibilities to choose for \(e^a_1\). \(\square \)

In the case of non-circular nets, we have even more degrees of freedom in the Cauchy problem considered in Theorem 3.19.

Fig. 8
figure 8

Schematic image of a discrete Cauchy problem: two given ‘orthogonally’ intersecting strips of circular quadrilaterals (left), can be extended to a mesh \({\mathscr {M}}\) fulfilling the integrability condition (15), in the case of \(\alpha \beta < 0\), i.e., \({\mathscr {M}}\) is the Gauss map of a net \({\mathscr {M}}^*\) with a negative constant ratio of principal curvatures

Fig. 9
figure 9

Left two: schematic image showing the addition of a remaining face \(f^a\) around a vertex (left) s.t. the resulting net contains this \(2\times 2\) faces as part of a Gauss map \({\mathscr {M}}\) of a net \({\mathscr {M}}^*\) (right) with a negative constant ratio of principal curvatures. Right: this image illustrates the simple geometric fact that, for given \(d_2, e_2, \alpha , \beta \) with \(\Vert e_2\Vert = 1\), there always exists \(e_1\) with \(\Vert e_1\Vert = 1\) such that \((\alpha - \beta ) e_1 \pm (\alpha + \beta ) e_2 = \rho d_2\) if \(|\alpha - \beta | \ge |\alpha + \beta |\)

4 Discretization with Asymptotic Nets (A-Nets)

In this section, we study a discretization of asymptotic nets on surfaces with a constant ratio of principal curvatures. As asymptotic lines exist only through hyperbolic points, we assume all surfaces here to have negative Gaussian curvature (\(K < 0\)) outside, perhaps, finitely-many points. Therewith, there are two asymptotic lines passing through each point, forming an asymptotic net or A-net. In the case of a constant ratio of principal curvatures, these asymptotic lines intersect each other at a constant angle \(\varphi = 2 \arctan \sqrt{- \kappa _1/\kappa _2} \overset{\small (1)}{=} 2 \arctan \sqrt{- \beta /\alpha }\). Our goal is therefore to discretize a smooth A-net with constant intersection angles between its parameter lines.

First, we will fix some notation, wherein the difference with Sect. 3 is that the characterization is based on the vertices instead of the faces. We consider nets in \({\mathbb {R}}^3\) with \({\mathbb {Z}}^2\)-combinatorics, i.e., of the form \(f :{\mathbb {Z}}^2 \rightarrow {\mathbb {R}}^3\). Since we focus on local properties of nets, we will omit, where possible, the parameter values \(u \in {\mathbb {Z}}^2\), and use the common abbreviations: \(f = f(u_1, u_2)\), \(f_1 = f(u_1 + 1, u_2)\), \(f_2 = f(u_1, u_2 + 1)\), \(f_{12} = f(u_1 + 1, u_2 + 1)\), \(f_{\bar{1}} = f(u_1 - 1, u_2)\), etc. Along with that, for each of \(j \in \{1, \bar{1}, 2, \bar{2}\}\), the edge vector \((f_{j} - f)\) will be denoted by \(\Delta _{j} f\). The following discretization of A-nets appears several times in discrete differential geometry (cf. [2, 12, 20]).

Definition 4.1

A discrete asymptotic net or discrete A-net is a map \(f :{\mathbb {Z}}^2 \rightarrow {\mathbb {R}}^3\), wherein each vertex star is planar, i.e., the five points \(f, f_1, f_2, f_{\bar{1}}, f_{\bar{2}}\) lie in a plane, as depicted in Fig. 10, left.

This definition is formulated in such a way that the discrete parameter lines \(\{f (k, u_{2})\}_{k \in {\mathbb {Z}}}\), and \(\{f (u_{1}, k)\}_{k \in {\mathbb {Z}}}\), are discrete asymptotic lines (cf. [2, 20]).

Fig. 10
figure 10

Left: labelling of a vertex’s one-ring neighbors. Right: labelling of the angles around a regular vertex

4.1 Formulation

Here we will formulate the conditions on a net \(f :{\mathbb {Z}}^{2} \rightarrow {\mathbb {R}}^{3}\) so that it is a discrete A-net emulating a surface that has a constant ratio of principal curvatures.

Let \(0 \le \theta _{jk} < \pi \) be the angle between the edges \(\Delta _{j} f\) and \(\Delta _{k} f\), as shown in Fig. 10, right. Consider now the regular interior vertices f of the net. Recall that a constant ratio of principal curvatures is equivalent to the asymptotic lines having a constant angle \(\varphi = 2 \arctan \sqrt{- \kappa _1/\kappa _2}\) between them. We discretize this by requiring that the sum of opposite angles at each vertex star is either \(2 \varphi \) or \(2 (\pi - \varphi )\). In particular, we require that the following condition on the averages of the angles holds:

$$\begin{aligned} {\begin{array}{ccc} \theta _{12} + \theta _{\bar{1} \bar{2}} = 2 \varphi \qquad &{}\text {and}&{} \qquad \theta _{2 \bar{1}} + \theta _{\bar{2} 1} = 2 (\pi - \varphi )\\ &{}\text {or}&{}\\ \theta _{12} + \theta _{\bar{1} \bar{2}} = 2 (\pi -\varphi ) \qquad &{} \text {and}&{} \quad \theta _{2 \bar{1}} + \theta _{\bar{2} 1} = 2 \varphi , \end{array}} \end{aligned}$$

since the vertex star is necessarily planar, wherefore the angles sum to \(2 \pi \). In order to consolidate this or-statement into a single constraint at each such vertex star, we use the periodicity of cosine to obtain

$$\begin{aligned} \cos (\theta _{12} + \theta _{\bar{1} \bar{2}}) = \cos 2 \varphi = \cos 2 (\pi - \varphi ) = \cos (\theta _{2 \bar{1}} + \theta _{\bar{2} 1}) , \end{aligned}$$
(22)

which is to say that the cosines of the sums of opposite angles are equal, having a value of \(\cos 2 \varphi \).

A special case of our discretization turns up as the reciprocal parallel net of a circular net in [12]. There, discrete minimal surfaces appear as A-nets with an opposite angle sum of \(\pi \), as expected for minimal surfaces.

Remark 4.2

Although consolidated, there is still an ambiguity in this when it comes to optimization: either average could be optimized to the target of \(\phi \), but there is no guarantee that adjacent vertex stars are consistent. Without that consistency, the mesh loses cohesiveness, as shown by the comparison in Fig. 11. As a result, care should be taken that this consistency is maintained so that the result does not have degenerate patches.

Fig. 11
figure 11

The marked angles are those that attain the target angle \(\phi \). The images to the left depict an inconsistency overall in the arrangement of the angles that attain \(\phi \), while the ones to the right depict consistency

4.2 Formulation as Zeros of At-Most-Quadratic Functions

The chosen method for optimization was taken from Tang et al. [24], which requires that the constraints are at-most-quadratic. To ensure that the constraints here are at-most-quadratic and that there are no degenerate solutions, auxiliary variables are used. In this section, we will outline such constraints for A-nets that meet the angle condition, (22).

For the net to be an A-net, it must, by definition, have planar vertex stars. To facilitate this, a vertex normal \(n_{f}\) is used, so that the planarity at f can be written as

$$\begin{aligned} n_{f} \cdot \Delta _{j} f = 0 , \end{aligned}$$
(23)

for each of \(j \in \{1, \bar{1}, 2, \bar{2}\}\). For the constraint of planar vertex stars, (23), it must be that \(n_{f}\) is non-zero; to ensure this, we assert that \(n_{f}\) is a unit vector. For the quadratic expression of the angle condition (22), as in (25) below, we introduce unit vectors \(F_j\) that represent the direction of the edges outgoing from f. This turns (23) into the following group of equations: for each of \(j \in \{1, \bar{1}, 2, \bar{2}\}\),

$$\begin{aligned} \begin{aligned} n_{f} \cdot n_{f}&= 1\\ F_{j} \cdot F_{j}&= 1\\ \Delta _{j} f \cdot \Delta _{j} f&= l_{\Delta _{j} f}^{2}&\text {auxiliary variable }l_{\Delta _{j} f}\text { for the edge length} \\ l_{\Delta _{j} f} F_{j}&= \Delta _{j} f&\text {to connect the unit edge with the edge}\\ l_{\Delta _{j} f}&= d_{\Delta _{j} f}^{2}&\text {auxiliary variable }d_{\Delta _{j} f}\text { to ensure }l_{\Delta _{j} f} \ge 0\\ n_{f} \cdot F_{j}&= 0 . \end{aligned} \end{aligned}$$
(24)

To translate (22) for regular interior vertices so that they are at-most-quadratic, we first use the angle-sum identity for the cosine,

$$\begin{aligned} \cos (\alpha + \beta ) = \cos \alpha \cos \beta - \sin \alpha \sin \beta . \end{aligned}$$

Therewith, (22) turns into the following: using the auxiliary variables \(c_{jk}\) and \(s_{jk}\) to stand in for \(\cos \theta _{jk}\) and \(\sin \theta _{jk}\), respectively,

$$\begin{aligned} \begin{aligned}&c_{jk} = F_{j} \cdot F_{k},\\&s_{jk}^2 = 1 - c_{jk}^{2},\\&c_{12} c_{\bar{1} \bar{2}} - s_{12} s_{\bar{1} \bar{2}} = \cos 2 \varphi ,\\&c_{2 \bar{1}} c_{\bar{2} 1} - s_{2 \bar{1}} s_{\bar{2} 1} = \cos 2 \varphi , \end{aligned} \end{aligned}$$
(25)

for \(jk \in \{12, \bar{1} \bar{2}, 2 \bar{1}, \bar{2} 1\}\). Consequently, we obtain the following proposition.

Proposition 4.3

The zeros of the system of quadratic equations from (24) and (25) are in one-to-one correspondence with discrete A-nets that have a constant ratio of principal curvatures.

4.3 Method of Optimization, Propagating These A-Nets from a Strip

In this section, we will give an overview of how we obtained examples of these A-nets that have a constant ratio of principle curvatures. For the optimization, the methodology from Tang et al. [24] was used with the at-most-quadratic formulation discussed in the previous section. And to facilitate the formation of these surfaces, we have devised a means to propagate these surfaces from a strip of quads, as detailed below. Together, the optimization and the propagation are used in repeated succession, until a surface of desirable size, and accuracy, is achieved.

Given a smooth curve \(\gamma :[t_{0}, t_{N}] \rightarrow {\mathbb {R}}^{3}\), that is parametrized by arc length, with a partition \(t_{0}< t_{1}< \cdots < t_{N}\), and an initial orthonormal frame at \(t_{0}\), we devised a method for generating quads along \(\gamma \), with the aim that it be reasonably close to a strip with planar vertex star and fulfilling the angle condition. To do this, first, frames at all points \(t_{j}\) of the partition are constructed in a rotation-minimizing way, using the method of approximation outlined in [8, §II.B]; this is done so as to obtain a strip more-stably defined along the curve, that twists minimally around the curve. Here, the initial frame comprises the unit tangent vector \(\gamma \,'(t_{0})\), a chosen unit vector \(n (t_{0})\) orthogonal to \(\gamma \,'(t_{0})\), and the mutually-orthogonal vector \(n (t_{0}) \times \gamma \,'(t_{0})\), as depicted in Fig. 12, left. Then, the frame at \(t_{j+1}\) is gotten from the one at \(t_{j}\) by rotating it about the vector \(\gamma \,'(t_{j}) \times \gamma \,'(t_{j+1})\) by the angle \(\arccos \gamma \,'(t_{j}) \cdot \gamma \,'(t_{j+1})\); let this rotation be denoted by \(T_{j}\), so that \(T_{j} \gamma \,'(t_{j}) = \gamma \,'(t_{j+1})\), and so on. Thusly, a frame is obtained at each point \(t_{j}\), for \(0 \le j \le N\).

With these frames, vertices are then added, allowing for the addition of faces between each of the pairs of points \(\gamma (t_{j})\) and \(\gamma (t_{j+1})\). To facilitate this, through each \(\gamma (t_{j})\), there is a plane \(P_{t_{j}}\) normal to \(n (t_{j})\), which is spanned by \(\big \{\gamma \,'(t_{j}),\ n (t_{j}) \times \gamma \,'(t_{j})\big \}\). Let \(0< \varphi < \frac{\pi }{2}\) to be the target angle. Using this angle, let \(\ell _{t_{j}}^{-}\) be the line through \(\gamma (t_{j})\) in \(P_{t_{j}}\) that forms an angle of \(\frac{\varphi }{2}\) with \(\gamma \,'(t_{j})\), and let \(\ell _{t_{j+1}}^{+}\) be the line through \(\gamma (t_{j+1})\) in \(P_{t_{j+1}}\) that forms an angle of \(- \frac{\varphi }{2}\) with \(- \gamma \,'(t_{j+1})\); see Fig. 12, right, for an illustration.

Fig. 12
figure 12

Left: a given smooth curve with a partition \(t_{0}< t_{1}< \cdots < t_{N}\), and an initial orthonormal frame at \(t_{0}\). Right: planes at both \(\gamma (t_{j})\) and \(\gamma (t_{j+1})\), which are perpendicular to \(n (t_{j})\), and \(n (t_{j+1})\), respectively, and which contain the lines \(\ell _{t_{j}}^{-}\), and \(\ell _{t_{j+1}}^{+}\), respectively

Then, we rotate the line \(\ell _{t_{j+1}}^{+}\) at \(t_{j+1}\) by the rotation \(T_{j}\), to obtain the line

at \(t_{j+1}\), which lies in the plane

parallel to \(P_{t_{j}}\) by the construction of \(T_{j}\). Therewith, a new “upper” vertex \(f^{u}\) is added as the point which is closest to both \(\ell _{t_{j}}^{-}\) and . This process is then repeated, using the lines \(\ell _{t_{j}}^{+}\) and , to obtain a new “lower” vertex \(f^{l}\) as the point which is closest to them both. The new face is then given by the vertices \(\big \{\gamma (t_{j}),\ f^{l},\ \gamma (t_{j+1}),\ f^{u}\big \}\); see Fig. 13, left, for an illustration. In this way, we obtain a strip that is a reasonable initial guess, which can then be optimized and propagated.

Fig. 13
figure 13

Left: face added along the curve. Right: propagation of faces

In order to obtain more of a surface from this, a method of propagating such strips by adding faces was developed, with the aim optimizing the result for the constraints of A-nets of this kind. Let us consider two successive quadrilaterals of the strip: \(f, f_1, f_{1\bar{2}}, f_{\bar{2}}\) and \(f, f_2, f_{\bar{1} 2}, f_{\bar{1}}\), see Fig. 13, right. We will now complete one of the two adjacent faces by constructing a reasonable guess for \(f_{12}\).

Two suggestions for the new vertex \(f_{12}\) to complete the new face, are obtained by guessing new edge vectors \(g_{1}\) and \(g_{2}\), which are to “evenly” extend the vertex star, namely, \(g_{1} = 2 (f_{1} - f) - (f_{1 \bar{2}} - f_{{\bar{2}}})\) and \(g_{2} = 2 (f_{2} - f) - (f_{\bar{1} 2} - f_{{\bar{1}}})\). Lastly, \(f_{12}\) is taken to be the average of \(f_1 + g_{2}\) and \(f_{2} + g_{1}\), to complete the face \(\{f, f_1, f_{12}, f_2\}\). With these new faces added, we then optimize; alternating between propagation and optimization is then repeated, as wanted.

4.4 Support Structure Generation

As mentioned in the introduction, to surfaces with a negative constant ratio of principal curvatures, we can orthogonally attach strips along the asymptotic lines that have straight development. In an architectural context, these strips can then be used as curved support structures. In this section, we will describe how these support structures are generated, cf. [23]. It is shown there that, along each polyline, there is a discrete developable surface, with straight development. In order to construct them, it is sufficient to find their rulings at each vertex, i.e., the folds along them. To that end, we calculate these rulings for each of the two polylines passing through each vertex, which is sufficiently far from the edge of the mesh.

Our notation, shown in Figs. 10 and 14, is the following: there is the unit vector t(f) at the vertex f, that is perpendicular to the ruled surface, computed as

$$\begin{aligned} t (f) :=\frac{(f_{1} - f) \times n (f)}{|(f_{1} - f) \times n (f)|} , \end{aligned}$$

where n(f) is the vertex normal at f; this vector is normal to the plane spanned by the tangent vector \((f_{1} - f)\) and the normal n(f). Therewith, the ruling vector r(f) at the vertex f, is computed by

$$\begin{aligned} r (f) :=s \cdot \big (t (f_{\bar{1}}) \times (t (f) + t (f_{1}))\big ) , \end{aligned}$$

where s is a sign determined as to keep r(f) on a consistent side of the surface; this vector measures the rotational change of the tangent vector \(t (f_{\bar{1}})\) with respect to the average \((t (f) + t (f_{1}))\). As one can see from using neighboring vertices, these computations require that the vertex f is sufficiently far from the boundary of the mesh, for the support structure to be defined. To obtain the support structure, these ruling vectors are used along with the vertices of the original mesh, to extrude the discrete developable surfaces of the support structure.

Fig. 14
figure 14

Left: one of the developables through f, including the vertex normals, tangent vectors, and ruling vectors. Right: both developables through f, including the vertex normal and both ruling vectors at f; note that the intersection curve of the two strips does not necessarily contain the normal, nor does it even need to be a line, and that the rulings of the strips are not the same in general

Remark 4.4

Note that as the polylines become straighter, the rulings become closer to being tangent to the surface, making strips appear narrower there. To alleviate this, it is possible to add in some of the surface normal to the rulings there, but this then distorts the strip’s straight development in the plane. Refer to the Figs. 15 and 16 in the following section for examples of this.

Fig. 15
figure 15

An A-net with an angle of \(\pi / 3\) propagated, and optimized, in succession from a strip, shown in red, and its accompanying support structure on a smaller patch. The strip was fixed with soft constaints, so that it could move slightly to accommodate the optimization. Note the narrowing of the strips in the support structure towards the bottom, as an example of Remark 4.4

Fig. 16
figure 16

Three examples of A-nets with an angle of \(\pi / 3\), where the top right is the support structure of the top left, and the top middle shows the development of the red strips in the plane. The strips are nearly-rectangular, in part because some of the surface normal was added to ensure the strips maintain more of an even width, as an example of Remark 4.4

Fig. 17
figure 17

Left: as in Fig. 11, the angles attaining the target average are marked; the red diagonals show this in another way. Middle: shows what happens around a vertex of valence 5, where the inconsistency is circled in blue. Right: shows what happens in general: there is a consistent choice around such a vertex if and only if its valence is even, conveyed by the diagonals alternating along the boundary as shown, where those diagonals correspond to the bold ones in the middle image

4.5 Examples

This section will serve as an overview of how we obtained examples. The most readily-available examples are surfaces of revolution, which can be obtained from an integral [11, §3.27]. Other examples were obtained in a more-involved way: the main obstruction to the optimization comes from the ambiguity at each vertex star of which angle goes to the target angle from the angle condition, as discussed in Remark 4.2.

Following the method in Sect. 4.2, we picked a curve and starting vector, to generate a strip of quads. Then, using the method in Sect. 4.3, we propagated faces along that strip, and optimized the result, fixing the starting strip with soft constraints; this was done in succession until the desired size was reached. Steps from this process are shown in Fig. 15.

Another means of generating examples, which we used, is starting off with quad meshes of minimal surfaces. To do this, we first constructed meshes with a chosen topology, and optimized them for an angle of \(\frac{\pi }{2}\), so that it approaches a minimal surface; then, this mesh was optimized for another angle. The step of optimizing for a minimal surface first reduces the amount of “bias” at each vertex for the angles to optimize in a particular direction. In certain cases, to facilitate the “alignment” of the angles across the mesh in a consistent manner, soft constraints, which encouraged a consistent bias across the mesh, were used in the starting iterations of the optimization. Some results of this are shown in Fig. 16.

Remark 4.5

Note that a quad mesh of arbitrary combinatorics may not be compatible with the angle constraint consistently across the mesh; this is similar to what was discussed earlier in this section and in Remark 4.2, but there the fault lied in a consistent choice, rather than a choice existing that is consistent. In particular, the mesh should not include vertices of odd valence: see Fig. 17.