Claims Analysis
Total Claims: 35
Claim 1
Independent Claim
135 words
A computer-implemented method modifying a curve
in response to a user action through a graphical user
interface in a computer system, the curve being defined by a
plurality of control points, the method comprising: identifying in response to user input each of
the control points as a fixed control point, a selected
control point, or a free control point; receiving a displacement of a plurality of
selected points; mapping a free control point of the curve to a
point Tp on a line t; defining an interpolation curve IC(t) on the
line t; projecting the point Tp to the value of the
interpolation curve IC(t) at t equals Tp to find a scale
factor; and multiplying the scale factor by the
displacement of the selected points to determine the
displacement of the free control point.
Claim 2
Dependent Claim
66 words
The method of claim 1, further comprising: mapping a plurality of free control points of
the curve to corresponding points on the line t; projecting the points on the line t to
corresponding values of the interpolation curve IC(t) to
find corresponding scale factors; and multiplying the scale factors by the
displacement of the selected points to determine the
corresponding displacements of the free control points.
Claim 3
Dependent Claim
128 words
The method of claim 1, wherein the control
points include segment end points and slope points, and
wherein the free control point mapped to the point Tp on the
line t is a free segment end point, the method further
comprising: mapping a free slope point to a point Tp+ on
the line t; defining a line Yp tangent the interpolation
curve IC(t) at t equals Tp; projecting the point Tp+ to the value of the
line Yp at t equals Tp+ to find a scale factor for the free
slope point; and multiplying the scale factors of the free
segment end points and free slope points by the displacement
of the selected points to determine the displacements of the
free segment end point and free slope point.
Claim 4
Dependent Claim
23 words
The method of claim 1, wherein the scale factor
is equal to the value of the interpolation curve IC(t) at t
equals Tp.
Claim 5
Dependent Claim
39 words
The method of claim 4, further comprising: defining the value of IC(t) to be in a range
from 0 to 1, whereby the free control point is moved by a
displacement less than the displacement of the selected
points.
Claim 6
Dependent Claim
237 words
The method of claim 1, further comprising: identifying in response to user input a first
group having a selected control point and a free control
point and a second group having a selected control point and
a free control point, the first group of control points
being separated from the second group of control points by a
fixed control point; receiving a displacement of the first group of
selected control points and the second group of selected
control points; mapping the free control point of the first
group to a point Tp1 on a first line t1, and mapping the
free control point of the second group to a point Tp2 on a
second line t2; defining a first interpolation curve IC(t1) on
the first line t1, and defining a second interpolation curve
IC(t2) on the second line t2; projecting the point Tp1 to the first
interpolation curve IC(t1) at t1 equals Tp1 to find a first
scale factor, and projecting the point Tp2 to the second
interpolation curve IC(t2) at t2 equals Tp2 to find second
scale factor; and multiplying the first scale factor by the
displacement of the first and second group of selected
points to determine the displacement of the first group free
control point, and multiplying the second scale factor by
the displacement of the first and second group of selected
points to determine the displacement of the second group
free control point.
Claim 7
Dependent Claim
15 words
The method of claim 1, wherein the curve is a
composite curve having Bezier segments.
Claim 8
Dependent Claim
65 words
The method of claim 1, wherein the curve has a
first control point, the method further comprising: defining a polyline that passes through the
control points of the curve; calculating the total length of the polyline,
wherein the point Tp is equal to the length between the
first point and the point corresponding to the point Tp
divided by the total length of the polyline.
Claim 9
Dependent Claim
37 words
The method of claim 1, further comprising: defining the line t as being perpendicular to
the direction of the displacement, wherein the first mapping
step projects the control points of the curve
perpendicularly onto the line t.
Claim 10
Dependent Claim
16 words
The method of claim 1, wherein the
interpolation curve is defined as a third-order cubic curve.
Claim 11
Dependent Claim
142 words
A computer-implemented method modifying a
plurality of curves in response to a user action through a
graphical user interface in a computer system, wherein each
curve is defined by a plurality of control points, the
method comprising: identifying in response to user input each of
the control points as a fixed control point, a selected
control point, or a free control point; receiving a displacement of a selected point of
each curve; mapping a free control point of each curve to a
point of a corresponding one of a plurality of lines; defining an interpolation curve on each line; projecting the point on each line to the
corresponding interpolation curve to find a scale factor for
each free control point; and multiplying the scale factors by the
displacement of the selected control points to determine the
displacements of the free control points.
Claim 12
Dependent Claim
16 words
The method of claim 11, wherein the curve is a
composite curve having multiple Bezier segments.
Claim 13
Dependent Claim
96 words
A computer-implemented graphical user interface
method creating a Bezier curve segment on a display in a
computer system, the method comprising: receiving a selection of a first segment end
point through a graphical user interface in the computer
system; receiving the position of a cursor on the
computer display as a second segment end point; calculating first and second slope points so
that the Bezier segment defined by the first and second
segment end points and the first and second slope points
approximates an arc; and displaying the calculated Bezier curve segment
on the computer display.
Claim 14
Dependent Claim
25 words
The method of claim 13, further comprising: redefining new positions of the second segment
end point as the cursor is moved about the computer display.
Claim 15
Dependent Claim
44 words
The method of claim 13, further comprising: receiving selection of an intermediate slope
point; and defining a vector between the segment end point
and the intermediate slope point to specify a direction
along which the first slope point is positioned on the
computer display.
Claim 16
Dependent Claim
117 words
The method of claim 13, further comprising: receiving a command to concatenate a second
Bezier curve segment to the first Bezier curve segment; defining the second segment end point of the
first curve segment as a first segment end point of the
second curve segment; receiving the position of the cursor on the
computer display as a second segment end point of the second
curve segment; calculating first and second slope points of
the second curve segment so that the second Bezier curve
segment defined by its first and second segment end points
and its first and second slope points approximates an arc;
and displaying the concatenated first and second
Bezier curve segments on the computer display.
Claim 17
Dependent Claim
112 words
The method of claim 16, further comprising: receiving selection of an intermediate slope
point for the first curve segment; defining a first vector between the first
segment end point of the first curve segment and the
intermediate slope point to specify a direction along which
the first slope point of the first curve segment is
positioned on the computer display; defining a line passing through the second
slope point and the second segment end point of the first
curve segment; and defining an intermediate slope point for the
second curve segment as a point on the line on the other
side of the second segment end point of the first curve
segment.
Claim 18
Dependent Claim
149 words
A computer program residing on a computer-readable
medium for modifying a curve in response to a user
action through a graphical user interface in a computer
system, the curve being defined by a plurality of control
points, the computer program comprising instructions for
causing the computer system to: identify in response to user input each of the
control points as a fixed control point, a selected control
point, or a free control point; receive a displacement of a plurality of
selected points; map a free control point of the curve to a
point Tp on a line t; define an interpolation curve IC(t) on the line
t; project the point Tp to the value of the
interpolation curve IC(t) at t equals Tp to find a scale
factor; and multiply the scale factor by the displacement
of the selected points to determine the displacement of the
free control point.
Claim 19
Dependent Claim
74 words
The computer program of claim 18, further
comprising instructions for causing the computer system to: map a plurality of free control points of the
curve to corresponding points on the line t; project the points on the line t to
corresponding values of the interpolation curve IC(t) to
find corresponding scale factors; and multiply the scale factors by the displacement
of the selected points to determine the corresponding
displacements of the free control points.
Claim 20
Dependent Claim
137 words
The computer program of claim 18, wherein the
control points include segment end points and slope points,
and wherein the free control point mapped to the point Tp on
the line t is a free segment end point, the computer program
further comprising instructions for causing the computer
system to: map a free slope point to a point Tp+ on the
line t; define a line Yp tangent the interpolation
curve IC(t) at t equals Tp; project the point Tp+ to the value of the line
Yp at t equals Tp+ to find a scale factor for the free slope
point; and multiply the scale factors of the free segment
end points and free slope points by the displacement of the
selected points to determine the displacements of the free
segment end point and free slope point.
Claim 21
Dependent Claim
47 words
The computer program of claim 4, further
comprising instructions for causing the computer system to: define the value of IC(t) to be in a range from
0 to 1, whereby the free control point is moved by a
displacement less than the displacement of the selected
points.
Claim 22
Dependent Claim
245 words
The computer program of claim 18, further
comprising instructions for causing the computer system to: identify in response to user input a first
group having a selected control point and a free control
point and a second group having a selected control point and
a free control point, the first group of control points
being separated from the second group of control points by a
fixed control point; receive a displacement of the first group of
selected control points and the second group of selected
control points; map the free control point of the first group
to a point Tp1 on a first line t1, and mapping the free
control point of the second group to a point Tp2 on a second
line t2; define a first interpolation curve IC(t1) on
the first line t1, and defining a second interpolation curve
IC(t2) on the second line t2; project the point Tp1 to the first
interpolation curve IC(t1) at t1 equals Tp1 to find a first
scale factor, and projecting the point Tp2 to the second
interpolation curve IC(t2) at t2 equals Tp2 to find second
scale factor; and multiply the first scale factor by the
displacement of the first and second group of selected
points to determine the displacement of the first group free
control point, and multiplying the second scale factor by
the displacement of the first and second group of selected
points to determine the displacement of the second group
free control point.
Claim 23
Dependent Claim
16 words
The computer program of claim 18, wherein the
curve is a composite curve having Bezier segments.
Claim 24
Dependent Claim
156 words
A computer program residing on a computer-readable
medium for modifying a plurality of curves in
response to a user action through a graphical user interface
in a computer system, wherein each curve is defined by a
plurality of control points, the computer program comprising
instructions for causing the computer system to: identify in response to user input each of the
control points as a fixed control point, a selected control
point, or a free control point; receive a displacement of a selected point of
each curve; map a free control point of each curve to a
point of a corresponding one of a plurality of lines; define an interpolation curve on each line; project the point on each line to the
corresponding interpolation curve to find a scale factor for
each free control point; and multiply the scale factors by the displacement
of the selected control points to determine the
displacements of the free control points.
Claim 25
Dependent Claim
17 words
The computer program of claim 24, wherein the
curve is a composite curve having multiple Bezier segments.
Claim 26
Dependent Claim
100 words
A computer program residing on a computer-readable
medium for creating a Bezier curve segment, the
computer program comprising instructions for causing the
computer system to: receive a selection of a first segment end
point through a graphical user interface in the computer
system; receive the position of a cursor on the
computer display as a second segment end point; calculate first and second slope points so that
the Bezier segment defined by the first and second segment
end points and the first and second slope points
approximates an arc; and display the calculated Bezier curve segment on
the computer display.
Claim 27
Dependent Claim
125 words
The computer program of claim 26, further
comprising instructions for causing the computer system to: receive a command to concatenate a second
Bezier curve segment to the first Bezier curve segment; define the second segment end point of the
first curve segment as a first segment end point of the
second curve segment; receive the position of the cursor on the
computer display as a second segment end point of the second
curve segment; calculate first and second slope points of the
second curve segment so that the second Bezier curve segment
defined by its first and second segment end points and its
first and second slope points approximates an arc; and display the concatenated first and second
Bezier curve segments on the computer display.
Claim 28
Dependent Claim
124 words
A computer-implemented method modifying a curve
in response to a user action through a graphical user
interface in a computer system, the curve being defined by a
plurality of control points and having two curve end points,
the method comprising: defining a slope adjustment point; receiving a displacement through the graphical
user interface of the slope adjustment point; mapping a control point of the curve to a point
Tp on a line t; defining an interpolation curve IC(t) on the
line t; projecting the point Tp to the value of the
interpolation curve IC(t) at t equals Tp to find a scale
factor; and multiplying the scale factor by the
displacement of the selected points to determine the
displacement of the free control point.
Claim 29
Dependent Claim
14 words
The method of claim 28, wherein the
interpolation curve IC(t) is a Bernstein polynomial.
Claim 30
Dependent Claim
16 words
The method of claim 28, wherein the curve is a
composite curve having Bezier curve segments.
Claim 31
Dependent Claim
40 words
The method of claim 28, further comprising: defining a Bezier curve segment having segment
end points that coincide with the curve end points; and using one of the slope points of the Bezier
curve segment as the slope adjustment point.
Claim 32
Dependent Claim
132 words
A computer program, residing on a computer-readable
medium for modifying a curve in response to a user
action through a graphical user interface in a computer
system, the curve being defined by a plurality of control
points, the computer program comprising instructions for
causing the computer system to: define a slope adjustment point; receive a displacement through the graphical
user interface of the slope adjustment point; map a control point of the curve to a point Tp
on a line t; define an interpolation curve IC(t) on the line
t; project the point Tp to the value of the
interpolation curve IC(t) at t equals Tp to find a scale
factor; and multiply the scale factor by the displacement
of the selected points to determine the displacement of the
free control point.
Claim 33
Dependent Claim
15 words
The computer program of claim 32, wherein the
interpolation curve IC(t) is a Bernstein polynomial.
Claim 34
Dependent Claim
17 words
The computer program of claim 32, wherein the
curve is a composite curve having Bezier curve segments.
Claim 35
Dependent Claim
48 words
The computer program of claim 32, further
comprising instructions for causing the computer system to: define a Bezier curve segment having segment
end points that coincide with the curve end points; and use one of the slope points of the Bezier curve
segment as the slope adjustment point.