The geometric solution to
the problem of constructing a second-order surface (hereinafter referred to as
a quadric) using its nine points has been of interest due to the analogy of
this problem with constructing a conic using five points. The construction of a
conic based on the Pascal theorem is a well-known problem in geometry courses
[1]. A similar quadric problem in its “geometrically accurate” formulation
(only using a compass and a ruler) has not been solved, although due attention
has been given to it historically [2]. The problem is still being discussed,
despite the belief that there is no “geometrically accurate” solution to the
problem [3, 4, 5].
Since the 19th century,
there have been algorithms [4] in which going beyond the restrictions of
“geometrical accuracy” has allowed the authors to propose a solution to the
quadric problem. [4] considered several similar algorithms. Our paper deals
with one of them – the Engel algorithm (Engel J. H.) [6]. The content of the
algorithm is given in [4]. We will consider the distinct features of the
experimental implementation of the algorithm. The algorithm allows us to
construct a conic or a section of the desired quadric, using nine points. The
center, axes, and surface of the quadric are determined based on this conic.
The use of the algorithm
provides for the construction of conics by five points, finding the
intersection points of the conics with a straight line and a plane, as well as
mutual intersection of the conics. Since such constructions were impossible
until recently, the algorithm showed only the
fundamental possibility of
constructing a quadric.
The practical
implementation of the Engel algorithm has become possible in modern CAD using
programming tools and 3d computer modeling. In particular, we developed and
used such tools when studying quadrics [7–9]. Accumulated experience has
allowed us to turn to the experimental implementation of the quadric problem
and supplement the works [3–5].
The main problem which
arises in the experimental implementation of the Engel algorithm is the
appearance of imaginary points during solving when straight lines intersect
with conics. It is recommended that imaginary points be substituted with their
real analogs [3–5, 10]. However these recommendations should be verified
experimentally. Even if such a substitution is possible, it complicates the
constructions significantly.
Our preliminary
experiments have shown that there are always real solutions to the quadric
problem without the formation of imaginary points. Our task is to determine the
region and conditions for the implementation of real solutions.
The purpose of the work is
as follows: 1 – to implement experimentally the Engel algorithm for
constructing a quadric defined by nine points; 2 – to determine and explore the
region of real solutions to the quadric problem; 3 – to bring the solution to a
visual image of the surface.
The experiments were
carried out in the AutoCAD suite. The AutoLisp language was used for programming.
The construction of a
quadric according to the Engel algorithm provides for multiple repetitions of
homogeneous operations. To this end, we developed several special programs. The
algorithm cannot be based only on the main capabilities of the AutoCAD suite
and AutoLisp programs. The specifications of our special programs are shown
below.
Program 1.
The construction of a conic by five points [11] implements the “exit to space”
method [12, 13]. Using Pascal’s hexagon, we find tangents at two out of five
points (points
p1, p2) according to the algorithm [1, p. 168]. We
construct a circular cone taking the tangents for contour straight line
generators. We select one of the remaining points, for example, point
p3,
and erect the perpendicular to the plane of five points until it intersects
with the cone at point
p3*. We construct a section of the cone by the
plane
p1, p2, p3*
and then orthogonally project the section onto the
plane of the defined five points. The projection is the desired conic. As compared
to the original version [11], the program is fitted with algorithms for the
optimal selection of the points
p1, p2, p3
regulating the length of the
resulting conic branches. The conic type also determines its metric parameters
– axes, center, focuses, asymptotes of hyperbolas, parabola directrix. The
error of constructing a conic by this program is at the level of 10-5
…10-8
[14].
Program
2.
The intersection of a conic with a straight-line
segment or a plane. We divide the conic branches into 500...1000 segments. We
find an intersecting segment, additionally divide it into 20...50 parts, and
specify the intersection points until we achieve the required accuracy.
Program 3
determines the intersection points of two conics. We divide each conic branch into
500…1000 segments. We find intersecting pairs of segments. Then we interrupt
the calculation if the number of such pairs has reached four and additionally
divide the segments of the found pair into 20...50 parts and specify the
intersection points.
Program 4
constructs auxiliary conics
c1, c2(see Section 4 below). We find their
intersection with the straight lines
m, n. We construct the conic
ñ3
and determine the parameter
Δ,
on
which the problem solution accuracy depends.
Program
5.
The construction of fields defining the
boundaries of the real or imaginary solution (see Fig. 3,
a), with color
indexing depending on the types of the resulting conics
c1, c2
and the
intersection options of these conics with straight lines
m, n.
Program
6.
Constructing the series of values of the
parameter
Δ
and determining the parameters
kF*, kG*, at which
Δ
= 0, i.e., the accurate
solution is achieved.
Program 7
determines the axis of the quadric in the iterative movement cycle of the
cutting plane according to the algorithm. This brings it to a position when the
perpendicular dropped from the center of the quadric to the plane coincides
with the segment connecting the centers of the quadric and the conic of the
section.
Programs 2–7
implement iterative construction cycles until the specified and controlled
error is achieved. The permissible error was taken at the level of 10-3
of
the determined value.
In addition to the above
programs, we used the library of geometric functions of the AutoLisp suite, for
example, the construction of the intersection point of straight lines, as well
as the functions of cyclic, algebraic, and logical calculations.
We used the method
proposed in [3–5] which compares the obtained experimental objects with
predetermined control objects. The control objects include a quadric, a section,
a conic, a center point, and quadric axes. One- and two-sheet hyperboloids, a
hyperbolic paraboloid, and an ellipsoid were considered as control quadrics. In
this paper, we give examples of two control quadrics: a one-sheet hyperboloid;
and a hyperbolic paraboloid.
Nine points were defined
on the surface of the control quadric. Such point definition automatically
takes into account the restrictions [3–6] to their relative position.
The accuracy (or error) of
the experiments, which depends on the errors at all construction stages, was
estimated by the deviation of the constructed distinguished points of objects
from their control values. For example, this could be the distance between the
vertices of the experimental and control conics, by the angle between the found
and control axis of the quadric, inter alia.
In our paper, the quadric
is constructed in the following sequence:
•
According to the Engel algorithm, construct a
conic for the defined nine points as a section of the desired quadric by the
plane defined by points 1, 2, 9;
•
Construct two more conics using the first conic
and two randomly chosen triples of points from the remaining six defined
points. Consider the constructed three conics as a geometric determinant of the
desired quadric;
•
Find the center of the quadric by the determinant;
•
Find the principal axes of the quadric by its
determinant and center;
•
Using the determinant and axes of the quadric,
construct its frame and surface.
Let us therefore construct
the control objects: a quadric and nine points on its surface. We arbitrarily
number (name) the points. We construct the control conic as a section of the
control quadric by a plane defined by points 1, 2, 9 (Fig. 1,
a). We
selected these points according to the Engel algorithm. We hide (“freeze”) the
control objects. There are nine points left. In our experiment, the control
quadric is a one-sheet elliptic hyperboloid, the control conic is the ellipse
e,
and the selected points have the coordinates given in Table 1.
Table 1. Coordinates of points
for the one-sheet hyperboloid
Point #
|
X
|
Y
|
Z
|
1
|
10.700
|
3.287
|
13.755
|
2
|
–
9.056
|
5.895
|
28.399
|
3
|
15.736
|
–
8.092
|
36.611
|
4
|
5.463
|
7.694
|
8.821
|
5
|
–
2.736
|
–
10.869
|
2.989
|
6
|
–
15.380
|
4.495
|
7.180
|
7
|
-9.672
|
9.553
|
35.470
|
8
|
–
3.667
|
–
11.445
|
37.209
|
9
|
1.692
|
–
6.008
|
14.478
|
Statement
of Problem.
We have nine points which are randomly
numbered 1….9. Assuming that the points define a quadric, we should construct a
conic as a section of the quadric by a plane defined by points 1, 2, 9.
|
à)
|
b)
|
Fig. 1. The defined nine points and control
conic
(a). Initial constructions and the coordinate axis
(b).
According to the Engel
algorithm, we perform the following constructions. Let us consider planes defined
by triples of points:
α(1,2,9);
β(3,4,5);
γ(6,7,8).
We then
construct the edges and the vertex of the trihedral angle formed by these
planes. The edges of the angle are straight lines
m(α
∩
γ);
(n
α
∩
β);
g(β
∩
γ).
The vertex of the angle is point
E (Fig. 1,
b).
The Engel algorithm defines
two points
F
and
G
on the straight line
g.
The points are defined by dimensionless coordinates
kF
and
kG.
Let us introduce the average parameters for the region of the defined nine
points
P
and
scale. Point
P(
Px, Py,
Pz) is the center point of the region of the nine defined points.
For example,
,
where
are the x-coordinates of the defined nine points.
Scale
is the
average size of the region of the defined points.
, where
is
the distance from the
i-th point
to point
P. In the example considered, in the initial
(“world”) coordinate system (see Fig. 1,
a), point
P
(–0.769,
–0.610, 20.546).
S
=
17.388.
In order to define points
F,
G,
let us introduce the axis
kF, kG
on the straight line
g
(Fig. 1,
b). The origin of coordinates, point O, is defined as the foot
of the perpendicular dropped to the straight line
g
from point
P. The axis is directed opposite
to the vertex
E. The unit of measurement is the
scale
value. Points
F
and
G
will be defined on the straight line
g
by the parameters
kF
and
kG:
.
Let us conduct a
preliminary experiment. We set the parameters
kF
and
kG
and use
them to define points
F
and
G
on the straight line
g
(Fig. 2,
à).
For example,
kF
=
4.453,
kG
= –4.467. Based on program 1 (see Section 2), we construct the
conic
c1
using points
3, 4, 5, F, G and the conic
c2
using
points 6, 7, 8, F, G. The conics
c1, c2
have two common points
F, G.
Depending on the position of the points, each conic can be an ellipse or a
hyperbola. A parabola can be formed in exceptionally rare cases. In our
example,
c1,
c2
are two hyperbolas (Fig. 2).
|
à)
|
b)
|
c)
|
Fig.2. The intersection of the straight
lines
m, n
with the conics
c1, c2:
à
– two real intersections;
b
– a
real and an imaginary intersection;
c
– two imaginary intersections.
Using program 2, we find
the intersection points
M1,
M2
of the straight line
m
with
the conic
c1
and the intersection points
N1, N2
of the straight
line
n
with the conic
c2. We thus obtain the following results.
All four points are real (Fig. 2,
a), i.e., the straight lines intersect
each of their conics at two points. One or both intersection points may be
missing. So-called imaginary points or imaginary intersections are formed. Real
and imaginary intersections can appear in various combinations. For example, at
the parameters
kF
=3,
kG
=–3, a real intersection was formed with
the hyperbola
c1
and the straight line
m
and an imaginary
intersection was formed with the hyperbola
c2
and the straight line
n (Fig. 2,
b). At
kF
=6,
kG
= –1.5 there are no real
intersections, i.e., two imaginary intersections (Fig. 2,
c) appeared.
There may be no real
intersection due to the insufficient length of the hyperbola or parabola
branches. Such solutions will be called “conditionally real”. In order to
identify them, it is sufficient to determine that there is no imaginary
intersection.
A real solution of the
quadric problem is possible only for the real intersections of the conics
c1,
c2
with the straight lines
n,
m. We determined the region
of real solutions using programs 2–5. We put markers on the rectangular region
kF,
kG (Fig. 3,
à)
with a step of 0.25…0.5,
which color was determined by the types of the conics
c1,
c2
and
their intersection option with the straight lines
m,
n.
Table 2. Color of the region
markers (to Fig. 3,
à;
Fig. 10,
à)
Marker
|
Conic types
|
Option
|
Conic types: E –
ellipse; H - hyperbola. Intersection options:
1 – both real;
2 – a real and a
conditionally real;
3 – a real and
an imaginary;
4 – two
imaginary
|
|
E
+
E,
E
+
H,
H
+
H
|
1
|
|
E
+
H,
H
+
H
|
2
|
|
E
+
E
|
3
|
|
H
+
H
|
3
|
|
E
+
E
|
4
|
|
E
+
H
|
4
|
|
H
+
H
|
4
|
If both intersections are
real, the marker is blue (option 1), while the conics can be ellipses or
hyperbolas in various combinations. If one or both conics are hyperbolas with
short branches, and it is sufficient to increase the length of the branches to
obtain a real intersection, the marker is orange (option 2). The remaining
colors of the markers show other options of imaginary intersections. For
example, if it is blue color (option 3) – two ellipses were formed, the
intersection is real with one of them and imaginary with the other one.
The experiments show that,
depending on the conditions of the problem, the solution regions have the form
of stripes, islands, or extensive zones on the coordinate plane
kG, kF.
Since points
F
and
G
jointly determine the conic types, the
regions are symmetric relative to the diagonal line
kF=kG. The
coincidence of points
F, G
leads to defining the conics
c1, c2
by
four points, which is impossible. Therefore, the field is not defined on the
diagonal line
kF=kG.
The presence of real
intersections is a necessary but insufficient condition for resolving the
problem in general. Let us consider the second necessary condition for
resolving the quadric problem.
Let us construct the conic
ñ3
by defined point 1 and found points N1, N2, M1, M2. We construct a line segment
k(1,2) and determine point A (k
∩
c3).
Let
Δ
be the distance between points A and 2. If the length of the segment
(1,A) is less than the length (1,2),
Δ
> 0, and vice versa.
According to the Engel
algorithm, the conic
c3
should pass through point 2, i.e., the condition
Δ=0
should be satisfied. This does not happen if the parameters
kG, kF
are
set arbitrarily, i.e.,
Δ≠0.
The
condition
Δ=0
is achieved by adjusting the
parameters
kG, kF. Let us consider an example.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
à)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c)
 
d)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e)
 
 
 
f)
|
|
Fig. 3. Field (à)
and series (b–f) of real and imaginary solutions.
Let us set the parameters
kG,
kF
in the region of real solutions:
kG
=9.3,
kF
=–4.5,
construct the conic
c3
and the segment
k
and find point A. In
this example, the conics obtained
c1, c2, c3
are hyperbolas. The value
of
Δ
(2,
A) was 3.25 (Fig. 4,
a).
Let us shift the
point (kG, kF) along the
kG
axis and set
kG
= –5,
kF
=–4.5.
The conics
c2, c3
have become ellipses.
Δ
=–5.1 (Fig. 4,
b).
|
à)
|
b)
|
c)
|
Fig.
4. Determining the parameter
Δ:
à
–
Δ
> 0;
b
–
Δ
< 0;
c
–
Δ
= 0.
A change in the sign of
Δ
in the interval –5 < kG < 9.3 indicates that there are values
kG*,
kF*,
at which
Δ=0,
i.e., the conic
c3
will pass through point 2. In order to verify this provision and determine
kG*,
kF*, we fixed the value
kF
and used program 4 to construct a graph
of
Δ(kG)
at
kF
= –4.5. Points
kG
were set as a horizontal
series
H-H (Fig. 3,
a) passing through the region of real
solutions. The resulting dependence
Δ(kG)
is close to a linear one (Fig. 3,
b).
kG*
was determined in an
iterative cycle. We found the values of
kG*=4.395,
kF*=–4.5, at
which
Δ
= – 0.000262. The construction of the conics
c1, c2, c3
at these
values led to the practical coincidence of points 2 and A (Fig. 4,
c).
The constructions
performed at this stage resulted in the conic
c3
passing through
six
points 1, N1, N2, M1, M2, 2. Points 1, 2 are defined, points
N1, N2
result from the intersection of the conic
c1(3, 4, 5, F*, G*) and the
straight line
n, points M1, M2 are formed by the intersection of the
conic
c2(6, 7, 8, F*, G*) with the straight line
m. Points
F*,
G*
are determined by the conics
1, N1, N2, M1, M2
passing through
point 2.
The set of points
kF*,
kG*
obtained at |Δ|
<
tol
define a
line of exact real solutions
h
for the defined set of nine points. Here
tol
is the tolerance for construction errors. In our experiments,
tol
=
1*10-3.
Numerous experiments with
different options of defining 9 points (i.e. with different control quadrics
and conics and different numbering of points) have shown that where the adopted
coordinate system is used, the line
h
is approximated by a hyperbola
with high accuracy (see also Fig. 10,
a). One of the hyperbola axes
always coincides with the diagonal straight line
kF=kG. In the example
considered (Fig. 3,
a), the imaginary hyperbola axis coincides with the
diagonal line.
In order to construct the
hyperbola
h
using program 6, we need to construct four diagonal series
of
kF (kG)
values, determine the dependence
Δ(kG)
in each of them (Fig. 3), and find points Q
(kG*,
kF*),
at which
|Δ|
< tol.
Since the series pass through the region of
imaginary solutions, the curves
Δ(kG)
have gaps. The series A-A, B-B
(Fig. 3,
c, d) determine the direction of the hyperbola axes and
identify the vertices of the hyperbola or points close to them. The series C-C,
D-D (Fig. 3,
e, f) define four more points Q of the hyperbola
h.
Let us select two points Q
on the hyperbola
h. The points can be located on the same or different
branches of the hyperbola. Each of them should satisfy the condition
|Δ|
< tol.
These can be points used to construct the
hyperbola. This condition is satisfied when determining these points. If two
new points belonging to the hyperbola are selected, we need to specify their
coordinates from the condition |Δ|
<
tol.
For example, let us select
points Q2 (kG*
= 4.395,
kF*=
–4.5) and Q6 (kG*
= 8.860,
kF*=–3.071) (see Fig. 3,
à).
We
need to repeat the above constructions for each point and obtain the conic
c3(1, N1, N2, M1, M2, 2). Let us denote the conic
c3
for the first point
by
c3-1, and for the second point – by
c3-2 (Fig. 5).
Fig. 5. Final conic
c4.
Since the points used to
construct the conics
c3-1
and
c3-2
belong to the plane
α
(m
∩
n)
=
α
(1,2,9),
the conics intersect at four points. The conics have two common points 1, 2. We
need to find two more points of their intersection.
Let us use program 3.
After the conics
c3-1, c3-2
are intersected, we find the missing points
S,
T (Fig. 5). If the points
S, T
are closely spaced or missing, we
need to choose other points Q on the hyperbola
h
or increase the
construction accuracy.
After constructing a conic
using points
1, 2, 9, S, T,
we can obtain the final conic
c4 (Fig. 5), which belongs to the surface of the desired quadric. In our example,
the conic
c4
is an ellipse.
In order to determine the
construction error in our example, we measure the distance between the vertices
of the major axis of the constructed
c4
and control
e(see Fig.
1,
a) ellipses. The absolute error was 0.0138. At the average size of
the region of the defined points
scale
= 17.388, the relative error was ≈0.08%.
If the constructions were
carried out without a control conic, then in order to estimate the error, we
need to perform constructions for another pair of points Q selected on the
hyperbola
h
or change the numbering of six out of the nine defined points
keeping plane 1, 2, 9 and repeat the constructions. The error is estimated by
comparing the results of two or three constructions.
Let us summarize the
results of the studies and consider the sequence of actions for constructing a
conic on the surface of the desired quadric.
1.
Prepare
the software (see Section 2).
2.
In order
to test the programs and the algorithm, construct control objects: a quadric, a
conic, nine points on its surface, the center and axes of the quadric, which
will be used to check the construction accuracy (see Section 3, Fig. 1,
a).
3.
Construct
the lines
m, n,
g.
Determine the vertex of the trihedral angle
E, the center of the region
of nine points
P, and the average size of the
scale
region.
Taking into account these values, set the coordinate axis on the straight line
g
to specify points
F, G
according to the parameters
kG, kF(see
Section 3, Fig. 1,
b).
4.
Study the
field of real solutions (see Sections 4, 5, Fig. 3). This action is advisable
but not mandatory.
5.
Construct
the diagonal series A-A, B-B, etc. (see section 6, Fig. 3). Determine the
points of exact solutions
Q1, Q2
of the hyperbola
h
for each
series. It is sufficient to find two points of the hyperbola and their relevant
pairs of values (kF*, kG*), for each of which
Δ
< 0.001.
6.
Construct
the conics
c1, c2
for one pair (kF*, kG*), make sure that
Δ
< 0.001, and construct the conic
c3-1(see Section 7).
7.
Repeat
the constructions for the second pair (kF*, kG*) and construct the conic
c3-2.
8.
Find
points
S, T
and construct the final conic
c4
using points 1, 2,
S, T, 9 (see Section 7).
9.
Compare
the conic
c4
with the control conic or the construction result for
another combination of defined points. Based on the comparison results,
estimate the solution error (see Section 7).
Nine points unambiguously
define a quadric. However, such a determinant requires complex constructions
when solving even the simplest geometric problems. [3–5] proposed the use of a
more convenient and visual determinant of three conics, each of which is a
section of the desired quadric. Let us consider the creation of such a
determinant.
Fig. 6. Quadric
determinant.
If the conic
c4
is
constructed on the surface passing through three points 1, 2, 9, we select two
triples of points from the remaining six points, for example, 3, 4, 5 and
6, 7, 8. Using program 2, we find the intersection points of the
planes defined by these points with the conic
c4. We obtain two groups
of five points: 3, 4, 5, 10, 11 and 6, 7, 8, 12, 13 (Fig. 6). We construct two
conics which, jointly with the conic
c4, form a new determinant of the
quadric
c4, c5, c6. Selecting other triples of points, we obtain
numerous variants of the determinant. The intersection of the conics of the
determinant by different planes allows us to construct new conics belonging to
the surface of the quadric. Such an algorithm is the basis for solving
geometric problems with a quadric.
There is a known method to
find the center of a conic as the intersection point of its two diameters [1,
15, 16]. Let us extend this method to quadrics [5].
|
a)
|
b)
|
c)
|
Fig. 7. Constructing the center of the
quadric: a, b – constructing two diameters; c – the center as the intersection
of diameters.
Let us define the plane
δ1 intersecting three conics of the determinant (Fig. 7,
a). Using
program 2 three times (see Section 2), we find six points 14–19 of the
intersection of the plane δ1 with the conics of the determinant. Using
arbitrary five out of the found six points, we construct the conic
c7
and find its center
Ñ1. We define the second plane δ2 || δ1
and construct the conic
c7*
of the section by the plane
δ2
with the center point
Ñ1*. Using points
C1, C1*, we construct a
segment of the diameter u.
We define the plane
δ3
intersecting the planes
δ1, δ2. We find points 20–25 of its
intersection with the conics of the determinant and construct the conic
c8
with
the center
C2 (Fig. 7,
b). We define the next plane δ4 ||
δ3 and construct the conic
c8*
with the center
C2*
and the
segment
v(
C2, C2*) of the second quadric diameter.
We find point C of the
intersection of the quadric diameters defined by the segments
u, v,
which is the desired center of the quadric (Fig. 7,
c).
If the conics of the
determinant do not allow us to construct the necessary conics of the sections,
we should supplement the determinant with new conics. If the diameters of the
quadric
u, v
are parallel, the center is missing. This indicates that
the quadric is one of paraboloids (see Section 12 below).
The diameters
u, v
are generally formed as skew lines due to construction errors. The length of
the segment of the shortest distance between the diameter segments can be used
as the error. In the considered example, the length of the error segment was
≈0.060.
If there is a control
quadric, the error can be estimated by the average distance between the segments
u, v
and the center of the control quadric. In the experiment
considered, this error was 0.15. The error was 0.80% with respect to the
average size of the
scale
region of the defined points.
[4,5] proposed a
projective algorithm for constructing the principal axes of a quadric. We
present our algorithm (program 7) based on the following assumption. If the
foot of the perpendicular dropped from the center of the quadric to the section
plane coincides with the center of the section conic, the perpendicular
coincides with one of the axes of the quadric.
|
à)
|
b)
|
Fig. 8. Constructing
the axis of the quadric: a – algorithm; b, c – construction cycle.
Statement
of Problem
(Fig. 8,
à).
Find
the axes of the quadric by the determinant of the quadric, the conics
c4,
c5, c6, and its center (point
C).
1. Define a cutting plane
δ
and, based on the determinant of the quadric, construct the conic
c9
of
the section and determine its center
C1.
2. Let's construct a
segment
t(C, C1). Drop the perpendicular
p
from the center of
the quadric
C
to the plane of the conic. The foot of the perpendicular
is point
L. Measure the angle
φ
between
the segments
t, p.
Define the angle
ε
as a
fraction of the angle
φ,
i.e.
ε=φ:
n, where n=2…20.
3. In the plane (t, p),
rotate the segment
p
by an angle
ε
towards
the segment
t
and find point
L*,
to which point L has moved.
4. Define a new plane
δ*
so that it passes through point
L*
perpendicular to the new position of
the segment
p. Construct a conic of the section
c9*
by the plane
δ*.
5. Arrange a cycle with
iterations
i, in which point
L
is taken as point
L*, then
repeat steps 2–4. Control the value of the angle
φ
in the cycle. It has been established that with an increase in the iterations
i,
the value of the angle
φ
continuously decreases
(Fig. 8,
b). The parameter
n
determines the smoothness of the
angle decrease.
6. Run the cycle (Fig. 8,
c)
until
φ
becomes less than the permissible value, for example, 0.01
⁰.
The position of the segments
t, p
at the end of the cycle is taken as
the axis of the quadric z defined with the accepted permissible error.
7. In order to find the
other two axes of the quadric by the determinant of the quadric, construct its
section perpendicular to the found z-axis. Move the axes of the constructed
conic to the center of the quadric. A triple of principal axes of the quadric
is formed together with the first axis (Fig. 9,
a).
Based on the determinant
and the previously found axis of the quadric, we construct its axial and
transverse sections. These can be arbitrary sections of the specified
direction, in particular, sections by the coordinate planes XZ, YZ, XY. The
sections allow us to determine the quadric type (ellipsoid, hyperboloid, etc.).
Taking into account the quadric type, we can construct its frame.
|
|
à)
|
b)
|
|
|
|
Fig. 9. Frame
(a) and surface of the quadric (b).
In the considered example,
the axial section is the hyperbola
h, the transverse section is the
ellipse
e1, therefore, the quadric is an elliptical one-sheet
hyperboloid (Fig. 9,
a). Let us construct the frame of the quadric from
parallel ellipses. These ellipses are mutually similar [1, 13, 15] and their
centers belong to the longitudinal axis of the quadric. In order to construct
an arbitrary cross section, for example, the ellipse
e2, we copy the
ellipse
e1
to the position of the ellipse
e1*. In the plane of
the ellipse
e1*
we draw a straight line from the center of the ellipse
to the intersection with the hyperbola
h. We scale
e1*
to align
point
K1
with point
K2.
Using the known AutoCAD
command, we construct a surface by the frame (Fig. 9,
b).
Let the nine points have
the coordinates given in Table 3. Repeating the constructions (see Section 5),
we obtain the region of real solutions (Fig. 10,
a). The points have the
same color marking (see Table 2). The boundaries of the region differ
significantly from the previous example (see Fig. 3,
a). After
constructing several diagonal series, we obtain a line of exact solutions
h.
Similar to the previous example, this line is approximated by a hyperbola with
high accuracy.
Table 3. The coordinates
of points for the hyperbolic paraboloid
Point #
|
X
|
Y
|
Z
|
1
|
16.762
|
77.351
|
110.344
|
2
|
89.3
50
|
17.000
|
77.196
|
3
|
30.829
|
0
|
30.362
|
4
|
48.172
|
17.000
|
54.467
|
5
|
16.400
|
42.61
2
|
68.237
|
6
|
73.422
|
77.351
|
54.543
|
7
|
100.737
|
37.686
|
64.341
|
8
|
128.805
|
53.521
|
39.077
|
9
|
50.403
|
59.52
9
|
70.860
|
Having selected two
arbitrary points on the hyperbola
h, we implement the Engel algorithm
(see Section 8). The constructed conic
c4
is a parabola. The quadric
determinant (see Section 8) contains the parabola
c4
and the hyperbolas
c5,
c6 (Fig. 10,
b).
|
à)
|
b)
|
Fig. 10. Hyperbolic paraboloid:
à
– the region and hyperbola of real
solutions;
b
– the determinant of the quadric.
In order to find the
center of the quadric, we constructed two pairs of parallel conics
c7, c7*
and
c8, c8* (Fig. 11,
a). The planes of these conics were set parallel
to the intersection line of the planes with the conics of the determinant
c5
and
c6. Figure 11,
a
displays the planes
c5, c6, c7, c7*,
c8, c8*
as straight lines. The conics
c7–c8*
were constructed from
the intersection points of the planes of these conics with the quadric
determinant. For example, the conic
c7
is constructed using five out of
six intersection points 30–35.
We determined the centers
of the conics and constructed the diameters of the quadric
u(C1, C1*)
and
v(C2, C2*) using them. We established that, unlike the previous
example (see Fig. 7,
c), the diameters
u, v
are mutually
parallel, i.e., the center of the quadric, being their intersection point, is
missing. This indicates that the quadric is one of the paraboloids.
In order to find the axis
of the quadric, we construct a section of the quadric perpendicular to the
diameters
u, v. In our example, the section is the hyperbola
c9 (Fig. 11,
a, b) constructed from points 40–45. The segment
ax
perpendicular to the plane of the conic
c9
passing through its center
C3
is the Z-axis of the quadric (Fig. 11,
b). The axes of the hyperbola
c9
determine the coordinate planes of symmetry ZX and ZY of the desired quadric.
|
à)
|
b)
|
c)
|
Fig. 11. Construction of the axes (a),
vertex (b), and surface (c) of the hyperbolic paraboloid.
Having constructed the
section of the quadric by the coordinate planes, we find the vertex of the
quadric V, as well as the parabolas
p1, p2 (Fig. 11,
c). We take
p1
as the guiding parabola and
p2
– as the generating parabola. We
construct the frame of the quadric by the parallel displacement of the parabola
p2
along
p1. Using the frame, we create the surface of the
hyperbolic paraboloid
H. Cutting out the section
H*, we obtain
the well-known form of this surface – a skew plane.
1. We developed a program
system in the AutoLisp language to construct a quadric defined by nine points
using the Engel algorithm. The construction error does not exceed 0.1% of the
average sizes of the region of defined points.
2. There is a region of
real solutions for any set of nine points (defined subject to the restrictions
on their mutual position [3–5]) which does not require operations with
imaginary parameters. The region of real solutions contains a line of exact
solutions.
3. We developed a method
for determining the region and line of exact real solutions. In the adopted coordinate
system, the line of exact solutions is approximated by a hyperbola. In order to
construct a conic using the Engel algorithm, it is sufficient to select two
arbitrary parameter points defined on this line. The arbitrariness of selection
shows many possible options for solving the problem leading to a single exact
solution.
4. We proposed an
interactive algorithm for constructing the principal axes of a quadric.
5. We experimentally
confirmed the conclusions 1–4 for the ellipsoid, elliptic and hyperbolic
paraboloids, one- and two-sheet hyperboloids.
The lines of our further
studies on the construction of a quadric by nine points will cover:
•
The theoretical justification of the obtained
experimental conclusions about the existence of real solutions in the form of a
hyperbola in the Engel algorithm;
•
The experimental verification of the potential
construction of a quadric, if imaginary intersection points are formed during
construction;
•
The experimental study and comparative estimate of
other well-known algorithms for solving the quadric problem.
1.
Chetverukhin N. F.
Proektivnaya geometriya
[Projective geometry].
Moscow, 1961, 360 p.
[in Russian].
2.
Chasles M.
Istoricheskij obzor proisxozhdeniya i razvitiya geometricheskix
metodov. Istoriya geometrii / Ðîvårhïîsli vtîrîgî porjadka
[Historical
review of the origin and development of geometric methods. History of geometry
/ Second-order surfaces]. Moscow, V.1., 1883, 311 p. [in Russian].
3.
Girsh À.G.
Zadanie i postroenie kvadriki
[The Task And the Ñîïstãuñtiîï of
the Quàdãiñ]. – Ceometry & Graphics. – 20l7, Vol. 5, ¹ 2, pp. 39–44. [in
Russian]. DOI: l 0.l2737 / aticle_5953f2ecb89928. 1038l478.
4.
Y.À. Korotkij.
Graficheskie algoritmy` postroeniya kvadriki, zadannoj
devyat`yu tochkami
[Graphic Algîãithms fîr Constructing à Quadãic, Given
Nine Points]. – Ceometry & Graphics, 2019, Vol. 7, ¹ 2, pp. 3–11. [in
Russian]. DOI: 10.127Ç7/àãtiñlå_5d2ñ1502670779.580Ç1440.
5.
D.Y. Yoloshinov.
Algoritmicheskij kompleks dlya resheniya zadach s kvadrikami s primeneniem mnimy`x
geometricheskix obrazov
[Algîãithmiñ Ñîøðlåõ fîr Solving of Problems with Quàdãiñs Using Imaginary Gåîmåtriñ Images]. – Ceometry & Graphics. – 2020, Vol. 8, ¹ 2, pp. 3–32. [in Russian].
DOI: 10.12737/2Ç08-4898-2020-Ç-32
6.
Engel J. H. Konstruktionen zur Geometrie der Flächen
zweiter Ordnung und der ebenen Kurven dritter Ordnung / Naturforschende
Gesellschaft in Zürich. – 1889, V.34, ¹3–4, pp. 299–337.
https://www.ngzh.ch/archiv/1889_34/34_3-4/34_17.pdf
7.
A. L. Kheyfets.
Testirovanie i vizualizaciya osobennostej
vzaimnogo peresecheniya tetrae`dra i kvadriki (teorema Shalya)
[Testing and Visualization of the Singularities
of the Mutual Intersection of a Tetrahedron and a Quadric (Chasles' Theorem)].
– Scientific Visualization. – 2021, V 13, ¹ 1, pp. 1–14. [in Russian] DOI:
10.26583/sv.13.1.01
http://sv-journal.org/2021-1/01/
8.
A. L. Kheyfets. Generalized Dandelin's Theorem / IOP Conference Series:
Materials Science and Engineering (MSE). V. 262, 2017.
https://doi.org/10.1088/1757-899X/262/1/012105
9.
A.L Kheyfets.
3d modeli i algoritmy` komp`yuternoj parametrizacii pri
reshenii zadach konstruktivnoj geometrii (na nekotory`x istoricheskix primerax)
[3d Models and Algorithms for computer-based parameterization for the decision
of tasks of constructive Geometry (at some historical Examples)]. – Bulletin of
the South Ural State University. Series "Computer technologies, automatic
control & radioelectronics". Cheljabinsk: SUSU, 2016, V. 16(2) pp 24–42.
DOI:
http://dx.doi.org/10.14529/ctcr160203
https://vestnik.susu.ru/ctcr/article/view/4909
10.
Korotkiy V.A., Girsh A.G.
Graficheskie
algoritmy` rekonstrukcii krivoj vtorogo poryadka, zadannoj mnimy`mi e`lementami
[Graphic Reconstruction Algorithms of the Second-Order Curve, Given by the
Imaginary Elements]. – Ceometry & Graphics, Vol. 4, ¹. 4, 2016. pp. 19–30.
[in Russian] DOI: 10.127Ç7/22840
https://znanium.com/read?id=21224
11.
Korotkii V. A., Kheyfets A. L.
3D-modelirovanie konik v
pakete AutoCAD
[3D modeling of conics in AutoCAD]. Actual issues of graphic
education of youth. Materials of the VI All-Russian scientific-methodical
conference. Rybinsk: RGTA, 2005, pp 102–105.
[in Russian].
12.
Ivanov G. S.
Teoreticheskie osnovy` nachertatel`noj
geometrii
[Theoretical Foundations of Descriptive Geometry]. Moscow, 1998,
158 p. [in Russian].
13.
Peklich V. A.
Nachertatel`naya
geometriya
[Descriptive geometry].
Moscow: ASV, 2007. – 272 p.
[in
Russian].
14.
Kheyfets
A.L.
Geometricheskaya
tochnost` komp`yuterny`x algoritmov konstruktivny`x zadach
[Geometrical
accuracy of computer algorithms for constructive problems] /
The problem of
the quality of the graphic preparation of students in technical high school:
tradition and innovation
I3 (Perm: PNRPU) – 2016. – pp. 367–387.
[in Russian].
–
http://dgng.pstu.ru/conf2016/papers/74/
15.
Akopyan A,V., Zaslavsky A,A,
Geometricheskie
svojstva krivy`x vtorogo poryadka
[Gåîmåtriñ ðrîðåãtiås of såñoïd-îãdår ñuãvås]. Moscow: MCNMO, 2007, 136 ð. [in Russian].
16.
Kheifetc A.L.
Algoritmy
modelirovanija konik v pakete AutoCAD
[Algorithms modeling in AutoCAD
package Conic].
Sovershenstvovanie podgotovki uchashhihsja i studentov v
oblasti grafiki, konstruirovanija i standartizacii. Mezhvuzovskij
nauchno-metodicheskij sbornik. Saratov: SGTU, 2013, pp. 34–39. [in
Russian].