<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ep-patent-document PUBLIC "-//EPO//EP PATENT DOCUMENT 1.1//EN" "ep-patent-document-v1-1.dtd">
<ep-patent-document id="EP89116145B1" file="EP89116145NWB1.xml" lang="en" country="EP" doc-number="0357076" kind="B1" date-publ="19950809" status="n" dtd-version="ep-patent-document-v1-1">
<SDOBI lang="en"><B000><eptags><B001EP>......DE....FRGB..................................</B001EP><B005EP>J</B005EP><B007EP>DIM360   - Ver 2.5 (21 Aug 1997)
 2100000/0</B007EP></eptags></B000><B100><B110>0357076</B110><B120><B121>EUROPEAN PATENT SPECIFICATION</B121></B120><B130>B1</B130><B140><date>19950809</date></B140><B190>EP</B190></B100><B200><B210>89116145.7</B210><B220><date>19890831</date></B220><B240><B241><date>19900620</date></B241><B242><date>19931201</date></B242></B240><B250>en</B250><B251EP>en</B251EP><B260>en</B260></B200><B300><B310>217289/88</B310><B320><date>19880831</date></B320><B330><ctry>JP</ctry></B330><B310>246377/88</B310><B320><date>19880930</date></B320><B330><ctry>JP</ctry></B330></B300><B400><B405><date>19950809</date><bnum>199532</bnum></B405><B430><date>19900307</date><bnum>199010</bnum></B430><B450><date>19950809</date><bnum>199532</bnum></B450><B451EP><date>19940928</date></B451EP></B400><B500><B510><B516>6</B516><B511> 6G 09G   1/14   A</B511><B512> 6G 06T  15/00   B</B512><B512> 6G 06T   3/00   B</B512></B510><B540><B541>de</B541><B542>System zum Generieren einer geneigten rechteckigen Form</B542><B541>en</B541><B542>Inclined rectangular pattern generating system</B542><B541>fr</B541><B542>Système de génération d'une forme rectangulaire inclinée</B542></B540><B560><B561><text>EP-A- 0 229 693</text></B561></B560><B590><B598>4</B598></B590></B500><B700><B720><B721><snm>Kubota, Kazuhiro</snm><adr><str>c/o NEC Corporation
7-1 Shiba 5-chome</str><city>Minato-ku
Tokyo</city><ctry>JP</ctry></adr></B721></B720><B730><B731><snm>NEC CORPORATION</snm><iid>00236690</iid><irf>NKO 03 EP</irf><adr><str>7-1, Shiba 5-chome
Minato-ku</str><city>Tokyo</city><ctry>JP</ctry></adr></B731></B730><B740><B741><snm>Betten &amp; Resch</snm><iid>00101031</iid><adr><str>Reichenbachstrasse 19</str><city>80469 München</city><ctry>DE</ctry></adr></B741></B740></B700><B800><B840><ctry>DE</ctry><ctry>FR</ctry><ctry>GB</ctry></B840><B880><date>19920102</date><bnum>199201</bnum></B880></B800></SDOBI><!-- EPO <DP n="1"> -->
<description id="desc" lang="en">
<heading id="h0001">Background of the Invention</heading>
<heading id="h0002">Field of the invention</heading>
<p id="p0001" num="0001">The present invention relates to a digital data processor, and more specifically to an inclined rectangular pattern generating system for generating a rectangular pattern which is inclined to an X axis by an angle ϑ in a two-dimensional X-Y plane, by means of rewriting a memory space storing a graphic pattern.</p>
<heading id="h0003">Description of Related Art</heading>
<p id="p0002" num="0002">In general, a graphic pattern such a rectangle has been displayed on a graphic display by performing required processing on a graphic or display memory which is composed of unitary memory elements each corresponding to a unitary dot displayed on a display screen in a one-to-one relation.</p>
<p id="p0003" num="0003">For example, in a case of indicating an elongated rectangle, a lengthwise straight line having a width corresponding to the unitary dot is drawn or depicted by a so-called lengthwise straight line generator in a vector direction of one lengthwise side of the elongated rectangle to be indicated. In addition, in order to cause the rectangle to have a given width, a required number of lengthwise straight lines having the unitary dot width are drawn or depicted. In this process, in order to determine a<!-- EPO <DP n="2"> --> starting point of each of the required number of lengthwise straight lines, a so-called widthwise straight line generator is used for generating one normal line formed by the starting points of all the lengthwise straight lines to be drawn. Thus, coordinates of all dots required to form the elongated rectangle to be drawn or depicted are obtained by use of the lengthwise straight line generator and the widthwise straight line generator in combination, with the result that the elongated rectangle having a given length and a given width are drawn.</p>
<p id="p0004" num="0004">More specifically, one example of drawing a rectangle will be explained with reference to Figures 1 to 3. In these figures, small circles indicate a unitary dot indicated on a display screen. Ordinarily, when a straight line pattern forrned by a straight line generator is inclined to an X-axis by an angle less than 45 degree, the straight line pattern will continuously change its X coordinate dot by dot, but with each one dot change of the X coordinate, the Y-coordinate of the straight line pattern will change one dot or will not change, as shown in Figure 1. On the other hand, when a straight line pattern formed by the straight line generator is inclined to the X-axis by an angle greater than 45 degree, the straight line pattern will continuously change its Y coordinate dot by dot, but the X-coordinate of the straight line pattern will change one dot or will not change in response to each one dot change of the Y coordinate, as shown in Figure 2.</p>
<p id="p0005" num="0005">Now, assume that a rectangle having a length of 6 dots and a width of 5 dots and having an inclination angle of ϑ to the X axis is drawn by using two straight line generators having the above mentioned characteristics.<!-- EPO <DP n="3"> --></p>
<p id="p0006" num="0006">As shown in Figure 3, a first lengthwise straight line starting from a coordinate of (XD, YD) (i. e., one corner of of the rectangle to be drawn) and formed of a string of dots A1, B1, C1, D1, E1 and F1 is drawn by a lengthwise straight line generator. Thereafter, a second lengthwise straight line formed of a string of dots A2, B2, C2, D2, E2 and F2 as shown in Figure 3 is to be drawn by the lengthwise straight line generator. At this time, in order to determine a starting dot A2 of the second lengthwise straight line, a widthwise straight line generator as mentioned hereinbefore is used to generate a widthwise line which forms one widthwise side of the rectangle to be drawn extending from the above mentioned corner of the rectangle and which will be formed by respective starting dots A2, A3, A4, and A5 of the second and succeeding lengthwise straight lines. Then, the second and succeeding lengthwise straight lines respectively starting from the dots A2, A3, A4, and A5 thus obtained are sequentially formed by the lengthwise straight line generator.</p>
<p id="p0007" num="0007">Thus, as shown in Figure 3, there has been drawn the elongated rectangle having a length of 6 dots and a width of 5 dots and having X-and Y- direction minute changes ΔX and ΔY corresponding to the inclination angle ϑ of the lengthwise side to the X axis (ΔX/ΔY=tan ϑ).</p>
<p id="p0008" num="0008">However, in the case that an inclined rectangle is drawn, undrawn dots will occur as black dots shown in Figure 3. This means that memory cells of the display memory corresponding to the undrawn dots, i.e., the black dots will maintain such information as existed before the rectangle concerned has been drawn. The rectangle having the undrawn dots, which can be called a "dot missing" or "wormhole" rectangle, cannot give a natural impression to a viewer.<!-- EPO <DP n="4"> --></p>
<p id="p0009" num="0009">In EP 0 229 693 there is described a method and an apparatus for efficiently drawing wide lines in a graphics display system, which identify a wide line to be drawn, draw a first line of pixels of the wide line, determine if a next pixel line in the wide line has a different first coordinate value from a first coordinate value of the first line, generate at least one additional pixel value for the next line if the first coordinate value of the next line is different from the first coordinate value of an immediately previously drawn line and this being repeated until the wide line has been completely drawn.<!-- EPO <DP n="5"> --></p>
<heading id="h0004">Summary of the Invention</heading>
<p id="p0010" num="0010">Accordingly, it is an object of the present invention to provide an inclined rectangular pattern generating system which has overcome the above mentioned defect of the conventional one.</p>
<p id="p0011" num="0011">Another object of the present invention is to provide an inclined rectangular pattern generating system capable of drawing an inclined rectangular pattern without the "dot missing" or "wormhole".</p>
<p id="p0012" num="0012">The above and other objects of the present invention are achieved in accordance with the present invention by a rectangular pattern generating system for generating an inclined rectangular pattern on a two-dimensional X-Y plane by re-writing a display memory, as described in the claims.<!-- EPO <DP n="6"> --></p>
<p id="p0013" num="0013">The above and other objects, features and advantages of the present invention will be apparent from the following description of preferred embodiments of the invention with reference to the accompanying drawings.<!-- EPO <DP n="7"> --></p>
<heading id="h0005">Brief Description of the Drawings</heading>
<p id="p0014" num="0014">
<ul id="ul0001" list-style="none">
<li>Figure 1 is a diagram illustrating a straight line pattern drawn in a conventional manner, with an inclined angle less than 45 degrees to a horizontal axis;</li>
<li>Figure 2 is a diagram illustrating a straight line pattern drawn in accordance with a conventional manner, with an inclined angle greater than 45 degrees to a horizontal axis;</li>
<li>Figure 3 is a diagram of a rectangular pattern having a length of 6 dots and a width of 5 dots and having an an inclined angle ϑ to a horizontal axis, which is drawn by using the straight line patterns shown in Figures 1 and 2;</li>
<li>Figure 4 is a block diagram of an embodiment of the inclined rectangular pattern generating system in accordance with the present invention;</li>
<li>Figure 5 is a diagram illustrating a straight line pattern having an inclined angle less than 45 degrees to a horizontal axis, which is drawn in accordance with the present invention by using a straight line generator and a dot controller in accordance with the present invention in combination;</li>
<li>Figure 6 is a diagram illustrating a straight line pattern having an inclined angle greater than 45 degrees to a horizontal axis, which is drawn in accordance with the present invention by using a straight line generator and a dot controller in accordance with the present invention in combination;</li>
<li>Figure 7 is a diagram of a rectangular pattern having a length of 6 dots and a width of 5 dots and having an an inclined angle ϑ to a<!-- EPO <DP n="8"> --> horizontal axis, which is drawn in accordance with the present invention by using the straight line patterns shown in Figures 5 and 6; and</li>
<li>Figure 8 is a flowchart illustrating a drawing operation of the inclined rectangular pattern generating system in accordance with the present invention.</li>
</ul></p>
<heading id="h0006">Description of the Preferred embodiments</heading>
<p id="p0015" num="0015">Referring to Figure 4, there is shown a diagram of an embodiment of the inclined rectangular pattern generating system in accordance with the present invention. The inclined rectangular pattern generating system shown comprises a data processor 10 for supplying necessary data to registers, straight line generators and other circuits explained hereinafter and for controlling these registers, straight line generators and other circuits. Namely, the data processor 10 supplies a ΔX register 12 and ΔY register 14 with X- and Y- direction minutes changes ΔX and ΔY, respectively, where ΔX/ΔY = tan ϑ and ϑ is an inclined angle between an X axis and the lengthwise side of the rectangle to be drawn. The ΔX register 12 and the ΔY register 14 are connected to a lengthwise straight line generator 16 controlled by the data processor 10 so as to generate coordinates for a lengthwise straight line having a width corresponding to a unitary dot, in parallel to a length side of a rectangle to be drawn or depicted. The ΔX register 12 and the ΔY register 14 are also connected to a widthwise straight line generator 18 controlled by the data processor 10 so as to generate coordinates for a widthwise straight line formed of starting dots of a plurality of lengthwise straight lines having the unitary dot width when the plurality of lengthwise straight lines are to be drawn. Specifically, each of the lengthwise straight line generator 16 and the<!-- EPO <DP n="9"> --> widthwise straight line generator 18 operates to generate X- and Y-direction increment/decrement signals supplied to an adder/subtracter 20, which operates to increment or decrement registers explained hereinafter. The lengthwise straight line generator 16 and the widthwise straight line generator 18 are also coupled to a dot controller 22, which operates as follows. When a coordinate (XL<sub>i</sub>, YL<sub>i</sub>) generated by the lengthwise straight line generator 16 changes both in a X-coordinate and in a Y-coordinate from an immediately preceding coordinate (XL<sub>i-1</sub>, YL<sub>i-1</sub>) generated by the lengthwise straight line generator 16, and when a coordinate (XW<sub>i</sub>, YW<sub>i</sub>) generated by the widthwise straight line generator 18 changes both in a X-coordinate and in a Y-coordinate from an immediately preceding coordinate (XW<sub>i-1</sub>, YW<sub>i-1</sub>) generated by the widthwise straight line generator 18, the dot controller 22 operates to the effect that a dot is written at a coordinate (XL<sub>i</sub>, YL<sub>i-1</sub>) or (XL<sub>i-1</sub>, YL<sub>i</sub>) which changes only in the X-direction or in the Y-direction from the immediately preceding coordinate (XL<sub>i-1</sub>, YL<sub>i-1</sub>) generated by the lengthwise straight line generator 16.</p>
<p id="p0016" num="0016">In addition, the system shown includes a XD register 24 and a YD register 26 which store an X-coordinate and a Y-coordinate, respectively, of a dot to be written. The XD register 24 and the YD register 26 are coupled to the data processor 10 so as to receive a X-coordinate and a Y-coordinate of a drawing starting point from the data processor 10 and to output a X-coordinate and a Y-coordinate of a dot to be written, to the data processor 10. In addition, the XD register 24 and the YD register 26 are coupled to a memory access controller 28, which can be called a "drawer" and is coupled to receive signals from the data processor 10. This memory access controller 28 is also coupled to a dot information register 30 for holding dot information read from and to be written into a<!-- EPO <DP n="10"> --> display memory 32. On the basis of the signals outputted from the data processor 10 and the registers 24 and 26, the memory access controller 28 operates to cause the content of the dot information register 30 (namely, a dot) to be written into a memory location (i.e., a unitary memory element) of the display memory 32 corresponding to the X-coordinate and the Y-coordinate stored in the XD register 24 and the YD register 26.</p>
<p id="p0017" num="0017">Furthermore, the system includes a DH register 34 coupled to the data processor 10 for storing a length DH of a rectangle to be drawn, and a DV register 36 coupled to the data processor 10 for storing a width DV of the rectangle to be drawn. The XD register 24, the YD register 26 and the DH register 34 are associated with preserving work registers 38, 40 and 42, respectively.</p>
<p id="p0018" num="0018">Figures 5 to 7 show examples of patterns drawn illustrating a specific drawing operation of the above mentioned inclined rectangular pattern generating system. In these figures, each circle shows one dot indicated on a display screen.</p>
<p id="p0019" num="0019">Specifically, Figure 5 illustrates a straight line pattern having an inclined angle less than 45 degrees to a horizontal axis, which is drawn by cooperation of the lengthwise straight line generator 16 and the dot controller 22, and Figure 6 illustrates a straight line pattern having an inclined angle greater than 45 degrees to a horizontal axis, which is also drawn by cooperation of the lengthwise straight line generator 16 and the dot controller 22.</p>
<p id="p0020" num="0020">Figure 7 illustrates a rectangular pattern having a length of 6 dots and a width of 5 dots and having an an inclined angle ϑ to a horizontal axis, which is drawn by using the straight line patterns shown in Figures 5 and 6. In Figure 7, a coordinate (XD, YD) is indicative of a position of a<!-- EPO <DP n="11"> --> dot A1 which corresponds to an upper left corner of the rectangular pattern to be drawn. Namely, the coordinate (XD, YD) means a drawing operation starting position or dot. ϑ represents an angle between an X axis and a direction of a lengthwise side of the rectangle to be drawn extending from the drawing operation starting dot A1. This direction will be called a "lengthwise vector" sometimes hereinafter, which is symbolized by α in the figure. A direction of a widthwise side of the rectangular to be drawn extending from the drawing operation starting dot A1, will be called a "widthwise vector" sometimes hereinafter, which is symbolized by β in the figure. In addition, ΔX and ΔY represent X- and Y- direction minute change components, respectively, which are defined by the angle ϑ (ΔX/ΔY = tan ϑ).</p>
<p id="p0021" num="0021">Next, a basic operation of the inclined rectangular pattern generating system will be described with reference to the above explained figures. First, assume that the angle ϑ is greater than 0 degree but less than 45 degrees. In this case, a lengthwise straight line drawing pattern (namely, for preventing the so-called "wormhole") is determined based upon whether the "wormhole" occurs to the right or to the left of a lengthwise vector defined by a lengthwise line generated by using the lengthwise straight line generator 16. Two lengthwise straight line drawing patterns shown in Figure 5 illustrate the two different cases, respectively. The lengthwise straight line drawing pattern shown in the upper portion of Figure 5 shows the case in which the "wormhole" occurs to the left of the lengthwise vector as shown by double circles, and the lengthwise straight line drawing pattern shown in the lower portion the Figure 5 shows the case in which the "wormhole" occurs to the right of the lengthwise vector as shown by double circles.<!-- EPO <DP n="12"> --></p>
<p id="p0022" num="0022">Whether the "wormhole" occurs to the right or at the left of a lengthwise vector defined by a lengthwise line generated by using the lengthwise straight line generator 16, namely, which of the two lengthwise straight line drawing patterns shown in Figure 5 should be used, is determined by a widthwise vector defined by a line generated by the widthwise straight line generator 18. If the widthwise vector is directed towards the left of the lengthwise vector, the "wormhole" will occur at the left of the lengthwise vector, and therefore, the lengthwise straight line drawing pattern shown in the upper portion of Figure 5 composed of dots indicated by the single circles and dots indicated by the double circles is then adopted. On the other hand, if the widthwise vector is directed towards the right of the lengthwise vector, the "wormhole" will occur to the right of the lengthwise vector, and therefore, the lengthwise straight line drawing pattern shown at the lower portion of Figure 5 is then adopted.</p>
<p id="p0023" num="0023">In addition, it is seen from Figure 3 that the "wormhole" will occur when the dot position of a lengthwise straight line drawing pattern starting from a starting dot whose dot position has changed both in the X-coordinate and in the Y-coordinate from a starting dot of an immediately preceding lengthwise straight line, changes both in the X-coordinate and in the Y-coordinate.</p>
<p id="p0024" num="0024">In the inclined rectangular pattern generating system, therefore, when occurrence of the "wormhole" is expected, the position of the expected "wormhole" is determined on the basis of the direction of the lengthwise vector and the direction of the widthwise vector, as shown by the dots indicated by the double circles in Figure 5. In other words, the<!-- EPO <DP n="13"> --> expected "wormhole" can be filled up by drawing the lengthwise straight line as the lengthwise straight line pattern shown in Figure 5.</p>
<p id="p0025" num="0025">Next, assume that the angle ϑ is equal to or greater than 45 degrees but less than 90 degrees. This case is illustrated in Figure 6 It will be apparent to persons skilled in the art from a comparison between Figures 5 and 6 that the "wormhole" in the second case can be prevented similarly to the first case. Furthermore, even if the angle ϑ is greater than 90 degrees, the "wormhole" can be prevented in a similar manner except that the directions of the lengthwise vector and/or the widthwise vector are different from the first case of the angle ϑ less than 45 degrees.</p>
<p id="p0026" num="0026">Now, an operation for drawing an inclined rectangular pattern as shown in Figure 7 will be described with reference to Figure 8 showing a flow chart illustrating the operation of the inclined rectangular pattern generating system. Here, assume that the inclined rectangle to be drawn has the length DH and the width DV and also has an inclined angle ϑ between the X axis and the lengthwise side of the rectangle. Further, assume that a drawing starting point of the inclined rectangle is (XD, YD) on the X-Y coordinate plane.</p>
<heading id="h0007">STEP 1</heading>
<p id="p0027" num="0027">First, X- and Y- direction minute changing components ΔX and ΔY which are derived from the inclined angle ϑ are set into the ΔX register 12 and the ΔY register 14 by the data processor 10, and the lengthwise straight line generator 16 and the widthwise straight line generator 18 are initialized by the data processor 10. Specifically, the lengthwise straight line generator 16 is initialized to continuously calculate an X-direction displacement and a Y-direction displacement of a lengthwise straight line on the basis of the minute changing components ΔX and ΔY stored in the<!-- EPO <DP n="14"> --> ΔX register 12 and the ΔY register 14, and to generate an X-coordinate and a Y-coordinate of each of the dots forming the lengthwise straight line. On the other hand, the widthwise straight line generator 18 is initialized to continuously calculate an X-direction displacement and a Y-direction displacement of a widthwise straight line on the basis of the minute changing components ΔX and ΔY stored in the ΔX register 12 and the ΔY register 14, and to generate an X-coordinate and a Y-coordinate of each of the dots forming the widthwise straight line.</p>
<p id="p0028" num="0028">In addition, the XD register 24, the YD register 26, the DH register 34 and the DV register 36 are also initialized by the data processor 10 so as to hold an X-coordinate and a Y-coordinate of the drawing starting point (XD, YD), and the length and the width of the rectangle to be drawn, respectively.</p>
<heading id="h0008">STEP 2</heading>
<p id="p0029" num="0029">The contents of the XD register 24, the YD register 26 and the DH register 34 are saved in the preserving working registers XD′38, YD′40 and DH′42, respectively.</p>
<heading id="h0009">STEP 3</heading>
<p id="p0030" num="0030">The widthwise straight line generator 18 is controlled to generate, on the basis of the contents of the ΔX and ΔY registers 12 and 14, an X-coordinate increment/decrement signal and a Y-coordinate increment/decrement signal which respectively indicate the displacement both in the X-direction and in the Y-direction from the drawing starting dot A1 (XD, YD) of a second dot A2 of a widthwise straight line extending from the drawing starting dot A1. On the basis of the X-coordinate increment/decrement signal and the Y-coordinate increment/decrement signal, the adder/subtracter 20 will increment or decrement the contents<!-- EPO <DP n="15"> --> of the XD′ register 38 and the YD′ register 40. As a result, the XD′ register 38 and the YD′ register 40 are respectively re-written with an X-coordinate and a Y-coordinate of a starting dot A2 of a second lengthwise straight line (composed of dots A2, B2, C2, D2, E2 and F2) of a unitary dot width which should be drawn after a first lengthwise straight line (composed of dots A1, B1, C1, D1, E1 and F1). At this time, whether or not the values of both the XD′ register 38 and the YD′ register 40 are changed is determined, and if the values of both the XD′ register 38 and the YD′ register 40 are changed, the dot controller 22 is notified of the fact. (For example, the dot controller 22 can know this fact by examining the X-coordinate increment/decrement signal and the Y-coordinate increment/decrement signal from the widthwise straight line generator 18.)</p>
<heading id="h0010">STEP 4</heading>
<p id="p0031" num="0031">The memory access controller 28 causes the dot information stored in the dot information register 30 to be outputted to the display memory 32, and controls the memory so that the dot information is written into a memory location corresponding to a dot position A1 in Figure 7, i.e., the coordinate (XD, YD) defined by the contents of the XD register 24 and the YD register 26.</p>
<heading id="h0011">STEP 5</heading>
<p id="p0032" num="0032">Thereafter, the lengthwise straight line generator 16 is controlled to generate, on the basis of the contents of the ΔX and ΔY registers 12 and 14, an X-coordinate increment/decrement signal and a Y-coordinate increment/decrement signal which respectively indicate the displacement both in the X-direction and in the Y-direction from the drawing starting dot A1 (XD, YD) of a second dot B1 of the same lengthwise straight line<!-- EPO <DP n="16"> --> extending from the drawing starting dot A1. On the basis of the X-coordinate increment/decrement signal and the Y-coordinate increment/decrement signal, the adder/subtracter 20 will increment or decrement the contents of the XD register 24 and the YD register 26. As a result, the XD register 24 and the YD register 26 are respectively re-written with an X-coordinate and a Y-coordinate of the second lengthwise dot B1 of the first lengthwise straight line (composed of dots A1, B1, C1, D1, E1 and F1) which should be drawn after the drawing starting point A1.</p>
<p id="p0033" num="0033">At this time, whether or not the values of both XD register 24 and the YD register 26 are changed is discriminated, and if the values of both XD register 24 and the YD register 26 are changed, the dot controller 22 is notified of the fact. (For example, the dot controller 22 can know this fact by examining the X-coordinate increment/decrement signal and the Y-coordinate increment/decrement signal from the lengthwise straight line generator 16.)</p>
<p id="p0034" num="0034">When the values of both the XD′ register 38 and the YD′ register 40 have been changed and the values of both the XD register 24 and the YD register 26 are changed, the direction of the widthwise vector in relation to the direction of the lengthwise vector can be known. In the example shown in Figure 7, the dot controller 22 judges that the widthwise vector is directed to the right of the lengthwise vector</p>
<p id="p0035" num="0035">In addition, under the condition in which the values of both the XD′ register 38 and the YD′ register 40 have been changed, if the values of both the XD register 24 and the YD register 26 are changed, the dot controller 22 operates to decrement the content of the YD register 26 since it is judged that the widthwise vector is directed to the right of the lengthwise vector. Thereafter, the memory access controller 28 causes<!-- EPO <DP n="17"> --> the dot information stored in the dot information register 30 to be outputted to the display memory 32, and controls the memory so that the dot information is written to a memory location corresponding to a dot position x1 in Figure 7, i.e., the coordinate (XD, YD-1) defined by the content of the XD register 24 and the decremented content of the YD register 26. Thereafter, the dot controller 22 operates to restore the content of the YD register 26 to (YD).</p>
<heading id="h0012">STEP 6</heading>
<p id="p0036" num="0036">Next, whether it is DH=0 or not is determined by the data processor 10. If DH&gt;0, the DH register 34 is decremented by the data processor 34, and the operation is returned to the STEP 4. As a result, the operation of STEP 4 to STEP 6 is repeated until it becomes DH=0, so that the dot information stored in the dot information register 30 is sequentially written into memory locations corresponding to the dots B1, C1, x2, D1, E1, x3 and F3.</p>
<heading id="h0013">STEP 7</heading>
<p id="p0037" num="0037">If it becomes DH=0, whether DV=0 or not is determined by the data processor 10. If DV&gt;0, the DV register 36 is decremented by the data processor 10, and the XD register 24, the YD register 26 and the HD register 34 are re-written with the contents preserved in the XD′ register 38, the YD′ register 40 and the HD′ register 42. Thereafter, the operation is returned to STEP 3. Accordingly, a second lengthwise straight line composed of dots A2, B2, C2, D2, E2 and F2, a third lengthwise straight line composed of dots A3, y1, B3, C3, y2, D3, E3, y3 and F3, and all succeeding required lengthwise straight lines are drawn until it becomes DV=0.<!-- EPO <DP n="18"> --></p>
<heading id="h0014">STEP 8</heading>
<p id="p0038" num="0038">If it becomes DV=0, the operation is terminated.</p>
<p id="p0039" num="0039">As seen from the above, the dots x1, x2, x3, y1, y2, y3, z1, z2 and z3 which would become the "wormholes" in the conventional system have been filled up by the dot information stored in the dot information register. Accordingly, the inclined rectangular pattern having no "wormhole" has been drawn. Namely, an inclined rectangular pattern providing a natural impression is obtained.</p>
<p id="p0040" num="0040">In the above mentioned embodiment, the elongated rectangle having the length of 6 dots and the width of 5 dots has been drawn. However, the above embodiment can draw not only the above mentioned elongated rectangle, but also other various rectangles including a square and a wide solid line composed of a plurality of lengthwise straight lines having a unitary dot width.</p>
<p id="p0041" num="0041">The invention has thus been shown and described with reference to the specific embodiments. However, it should be noted that the present invention is in no way limited to the details of the illustrated structures but changes and modifications may be made within the scope of the appended claims.</p>
</description><!-- EPO <DP n="19"> -->
<claims id="claims01" lang="en">
<claim id="c-en-01-0001" num="0001">
<claim-text>A rectangular pattern generating system for generating an inclined rectangular pattern on a two-dimensional X-Y plane by re-writing a display memory (32), comprising:<br/>
   a read-write memory (32) comprising a plurality of unitary memory elements corresponding in a one-to-one relation to coordinate points on said two-dimensional X-Y plane;<br/>
   means (12, 14) for storing inclined angle information of said inclined rectangular pattern to be generated;<br/>
   lengthwise straight line generating means (16), coupled to said inclined angle information storing means (12, 14), for generating X- and Y-direction increment/decrement signals indicative of a coordinate change component between a first dot being currently written into said memory (32) and a second dot to be next written into said memory (32), said first and second dots being adjacent to each other and being included in a string of dots forming a lengthwise straight line in parallel to a lengthwise side of said inclined rectangular pattern to be generated;<br/>
said rectangular pattern generating system being characterized by:<br/>
   widthwise straight line generating means (18) coupled to said inclined angle information storing means (12, 14) for generating X- and Y-direction increment/decrement signals indicative of a coordinate change component between a starting dot of a lengthwise straight line being currently written into said memory (32) and a starting dot of another lengthwise straight line to be next written into said memory (32);<br/>
<!-- EPO <DP n="20"> -->   means (20, 24, 26), coupled to said lengthwise straight line generating means (16) and said widthwise straight line generating means (18), for generating an address and coupled to said memory (32) for supplying said address to said memory (32);<br/>
   means (28, 30), coupled to said memory (32), for writing dot information into a unitary memory element of said memory (32) designated by said address generating means (20, 24, 26); and<br/>
   a dot controller (22), coupled to said lengthwise straight line generating means (16) and said widthwise straight line generating means (18), and operating in such a manner that when said lengthwise straight line generating means (16) indicates a coordinate change both in X- and Y-directions and when said widthwise straight line generating means (18) indicates a coordinate change both in X- and Y- directions, said dot controller (22) causes said dot information writing means (28, 30) to write dot information into a unitary memory element of said memory (32) corresponding to a coordinate which changes only either in a X-direction or in a Y-direction from a coordinate into which immediately preceding dot information has been written, on the basis of the result of determination about which a widthwise vector (β) defined by a direction of a widthwise side of said inclined rectangular pattern to be generated extending from a drawing operation starting dot is positioned at a right side or at a left side of a lengthwise vector (α) defined by a direction of said lengthwise side of said inclined rectangular pattern to be generated extending from a drawing operation starting dot.</claim-text></claim>
<claim id="c-en-01-0002" num="0002">
<claim-text>A system claimed in Claim 1 wherein said inclined angle information storing means (12, 14) includes a ΔX register (12) for storing a X-direction minute change component ΔX and a ΔY register (14) for storing a Y-direction minute change component ΔY where ΔX/ΔY = tan ϑ and ϑ indicates an inclined angle of said inclined angle information.<!-- EPO <DP n="21"> --></claim-text></claim>
<claim id="c-en-01-0003" num="0003">
<claim-text>A system claimed in Claim 1 wherein said address generating means (20, 24, 26) includes a XD register (24) initialized to store a X-coordinate of a pattern drawing starting point and a YD register (26) initialized to store a Y-coordinate of said pattern drawing starting point, and an adder/subtracter (20) for receiving said X- and Y-direction increment/decrement signals from said lengthwise straight line generating means (16) and for updating said XD and YD registers (24, 26).</claim-text></claim>
<claim id="c-en-01-0004" num="0004">
<claim-text>A system claimed in Claim 3 wherein said XD and YD registers (24, 26) are associated with XD′ and YD′ preserving registers (38, 40), respectively, for preserving contents of said XD and YD registers (24, 26) until one lengthwise straight line is written into said memory (32).</claim-text></claim>
<claim id="c-en-01-0005" num="0005">
<claim-text>A system claimed in Claim 4 further including a length register (34) for storing a length of said rectangular pattern to be generated , said length register (34) being decremented each time one dot information is written into said memory (32), and a width register (36) for storing a width of said rectangular pattern to be generated, said width register (36) being decremented each time one lengthwise straight line of dot information is written into said memory (32).</claim-text></claim>
<claim id="c-en-01-0006" num="0006">
<claim-text>A system claimed in Claim 1 wherein said dot controller (22) is configured to depict said string of dots which form said lengthwise straight line by using the X-axis as a reference axis when the angle of the line to be depicted to the X-axis is smaller than 45 degrees, and by using the Y-axis as a reference axis when the angle of the line to be depicted to the X-axis is larger than 45 degrees.</claim-text></claim>
</claims><!-- EPO <DP n="22"> -->
<claims id="claims02" lang="de">
<claim id="c-de-01-0001" num="0001">
<claim-text>Rechteck-Mustergenerierungssystem zum Generieren eines geneigten rechteckigen Musters auf einer zweidimensionalen XY-Ebene durch erneutes Schreiben in einen Display-Speicher (32), wobei das System aufweist:<br/>
   einen Schreib-/Lesespeicher (32), der eine Vielzahl Einheits-Speicherelemente umfaßt, die in einem Verhältnis 1:1 Koordinatenpunkten auf der zweidimensionalen XY-Ebene entsprechen;<br/>
   Einrichtungen (12, 14) zum Speichern von Neigungswinkel-lnformationen des zu erzeugenden geneigten rechteckigen Musters;<br/>
   eine Generierungseinrichtung (16) für eine Gerade in Längsrichtung (Längsgerade), die mit den Einrichtungen (12, 14) zum Speichern von Neigungswinkel-Informationen verbunden ist, zum Erzeugen von Inkrement/Dekrement-Signalen für die X- und Y-Richtung, die für eine Koordinatenänderungs-Komponente zwischen einem ersten, gerade in den Speicher (32) geschriebenen Punkt und einem zweiten, als nächstes in den Speicher (32) zu schreibenden Punkt kennzeichnend ist, wobei der erste und zweite Punkt nebeneinander liegen und zu einer Punktreihe gehören, die eine Gerade in Längsrichtung, parallel zu einer Längsseite des zu erzeugenden geneigten rechteckigen Musters, bilden;<br/>
wobei das Rechteck-Mustergenerierungssystem durch folgendes gekennzeichnet ist:<br/>
   eine Generierungseinrichtung (18) für eine Gerade in Querrichtung (Quergerade), die mit den Einrichtungen (12, 14) zum Speichern von Neigungswinkel-Informationen verbunden ist, zum Erzeugen von Inkrement/Dekrement-Signalen für die X- und Y-Richtung, die für eine Koordinatenänderungs-Komponente zwischen<!-- EPO <DP n="23"> --> einem gerade in den Speicher (32) geschriebenen Startpunkt einer Längsgeraden und einem als nächstes in den Speicher (32) zu schreibenden Startpunkt einer weiteren Längsgeraden kennzeichnend sind;<br/>
   Einrichtungen (20, 24, 26), die mit der Längsgeraden-Generierungseinrichtung (16) und der Quergeraden-Generierungseinrichtung (18) zur Erzeugung einer Adresse und mit dem Speicher (32) verbunden sind, um die Adresse an den Speicher (32) zu liefern;<br/>
   Einrichtungen (28, 30), die mit dem Speicher (32) verbunden sind, zum Schreiben von Punktinformationen in ein Einheits-Speicherelement des Speichers (32), das von den Adressen-Generierungseinrichtungen (20, 24, 26) angegeben worden ist; und<br/>
   eine Punktsteuerungseinrichtung (22), die mit der Längsgeraden-Generierungseinrichtung (16) und der Quergeraden-Generierungseinrichtung (18) verbunden ist und auf eine Weise arbeitet, daß, wenn die Längsgeraden-Generierungseinrichtung (16) eine Koordinatenänderung sowohl in X- als auch in Y-Richtung angibt und wenn die Quergeraden-Generierungseinrichtung (18) eine Koordinatenänderung sowohl in X- als auch in Y-Richtung angibt, die Punktsteuerungseinrichtung (22) bewirkt, daß die Punktinformations-Schreibeinrichtungen (28, 30) Punktinformationen in ein Einheits-Speicherelement des Speichers (32) schreiben, das einer Koordinate entspricht, die sich nur entweder in der X- oder in der Y-Richtung von einer Koordinate unterscheidet, in die gerade vorher Punktinformationen geschrieben wurden, basierend auf dem Ergebnis der Bestimmung, wonach ein Quervektor (β), der durch eine Richtung einer Querseite des zu erzeugenden geneigten rechteckigen Musters, ausgehend von einem Zeichnungsoperations-Startpunkt, definiert ist, rechts oder links von einem Längsvektor (α) liegt, der durch eine Richtung der Längsseite des zu erzeugenden geneigten rechteckigen Musters, ausgehend von einem Zeichnungsoperations-Startpunkt, definiert ist.</claim-text></claim>
<claim id="c-de-01-0002" num="0002">
<claim-text>System nach Anspruch 1, wobei die Einrichtungen (12, 14) zum Speichern von Neigungswinkel-lnformationen ein ΔX-Register (12) zum Speichern einer sehr<!-- EPO <DP n="24"> --> kleinen Änderungskomponente ΔX in X-Richtung und ein ΔY-Register (14) zum Speichern einer sehr kleinen Änderungskomponente ΔY in Y-Richtung umfaßt, wobei ΔX/ΔY = tan Θ ist und Θ einen Neigungswinkel der Neigungswinkel-Informationen angibt.</claim-text></claim>
<claim id="c-de-01-0003" num="0003">
<claim-text>System nach Anspruch 1, wobei die Adressen-Generierungseinrichtungen (20, 24, 26) ein XD-Register (24), das zum Speichern einer X-Koordinate eines Musterzeichnungs-Startpunkts initialisiert ist, ein YD-Register (26), das zum Speichern einer Y-Koordinate des Musterzeichnungs-Startpunkts initialisiert ist, und einen Addierer/Subtrahierer (20) zum Empfangen der von der Längsgeraden-Generierungseinrichtung (16) ausgegebenen Inkrement/Dekrement-Signale für die X- und die Y-Richtung und zum Aktualisieren der XD- und YD-Register (24, 26) umfaßt.</claim-text></claim>
<claim id="c-de-01-0004" num="0004">
<claim-text>System nach Anspruch 3, wobei die XD- bzw. YD-Register (24, 26) mit XD′-bzw. YD′-Halteregistern (38, 40) verbunden sind zum Halten der Inhalte der XD-und YD-Register (24, 26), bis eine Längsgerade in den Speicher (32) geschrieben ist.</claim-text></claim>
<claim id="c-de-01-0005" num="0005">
<claim-text>System nach Anspruch 4, das zudem ein Längenregister (34) zum Speichern einer Länge des zu erzeugenden rechteckigen Musters umfaßt, wobei das Längenregister (34) jedes Mal, wenn eine Punktinformation in den Speicher (32) geschrieben wird, verringert wird, und ein Breitenregister (36) zum Speichern einer Breite des zu erzeugenden rechteckigen Musters umfaßt, wobei das Breitenregister (36) jedes Mal, wenn eine Längsgerade von Punktinformationen in den Speicher (32) geschrieben wird, verringert wird.</claim-text></claim>
<claim id="c-de-01-0006" num="0006">
<claim-text>System nach Anspruch 1, wobei die Punktsteuerungseinrichtung (22) so konfiguriert ist, daß die Punktreihe, die die Längsgerade bildet, dargestellt wird unter Verwendung der X-Achse als Bezugsachse, wenn der Winkel der darzustellenden Geraden kleiner als 45 Grad zur X-Achse ist, und unter Verwendung der Y-Achse als Bezugsachse, wenn der Winkel der darzustellenden Geraden größer als 45 Grad ist.</claim-text></claim>
</claims><!-- EPO <DP n="25"> -->
<claims id="claims03" lang="fr">
<claim id="c-fr-01-0001" num="0001">
<claim-text>Un système générateur d'une forme rectangulaire pour générer une forme rectangulaire inclinée dans un plan bidimensionnel X-Y par ré- écriture d'une mémoire d'afficheur (32), comprenant :<br/>
une mémoire (32) à lecture et écriture, comprenant une pluralité d'éléments unitaires de mémoire correspondant par une relation de un-à-un à des coordonnées de points dans ledit plan bidimensionnel X-Y ;<br/>
des moyens (12, 14) pour emmagasiner l'information d'angle d'inclinaison de ladite forme rectangulaire inclinée à générer ;<br/>
des moyens générateurs de lignes droites en longueur (16), couplés aux dits moyens (12, 14) pour emmagasiner l'information d'angle d'inclinaison, pour générer des signaux d'incrémentation/ décrémentation en coordonnées X et en coordonnées Y qui indiquent une composante de changement de coordonnées entre un premier point en cours d'écriture sur la dite mémoire (32) et un deuxième point à écrire ensuite sur ladite mémoire (32), les dits premier et deuxième points étant adjacents l'un l'autre et étant inclus dans une chaîne de points formant une ligne droite en longueur parallèle à un côté en longueur de ladite forme rectangulaire inclinée à générer ;<br/>
le système générateur d'une forme rectangulaire étant caractérisé par :<br/>
des moyens générateurs de lignes droites en largeur (18) couplés aux dits moyens (12, 14) pour emmagasiner l'information d'angle d'inclinaison de façon à générer des signaux d'incrémentation/ décrémentation en coordonnées X et en coordonnées Y qui indiquent une composante de changement de coordonnées entre un point de départ d'une ligne droite en longueur en cours d'écriture sur la dite mémoire (32) et un point de départ d'une autre ligne droite en longueur à écrire ensuite sur ladite mémoire (32) ;<br/>
des moyens (20, 24, 26), couplés aux dits moyens (16) générateurs de lignes droites en longueur et aux dits moyens (18) générateurs de lignes droites en largeur, pour générer une adresse et couplés à la dite mémoire (32) pour fournir la dite adresse à la dite mémoire (32) ;<br/>
<!-- EPO <DP n="26"> -->des moyens (28, 30), couplés à la dite mémoire (32), pour écrire l'information de point en un élément unitaire de mémoire de la dite mémoire (32) désigné par les moyens (20, 24, 26) générateurs d'adresse ; et<br/>
un contrôleur de point (22), couplé aux dits moyens (16) générateurs de lignes droites en longueur et aux dits moyens (18) générateurs de lignes droites en largeur, et fonctionnant de façon à ce que, quand les dits moyens (16) générateurs de lignes droites en longueur indiquent un changement de coordonnées à la fois dans les deux directions X et Y, et quand les dits moyens (18) générateurs de lignes droites en largeur indiquent un changement de coordonnées à la fois dans les deux directions X et Y, le dit contrôleur de point (22) provoque l'écriture par les dits moyens (28, 30) d'écriture de l'information de point dans un élément unitaire de mémoire de la dite mémoire (32) correspondant à une coordonnée qui change seulement selon l'une ou l'autre d'une direction en X ou d'une direction en Y depuis une coordonnée à laquelle une information de point immédiatement précédent a été écrite, sur la base du résultat de la détermination d'après laquelle un vecteur en largeur (β) défini par la direction d'un côté en largeur de la dite forme rectangulaire inclinée à générer s'étendant d'un point de départ de tracé est situé sur un côté droit ou sur un côté gauche d'un vecteur en longueur (α) défini par la direction du dit côté en longueur de la dite forme rectangulaire inclinée à générer se prolongeant depuis un point de départ de tracé.</claim-text></claim>
<claim id="c-fr-01-0002" num="0002">
<claim-text>Un système revendiqué dans la revendication 1 dans lequel les dits moyens (12, 14) emmagasinant la dite information d'angle d'inclinaison incluent un registre ΔX (12) pour emmagasiner une composante ΔX de changement minuscule dans la direction X et un registre ΔY (14) pour emmagasiner une composante ΔY de changement minuscule dans la direction Y, où ΔX/ΔY = tan ϑ et ϑ indique l'angle d'inclinaison de la dite information d'angle d'inclinaison.</claim-text></claim>
<claim id="c-fr-01-0003" num="0003">
<claim-text>Un système revendiqué dans la revendication 1 dans lequel les dits moyens (20, 24, 26) générateurs d'adresse incluent un registre XD (24) initialisé pour emmagasiner la coordonnée en X d'un point de départ de tracé d'une forme et un registre YD (26) initialisé pour emmagasiner la coordonnée en Y d'un point de départ de tracé d'une forme, et un additionneur/ soustracteur (20) pour recevoir les dits signaux d'incrémentation/ décrémentation dans les directions X et Y des<!-- EPO <DP n="27"> --> dits moyens (16) générateurs de lignes droites en longueur et pour la mise à jour des dits registres XD et YD (24, 26).</claim-text></claim>
<claim id="c-fr-01-0004" num="0004">
<claim-text>Un système revendiqué dans la revendication 3 dans lequel les dits registres XD et YD (24, 26) sont associés à des registres XD′ et YD′ de sauvegarde (38, 40), respectivement, pour sauvegarder les contenus des dits registres XD et YD (24, 26) jusqu'à ce qu'une ligne droite en longueur soit écrite dans la dite mémoire (32).</claim-text></claim>
<claim id="c-fr-01-0005" num="0005">
<claim-text>Un système revendiqué dans la revendication 4 incluant de plus un registre de longueur (34) pour emmagasiner la longueur d'une forme rectangulaire à générer, le dit registre de longueur (34) étant décrémenté à chaque fois qu'une information de point est écrite dans la dite mémoire (32), et un registre de largeur (36) pour emmagasiner la largeur d'une forme rectangulaire à générer, le dit registre de largeur (36) étant décrémenté à chaque fois qu'une ligne droite en longueur d'information de point est écrite dans la dite mémoire (32).</claim-text></claim>
<claim id="c-fr-01-0006" num="0006">
<claim-text>Un système revendiqué dans la revendication 1 dans lequel le dit contrôleur de point (22) est configuré de façon à peindre la dite chaîne de points que forme la dite ligne droite en longueur en utilisant l'axe X comme un axe de référence quand l'angle de la ligne à peindre selon l'axe X est plus petit que 45 degrés, et en utilisant l'axe Y comme un axe de référence quand l'angle de la ligne à peindre selon l'axe X est plus grand que 45 degrés.</claim-text></claim>
</claims><!-- EPO <DP n="28"> -->
<drawings id="draw" lang="en">
<figure id="f0001" num=""><img id="if0001" file="imgf0001.tif" wi="163" he="246" img-content="drawing" img-format="tif"/></figure>
<figure id="f0002" num=""><img id="if0002" file="imgf0002.tif" wi="157" he="242" img-content="drawing" img-format="tif"/></figure>
<figure id="f0003" num=""><img id="if0003" file="imgf0003.tif" wi="159" he="248" img-content="drawing" img-format="tif"/></figure>
<figure id="f0004" num=""><img id="if0004" file="imgf0004.tif" wi="161" he="243" img-content="drawing" img-format="tif"/></figure>
</drawings>
</ep-patent-document>
