BACKGROUND OF THE INVENTION
[0001] The present invention relates generally to approximation of an ordered set of points
by a series of geometric elements, and more particularly to approximation of an ordered
set of points in which the position of each point is determined with a non-zero accuracy.
[0002] In diverse applications, geometric features may be represented as an ordered set
of points. In land surveying, roads, rivers, and boundaries of territories may be
delineated by ordered sets of points. In computer vision systems, the boundaries of
objects may be delineated by ordered sets of points. In digital image processing,
the contours of objects in an image may be represented by ordered sets of points (pixels).
Analyzing raw sets of points requires computer systems with high power processors,
large memory, and complex algorithms. More efficient analysis may be achieved by approximating
a set of points with a series of geometric elements. For example, a road may be modelled
as a chain (sequence) of segments. Basic segments include straight line segments and
circular arcs. If needed, more complex geometric curves may be used to smoothly transition
between adjacent segments. In addition to more efficient analysis, approximation by
a series of geometric elements provides a mechanism for data compression: the raw
set of points may be characterized by a smaller set of geometric parameters. For example,
a series of points falling on a straight line segment may be characterized by the
coordinates of the two end points of the segment. Similarly, a series of points falling
on a circular arc may be characterized by the coordinates of the two end points of
the arc and the coordinates of a third point lying on the arc.
[0003] Note that a point is a geometric abstraction. In real applications, a particular
position may be determined within a non-zero accuracy. In land surveying, for example,
accuracy is a function of the resolution and errors in the measurement system (and
other factors). In a digital imaging system, accuracy is a function of pixel size
of the digital image (and other factors). In data compression, accuracy is a function
of the value of acceptable (user-defined) loss of information, which may be described
by the compression ratio (and other factors). What is needed is a method for approximating
an ordered set of points, in which the position of each point has a non-zero accuracy,
with a series of geometric elements.
BRIEF SUMMARY OF THE INVENTION
[0004] In an embodiment of the invention, the approximation of an ordered set of physical
points in physical space is performed by a method of intersecting polytopes in a parametric
space. Each physical point comprises a nominal point and an associated allowable deviation.
A first bundle of geometric elements connecting a first subgroup of physical points
selected from the ordered set of physical points is generated. The deviation of each
geometric element in the first bundle from each nominal point in the first subgroup
is not greater than the allowable deviation associated with each nominal point in
the first subgroup. The first bundle is then mapped to a first polytope in a parametric
space, wherein each geometric element in the first bundle is mapped to a corresponding
parametric point in the first polytope. A second bundle of geometric elements connecting
a second subgroup of physical points selected from the ordered set of physical points
is generated. The deviation of each geometric element in the second bundle from each
nominal point in the second subgroup is not greater than the allowable deviation associated
with each nominal point in the second subgroup. The second bundle is then mapped to
a second polytope in the parametric space, wherein each geometric element in the second
bundle is mapped to a corresponding parametric point in the second polytope. If the
intersection between the first polytope and the second polytope is not null, the points
in the intersection region correspond to geometric elements which approximate the
physical points in the combined two subgroups. The center of the intersection region
corresponds to an approximate best-fit geometric element which approximates the physical
points in the first two subgroups.
[0005] These and other advantages of the invention will be apparent to those of ordinary
skill in the art by reference to the following detailed description and the accompanying
drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006]
Fig. 1 shows a plot in physical space of two physical points joined by a bundle of
straight line segments;
Fig. 2 shows a plot in physical space of three physical points joined by two bundles
of straight line segments;
Fig. 3A and Fig. 3B show plots in physical space of four points (Fig. 3A shows the
first three points joined by a first bundle of circular arcs. Fig. 3B shows the last
three points joined by a second bundle of circular arcs);
Fig. 4 shows a plot in parametric space of two bundles of straight line segments mapped
to parametric points that form two polygons;
Fig. 5A shows a plot in physical space of circular arcs mapped to center points of
circles corresponding to the circular arcs;
Fig. 5B shows a plot in physical space of two bundles of circular arcs mapped to center
points of circles corresponding to the circular arcs;
Fig. 6 shows an example of a complex ordered set of physical points approximated by
a connected series of straight line segments and circular arcs;
Fig. 7 shows a flowchart of steps for determining an approximate best-fit straight
line segment that approximates an ordered set of physical points, according to an
embodiment of the invention;
Fig. 8 shows a high-level schematic of a computer;
Fig. 9A shows the measurement of an ordered set of physical points by a mobile GPS
receiver;
Fig. 9B shows a schematic of a vehicle directed by a guidance control system.
DETAILED DESCRIPTION
[0007] A position in real space (also referred to as physical space) may be specified by
the coordinates of a point relative to a reference frame. For example, relative to
a standard Cartesian
X-Y-Z reference frame, a point
P may be represented by the coordinates (
xp, yp, zp)
. A mathematical point is dimensionless. In real practice, however, a physical point
is spatially distributed; that is, the location of a physical point is determined
within a non-zero range, which may depend on a number of factors, such as the resolution
and stability of the measurement system and environmental conditions (which include
temperature, pressure, humidity, shock, and vibration). For some measurement systems,
thermal noise, electromagnetic noise, and electromagnetic interference may also come
into play. A physical point P may then be represented by the coordinates (
xP ±
ΔxP, yP ±
ΔyP, zP ±
ΔzP), where (
ΔxP, ΔyP, ΔzP) represent the accuracy with which (
xP, yP, zP) may be determined. In general, (
ΔxP, ΔyP, ΔzP) is not constant, but may vary with (
xP, yP, zP). In two dimensions, physical point
P may then be represented by a rectangular region (
xP±
Δx
P, yP±
ΔyP)
. Similarly, in three dimensions, physical point
P may be represented by a rectangular prism (
xP±
ΔxP, yP±
ΔyP, zP±
ΔzP)
.
[0008] In an embodiment of the invention, the accuracy is considered to be isotropic because
the appropriate linear scaling of coordinates yields
ΔxP =
ΔyP =
ΔzP approximately for all points in a scaled frame. If scaling is not performed, then
for each physical point
P, the values of
ΔxP, ΔyP, and
ΔzP may all be set to the minimum value of (
ΔxP, ΔyP, ΔzP)
. Physical point
P may then be represented by a circular region in two dimensions and by a sphere in
three dimensions. In two dimensions, physical point
P may be represented by [
PP(
xP, yP)
, RP]
, where
PP(
xP, yP) is the center point of the circle and
RP is the radius of the circle. Similarly, in three dimensions, physical point
P may be represented by [
PP(
xP, yP, zP)
, RP]
, where
PP(
xP, yP, zP) is the center point of the sphere and
RP is the radius of the sphere. Herein,
PP is also referred to as the corresponding nominal point of physical point
P, and
RP is also referred to as the allowable deviation associated with physical point
P and associated with nominal point
PP. The nominal point and the allowable deviation may be determined by various means.
For example, the nominal point may be a single instrument reading, and the allowable
deviation may be the accuracy specified by a calibration procedure. The nominal point
and the allowable deviation may also be determined statistically by taking multiple
measurements. For example, the nominal point may be specified by the mean or median,
and the allowable deviation may be specified by the standard deviation or by the extremal
values.
[0009] In an embodiment of the invention, an ordered set of physical points, each having
a corresponding nominal point and an associated allowable deviation, may be approximated
by a chain (sequence) of simple geometric elements, such as straight line segments
and circular arcs. More complicated curves may be used, depending on the application.
Each element in the chain approximates the maximum number of consecutive physical
points such that the deviation of each element from each physical point is within
the allowable deviation associated with the physical point. Herein, the deviation
of an element from a physical point refers to the deviation of the element from the
nominal point corresponding to the physical point. Herein, the group of physical points
approximated by a single element is referred to as the subgroup of physical points
associated with the element.
[0010] The same subgroup of physical points may be approximated by more than one element.
Herein, the set of elements which may approximate the same subgroup is referred to
as a bundle of elements. Herein, an element within a bundle is referred to as a member
element of the associated bundle. Each member element has the same shape, but different
geometric parameters. For example, if a bundle comprises a set of straight line segments,
each member element may have a different value for slope and intercept. If a bundle
comprises circular arcs, each member element may have a different center point and
radius.
[0011] In an embodiment of the invention, each member element in a bundle is mapped to a
parametric point. For straight line segments, parametric points are defined in a user-specified
parametric space with user-specified parametric coordinates. A bundle is therefore
a manifold of elements in physical space, and the manifold of elements may be mapped
to a manifold of parametric points in parametric space. To simplify the discussion
and drawings, two-dimensional space is used in the examples. Embodiments for three-dimensional
space are summarized after the detailed examples for two-dimensional space have been
presented. In two dimensions, the manifold of parametric points forms a region in
the two-dimensional parametric space. In an embodiment of the invention, the region
is approximated by a polygon, and all points within the polygon are members of the
manifold of parametric points from parametric space.
[0012] An example for elements comprising straight line segments is first discussed, with
reference to Fig. 1, Fig. 2, Fig. 4, and Fig. 7. An example for elements comprising
circular arcs is then discussed, with reference to Fig. 3A, Fig. 3B, Fig. 5A, and
Fig. 5B.
[0013] Fig.1 illustrates a simple geometric configuration comprising two adjacent physical
points,
P1 106 (with nominal point P1 102 and radius R1 104) and
P2 146 (with nominal point P2 142 and radius R2 144). The coordinates of the points
are measured with respect to the X-Axis 101 and the Y-Axis 103 in physical space.
The radius R1 104 represents the allowable deviation from nominal point P1 102, and
the radius R2 144 represents the allowable deviation from nominal point P2 142. Physical
point
P1 106 and physical point
P2 146 are connected by a bundle B 191 of straight line segments. The outer limits of
bundle B 191 are straight line segment L1 121 and straight line segment L2 122. Straight
line segment L3 123 and straight line segment L4 124 are the straight line segments
which define the bounds of the range of slope.
[0014] In Fig. 2, there are three physical points in sequence,
P1 206 (with nominal point P1 202 and radius R1 204),
P2 246 (with nominal point P2 242 and radius R2 244), and
P3 286 (with nominal point P3 282 and radius R3 284). Physical point
P1 206 and physical point
P2 246 are connected by a first bundle B1 291 of straight line segments. The outer limits
of bundle B1 291 are straight line segment L1 221 and straight line segment L2 222.
Straight line segment L3 223 and straight line segment L4 224 are the straight line
segments which define the bounds of the range of slope within bundle B1 291. Similarly,
physical point
P2 246 and physical point
P3 286 are connected by a second bundle B2 292 of straight line segments. The outer
limits of bundle B2 292 are straight line segment L5 225 and straight line segment
L6 226. Straight line segment L7 227 and straight line segment L8 228 are the straight
line segments which define the bounds of the range of slope within bundle B2 292.
[0015] In physical space (Fig. 2), the straight line segments within each bundle fall on
the straight lines defined by a set of general linear equations:

where
A,
B, C are linear coefficients.
[0016] Fig. 4 shows an example of a corresponding plot in a user-defined parametric space.
In the embodiment shown in Fig. 4, the horizontal axis (abscissa) is (C/B) 401, and
the vertical axis (ordinate) is (A/B) 403. The coordinates of a point
P in the parametric space are then [(
C/
B)
P, (
A/
B)
P]. Note that the vertical axis in Fig. 4 is scaled by a factor of 10 to show sufficient
detail. In Fig. 4, each plotted parametric point corresponds to a straight line segment
in Fig. 2:
P1 421 ↔ L1 221
P2 422 ↔ L2 222
P3 423 ↔ L3 223
P4 424 ↔ L4 224
P5 425 ↔ L5 225
P6 426 ↔ L6 226
P7 427 ↔ L7 227
P8 428 ↔ L8 228.
[0017] The polygon
S1 441 defined by the vertices
P1 421,
P2 422,
P3 423, and
P4 424 (Fig. 4) corresponds to the bundle B1 291 of straight line segments connecting
physical point
P1 206 and physical point
P2 246 (Fig. 2). That is, each point within the polygon
S1 441 corresponds to a straight line segment within the bundle B1 291. Similarity,
the polygon
S2 442 defined by the vertices
P5 425,
P6 426,
P7 427, and
P8 428 (Fig. 4) corresponds to the bundle B2 292 of straight line segments connecting
physical point
P2 246 and physical point
P3 286 (Fig. 2). That is, each point within the polygon
S2 442 corresponds to a straight line segment within the bundle B2 292. In Fig. 4, the
overlap region σ 443 represents the intersection between polygon
S1 441 and polygon
S2 442. Each parametric point within the overlap region σ 443, therefore, corresponds
to a straight line segment which connects physical point
P1 206, physical point
P2 246, and physical point
P3 286 (Fig. 2). The deviation of each straight line segment from each of nominal point
P1 202, nominal point P2 242, and nominal point P3 282 is less than or equal to the
allowable deviation associated with each nominal point.
[0018] The process may be repeated for additional adjacent physical points, as described
in the flowchart of Fig. 7. The input 702 to the process is an ordered set of physical
points
Pi, i = 1...
N,
N ≥ 3
. Physical point
Pi is represented by corresponding nominal point P
i and associated allowable deviation (radius) R
i. In step 704, bundle B
1 is generated and mapped to polygon
S1 in parametric space:
B1 → S1.
[0019] Bundle B
1 comprises a set of straight line segments connecting physical point
P1 and physical point
P2 such that the deviation of each straight line segment from nominal point P
1 is less than or equal to the allowable deviation R
1, and the deviation of each straight line segment from nominal point P
2 is less than or equal to the allowable deviation R
2.
[0020] In step 706, the initial intersection region
σ1 is assigned the value of
S1. The index
j is initialized to the value of 2. The index
j is the index of the bundle of straight line segments which connect a pair of points
(
Pj,
Pj+1); therefore, the maximum value of
j is (
N-1). In step 708, bundle B
j is generated and mapped to polygon
Sj in parametric space:
Bj →
Sj .
[0021] In step 710, the intersection
σj is defined as the intersection of
σj-1 and
Sj (denoted as
σj-1 ∩
sj):

[0022] The process then passes to step 712, in which the intersection
σj is checked to determine whether it is null. If the intersection
σj is null, then the process passes to step 714, in which the final index
f is defined as the value of (
j -1) in order to designate the previous non-null intersection. The process then passes
from step 714 to step 722, which is discussed further below. In step 712, if the intersection
σj is not null, then the process passes to step 716. In step 716, the index
j is checked to determine whether all
N points of the point set (input 702) have been processed. If all
N points have been processed, then the process passes to step 718, in which the final
index
f is defined as the value of
j. The process then passes from step 718 to step 722. If all
N points have not been processed (step 716), then the process passes to step 720, in
which the index
j is incremented by 1 to designate the current non-null intersection.
[0023] The sequence of steps (step 708, step 710, step 712, step 716, and step 720) is repeated
until the new intersection is null (step 712) or until all
N points have been processed (step 716). The process then passes to step 722, in which
the nominal geometric center point of the final intersection region
σf is determined. In general, the final intersection region is a polygon in which the
lengths of the sides are not necessarily equal and in which the angles between adjacent
sides are not necessarily equal. The nominal geometric center point may be determined
according to user-defined criteria. For example, if the polygon has a center of symmetry,
the nominal geometric center point may be defined as the center of symmetry. As another
example, if there is no center of symmetry, the nominal geometric center point may
be defined as the center of mass of the polygon. Herein, the nominal geometric center
point of a polygon is also referred to as the center of the polygon. Let the nominal
geometric center point of
σf be designated the parametric point
Pf [(
C/
B)
f , (
A/
B)
f]. Then, in step 724,
Pf [(
C/
B)
f ,
(A/
B)
f] maps to the line

in physical space. The output 726 is the equation of a straight line containing a
straight line segment which is an approximate best fit (see further discussion below)
between the first
f+1 adjacent physical points such that the deviation of the straight line segment from
each of the corresponding nominal points is less than or equal to the allowable deviation
associated with each nominal point.
[0024] The total number (
T) of physical points which may be approximated by the final straight line segment
is determined as follows:

[0025] In an embodiment, the best-fit straight line segment is determined such that the
sum of the ratios (deviation
k / R
k) is minimized, where R
k is the allowable deviation for physical point
Pk, deviation
k is the absolute value of the deviation of the
k-th point from the straight line segment, and the sum is taken over
T physical points. In general, the best-fit straight line segment maps to a parametric
point within the final non-null intersection region. In an embodiment, the final non-null
intersection region is approximated by a final non-null polygon, and the center of
the final non-null polygon maps to a straight line segment which closely approximates
the best-fit straight line segment. This method is advantageous since determining
the center of the final non-null polygon is mathematically less complex than determining
the parametric point corresponding to the best-fit straight line. Consequently, fewer
computational resources may be required, and computational speed may be increased.
[0026] In the embodiment of the invention shown in Fig. 4, a point in the user-defined parametric
space with the parametric coordinates (
C/
B,
A/
B) was used to approximate the subgroup of points by a straight line segment. In another
embodiment, a point in a user-defined parametric space with the parametric coordinates
(
C/
A,
B/
A) may be used to approximate a subgroup of points by a straight line segment. Parametric
coordinates (
C/
B,
A/
B) are advantageous for spatial configurations in which the straight line segments
are close to the horizontal axis. Similarly, parametric coordinates (
C/
A,
B/
A) are advantageous for spatial configurations in which the straight line segments
are close to the vertical axis. In general, the coordinates in parametric space are
user-defined and are not necessarily Cartesian. For example, the coordinates in parametric
space may be polar coordinates.
[0027] Fig. 3A, Fig. 3B, Fig. 5A, and Fig. 5B show an example for elements comprising circular
arcs. In Fig. 3A, there are four physical points in sequence, physical point
P1 306 (with nominal point P1 302 and radius R1 304), physical point
P2 326 (with nominal point P2 322 and radius R2 324), physical point
P3 346 (with nominal point P3 342 and radius R3 344), and physical point
P4 366 (with nominal point P4 362 and radius R4 364). In this example, the first three
physical points,
P1 306,
P2 326, and
P3 346, are connected by a bundle B1 391 of circular arcs. Circular arc A1 381 - circular
arc A6 386 are the outer limits of the bundle B1 391. For each circular arc within
the bundle B1 391, the deviation from each of the nominal points P1 302, P2 322, and
P3 342 is less than or equal to the allowable deviation associated with each nominal
point (R1 304, R2 324, and R3 344, respectively).
[0028] In Fig. 3B, the same sequence of four physical points,
P1 306,
P2 326,
P3 346, and
P4 366, is shown. In this example, the last three physical points,
P2 326,
P3 346, and
P4 366, are connected by a bundle B2 392 of circular arcs. Circular arc A7 387 - circular
arc A12 3812 are the outer limits of the bundle B2 392. For each circular arc within
the bundle B2 392, the deviation from each of the nominal points P2 322, P3 342, and
P4 362 is less than or equal to the allowable deviation associated with each nominal
point (R2 324, R3 344, and R4 364, respectively).
[0029] In an embodiment of the invention, a circular arc is mapped to a single parametric
point in a user-defined parametric space. In one embodiment, the parametric space
is also the physical space. That is, the horizontal axis (abscissa) is the X-Axis
101, and the vertical axis is the Y-Axis 103 (Fig. 3A and Fig. 3B). Non-Cartesian
coordinates, such as polar coordinates, may also be used. The parametric point is
the center point of the circle that corresponds to the circular arc. Herein, the center
point of the circle that corresponds to a circular arc is referred to as the center
of the circular arc. Fig. 5A shows examples of the mapping. In Fig. 5A, the points
PN, where N is an integer, denote abstract mathematical points. Points
P1 501,
P2 502, and
P3 503 are approximated by circular arc A1 521, with center point
V1 511 and radius
R1 531. Points
P2 502,
P3 503, and
P4 504 are approximated by circular arc A2 522, with center point
V2 512 and radius
R2 532. Circular arc A1 521 is mapped to parametric point
V1 511, and circular arc A2 522 is mapped to parametric point
V2 512.
[0030] Fig. 5B shows a parametric plot corresponding to the geometric plots shown in Fig.
3A and Fig. 3B. In Fig. 5B, each parametric point corresponds to the center of a circular
arc (with a corresponding radius) in Fig. 3A and Fig. 3B:
V1 581 ↔ A1 381
V2 582 ↔ A2 382
V3 583 ↔ A3 383
V4 584 ↔ A4 384
V5 585 ↔ A5 385
V6 586 ↔ A6 386
V7 587 ↔ A7 387
V8 588 ↔ A8 388
V9 589 ↔ A9 389
V10 5810 ↔ A10 3810
V11 5811 ↔ A11 3811
V12 5812 ↔ A12 3812.
[0031] The polygon
S1 5441 defined by the vertices
V1 581 -
V6 586 (Fig. 5B) corresponds to the bundle B1 391 of circular arcs connecting physical
point
P1 306, physical point
P2 326, and physical point
P3 346 (Fig. 3A). That is, each point within polygon
S1 5441 corresponds to the center of a circular arc within bundle B1 391. Similarly,
the polygon
S2 5442 defined by the vertices
V7 587 -
V12 5812 (Fig. 5B) corresponds to the bundle B2 392 of circular arcs connecting physical
point
P2 326, physical point
P3 346, and physical point
P4 366 (Fig. 3B). That is, each point within polygon
S2 5442 corresponds to the center of a circular arc within bundle B2 392. In Fig. 5B,
the overlap region
α 5443 represents the intersection between polygon
S1 5441 and polygon
S2 5442. All points within the overlap region
α 5443, therefore, correspond to the centers of circular arcs which connect physical
point
P1 306, physical point
P2 326, physical point
P3 346, and physical point
P4 366. The deviation of each circular arc from each of the corresponding nominal points
P1 302, P2 322, P3 342, and P4 362 is less than or equal to the allowable deviation
associated with each nominal point (R1 304, R2 324, R3 344, and R4 364, respectively).
[0032] The process may be repeated for additional adjacent physical points, following a
sequence of steps similar to the sequence of steps for straight line segments (previously
described in the flowchart of Fig. 7). Sequential polygons corresponding to sequential
bundles of circular arcs are added to Fig. 5B until the intersection of the existing
intersection region with the next polygon is null:

[0033] The nominal geometric center point of the final intersection region
αf is then determined. Let the nominal geometric center point of
αf be designated the parametric point
Vf (
xf,yf)
. This is the center point of the circular arc which is an approximate best fit between
the first
T=
f+2 adjacent physical points such that the deviation of the circular arc from each
of the corresponding nominal points is less than or equal to the allowable deviation
associated with each nominal point. The minimum and maximum radii are then defined
for each approximated point using its allowable deviation. If the overall intersection
of regions of radii for passed points is not null, then a best-fit circular arc exists,
and its radius is chosen to be the median value of radii range. [Note:
T =
f+2 in this instance because a circular arc connects three points, whereas a straight
line segment connects two points.]
[0034] Fig. 6 shows a complex ordered set of physical points. Each physical point is represented
by a circle whose center point is the corresponding nominal point and whose radius
is the associated allowable deviation. A computer program executing the methods described
above has connected the physical points with approximation curves comprising a connected
series of straight line segments and circular arcs.
[0035] The examples above apply to two-dimensional space. Embodiments of the invention may
be applied to three-dimensional space. An ordered set of physical points in physical
space is provided as input. As discussed earlier, each physical point may be represented
by a sphere, with the center point located at a corresponding nominal point and a
radius corresponding to an associated allowable deviation. A geometric element is
selected to approximate a subgroup of adjacent physical points selected from the set
of physical points. Examples of geometric elements include straight line segments
and circular arcs, but more complex geometric elements may be selected, depending
on the application. A bundle of geometric elements is generated to connect the subgroup
of adjacent physical points. The deviation of each geometric element (in the bundle)
from each corresponding nominal point is less than or equal to the allowable deviation
associated with each nominal point (not greater than the allowable deviation associated
with each nominal point).
[0036] Each geometric element is mapped to a parametric point in parametric space, and each
bundle of geometric elements is mapped to a region in parametric space. In some instances,
parametric space may be physical space. In an embodiment of the invention, the three-dimensional
region is approximated by a polyhedron, and all points within the polyhedron are members
of the manifold of parametric points in parametric space. Similar to the two-dimensional
case, a sequence of bundles is generated. Each bundle connects sequential subgroups
of physical points. Each bundle is mapped to a polyhedron in parametric space. The
first bundle is mapped to a first polyhedron. The second bundle is mapped to a second
polyhedron. If the first polyhedron and the second polyhedron intersect, the intersection
region is referred to as the first intersection polyhedron. The points in the first
intersection polyhedron map to the set of geometric elements which approximate the
sequence of physical points in the combined first two subgroups of physical points.
The center of the first intersection polyhedron maps to an approximate best-fit geometric
element which connects the physical points in the combined first two subgroups.
[0037] The process may be iterated. A third bundle is mapped to a third polyhedron. If the
third polyhedron intersects with the first intersection polyhedron, the new intersection
region is referred to as the second intersection polyhedron. The points in the second
intersection polyhedron map to the set of geometric elements which approximate the
set of physical points in the combined first three subgroups of physical points. The
center of the second intersection polyhedron maps to an approximate best-fit geometric
element which connects the physical points in the first three subgroups. The iterations
continue until one of the following conditions is met: (a) the intersection of the
current non-null intersection polyhedron with the next polyhedron (which maps to the
next bundle) is null, or (b) all physical points have been processed. The center of
the final non-null intersection polyhedron maps to an approximate best-fit geometric
element which connects the physical points in the combined subgroups mapped to the
final non-null intersection polyhedron. The deviation of the approximate best-fit
geometric element from each corresponding nominal point in the combined subgroups
is less than or equal to the allowable deviation associated with each nominal point
(not greater than the allowable deviation associated with each nominal point).
[0038] Herein, the term "polytope" refers to a polygon in two-dimensional space and refers
to a polyhedron in three-dimensional space.
[0039] Note that different geometric elements may be used in sequence. For example, a curvilinear
path may be approximated by straight line segments along nearly linear sections and
by circular arcs along curved sections.
[0040] Embodiments of the invention may be implemented with a computer. As shown in Fig.
8, computer 802 may be any type of well-known computer comprising a central processing
unit CPU 804, memory 808, data storage device 806, and user input/output interface
810. Data storage device 806 may comprise a hard drive, nonvolatile memory, or other
computer readable medium (such as a magnetic disk or compact disc read only memory).
User input/output interface 810 may comprise a connection to a user input/output device
820, such as a keyboard or mouse, which enables user interaction with computer 802.
[0041] As is well known, a computer operates under control of computer software which defines
the overall operation of the computer and applications. CPU 804 controls the overall
operation of the computer and applications by executing computer program instructions
which define the overall operation and applications. The computer program instructions
may be stored in data storage device 806 and loaded into memory 808 when execution
of the program instructions is desired. The method steps of Fig. 7 may be defined
by the computer program instructions stored in the memory 808 or in the data storage
device 806 (or in a combination of memory 808 and data storage device 806) and controlled
by the CPU 804 executing the computer program instructions. For example, the computer
program instructions may be implemented as computer executable code programmed by
one skilled in the art to perform algorithms implementing the method steps of Fig.
7. Accordingly, by executing the computer program instructions, the CPU 804 executes
algorithms implementing the method steps of Fig. 7.
[0042] Computer 802 may further comprise a video display interface 816, which may transform
signals from CPU 804 to signals which may drive video display 826. Computer 802 may
further comprise one or more network interfaces. For example, communications network
interface 818 may comprise a connection to an Internet Protocol (IP) communications
network 828, which may transport user, control, and test traffic. Communications network
interface 818 may comprise various physical interfaces, including wired, wireless,
and fiberoptic. Computer 802 may further comprise an external data storage interface
814. The results calculated from the algorithms may be transferred via external data
storage interface 814 and stored in external data storage unit 824. One skilled in
the art will recognize that an implementation of an actual computer may contain other
components as well, and that Fig. 8 is a high level representation of some of the
components of a computer for illustrative purposes.
[0043] Fig. 9A and Fig. 9B illustrate a method for automatically guiding a vehicle, according
to an embodiment of the invention. In Fig. 9A, a global positioning system (GPS) receiver
980 is moved incrementally along a user-specified path (such as a road) and records
the coordinates of an ordered set of physical points 901 comprising physical points
P1 902 -
P22 944. In Fig. 9B, the ordered set of physical points 901 is uploaded to computer 802.
In one embodiment, data may be transmitted from GPS receiver 980 to computer 802 across
a wireless interface. In another embodiment, data may be stored in GPS receiver 980
and transferred to computer 802 via a local user input/output interface 810 or a remote
communications network interface 818 (Fig. 8). Computer 802 then executes computer
instructions to perform steps of an algorithm according to an embodiment of the invention.
Computer 802 transforms the input ordered set of physical points 901 to an output
sequence of geometric elements 903 which approximate the ordered set of physical points
901. In this example, the sequence of geometric elements 903 comprises straight line
segment L1 905, straight line segment L2 907, circular arc A1 909, straight line segment
L3 911, circular arc A2 913, and straight line segment L4 915.
[0044] The sequence of geometric elements 903 is then downloaded to guidance control system
982, which is mounted on vehicle 984. In one embodiment, data is transferred from
computer 802 to guidance control system 982 across a wireless interface. One skilled
in the art may implement other system configurations. For example, GPS receiver 980,
computer 802, and guidance control system 982 may be integrated into a single system
mounted on vehicle 984. Guidance control system 982 controls a drive system which
automatically drives vehicle 984 along guided route 931, which passes the ordered
set of physical points 901. An automatically guided vehicle may be used in a variety
of applications. For example, vehicle 984 may be a dozer used to grade a road. As
another example, a camera system may be mounted on vehicle 984, which is then used
for automatic surveillance.
[0045] The foregoing Detailed Description is to be understood as being in every respect
illustrative and exemplary, but not restrictive, and the scope of the invention disclosed
herein is not be determined from the Detailed Description, but rather from the claims
as interpreted according to the full breadth permitted by the patent laws. It is to
be understood that the embodiments shown and described herein are only illustrative
of the principles of the present invention and that various modifications may be implemented
by those skilled in the art without departing from the scope of the invention as defined
by the appending claims. Those skilled in the art could implement various other feature
combinations without departing from the scope of the invention as defined by the appended
claims.
1. A computer implemented method for approximating an ordered set of physical points
in physical space, each physical point comprising a nominal point and an associated
allowable deviation, comprising the steps of:
generating a first bundle of geometric elements connecting a first subgroup of physical
points selected from the ordered set of physical points, wherein the deviation of
each geometric element in the first bundle from each nominal point in the first subgroup
is not greater than the allowable deviation associated with each nominal point in
the first subgroup;
mapping the first bundle to a first polytope in a parametric space, wherein each geometric
element in the first bundle is mapped to a corresponding parametric point in the first
polytope;
generating a second bundle of geometric elements connecting a second subgroup of physical
points selected from the ordered set of physical points, wherein the deviation of
each geometric element in the second bundle from each nominal point in the second
subgroup is not greater than the allowable deviation associated with each nominal
point in the second subgroup; and
mapping the second bundle to a second polytope in the parametric space, wherein each
geometric element in the second bundle is mapped to a corresponding parametric point
in the second polytope.
2. The method of claim 1, further comprising the steps of:
determining a first intersection region between the first polytope and the second
polytope;
if the first intersection region is null:
determining the center of the first polytope; and
mapping the center of the first polytope to the corresponding geometric element; if
the first intersection region is not null:
generating a third bundle of geometric elements connecting a third subgroup of physical
points selected from the ordered set of physical points, wherein the deviation of
each geometric element in the third bundle from each nominal point in the third subgroup
is not greater than the allowable deviation associated with each nominal point in
the third subgroup; and
mapping the third bundle to a third polytope in the parametric space, wherein each
geometric element in the third bundle is mapped to a corresponding parametric point
in the third polytope.
3. The method of claim 2, further comprising the steps of:
determining a second intersection region between the first intersection region and
the third polytope;
if the second intersection region is null:
determining the center of the first intersection region; and
mapping the center of the first intersection region to the corresponding geometric
element;
if the second intersection region is not null:
generating a fourth bundle of geometric elements connecting a fourth subgroup of physical
points selected from the ordered set of physical points, wherein the deviation of
each geometric element in the fourth bundle from each nominal point in the fourth
subgroup is not greater than the allowable deviation associated with each nominal
point in the fourth subgroup; and
mapping the fourth bundle to a fourth polytope in the parametric space, wherein each
geometric element in the fourth bundle is mapped to a corresponding parametric point
in the fourth polytope.
4. The method of claim 1, wherein the polytope is a polyhedron.
5. The method of claim 1, wherein the polytope is a polygon.
6. The method of claim 1, wherein:
the step of generating a first bundle of geometric elements comprises:
generating a first bundle of straight line segments, wherein each specific straight
line segment is a segment corresponding to a specific line defined by the equation
A2 *x + B1*y + C1 = 0, wherein x and y are Cartesian axes in two-dimensional physical space and (A1, B1, C1) is a specific set of corresponding linear coefficients in the first bundle;
the step of mapping the first bundle to a first polytope comprises:
mapping each specific straight line segment in the first bundle to the specific parametric
point defined by the specific set of coordinates (C1/B1, A1/B1) in the parametric space;
the step of generating a second bundle of geometric elements comprises:
generating a second bundle of straight line segments, wherein each specific straight
line segment is a segment corresponding to a specific line defined by the equation
A2 *x + B2*y + C2 = 0, wherein (A2, B2, C2) is a specific set of linear coefficients in the second bundle; and
the step of mapping the second bundle to a second polytope comprises:
mapping each specific straight line segment in the second bundle to the specific parametric
point defined by the specific set of coordinates (C2/B2, A2/B2).
7. The method of claim 1, wherein:
the step of generating a first bundle of geometric elements comprises:
generating a first bundle of straight line segments, wherein each specific straight
line segment is a segment corresponding to a specific line defined by the equation
A1*x + B1*y + C1 = 0, wherein x and y are Cartesian axes in two-dimensional physical space and (A1, B1, C1) is a specific set of corresponding linear coefficients in the first bundle;
the step of mapping the first bundle to a first polytope comprises:
mapping each specific straight line segment in the first bundle to the specific parametric
point defined by the specific set of coordinates (C1/A1, B1/A1) in the parametric space;
the step of generating a second bundle of geometric elements comprises:
generating a second bundle of straight line segments, wherein each specific straight
line segment is a segment corresponding to a specific line defined by the equation
A2*x + B2*y + C2 = 0, wherein (A2, B2, C2) is a specific set of linear coefficients in the second bundle; and
the step of mapping the second bundle to a second polytope comprises:
mapping each specific straight line segment in the second bundle to the specific parametric
point defined by the specific set of coordinates (C2/A2, B2/A2).
8. The method of claim 1, wherein:
the step of generating a first bundle of geometric elements comprises:
generating a first bundle of circular arcs, wherein each circular arc in the first
bundle has a corresponding center point and a corresponding radius;
the step of mapping the first bundle to a first polytope comprises:
mapping each specific circular arc in the first bundle of circular arcs to the specific
center point corresponding to the specific circular arc;
the step of generating a second bundle of geometric elements comprises:
generating a second bundle of circular arcs, wherein each circular arc in the second
bundle has a corresponding center point and a corresponding radius; and
the step of mapping the second bundle to a second polytope comprises:
mapping each specific circular arc in the second bundle of circular arcs to the specific
center point corresponding to the specific circular arc.
9. An apparatus comprising means for performing the method according to any one of the
claims 1 to 8.
10. A computer program for instructing a computer to perform the method according to any
one of the claims 1 to 8.
11. A computer readable medium storing the computer program according to claim 10.
1. Computerimplementiertes Verfahren zum Approximieren eines geordneten Satzes physikalischer
Punkte im physikalischen Raum, wobei jeder Punkt einen Nominalpunkt und eine zugeordnete
zulässige Abweichung aufweist, wobei das Verfahren die folgenden Schritte aufweist:
Erzeugen eines ersten Bündels geometrischer Elemente, die eine erste Untergruppe physikalischer
Punkte, die aus dem geordneten Satz physikalischer Punkte ausgewählt sind, verbinden,
wobei die Abweichung von jedem geometrischen Element in dem ersten Bündel von jedem
Nominalpunkt in der ersten Untergruppe nicht größer ist als die zulässige Abweichung,
die jedem Nominalpunkt in der ersten Untergruppe zugeordnet ist;
Zuordnen des ersten Bündels zu einem ersten Polytop in einem parametrischen Raum,
wobei jedes geometrische Element in dem ersten Bündel einem entsprechenden parametrischen
Punkt in dem ersten Polytop zugeordnet ist;
Erzeugen eines zweiten Bündels geometrischer Elemente, die eine zweite Untergruppe
physikalischer Punkte, die aus dem geordneten Satz physikalischer Punkte ausgewählt
sind, verbinden, wobei die Abweichung von jedem geometrischen Element in dem zweiten
Bündel von jedem Nominalpunkt in der zweiten Untergruppe nicht größer ist als die
zulässige Abweichung, die jedem Nominalpunkt in der zweiten Untergruppe zugeordnet
ist;
Zuordnen des zweiten Bündels zu einem zweiten Polytop in dem parametrischen Raum,
wobei jedes geometrische Element in dem zweiten Bündel einem entsprechenden parametrischen
Punkt in dem zweiten Polytop zugeordnet ist;
Bestimmen eines ersten Kreuzungsbereichs zwischen dem ersten Polytop und dem zweiten
Polytop; und
falls der erste Kreuzungsbereich Null ist:
Bestimmen des Zentrums des ersten Polytops, und
Zuordnen des Zentrums des ersten Polytops zu einem entsprechenden geometrischen Element.
2. Verfahren nach Anspruch 1, ferner aufweisend die folgenden Schritte:
Falls der erste Kreuzungsbereich nicht Null ist:
Erzeugen eines dritten Bündels geometrischer Elemente, die eine dritte Untergruppe
physikalischer Punkte, die aus dem geordneten Satz physikalischer Punkte ausgewählt
sind, verbinden, wobei die Abweichung von jedem geometrischen Element in dem dritten
Bündel von jedem Nominalpunkt in der dritten Untergruppe nicht größer ist als die
zulässige Abweichung, die jedem Nominalpunkt in der dritten Untergruppe zugeordnet
ist; und
Zuordnen des dritten Bündels zu einem dritten Polytop in dem parametrischen Raum,
wobei jedes geometrische Element in dem dritten Bündel einem entsprechenden parametrischen
Punkt in dem dritten Polytop zugeordnet ist.
3. Verfahren nach Anspruch 2, ferner aufweisend die folgenden Schritte:
Bestimmen eines zweiten Kreuzungsbereichs zwischen dem ersten Kreuzungsbereich und
dem dritten Polytop;
falls der zweite Kreuzungsbereich Null ist:
Bestimmen des Zentrums des ersten Kreuzungsbereichs, und
Zuordnen des Zentrums des ersten Kreuzungsbereichs zu dem entsprechenden geometrischen
Element;
falls der zweite Kreuzungsbereich nicht Null ist:
Erzeugen eines vierten Bündels geometrischer Elemente, die eine vierte Untergruppe
physikalischer Punkte, die aus dem geordneten Satz physikalischer Punkte ausgewählt
sind, verbinden, wobei die Abweichung von jedem geometrischen Element in dem vierten
Bündel von jedem Nominalpunkt in der vierten Untergruppe nicht größer ist als die
zulässige Abweichung, die jedem Nominalpunkt in der vierten Untergruppe zugeordnet
ist; und
Zuordnen des vierten Bündels zu einem vierten Polytop in dem parametrischen Raum,
wobei jedes geometrische Element in dem vierten Bündel einem entsprechenden parametrischen
Punkt in dem vierten Polytop zugeordnet ist.
4. Verfahren nach Anspruch 1, wobei das Polytop ein Polyeder ist.
5. Verfahren nach Anspruch 1, wobei das Polytop ein Polygon ist.
6. Verfahren nach Anspruch 1, wobei
der Schritt des Erzeugens eines ersten Bündels geometrischer Elemente Folgendes aufweist:
Erzeugen eines ersten Bündels von geradlinigen Segmenten, wobei jedes spezifische
geradlinige Segment ein Segment ist, das einer spezifischen Geraden entspricht, die
durch die Gleichung A1*x + B1*y + C1 = 0 definiert ist, wobei x und y kartesische Achsen im zweidimensionalen physikalischen
Raum sind und (A1, B1, C1) ein spezifischer Satz entsprechender Linearkoeffizienten in dem ersten Bündel ist;
wobei der Schritt des Zuordnens des ersten Bündels zu einem ersten Polytop aufweist:
Zuordnen jedes spezifischen geradlinigen Segments in dem ersten Bündel zu dem spezifischen
parametrischen Punkt, der von dem spezifischen Satz Koordinaten (C1/B1, A1/B1) in dem parametrischen Raum definiert wird;
wobei der Schritt des Erzeugens eines zweiten Bündels geometrischer Elemente aufweist:
Erzeugen eines zweiten Bündels von geradlinigen Segmenten, wobei jedes spezifische
geradlinige Segment ein Segment ist, das einer spezifischen Geraden entspricht, die
durch die Gleichung A2*x + B2*y + C2 = 0 definiert ist, wobei (A2, B2, C2) ein spezifischer Satz linearer Koeffizienten in dem zweiten Bündel ist; und
wobei der Schritt des Zuordnens des zweiten Bündels zu einem zweiten Polytop aufweist:
Zuordnen jedes spezifischen geradlinigen Segments in dem zweiten Bündel zu dem spezifischen
parametrischen Punkt, der durch den spezifischen Satz Koordinaten (C2/B2, A2/B2) definiert wird.
7. Verfahren nach Anspruch 1, wobei:
der Schritt des Erzeugens eines ersten Bündels geometrischer Elemente aufweist:
Erzeugen eines ersten Bündels von geradlinigen Segmenten, wobei jedes spezifische
geradlinige Segment ein Segment ist, das einer spezifischen Geraden entspricht, die
durch die Gleichung A1*x + B1*y + C1 = 0 definiert ist, wobei x und y kartesische Achsen im zweidimensionalen physikalischen
Raum sind und (A1, B1, C1) ein spezifischer Satz entsprechender Linearkoeffizienten in dem ersten Bündel ist;
wobei der Schritt des Zuordnens des ersten Bündels zu einem ersten Polytop aufweist:
Zuordnen jedes spezifischen geradlinigen Segments in dem ersten Bündel zu dem spezifischen
parametrischen Punkt, der von dem spezifischen Satz Koordinaten (C1/B1, A1/B1) in dem parametrischen Raum definiert wird;
wobei der Schritt des Erzeugens eines zweiten Bündels geometrischer Elemente aufweist:
Erzeugen eines zweiten Bündels von geradlinigen Segmenten, wobei jedes spezifische
geradlinige Segment ein Segment ist, das einer spezifischen Geraden entspricht, die
durch die Gleichung A2*x + B2*y + C2 = 0 definiert ist, wobei (A2, B2, C2) ein spezifischer Satz linearer Koeffizienten in dem zweiten Bündel ist; und
wobei der Schritt des Zuordnens des zweiten Bündels zu einem zweiten Polytop aufweist:
Zuordnen jedes spezifischen geradlinigen Segments in dem zweiten Bündel zu dem spezifischen
parametrischen Punkt, der durch den spezifischen Satz Koordinaten (C2/A2, B2/A2) definiert wird.
8. Verfahren nach Anspruch 1, wobei
der Schritt des Erzeugens eines ersten Bündels geometrischer Elemente Folgendes aufweist:
Erzeugen eines ersten Bündels kreisrunder Bögen, wobei jeder kreisrunde Bogen in dem
ersten Bündel einen entsprechenden Mittelpunkt und einen entsprechenden Radius aufweist;
wobei der Schritt des Zuordnens des ersten Bündels zu einem ersten Polytop aufweist:
Zuordnen jedes spezifischen kreisrunden Bogens in dem ersten Bündel kreisrunder Bögen
zu dem spezifischen Mittelpunkt, der dem spezifischen kreisrunden Bogen entspricht;
wobei der Schritt des Erzeugens eines zweiten Bündels geometrischer Elemente aufweist:
Erzeugen eines zweiten Bündels kreisrunder Bögen, wobei jeder kreisrunde Bogen in
dem zweiten Bündel einen entsprechenden Mittelpunkt und einen entsprechenden Radius
aufweist; und
wobei der Schritt des Zuordnens des zweiten Bündels zu einem zweiten Polytop aufweist:
Zuordnen jedes spezifischen kreisrunden Bogens in dem zweiten Bündel kreisrunder Bögen
zu dem spezifischen Mittelpunkt, der dem spezifischen kreisrunden Bogen entspricht.
9. Vorrichtung, aufweisend Mittel zum Durchführen des Verfahrens nach einem der Ansprüche
1 bis 8.
10. Computerprogramm zum Steuern eines Computers, so dass er das Verfahren nach einem
der Ansprüche 1 bis 8 durchführt.
11. Computerlesbares Medium, auf dem das Computerprogramm nach einem der Ansprüche 1 bis
8 gespeichert ist.
1. Procédé, mis en oeuvre par ordinateur, d'approximation d'un ensemble ordonné de points
physiques dans un espace physique, chaque point physique comprenant un point nominal
et un écart admissible associé, comprenant les étapes suivantes :
la génération d'un premier paquet d'éléments géométriques reliant un premier sous-groupe
de points physiques sélectionnés parmi l'ensemble ordonné de points physiques, dans
lequel l'écart de chaque élément géométrique dans le premier paquet à chaque point
nominal dans le premier sous-groupe n'est pas supérieur à l'écart admissible associé
à chaque point nominal dans le premier sous-groupe ;
le mappage du premier paquet à un premier polytope dans un espace paramétrique, dans
lequel chaque élément géométrique dans le premier paquet est mappé à un point paramétrique
correspondant dans le premier polytope ;
la génération d'un deuxième paquet d'éléments géométriques reliant un deuxième sous-groupe
de points physiques sélectionnés parmi l'ensemble ordonné de points physiques, dans
lequel l'écart de chaque élément géométrique dans le deuxième paquet à chaque point
nominal dans le deuxième sous-groupe n'est pas supérieur à l'écart admissible associé
à chaque point nominal dans le deuxième sous-groupe ;
le mappage du deuxième paquet à un second polytope dans l'espace paramétrique, dans
lequel chaque élément géométrique dans le deuxième paquet est mappé à un point paramétrique
correspondant dans le second polytope ;
la détermination d'une première région d'intersection entre le premier polytope et
le second polytope ; et
si la première région d'intersection est nulle :
la détermination du centre du premier polytope, et
le mappage du centre du premier polytope à un élément géométrique correspondant.
2. Procédé selon la revendication 1, comprenant en outre les étapes suivantes :
si la première région d'intersection n'est pas nulle :
la génération d'un troisième paquet d'éléments géométriques reliant un troisième sous-groupe
de points physiques sélectionnés parmi l'ensemble ordonné de points physiques, dans
lequel l'écart de chaque élément géométrique dans le troisième paquet à chaque point
nominal dans le troisième sous-groupe n'est pas supérieur à l'écart admissible associé
à chaque point nominal dans le troisième sous-groupe ; et
le mappage du troisième paquet à un troisième polytope dans l'espace paramétrique,
dans lequel chaque élément géométrique dans le troisième paquet est mappé à un point
paramétrique correspondant dans le troisième polytope.
3. Procédé selon la revendication 2, comprenant en outre les étapes suivantes :
la détermination d'une seconde région d'intersection entre la première région d'intersection
et le troisième polytope ;
si la seconde région d'intersection est nulle :
la détermination du centre de la première région d'intersection ; et
le mappage du centre de la première région d'intersection avec l'élément géométrique
correspondant ;
si la seconde région d'intersection n'est pas nulle :
la génération d'un quatrième paquet d'éléments géométriques reliant un quatrième sous-groupe
de points physiques sélectionnés parmi l'ensemble ordonné de points physiques, dans
lequel l'écart de chaque élément géométrique dans le quatrième paquet à chaque point
nominal dans le quatrième sous-groupe n'est pas supérieur à l'écart admissible associé
à chaque point nominal dans le quatrième sous-groupe ; et
le mappage du quatrième paquet à un quatrième polytope dans l'espace paramétrique,
dans lequel chaque élément géométrique dans le quatrième paquet est mappé à un point
paramétrique correspondant dans le quatrième polytope.
4. Procédé selon la revendication 1, dans lequel le polytope est un polyèdre.
5. Procédé selon la revendication 1, dans lequel le polytope est un polygone.
6. Procédé selon la revendication 1, dans lequel :
l'étape de génération d'un premier paquet d'éléments géométriques comprend :
la génération d'un premier paquet de segments de ligne droite, dans lequel chaque
segment de ligne droite spécifique est un segment correspondant à une ligne spécifique
définie par l'équation A1*x + B1*y + C1 = 0, dans lequel x et y sont des axes cartésiens dans un espace physique bidimensionnel
et (A1, B1, C1) est un ensemble spécifique de coefficients linéaires correspondants dans le premier
paquet ;
l'étape de mappage du premier paquet avec un premier polytope comprend :
le mappage de chaque segment de ligne droite spécifique dans le premier paquet avec
le point paramétrique spécifique défini par l'ensemble spécifique de coordonnées (C1/B1, A1/B1) dans l'espace paramétrique ;
l'étape de génération d'un deuxième paquet d'éléments géométriques comprend :
la génération d'un deuxième paquet de segments de ligne droite, dans lequel chaque
segment de ligne droite spécifique est un segment correspondant à une ligne spécifique
définie par l'équation A2*x + B2*y + C2 = 0, dans lequel (A2, B2, C2) est un ensemble spécifique de coefficients linéaires dans le deuxième paquet ; et
l'étape de mappage du deuxième paquet avec un second polytope comprend :
le mappage de chaque segment de ligne droite spécifique dans le deuxième paquet avec
le point paramétrique spécifique défini par l'ensemble spécifique de coordonnées (C2/B2, A2/B2).
7. Procédé selon la revendication 1, dans lequel :
l'étape de génération d'un premier paquet d'éléments géométriques comprend :
la génération d'un premier paquet de segments de ligne droite, dans lequel chaque
segment de ligne droite spécifique est un segment correspondant à une ligne spécifique
définie par l'équation A1*x + B1*y + C1 = 0, dans lequel x et y sont des axes cartésiens dans un espace physique bidimensionnel
et (A1, B1, C1) est un ensemble spécifique de coefficients linéaires correspondants dans le premier
paquet ;
l'étape de mappage du premier paquet avec un premier polytope comprend :
le mappage de chaque segment de ligne droite spécifique dans le premier paquet avec
le point paramétrique spécifique défini par l'ensemble spécifique de coordonnées (C1/A1, B1/A1) dans l'espace paramétrique ;
l'étape de génération d'un deuxième paquet d'éléments géométriques comprend :
la génération d'un deuxième paquet de segments de ligne droite, dans lequel chaque
segment de ligne droite spécifique est un segment correspondant à une ligne spécifique
définie par l'équation A2*x + B2*y + C2 = 0, dans lequel (A2, B2, C2) est un ensemble spécifique de coefficients linéaires dans le deuxième paquet ; et
l'étape de mappage du deuxième paquet avec un second polytope comprend :
le mappage de chaque segment de ligne droite spécifique dans le deuxième paquet avec
le point paramétrique spécifique défini par l'ensemble spécifique de coordonnées (C2/A2, B2/A2).
8. Procédé selon la revendication 1, dans lequel :
l'étape de génération d'un premier paquet d'éléments géométriques comprend :
la génération d'un premier paquet d'arcs de cercle, dans lequel chaque arc de cercle
dans le premier paquet a un point central correspondant et un rayon correspondant
;
l'étape de mappage du premier paquet avec un premier polytope comprend :
le mappage de chaque arc de cercle spécifique dans le premier paquet d'arcs de cercle
avec le point central spécifique correspondant à l'arc de cercle spécifique ;
l'étape de génération d'un deuxième paquet d'éléments géométriques comprend :
la génération d'un deuxième paquet d'arcs de cercle, dans lequel chaque arc de cercle
dans le deuxième paquet a un point central correspondant et un rayon correspondant
; et
l'étape de mappage du deuxième paquet avec un second polytope comprend :
le mappage de chaque arc de cercle spécifique dans le deuxième paquet d'arcs de cercle
avec le point central spécifique correspondant à l'arc de cercle spécifique.
9. Appareil comprenant un moyen pour effectuer le procédé selon l'une quelconque des
revendications 1 à 8.
10. Programme d'ordinateur pour ordonner à un ordinateur d'effectuer le procédé selon
l'une quelconque des revendications 1 à 8.
11. Support lisible par ordinateur stockant le programme d'ordinateur selon l'une quelconque
des revendications 1 à 8.