Reducing the amount of graphical line data transmitted via a low bandwidth transport protocol mechanism
First Claim
1. A method of efficiently reducing the amount of graphical data transmitted from a server to a client via a communications network, the method comprising the steps of:
- separating a path defined by at least one drawing command of an application into a first strip and a second strip the first and second strips represented as a plurality of consecutive pixels, and each having;
a beginning coordinate and an endpoint coordinate defined within a coordinate system, a strip length, and an absolute angle associated therewith, the coordinate system corresponding to a region of a display unit associated with the client;
determining for the second strip a quantized angle associated wit the absolute angle of the second strip;
the quantized angle measured with respect to the coordinate system at the endpoint of the first strip;
forming a protocol stream at the server, the protocol stream including a beginning coordinate of the path and the strip length and an indicia of the quantized angle of each of the plurality of strips; and
transmitting the protocol stream from the server to the client via the communications network.
7 Assignments
0 Petitions
Accused Products
Abstract
The performance of distributed systems can be improved by reducing the amount of graphical line data transmitted between a server and a client. The server separates the graphical line data into a plurality of strips. The server then determines a quantized angle and a strip length for each of the strips. The beginning coordinate of the graphical line data is packaged together with the quantized angle or indicia of the quantized angle and the strip length data into a protocol packet and compressed prior to transmission to the client. In one embodiment the strip data transmitted to the client includes a second indicia that a particular strip has been previously transmitted to the client and the client is instructed to form the strip using locally stored data.
221 Citations
12 Claims
-
1. A method of efficiently reducing the amount of graphical data transmitted from a server to a client via a communications network, the method comprising the steps of:
-
separating a path defined by at least one drawing command of an application into a first strip and a second strip the first and second strips represented as a plurality of consecutive pixels, and each having;
a beginning coordinate and an endpoint coordinate defined within a coordinate system, a strip length, and an absolute angle associated therewith, the coordinate system corresponding to a region of a display unit associated with the client;determining for the second strip a quantized angle associated wit the absolute angle of the second strip;
the quantized angle measured with respect to the coordinate system at the endpoint of the first strip;forming a protocol stream at the server, the protocol stream including a beginning coordinate of the path and the strip length and an indicia of the quantized angle of each of the plurality of strips; and transmitting the protocol stream from the server to the client via the communications network. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of efficiently reducing the amount of graphical data transmitted from a server to a client via a communications network, the method comprising the steps of:
-
separating a path defined by at least one drawing command of an application into a plurality of strips, each of the plurality of strips represented as a plurality of consecutive pixels and having a beginning coordinate and an endpoint coordinate defined within a coordinate system, the coordinate system corresponding to a region of a display unit associated with the client; quantizing the coordinate system into a plurality of quantized angles; determining the endpoint coordinate of a first one of the plurality of strips; normalizing the endpoint coordinate of the first strip to correspond to the origin of the coordinate system; associating the endpoint coordinate of the first strip to a beginning coordinate of a second one of the plurality of strips; selecting one of the plurality of quantized angles of the coordinate system, the selected quantized angle corresponding to an approximate angle of the second strip; and transmitting a difference between the endpoint coordinates of the first and second strips and an indication of the quantized angle to the client.
-
-
7. A system for efficiently reducing the amount of graphical data transmitted from a server to a client via a communications network, the system comprising:
-
a server agent operating on the server and coupled to the client via the communications network, wherein the server agent a) separates a path defined by at least one drawing command of an application into a first strip and a second strips, the first and second strips represented as a plurality of consecutive pixels, and each having a beginning coordinate and an endpoint coordinate defined within a coordinate system, a strip length and an absolute angle associated therewith, the coordinate system corresponding to a region of a display unit associated with the client; b) determines for the second strip a quantized angle associated with the absolute angle of the second plurality of strips, the quantized angle measured with respect to the coordinate system at the endpoint of the first strip; c) forms a protocol stream at the server, the protocol stream including a beginning coordinate of the path and the strip length and an indicia of the quantized angle of each of the plurality of strips; and d) transmits the protocol stream from the server to the client via the communications network. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A system for efficiently reducing the amount of graphical data transmitted from a server to a client via a communications network, the system comprising:
-
a server agent operating on the server and coupled to the client via the communications network wherein the server agent a) separates a path defined by at least one drawing command of an application into a plurality of strips, each of the plurality of strips represented as a plurality of consecutive pixels and having a beginning coordinate and an endpoint coordinate defined within a coordinate system, the coordinate system corresponding to a region of a display unit associated with the client; b) quantizes the coordinate system into a plurality of quantized angles; c) determines the endpoint coordinate of a first one of the plurality of strips; d) normalizes the endpoint coordinate of the first strip to correspond to the origin of the coordinate system; e) associates the endpoint coordinate of the first strip to a beginning coordinate of a second one of the plurality of strips; f) selects one of the plurality of quantized angles of the coordinate system, the selected quantized angle corresponding to an approximate angle of the second strip; and g) transmits a difference between the endpoint coordinates of the first and second strips and an indication of the quantized angle to the client.
-
Specification