DE3930631A1 - METHOD AND DEVICE FOR HATCHING WITHIN A PROFILE, WITH SIMPLE HATCHING DATA PROCESSING - Google Patents

METHOD AND DEVICE FOR HATCHING WITHIN A PROFILE, WITH SIMPLE HATCHING DATA PROCESSING

Info

Publication number
DE3930631A1
DE3930631A1 DE19893930631 DE3930631A DE3930631A1 DE 3930631 A1 DE3930631 A1 DE 3930631A1 DE 19893930631 DE19893930631 DE 19893930631 DE 3930631 A DE3930631 A DE 3930631A DE 3930631 A1 DE3930631 A1 DE 3930631A1
Authority
DE
Germany
Prior art keywords
coordinate system
lines
profile
hatching
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19893930631
Other languages
German (de)
Inventor
Hiroyuki Funahashi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Publication of DE3930631A1 publication Critical patent/DE3930631A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

A method and an apparatus for processing digital image data representing parallel inclined hatching lines within a desired boundary. Initially, a 2-dimensional coordinate system having two axes X', Y', one (X') of which is parallel to the inclined lines is established. Coordinate values in the 2-dimensional coordinate system of each intersection between each of the straight lines and the boundary are calculated, and the hatching data is prepared so as to connect the calculated intersections for each straight line, to thereby hatch the corresponding one of the parallel inclined lines. <IMAGE>

Description

Die vorliegende Erfindung betrifft allgemein ein Verfahren und eine Vorrichtung zum Schraffieren von parallelen, geneigten Linien innerhalb eines gewünschten Profils oder Umrisses gemäß Schraffurdaten, und insbesondere ein Verfahren zur einfachen Aufbereitung der Schraffurdaten mittels eines Computers.The present invention relates generally to a method and a device for hatching parallel, inclined Lines within a desired profile or outline according to Hatching data, and in particular a method for simple Preparation of hatching data using a computer.

Beim Aufzeichnen oder Darstellen eines gewünschten Umrisses oder einer gewünschten Figur ist es manchmal erforderlich, den Innenraum des Umrisses zu schraffieren, das heißt parallel und in einem Abstand zueinander angeordnete, geneigte Linien innerhalb eines durch die Außenlinie des Profils begrenzten Bereiches aufzutragen. Es sei zunächst ein Verfahren zum Schraffieren eines Sektors angenommen, der durch einen Bogen und zwei Kreisradien begrenzt ist. Allgemein wird der Kreisbogen durch eine Mehrzahl von aufeinanderfolgenden Kreissehnen angenähert, also durch eine Mehrzahl von verbundenen, geraden Abschnitten. Wenn der derart begrenzte Sektor mittels paralleler Linien schraffiert wird, die unter einem bestimmten Winkel gegenüber der X-Achse eines zweidimensionalen, rechtwinkligen Koordinatensystems geneigt sind, werden Schraffurdaten zum Schraffieren dieser parallelen, geneigten Linien dadurch bereitgestellt, daß zunächst die Geradenabschnitte, die den Sehnen des Sektors und den den beiden Sektorradien entsprechenden geraden Abschnitten entsprechen, darstellende lineare Gleichungen und die parallelen, geneigten Schraffurlinien darstellende linearen Gleichungen aufgestellt werden. Danach werden die Schnittpunkte zwischen jeder geneigten Linie und jedem geraden Abschnitt des Sektors (angenäherten Sektors) durch Lösung der zugehörigen linearen Gleichungen errechnet. Mit anderen Worten werden die Koordinaten der Schnittpunkte des Profilumrisses und der Schraffurlinien gemäß der linearen Gleichungen errechnet, die die geraden Abschnitte des Sektors und die parallelen, geneigten Schraffurlinien innerhalb des Sektors darstellen. Die Schraffurdaten zum Verbinden der Schnittpunkte für jede Schraffurlinie werden dann auf der Basis der errechneten Koordinaten bestimmt.When drawing or displaying a desired outline or a desired figure, it is sometimes necessary to hatch the interior of the outline, that is, to draw parallel, spaced, inclined lines within an area delimited by the outline of the profile. A method of hatching a sector is first assumed, which is delimited by an arc and two circular radii. In general, the circular arc is approximated by a plurality of successive circular chords, that is to say by a plurality of connected, straight sections. If the sector thus delimited is hatched by means of parallel lines which are inclined at a certain angle with respect to the X axis of a two-dimensional, right-angled coordinate system, hatching data for hatching these parallel, inclined lines are provided in that firstly the straight line sections which the tendons of the Sector and the straight sections corresponding to the two sector radii, representing linear equations and the parallel, inclined hatching linear equations are established. Then the intersections between each inclined line and each straight section of the sector (approximate sector) are calculated by solving the associated linear equations. In other words, the coordinates of the intersections of the profile outline and the hatch lines are calculated according to the linear equations representing the straight sections of the sector and the parallel, inclined hatch lines within the sector. The hatch data for connecting the intersection points for each hatch line are then determined based on the calculated coordinates.

Dieses Verfahren zum Bestimmen der Schraffurdaten ist außergewöhnlich schwierig und zeitraubend aufgrund der einzelnen Arbeitsschritte zur Lösung der einzelnen Kombinationen von linearen Gleichungen, eine für jeden geraden Abschnitt des Sektors und die andere für jede geneigte Schraffurlinie, zum Berechnen aller Schnittpunkte zwischen allen geraden Abschnitten und allen parallelen, geneigten Linien. Daher leidet die übliche Anordnung zum Aufstellen von Daten zum Bestimmen der Schraffurdaten unter einer relativ geringen Leistungsfähigkeit. This method of determining hatch data is exceptional difficult and time consuming due to the individual Steps to solve the individual combinations of linear equations, one for each even section of the Sector and the other for each inclined hatching line to Calculate all intersections between all straight sections and all parallel, sloping lines. Therefore, the suffers Conventional arrangement for setting up data to determine the Hatching data under a relatively low performance.  

Die vorliegende Erfindung wurde im Hinblick auf diesen Nachteil beim Stand der Technik entwickelt. Es ist daher Aufgabe der vorliegenden Erfindung, ein Verfahren zum Schraffieren paralleler, geneigter Linien innerhalb eines gewünschten Umrisses aufgrund von Schraffurdaten anzugeben, das eine einfache und leistungsfähige Datenaufbereitung zum Errechnen der Schnittpunkte zwischen dem Profilumriß und den geneigten Schraffurlinien erlaubt, um die Gesamtrechenzeit zum Bestimmen der Schraffurdaten zu verringern. Ferner soll eine zur Ausführung des erfindungsgemäßen Verfahrens geeignete Vorrichtung angegeben werden.The present invention has been made in view of this disadvantage developed in the state of the art. It is therefore the job of present invention, a method for hatching parallel, due to slanted lines within a desired outline of hatching data to indicate that a simple and powerful Data preparation for calculating the intersection points allowed between the profile outline and the inclined hatching lines, by the total computing time for determining the hatching data to reduce. Furthermore, one for the execution of the invention Appropriate device can be specified.

Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Anspruches 1 gelöst.This object is achieved by a method with the Features of claim 1 solved.

In diesem erfindungsgemäßen Verfahren werden die zu schraffierenden parallelen, geneigten Linien zunächst in einem zweidimensionalen Koordinatensystem festgelegt derart, daß eine der beiden Achsen des Koordinatensystems parallel zu den geneigten Linien liegt. Dann werden im Koordinatensystem eine Mehrzahl von parallelen, geraden Linien, die den geneigten, parallelen Linien entsprechen, parallel zu der genannten einen Achse des Koordinatensystems festgelegt, so daß in diesem Koordinatensystem die Koordinatendaten jedes Schnittpunktes zwischen den festgelegten geraden Linien und dem Profilumriß berechnet werden. Die Schraffurdaten zur Verbindung der Schnittpunkte für jede gerade Linie im Hinblick auf den Profilumriß werden auf der Basis der berechneten Schnittpunktkoordinaten erstellt. Da das vorliegende Verfahren die geraden Linien, die den voneinander beabstandeten Schraffurlinien entsprechen und parallel zu einer der Achsen des Koordinatensystems (z. B. der x-Achse) liegen, verwendet, können die Schnittpunkte zwischen den Schraffurlinien und den Abschnitten des Profilumrisses leicht dadurch gefunden werden, daß bestimmt wird, ob die Koordinatendaten jeder geraden Linie (entsprechend jeder Schraffurlinie) entlang der anderen Achse (z. B. der y-Achse) kleiner als der entsprechende Koordinatenwert (y-Achsen-Koordinate) entweder des Startpunktes oder des Endpunktes jedes Segments des Profilumrisses und größer als der Koordinatenwert (y-Achsen-Koordinate) jeweils des anderen Punktes des Start- oder Endpunktes des Abschnittes ist. Damit können die Koordinaten der einzelnen Schnittpunkte zwischen dem Profilumriß und den parallelen, geneigten Schraffurlinien leicht und wirkungsvoll errechnet werden, um die Schraffurdaten zu erstellen.In this method according to the invention, the parallel, inclined lines to be hatched are first defined in a two-dimensional coordinate system such that one of the two axes of the coordinate system is parallel to the inclined lines. Then, in the coordinate system, a plurality of parallel, straight lines corresponding to the inclined, parallel lines are set parallel to said one axis of the coordinate system, so that in this coordinate system, the coordinate data of each intersection between the specified straight lines and the profile outline are calculated. The hatching data for connecting the intersection points for each straight line with respect to the profile outline are created on the basis of the calculated intersection point coordinates. Because the present method uses the straight lines that correspond to the spaced hatch lines and are parallel to one of the axes of the coordinate system (e.g., the x axis), the intersection points between the hatch lines and the sections of the profile outline can easily be found thereby that it is determined whether the coordinate data of each straight line (corresponding to each hatching line) along the other axis (e.g. the y -axis) is smaller than the corresponding coordinate value (y -axis coordinate) of either the starting point or the ending point of each Segment of the profile outline and larger than the coordinate value (y -axis coordinate) of the other point of the start or end point of the section. This enables the coordinates of the individual intersection points between the profile outline and the parallel, inclined hatch lines to be calculated easily and effectively in order to create the hatch data.

Üblicherweise ist der Profilumriß durch erste Profildaten festgelegt, die den Umriß in einem ersten Koordinatensystem darstellen, und die ersten Profildaten auf der Basis des ersten Koordinatensystems werden in zweite Profildaten umgewandelt, die den Umriß in dem obengenannten zweidimensionalen Koordinatensystem darstellen, das als zweites Koordinatensystem verwendet wird. In diesem Fall werden die errechneten Schnittpunktkoordinaten im zweiten Koordinatensystem zurück in Koordinaten des ersten Koordinatensystems umgewandelt, und die Schraffurdaten werden auf der Basis von Koordinatendaten im ersten Koordinatensystem erstellt.The profile outline is usually through the first profile data set the outline in a first coordinate system represent, and the first profile data based on the first Coordinate system are converted into second profile data, which the outline in the above two-dimensional coordinate system represent that used as the second coordinate system becomes. In this case, the calculated intersection coordinates back in coordinates in the second coordinate system of the first coordinate system, and the hatching data are based on coordinate data in the first coordinate system created.

In einer derartigen Ausführungsform der Erfindung ist das erste Koordinatensystem ein rechtwinkliges Koordinatensystem, in dem eine x-Achse und eine y-Achse zueinander senkrecht angeordnet sind, während das zweite Koordinatensystem ein rechtwinkliges Koordinatensystem darstellt, in dem eine x′-Achse und eine y′-Achse zueinander senkrecht angeordnet sind. Die geraden Linien werden durch eine Gleichung y′ = md + a dargestellt, wobei "m" eine ganze Zahl, "d" den Abstand der geneigten Linien und "a" eine Konstante darstellt, für die gilt d <a ≧0. Der Profilumriß besteht aus einer Mehrzahl von geraden Abschnitten, von denen jeder einen Startpunkt und einen Endpunkt aufweist. Die Koordinaten der Schnittpunkte im zweiten Koordinatensystem werden berechnet durch Verändern (Erhöhung oder Verringern) eines Wertes "m" und damit aufeinanderfolgendes Festlegen der Mehrzahl von geraden Linien, Auswahl von zumindest zwei der geraden Abschnitte, deren einer der y′-Koordinaten des Start- und Endpunktes geringer ist als ein Wert (md + a) jeder der bestimmten geraden Linien, und dessen andere y′-Koordinate größer ist als der Wert (md + a), und Berechnen des Schnittpunktes zwischen jeder ausgewählten geraden Linie und jedem der genannten zumindest zwei geraden Abschnitte.In such an embodiment of the invention, the first coordinate system is a rectangular coordinate system in which an x axis and a y axis are arranged perpendicular to one another, while the second coordinate system represents a rectangular coordinate system in which an x ′ axis and a y ′ -Axis are arranged perpendicular to each other. The straight lines are represented by an equation y ′ = md + a , where “m” is an integer, “d” is the distance between the inclined lines and “a” is a constant for which d < a ≧ 0. The profile outline consists of a plurality of straight sections, each of which has a start point and an end point. The coordinates of the intersection points in the second coordinate system are calculated by changing (increasing or decreasing) a value "m" and thus successively defining the plurality of straight lines, selecting at least two of the straight sections, one of the y ′ coordinates of the start and End point is less than a value (md + a) of each of the determined straight lines, and the other y ′ coordinate thereof is larger than the value (md + a) , and computing the intersection between each selected straight line and each of the at least two mentioned straight sections.

Bei einer anderen derartigen Ausführungsform der Erfindung werden die ersten Umrißdaten in die zweiten Umrißdaten dadurch umgewandelt, daß zunächst die ersten Umrißdaten so aufbereitet werden, daß ein vorbestimmter Umrißpunkt zum Ursprung des zweiten Koordinatensystems verschoben wird. Der vorbestimmte Punkt kann ein Umrißmittelpunkt sein. In diesem Fall umfaßt die Berechnung der Schnittpunktkoordinaten im zweiten Koordinatensystem erste Berechnungen für die geraden Linien, die in einem ersten (I) und einem zweiten (II) Quadranten des zweiten Koordinatensystems liegen, und zweite Berechnungen für die anderen geraden Linien, die in einem dritten (III) und einem vierten (IV) Quadranten des zweiten Koordinatensystems liegen.In another such embodiment of the invention thereby the first outline data becomes the second outline data converted so that the first outline data is processed in this way be that a predetermined outline point to the origin of the second coordinate system is moved. The predetermined one Point can be an outline center. In this case, the Calculation of the intersection coordinates in the second coordinate system first calculations for the straight lines in one first (I) and a second (II) quadrant of the second Coordinate system lie, and second calculations for the other straight lines that are in a third (III) and a fourth (IV) quadrants of the second coordinate system.

Diese Ausführungsform kann so ausgeführt sein, daß das erste Koordinatensystem ein rechtwinkliges Koordinatensystem mit zueinander senkrechter x-Achse und y-Achse ist, während das zweite Koordinatensystem ein rechtwinkliges Koordinatensystem mit zueinander senkrecht angeordneter x′-Achse und y′-Achse ist. In diesem Fall werden die im ersten und zweiten Quadranten (I und II) liegenden geraden Linien durch die Gleichung y′ = md + a dargestellt, während die gerade Linien im dritten und vierten Quadranten (III und IV) durch eine Gleichung y′ = -md + a dargestellt werden, wobei "m" eine ganze Zahl, "d" einen Abstand der geneigten Linien und "a" eine Konstante darstellen, für die gilt d <a ≧0. Zum Berechnen der Schnittpunktkoordinaten wird der Wert "m" beginnend mit "0" bei den ersten Berechnungen erhöht, während der Wert "m" bei den zweiten Berechnungen beginnend mit "1" erhöht wird.This embodiment can be designed so that the first coordinate system is a right-angled coordinate system with mutually perpendicular x -axis and y -axis, while the second coordinate system is a right-angled coordinate system with mutually perpendicular x ' -axis and y' -axis. In this case, the straight lines in the first and second quadrants (I and II) are represented by the equation y ′ = md + a , while the straight lines in the third and fourth quadrants (III and IV) are represented by an equation y ′ = - md + a are shown, "m" representing an integer, "d" representing a distance between the inclined lines and "a" representing a constant for which d < a ≧ 0. To calculate the intersection coordinates, the value "m" is increased starting with "0" in the first calculations, while the value "m" is increased in the second calculations starting with "1".

Die erfindungsgemäße Vorrichtung zur Durchführung dieses Verfahrens enthält die Merkmale des Anspruches 8.The device according to the invention for performing this method contains the features of claim 8.

Die erstellten Schraffurdaten werden einem geeigneten Ausgabegerät wie beispielsweise einer Druckvorrichtung zugeführt, die gemäß der Schraffurdaten betrieben wird, um die parallelen, geneigten Linien innerhalb des Umrisses zu erzeugen. Das Ausgabegerät kann eine Anzeigevorrichtung wie beispielsweise ein Bildschirm (CRT) sein.The hatching data created are a suitable output device such as fed to a printing device which is operated according to the hatching data in order to to create inclined lines within the outline. The output device can be a display device such as a Screen (CRT).

Weitere Zweckmäßigkeiten und Merkmale der Erfindung ergeben sich aus der Beschreibung eines Ausführungsbeispieles anhand der Figuren. In den Figuren istFurther advantages and features of the invention result itself from the description of an embodiment of the figures. In the figures

Fig. 1 ein schematisches Blockschaltbild eines Laserdruckers, der zum Drucken von Schraffurlinien gemäß einer Ausführungsform der vorliegenden Erfindung angepaßt ist; Fig. 1 is a schematic block diagram of a laser printer is adapted to print lines of hatch according to one embodiment of the present invention;

Fig. 2 ein Flußbild zur Darstellug der von einer Drucksteuerung des Laserdruckers nach Fig. 1 durchgeführten Datenverarbeitungsvorgänge; Fig. 2 is a flow chart showing the data processing operations performed by a print controller of the laser printer of Fig. 1;

Fig. 3 eine Ansicht eines sektorartigen Umrisses, der durch ursprüngliche Umrißdaten dargestellt ist, die aufgrund eines erste Koordinatensystems erstellt wurden und von einem externen Host-Rechner erhalten wurden; Fig. 3 is a view of a sector-like contour, which is represented by original outline data, which has been compiled from a first coordinate system and host computer are obtained from an external;

Fig. 4 eine Darstellung der innerhalb des Sektorumrisses nach Fig. 3 zu schraffierenden Schraffurlinien und FIG. 4 shows the hatching lines to be hatched within the sector outline according to FIG. 3 and

Fig. 5 eine Darstellung der ursprünglichen Umrißdaten auf der Basis des ersten Koordinatensystems in Umrißdaten auf der Basis eines zweiten Koordinatensystems zur einfachen Erstellung der Schraffurdaten zum Schraffieren der Linien innerhalb des Umrisses. Fig. 5 is a representation of the original outline data, based on the outline data in the first coordinate system based on a second coordinate system for easy creation of shading data for hatching of the lines within the outline.

Unter Bezug auf die Fig. 1 stellt das Bezugszeichen 1 einen Laserdrucker dar, der eine Druckvorrichtung 2 und eine Druckersteuerung 3 als Hauptelemente aufweist.Referring to Fig. 1, reference numeral 1 represents a laser printer, having a printing device 2 and a printer controller 3 as main elements.

Die Druckvorrichtung ist an sich bekannt und umfaßt ein laserimitierendes Element, einen Polygonspiegel und eine fotosensitive Trommel. Die Druckvorrichtung 2 wird von der Drucksteuerung 3 zum Laserdrucken von Bildern auf einem Aufzeichnungsmedium in bekannter Weise gesteuert.The printing device is known per se and comprises a laser-imitating element, a polygon mirror and a photosensitive drum. The printing device 2 is controlled by the print controller 3 for laser printing images on a recording medium in a known manner.

Die Druckersteuerung 3 ist so ausgebildet, daß sie von einem externen Host-Rechner HC erste oder ursprüngliche Umrißdaten, die einen Umriß eines zu schraffierenden gewünschten Profils darstellen, und Schraffurdaten, die voneinander beabstandete parallele, geneigte Linien zur Schraffur innerhalb des Umrisses angeben, erhält. Beim vorliegenden Beispiel besitzt der Umriß eine angenäherte Sektorform, die von einem Bogen und zwei Kreisradien begrenzt ist. Der Umriß wird unter Bezug auf Fig. 3 beschrieben.The printer controller 3 is designed in such a way that it receives, from an external host computer HC, first or original outline data, which represent an outline of a desired profile to be hatched, and hatch data, which indicate mutually spaced parallel, inclined lines for hatching within the outline. In the present example, the outline has an approximate sector shape, which is delimited by an arc and two circular radii. The outline will be described with reference to FIG. 3.

Die Druckersteuerung 3 führt Schraffurdaten der Druckvorrichtung 2 zum Schraffieren des Umrisses, der durch die vom Host-Rechner HC erhaltenen ersten Profildaten festgelegt ist, zu. Daher ist der Laserdrucker 1 in der Lage, die gewünschten graphischen Darstellungen, Figuren oder Umrisse, zu zeichnen und gewünschtenfalls diese Umrisse zu schraffieren.The printer controller 3 supplies hatching data to the printing device 2 for hatching the outline which is defined by the first profile data received from the host computer HC . The laser printer 1 is therefore able to draw the desired graphical representations, figures or outlines and, if desired, to hatch these outlines.

Die Steuerung 3 ist ein Rechen- und Leitwerk (ALU), welches eine Zentraleinheit (CPU) 11 zur Durchführung verschiedenster Datenverarbeitungsvorgänge, einen Nurlesespeicher (ROM) 12 zum Abspeichern verschiedenster Steuerprogramme wie beispielsweise eines Schraffursteuerprogramms nach Fig. 2, und einen Direktzugriffsspeicher (RAM) 13 zum vorübergehenden Speichern von Daten während der Datenverarbeitungsschritte aufweist. Die Steuerung 3 enthält ferner ein Eingangsinterface 14, über das die CPU 11 erste Umrißdaten und Schraffurliniendaten erhält, ein Ausgangsinterface 15, über das die CPU 11 die erstellten Schraffurdaten (was noch beschrieben wird) und andere Steuerdaten oder Signale der Druckvorrichtung 2 zuführt, und eine Busleitung 16 zum Verbinden der obengenannten Elemente. Das RAM 13 besitzt einen Ausgangspuffer 13 a zum Speichern der Schraffurdaten, die von der CPU 11 erstellt sind und der Druckvorrichtung 2 über das Ausgangsinterface 15 zugeführt werden.The controller 3 is an arithmetic and control unit (ALU) which has a central processing unit (CPU) 11 for performing a wide variety of data processing operations, a read-only memory (ROM) 12 for storing a wide variety of control programs such as a hatching control program according to FIG. 2, and a direct access memory (RAM) 13 for temporarily storing data during the data processing steps. The controller 3 further includes an input interface 14 through which the CPU 11 receives first outline data and hatch line data, an output interface 15 through which the CPU 11 supplies the created hatch data (which will be described later) and other control data or signals to the printing device 2 , and one Bus line 16 for connecting the above elements. The RAM 13 has an output buffer 13 a for storing the hatching data, which are created by the CPU 11 and are fed to the printing device 2 via the output interface 15 .

Im folgenden wird der Betrieb der Druckersteuerung 3 beschrieben.The operation of the printer controller 3 will now be described.

Wenn die CPU 11 die ersten Profildaten und die Schraffurliniendaten vom Host-Rechner HC erhält, arbeitet die CPU 11 gemäß dem im ROM 12 gespeicherten Schraffursteuerprogramm nach Fig. 2, während sie die vorübergehende Datenspeicherfunktion des RAM 13 benützt, um die Schraffurdaten zum Schraffieren der von den Schraffurliniendaten dargestellten parallelen, geneigten Linien zu erstellen, innerhalb des von den ersten oder ursprünglichen Umrißdaten bestimmten Sektorumrisses. Die erstellten Schraffurdaten werden im Ausgangspuffer 13 a des RAM 13 zur nachfolgenden Benutzung zur Steuerung der Druckvorrichtung 2 abgespeichert.When the CPU 11 receives the first profile data and the hatch line data from the host computer HC , the CPU 11 operates in accordance with the hatch control program of FIG. 2 stored in the ROM 12 while using the temporary data storage function of the RAM 13 to generate the hatch data for hatching the to create parallel, inclined lines represented by the hatch line data within the sector outline determined by the first or original outline data. The hatching data created are stored in the output buffer 13 a of the RAM 13 for subsequent use to control the printing device 2 .

Unter Bezug auf das Flußbild nach Fig. 2 soll nun das von der CPU 11 der Druckersteuerung 3 ausgeführte Schraffursteuerprogramm im Detail beschrieben werden. The hatching control program executed by the CPU 11 of the printer controller 3 will now be described in detail with reference to the flow chart of FIG. 2.

Die Steuerung geht zunächst zu Schritt S 100, in dem die CPU 11 vom Host-Rechner HC die ersten oder ursprünglichen Umrißdaten und die Schraffurdaten erhält. Die ersten Umrißdaten stellen den in Fig. 3 gezeigten sektorartigen Umriß dar, der von einer Mehrzahl von geraden Abschnitten l 1, l 2, . . . ln, welche Kreissehnen entsprechen und entsprechende Kreisbogen angenähert darstellen, und zwei geraden Abschnitten, die einem Radius "r" des Kreises entsprechen, dessen Mittelpunkt P 0 (x 0, y 0) in einem ersten zweidimensionalen rechtwinkligen Koordinatensystem mit zueinander senkrechten X- und Y-Achsen angeordnet ist, begrenzt ist. Wie in Fig. 4 gezeigt ist, besitzt der sektorartige Umriß eine im wesentlichen polygonale Form.Control initially goes to step S 100 , in which the CPU 11 receives the first or original outline data and the hatching data from the host computer HC . The first outline data represents the sector-like outline shown in FIG. 3, which consists of a plurality of straight sections l 1, l 2,. . . ln , which correspond to circular chords and approximately represent corresponding arcs, and two straight sections which correspond to a radius "r" of the circle whose center P 0 (x 0, y 0) in a first two-dimensional rectangular coordinate system with mutually perpendicular X and Y -Axis is arranged, is limited. As shown in Fig. 4, the sector-like outline has a substantially polygonal shape.

Die ersten Umrißdaten bestehen aus: mehrfachen Sätzen von Koordinaten, die x- und y-Koordinaten von Start- und Endpunkten P 1, P 2, . . . Pn, Pn + 1 der geraden Abschnitte darstellen; Startpunktwinkeldaten, die einen Winkel α zwischen der X-Achse des Koordinatensystems und dem Radialsegment des Umrisses, auf dem der Startpunkt P 1 des ersten Abschnittes l 1 liegt, angegeben; Mittelpunktwinkeldaten, die einen Winkel β zwischen zwei Radialabschnitten des Umrisses, gemessen durch das Innere des sektorartigen Umrisses, angeben; und den Radius "r" des Umrisses (Basiskreis) angebende Radiusdaten.The first outline data consist of: multiple sets of coordinates, the x and y coordinates of start and end points P 1, P 2,. . . Represent Pn , Pn + 1 of the straight portions; Starting point angle data indicating an angle α between the X axis of the coordinate system and the radial segment of the outline on which the starting point P 1 of the first section 11 is located; Midpoint angle data indicating an angle β between two radial portions of the outline measured through the interior of the sector-like outline; and radius data indicating the radius "r" of the outline (base circle).

Unter Bezug auf Fig. 4 umfassen die Schraffurliniendaten Schraffurwinkeldaten, die einen Neigungswinkel R der zu schraffierenden parallelen Linien innerhalb des sektorartigen Umrisses angeben, und Abstandsdaten, die einen Abstand "d" (Fig. 4) der gleichmäßig beabstandeten, geneigten Schraffurlinien angeben.Referring to FIG. 4, the hatch line data includes hatch angle data indicating an inclination angle R of the parallel lines to be hatched within the sector-like outline and distance data indicating a distance "d" ( FIG. 4) of the equally spaced inclined hatch lines.

Die Steuerung geht dann über zu Schritt S 110, bei dem die ersten Umrißdaten auf der Grundlage des ersten Koordinatensystems (X, Y) nach Fig. 3 in zweite Umrißdaten auf der Basis eines zweiten Koordinatensystems (X′, Y′) mit zueinander senkrechten Achsen X′ und Y′, wie in Fig. 5 angegeben, umgewandelt werden. Genauer gesagt werden die Koordinaten der Start- und Endpunkte Pn und des Mittelpunktes P 0 nach dem ersten Koordinatensystem nach Fig. 3 in entsprechende Koordinaten im zweiten Koordinatensystem nach Fig. 5 umgewandelt, so daß der Mittelpunkt P 0 (x 0, y 0) zum Ursprung (O, O) des zweiten Koordinatensystems (X′, Y′) verschoben wird und der sektorartige Umriß nach Fig. 3, der von den vom Host-Rechner HC erhaltenen ersten Umrißdaten festgelegt ist, um den Ursprung (O, O) im Uhrzeigersinn um einen dem Neigungswinkel R der Schraffurlinien entsprechenden Winkel gedreht wird. Damit enthalten die zweiten Umrißdaten, die im Schritt S 110 von der CPU 11 erstellt werden, die Koordinatendaten der Start- und Endpunkte Pn (X′, Y′) jedes Abschnittes des sektorartigen Umrisses im zweiten Koordinatensystem nach Fig. 5. Die Koordinaten (x′, y′) im zweiten Koordinatensystem können gemäß der folgenden Formel (1) berechnet werden:Control then passes to step S 110 , in which the first outline data based on the first coordinate system (X, Y) according to FIG. 3 into second outline data based on a second coordinate system (X ', Y') with mutually perpendicular axes X ' and Y' , as shown in Fig. 5, are converted. More specifically, the coordinates of the start and end points Pn and the center point P 0 according to the first coordinate system according to FIG. 3 are converted into corresponding coordinates in the second coordinate system according to FIG. 5, so that the center point P 0 (x 0, y 0) Origin (O, O) of the second coordinate system (X ′, Y ′) is shifted and the sector-like outline according to FIG. 3, which is determined by the first outline data received from the host computer HC , around the origin (O, O) in Is turned clockwise by an angle corresponding to the inclination angle R of the hatching lines. The second outline data, which are created in step S 110 by the CPU 11 , thus contain the coordinate data of the start and end points Pn (X ′, Y ′) of each section of the sector-like outline in the second coordinate system according to FIG. 5. The coordinates (x ′, Y ′) in the second coordinate system can be calculated according to the following formula (1):

Die Bedeutung der Formel (1) ist beschrieben in "Graphical Data Processing by Computer Display", Seiten 79 bis 80, Fujio Yamaguchi, Nikkan Kogyo Shinbun Sha (Verleger einer japanischen Industriezeitschrift). Eine Beschreibung der Formel (1) soll hier im einzelnen nicht erfolgen.The meaning of the formula (1) is described in "Graphical Data Processing by Computer Display ", pages 79 to 80, Fujio Yamaguchi, Nikkan Kogyo Shinbun Sha (publisher of a Japanese Industrial magazine). A description of formula (1) is intended not done here in detail.

Im Schritt S 110 werden damit die Koordinaten (x′, y′) der Start- und Endpunkte Pn im zweiten Koordinatensystem (X′, Y′) nach Fig. 5 als zweite Umrißdaten aus den vom Host-Rechner HC erhaltenen ersten Umrißdaten, die aufgrund des ersten Koordinatensystems nach Fig. 3 erhalten waren, erstellt. Die zweiten Umrißdaten werden derart erstellt, daß der Mittelpunkt P 0 des sektorartigen Umrisses im Ursprung (O, O) des zweiten Koordinatensystems liegt, welches um den Ursprung im Uhrzeigersinn um den Winkel R gegenüber dem ersten Koordinatensystem (gegenüber dem von den ersten Umrißdaten festgelegten Umriß) gedreht ist. Als Folge davon liegen die parallelen, geneigten Linien, die von den Schraffurliniendaten vom Host-Rechner HC festgelegt sind, parallel zur X′-Achse des zweiten Koordinatensystems, wie aus Fig. 5 ersichtlich ist.In step S 110 , the coordinates (x ', y') of the start and end points Pn in the second coordinate system (X ', Y') according to FIG. 5 as the second outline data from the first outline data obtained from the host computer HC were obtained based on the first coordinate system according to FIG. 3. The second outline data are created such that the center P 0 of the sector-like outline lies in the origin (O, O) of the second coordinate system, which is clockwise around the origin by the angle R with respect to the first coordinate system (compared to the outline determined by the first outline data ) is rotated. As a result, the parallel, inclined lines, which are determined by the hatching line data from the host computer HC, lie parallel to the X ′ axis of the second coordinate system, as can be seen from FIG. 5.

Auf Schritt S 110 folgt der Schritt S 120, in dem eine Mehrzahl von geraden Linien, die den parallelen, geneigten Schraffurlinien (parallel zur X′-Achse) entsprechen, durch lineare Gleichungen y′ = md + a und y′ = -md + a beschrieben werden, wobei "m" eine veränderliche ganze Zahl, "d" den Abstand der geneigten Schraffurlinien und "a" eine Konstante, für die gilt d <a ≧0, darstellen. Die Gleichungen y′ = md + a stellen die geraden Linien dar, die im ersten (I) und zweiten (II) Quadranten des zweiten Koordinatensystems nach Fig. 5 liegen, während die Gleichungen y′ = -md + a die im dritten (III) und vierten (IV) Quadranten liegenden geraden Linien darstellen.Step S 110 is followed by step S 120 , in which a plurality of straight lines, which correspond to the parallel, inclined hatching lines (parallel to the X ′ axis), by linear equations y ′ = md + a and y ′ = - md + a are described, where "m" is a variable integer, "d" is the distance between the inclined hatch lines and "a" is a constant for which d < a ≧ 0. The equations y ′ = md + a represent the straight lines that lie in the first (I) and second (II) quadrants of the second coordinate system according to FIG. 5, while the equations y ′ = - md + a that in the third (III ) and fourth (IV) quadrants are straight lines.

Die Steuerung geht dann über zu Schritt S 130, in dem die Variable "m" zu "0" gesetzt wird, und zu Schritt S 140, in dem der Wert (md + a) gemäß der folgenden Formel (2) berechnet wird:Control then passes to step S 130 in which the variable "m" is set to "0" and to step S 140 in which the value (md + a ) is calculated according to the following formula (2):

L = md + a L = md + a

Es ist festzustellen, daß der Wert "L" gleich ist der y′-Koordinate jeder geraden Linie entlang der Y′-Achse des zweiten Koordinatensystems, also dem Abstand zwischen der X′-Achse und jeder geraden Linie (entsprechend der zugehörigen Schraffurlinie) in Richtung der Y′-Achse. Im ersten Steuerzyklus, bei dem die Variable "m" den Betrag "0" besitzt, ist der Wert von "L" gleich "a". Wenn "a" null ist, ist der Wert "L" (y′) ebenfalls null, das heißt, die erste Schraffurlinie fällt mit der X′-Achse zusammen.It should be noted that the value "L" is equal to the y ′ coordinate of each straight line along the Y ′ axis of the second coordinate system, that is to say the distance between the X ′ axis and each straight line (corresponding to the corresponding hatching line) in Direction of the Y ′ axis. In the first control cycle, in which the variable "m" has the value "0", the value of "L" is equal to "a" . If "a" is zero, the value "L" (y ′) is also zero, that is, the first hatching line coincides with the X ′ axis.

Auf den Schritt S 140 folgt der Schritt S 150 zum Berechnen der Koordinaten (x′, y′) der Schnittpunkte Pk zwischen der relevanten geraden Linie (dargestellt durch y′ = md + a) und dem Abschnitt oder den Abschnitten des Umrisses, die im ersten oder zweiten Quadranten des zweiten Koordinatensystems (X′, Y′) liegen. Genauer gesagt berechnet die CPU 11 die Koordinaten (x′t, y′t) und (x′t + 1, y′t + 1) der Start- und Endpunkte jedes Abschnittes des sektorartigen Umrisses, der der Ungleichung y′tLy′t + 1 oder der Ungleichung y′t + 1 ≦Ly′t + 1 genügt, wobei "t" eine beliebige ganze Zahl von "0" bis "n" ist. Wenn "t" gleich "n + 1" ist, dann berechnet die CPU 11 die Koordinaten (x′n + 1, y′n + 1) und (x′ 0, y′ 0) der Start- und Endpunkte jedes Abschnittes des Sektorumrisses, der die Ungleichung y′n + 1 ≦Ly′ 0 oder die Ungleichung y′ 0 ≦Ly′n + 1 erfüllt. Wenn die relevante Gerade y′ = md + a zwischen den beiden berechneten Koordinaten des Start- und Endpunktes eines bestimmten Umrißabschnittes hindurchläuft, das heißt, wenn die relevante Gerade den besagten Abschnitt schneidet, wird der Koordinatenwert x′ des Schnittpunktes Pk erhalten, der zum Koordinatenwert y′ (= md + a) gehört. Damit werden die Koordinatenwerte (x′, y′) des Schnittpunktes zwischen der relevanten Gerade und dem Umrißabschnitt berechnet. Diese Berechnung wird für jeden Abschnitt durchgeführt, dessen Koordinaten der Start- und Endpunkte die obengenannte Ungleichung erfüllen. Es soll betont werden, daß jede durch die Gleichung y′ = md + a definierte Gerade zumindest zwei Umrißabschnitte schneidet. Step S 140 is followed by step S 150 for calculating the coordinates (x ′, y ′) of the intersection points Pk between the relevant straight line (represented by y ′ = md + a) and the section or sections of the outline that are in the first or second quadrant of the second coordinate system (X ', Y') . More specifically, the CPU 11 calculates the coordinates (x′t, y′t) and (x′t + 1, y′t + 1) of the start and end points of each section of the sector-like outline that corresponds to the inequality y′tLy′t + 1 or the inequality y′t + 1 ≦ Ly′t + 1 is sufficient, where "t" is any integer from "0" to "n" . If "t" is "n + 1", then the CPU 11 calculates the coordinates (x′n + 1, y′n + 1) and (x ′ 0, y ′ 0) of the start and end points of each section of the Sector outline that satisfies the inequality y′n + 1 ≦ Ly ′ 0 or the inequality y ′ 0 ≦ Ly′n + 1. If the relevant straight line y ′ = md + a passes between the two calculated coordinates of the start and end point of a certain contour section, that is, if the relevant straight line intersects the said section, the coordinate value x ′ of the intersection point Pk is obtained, which becomes the coordinate value y ′ (= md + a) belongs. This calculates the coordinate values (x ′, y ′) of the intersection between the relevant straight line and the outline section. This calculation is carried out for each section whose coordinates of the start and end points meet the above inequality. It should be emphasized that each straight line defined by the equation y ′ = md + a intersects at least two outline sections.

Danach geht die Steuerung über zu Schritt S 160, bei dem die x′- und die y′-Koordinaten Pk(x′k, y′k) der Schnittpunkte Pk im zweiten Koordinatensystem (X′, Y′) in x- und y-Koordinaten Pk(xk, yk) im ersten Koordinatensystem (X, Y) entsprechend den ersten Umrißdaten umgewandelt werden. Diese Umwandlung kann durch Rotation des Sektorumrisses um den Neigungswinkel R um den Ursprung (O, O) des zweiten Koordinatensystems im Gegenuhrzeigersinn und durch Verschiebung des Mittelpunktes P 0(x 0, y 0) vom Ursprung (O, O) des zweiten Koordinatensystems (X′, Y′) erfolgen. Genauer gesagt können die Koordinaten Pk(xk, yk) der Schnittpunkte Pk nach der folgenden Formel (3) berechnet werden:Thereafter, control goes to step S 160 , in which the x ′ and y ′ coordinates Pk (x′k, y′k) of the intersection points Pk in the second coordinate system (X ′, Y ′) in x - and y -Coordinates Pk (xk, yk) in the first coordinate system (X, Y) are converted in accordance with the first outline data. This conversion can be done by rotating the sector outline by the angle of inclination R around the origin (O, O) of the second coordinate system in the counterclockwise direction and by shifting the center P 0 (x 0, y 0) from the origin (O, O) of the second coordinate system (X ', Y') take place. More specifically, the coordinates Pk (xk, yk) of the intersection points Pk can be calculated according to the following formula (3):

Auf den Schritt S 160 folgt der Schritt S 170, in dem die CPU 11 Daten zur Verbindung der Schnittpunkte Pk der relevanten Geraden (y′ = md + a) und der zwei oder mehr Abschnitte des Sektorumrisses und damit Schraffurdaten zum Schraffieren der entsprechenden Linie der parallelen, geneigten Linien bereitstellt. Danach geht die Steuerung über zu Schritt S 180, in dem die bereitgestellten Schraffurdaten im Ausgangspuffer 13 a des RAM 13 zusammen mit ersten Umrißdaten abgespeichert werden.Step S 160 is followed by step S 170 , in which the CPU 11 has data for connecting the intersection points Pk of the relevant straight line (y ′ = md + a) and the two or more sections of the sector outline and thus hatching data for hatching the corresponding line of the provides parallel, inclined lines. Thereafter, control goes to step S 180 , in which the hatch data provided are stored in the output buffer 13 a of the RAM 13 together with the first outline data.

Danach geht die Steuerung über auf Schritt S 190, in dem die Variable "m" erhöht wird, um die Schnittpunktkoordinaten zwischen der nächsten Geraden und dem Profilumriß zu berechnen. Thereafter, control proceeds to step S 190, in which the variable "m" is incremented to calculate the intersection point coordinates between the straight line and the next Profilumriß.

Auf Schritt S 190 folgt Schritt S 200, in dem die CPU 11 feststellt, ob die Koordinaten der Schnittpunkte Pk im ersten und zweiten Quadranten des zweiten Koordinatensystems nach Fig. 5 berechnet wurden oder nicht. Mit anderen Worten wird Schritt S 200 zur Prüfung durchgeführt, ob die Variable "m" einen Wert erreicht hat, der die letzte Gerade (den letzten Umrißabschnitt) bezeichnet, der im ersten und zweiten Quadranten des zweiten Koordinatensystems liegt, oder nicht. Wenn im Schritt S 200 ein negatives Ergebnis (NO) erhalten wird, das heißt der gegenwärtige Wert der Variablen "m" entspricht nicht der dem ersten und zweiten Quadranten des zweiten Koordinatensystems nach Fig. 5 zugeordneten letzten Geraden, dann kehrt die Steuerung zurück zu Schritt S 140 und den nachfolgenden Schritten S 150 bis S 200, um die Koordinaten Pk(x′k, y′k) der Schnittpunkte zwischen dem Profilumriß und der letzten Geraden im ersten und zweiten Quadranten des zweiten Koordinatensystems zu berechnen und gegebenenfalls die Koordinaten Pk(xk, yk) der Schnittpunkte zwischen dem Profilumriß und der letzten Schraffurlinie zu erhalten.Step S 190 is followed by step S 200 , in which the CPU 11 determines whether the coordinates of the intersection points Pk in the first and second quadrants of the second coordinate system according to FIG. 5 have been calculated or not. In other words, step S 200 is carried out to check whether or not the variable "m" has reached a value which denotes the last straight line (the last contour section) which lies in the first and second quadrants of the second coordinate system. If a negative result (NO) is obtained in step S 200 , that is, the current value of the variable "m" does not correspond to the last straight line assigned to the first and second quadrants of the second coordinate system according to FIG. 5, then control returns to step S 140 and the subsequent steps S 150 to S 200 in order to calculate the coordinates Pk (x′k, y′k) of the intersection points between the profile outline and the last straight line in the first and second quadrants of the second coordinate system and, if necessary, the coordinates Pk ( xk, yk) of the intersections between the profile outline and the last hatching line.

Wenn im Schritt S 200 ein positives Ergebnis (YES) erhalten wird, das heißt der gegenwärtige Wert der Variablen "m", der dem ersten und zweiten Quadranten zugeordneten letzten Geraden entspricht, dann folgt auf Schritt S 200 der Schritt S 210, in dem die Variable "m" auf "1" zurückgesetzt wird.If a positive result (YES) is obtained in step S 200 , that is to say the current value of the variable “m” which corresponds to the last straight line assigned to the first and second quadrants, then step S 200 is followed by step S 210 in which the Variable "m " is reset to "1".

Die folgenden Schritte S 220 bis S 280 werden zur Berechnung der Koordinaten Pk(x′k, y′k) der Schnittpunkte durchgeführt, die im dritten und vierten Quadranten des zweiten Koordinatensystems liegen, und diese Schritte entsprechen den Schritten S 140 bis S 200, die in Verbindung mit dem ersten und zweiten Quadranten beschrieben wurden. Der einzige Unterschied besteht in der Verwendung der linearen Gleichung y′ = -md + a zur Bestimmung der Geraden, und der Verwendung der folgenden Formel (4) zur Berechnung des Abstandes "L" (y′-Koordinate) zwischen der X′-Achse und der aufeinanderfolgend festgelegten Geraden, die durch den dritten und vierten Quadranten parallel zur X′-Achse hindurchgeht:The following steps S 220 to S 280 are carried out to calculate the coordinates Pk (x′k, y′k) of the intersection points which lie in the third and fourth quadrants of the second coordinate system, and these steps correspond to steps S 140 to S 200 , described in connection with the first and second quadrants. The only difference is the use of the linear equation y ′ = - md + a to determine the straight line, and the use of the following formula (4) to calculate the distance "L" (y ′ coordinate) between the X ′ axis and the successive straight line that passes through the third and fourth quadrants parallel to the X ′ axis:

L = -md + a L = - md + a

Auf der Grundlage des erhaltenen Wertes "L" werden im Schritt S 230 die Koordinaten Pk (x′k, y′k) der Schnittpunkte zwischen jeder festgelegten Geraden (y′ = -md + a) und dem Profilumriß berechnet. Im folgenden Schritt S 240 werden die Koordinaten Pk(x′, y′k) in die Koordinaten Pk(xk, yk) im ersten Koordinatensystem nach Fig. 3 umgewandelt. Auf Schritt S 240 folgt der Schritt S 250, in dem Schraffurdaten zur Verbindung der errechneten Koordinaten erstellt werden. Die erstellen Schraffurdaten und die ersten Umrißdaten werden im S 260, entsprechend dem Schritt S 280, im Ausgangspuffer 13 a des RAMs 13 gespeichert. Danach wird der Wert der Variablen "m" zur Bestimmung der nächsten Geraden im Schritt S 270 erhöht. Schritt S 280 dient zur Bestimmung, ob die Variable "m" einen Wert erreicht hat, der der letzten, dem dritten und vierten Quadranten des zweiten Koordinatensystems zugeordneten Geraden oder Schraffurlinie entspricht.On the basis of the value "L" obtained , the coordinates Pk (x'k, y'k) of the intersections between each defined straight line (y ' = - md + a) and the profile outline are calculated in step S 230 . In the following step S 240 , the coordinates Pk (x ′, y′k) are converted into the coordinates Pk (xk, yk) in the first coordinate system according to FIG. 3. Step S 240 is followed by step S 250 , in which hatching data for connecting the calculated coordinates are created. The hatch data created and the first outline data are stored in S 260 , in accordance with step S 280 , in output buffer 13 a of RAM 13 . The value of the variable "m" is then increased to determine the next straight line in step S 270 . Step S 280 is used to determine whether the variable "m" has reached a value that corresponds to the last straight line or hatching line assigned to the third and fourth quadrants of the second coordinate system.

Wenn im Schritt S 280 das Ergebnis negativ ist (NO), dann kehrt die Steuerung zurück zu Schritt S 220, um gegebenenfalls die Koordinaten Pk(xk, yk), die der nächsten Schraffurlinie zugeordnet sind, zu erhalten. Wenn im Schritt S 280 das Ergebnis positiv ist (YES), dann ist das Schraffursteuerprogramm nach Fig. 2 beendet.If the result in step S 280 is negative (NO), then control returns to step S 220 to obtain the coordinates Pk (xk, yk) associated with the next hatching line, if necessary. If the result in step S 280 is positive (YES), the hatching control program according to FIG. 2 is ended.

Wie oben beschrieben wurde, werden die Schraffurdaten zum Schraffieren der gleichmäßig beabstandeten parallelen, geneigten Linien innerhalb des Sektorumrisses im Ausgangspuffer 13 a des RAMs 13 zusammen mit den Profildaten, die den zu schraffierenden Profilumriß darstellen, gespeichert. Die CPU 11 führt die Daten vom Ausgangspuffer 13 a der Druckvorrichtung 2 zu, womit das durch die ersten oder ursprünglichen Profildaten vom Host-Rechner HC bestimmte Profil gezeichnet wird und das Innere des gezeichneten Profils gemäß den in der oben beschriebenen Weise erstellten Schraffurdaten schraffiert wird.As described above, the shading data are used for hatching of parallel spaced uniformly inclined lines within the sector outline in the output buffer 13 a of the RAM 13 together with the profile data to represent to be hatched Profilumriß stored. The CPU 11 feeds the data from the output buffer 13 a to the printing device 2 , whereby the profile determined by the first or original profile data from the host computer HC is drawn and the inside of the drawn profile is hatched according to the hatching data created in the manner described above.

Zusammenfassend wird beim beschriebenen Ausführungsbeispiel das von den ersten oder ursprünglichen Profildaten vom Host-Rechner HC im ersten Koordinatensystem nach Fig. 3 festgelegte Sektorprofil derart verschoben, daß der Mittelpunkt P 0 des Profils mit dem Ursprung (O, O) des zweiten Koordinatensystems nach Fig. 5 ausgerichtet ist, und im Uhrzeigersinn um den Ursprung um einen Winkel gedreht, der gleich ist dem vorbestimmten Neigungswinkel R der zu schraffierenden parallelen Linien. Damit werden die zweiten Profildaten erhalten (Schritt S 110). Im zweiten Koordinatensystem (X′, Y′) verlaufen daher die zu schraffierenden parallelen, geneigten Linien parallel zu der X′-Achse. Zur Berechnung der Koordinaten der Schnittpunkte zwischen den Schraffurlinien und dem Profilumriß werden zunächst im zweiten Koordinatensystem (X′, Y′) eine Mehrzahl von den Schraffurlinien entsprechenden Geraden parallel zur X′-Achse durch die linearen Gleichungen y′ = md + a und y′ = -md + a festgelegt (Schritt S 120). Danach werden die Koordinaten Pk(x′k, y′k) der Schnittpunkte berechnet (Schritte S 150, S 230). Die errechneten Koordinaten Pk(x′k, y′k) werden in die Koordinaten Pk(xk, yk) im ersten Koordinatensystem (X′, Y′) umgewandelt (Schritte S 160, S 240). Danach werden auf der Grundlage der errechneten Koordinaten Pk(xk, yk) der Schnittpunkte Pk im ersten Koordinatensystem die Schraffurdaten zur Verbindung der Schnittpunkte der Geraden (entsprechend den Schraffurlinien) im Hinblick auf das Profil erstellt. Die Schraffurdaten werden vorübergehend im Ausgangspuffer 13 a gespeichert und zur Steuerung der Druckvorrichtung 2 zum Schraffieren des Sektorprofils verwendet.In summary, in the described embodiment, the sector profile defined by the first or original profile data from the host computer HC in the first coordinate system according to FIG. 3 is shifted such that the center P 0 of the profile with the origin (O, O) of the second coordinate system according to FIG. 5 and is rotated clockwise around the origin by an angle which is equal to the predetermined inclination angle R of the parallel lines to be hatched. The second profile data are thus obtained (step S 110 ). In the second coordinate system (X ′, Y ′) , the parallel, inclined lines to be hatched therefore run parallel to the X ′ axis. To calculate the coordinates of the intersection points between the hatching lines and the profile outline, a plurality of straight lines corresponding to the hatching lines parallel to the X ′ axis are first calculated in the second coordinate system (X ′, Y ′) using the linear equations y ′ = md + a and y ′ = - md + a determined (step S 120 ). Then the coordinates Pk (x′k, y′k) of the intersection points are calculated (steps S 150 , S 230 ). The calculated coordinates Pk (x′k, y′k) are converted into the coordinates Pk (xk, yk) in the first coordinate system (X ′, Y ′) (steps S 160 , S 240 ). Then, on the basis of the calculated coordinates Pk (xk, yk) of the intersection points Pk in the first coordinate system, the hatching data for connecting the intersection points of the straight lines (corresponding to the hatching lines) are created with regard to the profile. The hatching data are temporarily stored in the output buffer 13 a and used to control the printing device 2 for hatching the sector profile.

Aus der vorangehenden Beschreibung ist ersichtlich, daß die Koordinaten der Schnittpunkte zwischen den Profilabschnitten und den Schraffurlinien als Koordinaten der Schnittpunkte des Profils und der Geraden, die den Schraffurlinien entsprechen und parallel zu der X′-Achse des zweiten Koordinatensystems (X′, Y′) verlaufen, errechnet werden. Für jede Gerade entsprechend jeder Schraffurlinie wird der Koordinatenwert dieser Geraden in Richtung der Y′-Achse geprüft. Genauer gesagt wird bestimmt, ob der y′-Koordinatenwert jeder Geraden innerhalb eines Bereiches zwischen dem y′-Koordinatenwert (y′t) oder (y′t + 1) des Startpunktes jedes Profilabschnittes und dem Koordinatenwert (y′t-1) oder (y′t) des Endpunktes dieses Abschnittes liegt. Wenn das zutrifft, bedeutet es, daß die relevante Gerade den Abschnitt schneidet, und die Koordinatenwerte des Schnittpunktes im zweiten Koordinatensystem können einfach erhalten werden, da die Gerade y′ = md + a oder y′ = -md + a genau die y′-Koordinate ist und der entsprechende x′-Koordinatenwert leicht berechnet werden kann. Dadurch wird die erforderliche Gesamtdatenverarbeitungszeit zum Bestimmen der Schraffurdaten erheblich verringert.From the preceding description it can be seen that the coordinates of the intersection points between the profile sections and the hatching lines as coordinates of the intersection points of the profile and the straight lines which correspond to the hatching lines and parallel to the X ′ axis of the second coordinate system (X ′, Y ′) run, be calculated. The coordinate value of this straight line in the direction of the Y ′ axis is checked for each straight line corresponding to each hatching line. More specifically, it is determined whether the y ′ coordinate value of each straight line within a range between the y ′ coordinate value (y′t) or (y′t + 1) of the starting point of each profile section and the coordinate value (y′t -1) or (y′t) of the end point of this section. If this is the case, it means that the relevant straight line intersects the section, and the coordinate values of the intersection point in the second coordinate system can easily be obtained since the straight line y ′ = md + a or y ′ = - md + a exactly the y ′ - Coordinate and the corresponding x ′ coordinate value can be easily calculated. This significantly reduces the total data processing time required to determine the hatch data.

Die Erfindung ist nicht auf die Einzelheiten der beschriebenen Ausführungsform beschränkt. Beispielsweise ist das gemäß dem Konzept der vorliegenden Erfindung zu schraffierende Umrißprofil nicht auf eine Sektorform beschränkt, sondern kann andere Formen wie beispielsweise dreieckige, rechteckige oder runde Formen annehmen. Ferner können die erfindungsgemäß erstellten Schraffurdaten zum Schraffieren der auf einer Anzeigevorrichtung dargestellten Profilinnenfläche verwendet werden.The invention is not described in the details of that Embodiment limited. For example, according to the Concept of the present invention hatched outline profile not limited to one sector shape, but can other shapes such as triangular, rectangular or take on round shapes. Furthermore, those created according to the invention Hatch data for hatching on a display device shown profile inner surface can be used.

Claims (10)

1. Verfahren zum Schraffieren paralleler, geneigter Linien innerhalb eines gewünschten Umrißprofils mittels von einem Computer erstellter Schraffurdaten, dadurch gekennzeichnet, daß
ein zweidimensionales Koordinatensystem mit zwei Achsen, von denen eine parallel zu den genannten parallelen, geneigten Linien liegt, errichtet wird;
in dem zweidimensionalen Koordinatensystem Geraden festgelegt werden, die parallel zu der einen Achse des Koordinatensystems verlaufen und den geneigten Linien entsprechen, und in dem zweidimensionalen Koordinatensystem Koordinatenwerte jedes Schnittpunktes zwischen jeder dieser Geraden und einem Profilumriß errechnet werden; und
die Schraffurdaten zur Verbindung der berechneten Schnittpunkte für jede der Geraden erstellt werden, um so eine entsprechende der parallelen, geneigten Linien zu schraffieren.
1. A method for hatching parallel, inclined lines within a desired outline profile by means of hatching data created by a computer, characterized in that
a two-dimensional coordinate system with two axes, one of which is parallel to said parallel inclined lines, is established;
in the two-dimensional coordinate system, lines are defined which run parallel to the one axis of the coordinate system and correspond to the inclined lines, and in the two-dimensional coordinate system coordinate values of each intersection point between each of these straight lines and a profile outline are calculated; and
the hatching data for connecting the calculated intersection points for each of the straight lines are created so as to hatch a corresponding one of the parallel inclined lines.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Profilumriß durch erste Profildaten zur Darstellung des Umrisses in einem ersten Koordinatensystem festgelegt ist, und der Schritt des Erstellens des zweidimensionalen Koordinatensystems die Umwandlung der ersten Profildaten auf der Grundlage des ersten Koordinatensystems in zwei Profildaten umfaßt, die den Umriß in dem zweidimensionalen Koordinatensystem als zweiten Koordinatensystem darstellen, daß das Verfahren ferner das Umwandeln der errechneten Koordinatenwerte der Schnittpunkte in dem zweidimensionalen Koordinatensystem in Koordinatenwerte im ersten Koordinatensystem umfaßt, wobei der Schritt des Erstellens von Schraffurdaten das Erstellen der Schraffurdaten auf der Basis der Koordinatenwerte in dem ersten Koordinatensystem umfaßt. 2. The method according to claim 1, characterized in that the profile outline by first Profile data to show the outline in a first Coordinate system is set, and the step of Creation of the two-dimensional coordinate system Conversion of the first profile data based on the first Coordinate system included in two profile data that the outline in the two-dimensional coordinate system as the second coordinate system represent that the method further the Convert the calculated coordinate values of the intersection points into the two-dimensional coordinate system in coordinate values in comprises the first coordinate system, the step of creating of hatching data the creation of the hatching data based on the coordinate values in the first coordinate system includes.   3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß das erste Koordinatensystem ein rechtwinkliges Koordinatensystem mit einer x-Achse und einer dazu senkrechten y-Achse ist, während das zweite Koordinatensystem ein rechtwinkliges Koordinatensystem mit einer x′-Achse und einer dazu senkrechten y′-Achse ist, daß die Geraden durch eine Gleichung y′ = md + a dargestellt sind, wobei "m" eine ganze Zahl, "d" einen Abstand der geneigten Linien und "a" eine Konstante, welche die Bedingung d <a ≧0 erfüllt, darstellt, daß der Umriß des Profils aus einer Mehrzahl von geraden Abschnitten besteht, von denen jeder einen Startpunkt und einen Endpunkt aufweist, und bei dem der Schritt des Errechnens der Koordinatenwerte der Schnittpunkte im zweiten Koordinatensystem eine Änderung des Wertes von "m" und damit eine aufeinanderfolgende Bestimmung der Mehrzahl von Geraden, eine Auswahl von zumindest zwei der geraden Abschnitte, von denen der eine y′-Koordinatenwert der Start- und Endpunkte kleiner ist als ein Wert von (md + a) jeder der bestimmten Geraden, und dessen anderer y′-Koordinatenwert größer ist als der Wert von (md + a), und das Berechnen der Schnittpunkte von jeder bestimmten Geraden und jeder der zumindest zwei geraden Abschnitte umfaßt.3. The method according to claim 2, characterized in that the first coordinate system is a rectangular coordinate system with an x axis and a perpendicular y axis, while the second coordinate system is a rectangular coordinate system with an x ' axis and a perpendicular y' -Axis is that the straight lines are represented by an equation y ′ = md + a , where “m” is an integer, “d” is a distance between the inclined lines and “a” is a constant which satisfies the condition d < a ≧ 0 satisfied, that the outline of the profile consists of a plurality of straight sections, each having a start point and an end point, and in which the step of calculating the coordinate values of the intersection points in the second coordinate system is a change in the value of "m" and thus a successive determination of the plurality of straight lines, a selection of at least two of the straight sections, of which the one y ′ coordinate value is the start and endpoints is less than a value of (md + a) each of the determined straight lines, and whose other y ′ coordinate value is larger than the value of (md + a) , and computing the intersection points of each specific straight line and each of the at least comprises two straight sections. 4. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß das Umwandeln der ersten Profildaten in die zweiten Profildaten ein Verarbeiten der ersten Profildaten derart, daß ein vorbestimmter Punkt des Profils zu einem Ursprung des zweiten Koordinatensystems verschoben wird, umfaßt.4. The method according to claim 2, characterized in that converting the first profile data processing the first in the second profile data Profile data such that a predetermined point of the profile too an origin of the second coordinate system is shifted, includes. 5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß der vorbestimmte Punkt den Mittelpunkt des Profils darstellt. 5. The method according to claim 4, characterized in that the predetermined point the Represents the center of the profile.   6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß der Schritt des Berechnens der Koordinatenwerte der Schnittpunkte im zweidimensionalen Koordinatensystem als dem zweiten Koordinatensystem den in einem ersten (I) und einem zweiten (II) Quadranten des zweiten Koordinatensystems liegenden Geraden zugeordnete erste Berechnungen und den in einem dritten (III) und einem vierten (IV) Quadranten des Koordinatensystems liegenden anderen Geraden zugeordnete zweite Berechnungen umfaßt.6. The method according to claim 5, characterized in that the step of calculating the Coordinate values of the intersection points in the two-dimensional Coordinate system as the second coordinate system the in a first (I) and a second (II) quadrant of the second Coordinate system first calculations assigned to straight lines and that in a third (III) and a fourth (IV) Quadrants of the coordinate system are other straight lines associated second calculations. 7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß das erste Koordinatensystem ein rechwinkliges Koordinatensystem mit einer x-Achse und einer dazu senkrechten y-Achse ist und das zweite Koordinatensystem ein rechtwinkliges Koordinatensystem mit einer x′-Achse und einer dazu senkrechten y′-Achse ist, daß die in dem ersten und zweiten (I und II) Quadranten liegenden Geraden durch eine Gleichung y′ = md + a dargestellt werden, während die in dem dritten und vierten (III und IV) liegenden Quadranten liegenden Geraden durch eine Gleichung y′ = -md + a dargestellt werden, wobei "m" eine ganze Zahl, "d" ein Abstand der geneigten Linien und "a" eine Konstante, die die Bedingung d <a ≧0 erfüllt, ist, wobei der Wert von "m" in den ersten Berechnungen beginnend mit "0" erhöht wird, während der Wert von "m" in den zweiten Berechnungen beginnend mit "1" erhöht wird.7. The method according to claim 6, characterized in that the first coordinate system is a rectangular coordinate system with an x axis and a perpendicular y axis and the second coordinate system is a rectangular coordinate system with an x ' axis and a perpendicular y' - The axis is that the straight lines lying in the first and second (I and II) quadrants are represented by an equation y ′ = md + a , while the straight lines lying in the third and fourth (III and IV) quadrants are represented by an equation y ′ = - md + a , where “m” is an integer, “d” is a distance between the inclined lines and “a” is a constant that fulfills the condition d < a ≧ 0, the value of “m "is increased starting with" 0 " in the first calculations, while the value of " m "is increased starting with" 1 "in the second calculations. 8. Vorrichtung zum Schraffieren paralleler, geneigter Linien innerhalb eines gewünschten Profiles, gekennzeichnet durch
eine Einrichtung zum Erstellen eines zweidimensionalen Koordinatensystems mit zwei Achsen (X′, Y′), von denen eine parallel zu den parallelen, geneigten Linien verläuft;
eine Einrichtung (3) zur Festlegung von Geraden in dem zweidimensionalen Koordinatensystem, wobei die Geraden parallel zu der einen Achse des Koordinatensystems verlaufen und den geneigten Linien entsprechen, und zum Berechnen von Koordinatenwerten (x′, y′) in dem zweidimensionalen Koordinatensystem von jedem Schnittpunkt jeder der Geraden und einem Profilumriß; und
eine Einrichtung (3) zum Erstellen von Schraffurdaten zum Verbinden der berechneten Schnittpunkte für jede Gerade, um so eine entsprechende parallele, geneigte Linie zu schraffieren.
8. Device for hatching parallel, inclined lines within a desired profile, characterized by
a device for creating a two-dimensional coordinate system with two axes (X ′, Y ′) , one of which runs parallel to the parallel, inclined lines;
a device ( 3 ) for defining straight lines in the two-dimensional coordinate system, the straight lines running parallel to one axis of the coordinate system and corresponding to the inclined lines, and for calculating coordinate values (x ′, y ′) in the two-dimensional coordinate system from each intersection each of the straight lines and a profile outline; and
means ( 3 ) for creating hatching data for connecting the calculated intersection points for each straight line so as to hatch a corresponding parallel, inclined line.
9. Vorrichtung nach Anspruch 8, gekennzeichnet durch eine Ausgabevorrichtung (2), die in Übereinstimmung mit den Schraffurdaten zum Erzeugen der parallelen, geneigten Linien innerhalb des Profils betrieben wird.9. The device according to claim 8, characterized by an output device ( 2 ) which is operated in accordance with the hatching data for generating the parallel, inclined lines within the profile. 10. Vorrichtung nach Anspruch 9, dadurch gekennzeichnet, daß die Ausgabevorrichtung eine Druckvorrichtung (2) zum Drucken der parallelen, geneigten Linien auf einem Aufzeichnungsmedium aufweist.10. The device according to claim 9, characterized in that the output device comprises a printing device ( 2 ) for printing the parallel, inclined lines on a recording medium.
DE19893930631 1988-09-17 1989-09-13 METHOD AND DEVICE FOR HATCHING WITHIN A PROFILE, WITH SIMPLE HATCHING DATA PROCESSING Withdrawn DE3930631A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23306488A JPH0281186A (en) 1988-09-17 1988-09-17 Hatching plotting method

Publications (1)

Publication Number Publication Date
DE3930631A1 true DE3930631A1 (en) 1990-03-22

Family

ID=16949236

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19893930631 Withdrawn DE3930631A1 (en) 1988-09-17 1989-09-13 METHOD AND DEVICE FOR HATCHING WITHIN A PROFILE, WITH SIMPLE HATCHING DATA PROCESSING

Country Status (4)

Country Link
JP (1) JPH0281186A (en)
DE (1) DE3930631A1 (en)
FR (1) FR2636751B1 (en)
GB (1) GB2224188B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6142067A (en) * 1999-04-06 2000-11-07 Roth; Eldon Apparatus for treating ammoniated meats
JP6011271B2 (en) * 2012-01-17 2016-10-19 株式会社リコー Information processing apparatus, system, information processing method, program, storage medium
CN113392913B (en) * 2021-06-21 2023-09-29 常州大学 Planar graph matching degree evaluation method, device and system based on boundary feature point set

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4124871A (en) * 1977-08-31 1978-11-07 International Business Machines Corporation Image data resolution change apparatus and process utilizing boundary compression coding of objects
US4901251A (en) * 1986-04-03 1990-02-13 Advanced Micro Devices, Inc. Apparatus and methodology for automated filling of complex polygons

Also Published As

Publication number Publication date
GB8920824D0 (en) 1989-11-01
FR2636751A1 (en) 1990-03-23
GB2224188A (en) 1990-04-25
FR2636751B1 (en) 1995-05-05
JPH0281186A (en) 1990-03-22
GB2224188B (en) 1992-10-14

Similar Documents

Publication Publication Date Title
DE3889819T2 (en) 3D dimensioning in computer-aided drawing.
DE19729600B4 (en) Pattern comparison verification system and method using a gray scale dot grid
DE68928154T2 (en) Fingerprint processing system, suitable for determining the core of a fingerprint image by means of curvature parameters
DE3309846C2 (en)
DE69914355T2 (en) IMAGE PROCESSING UNIT
DE69329572T2 (en) Imaging device
DE69328589T2 (en) System and method for displaying Bezier spline curves
DE3587061T2 (en) IMAGE PROCESSING DEVICE AND METHOD FOR THE CONTROL THEREOF.
DE3888825T2 (en) Graphical input / output system and method.
DE68923227T2 (en) Vector to raster conversion process.
EP1316057B1 (en) Evaluation of edge direction information
DE69328230T2 (en) Distance image processing device and method
DE19945636A1 (en) Three dimensional computer tomography involves dividing collected pixel of equivalent two dimensional image data in two groups, which are then filtered separately
DE2801536A1 (en) CHARACTER RECOGNITION DEVICE
DE69202323T2 (en) Process for three-dimensional machining.
EP0290374A2 (en) Method of and device for generating and reproducing two-dimensional graphical objects
DE3315148C2 (en)
DE102005050846A1 (en) Perspective editing tools for 2-D images
DE10317917A1 (en) System and method for delimiting and classifying regions within a graphic image
EP1251462A2 (en) Method for the segmentation of a three-dimensional structure contained within an object, in particular for medical image analysis
DE102005010169A1 (en) Active polyhedron for 3D image segmentation
DE3414875C2 (en) Arrangement for reprojecting images obtained by means of rear projection
DE69231049T2 (en) Image processing
DE102015120118A1 (en) Tool path curve generation method and tool path curve generation device
DE102019217134A1 (en) NUMERICAL CONTROL, METHOD FOR DETERMINING THE MACHINING PATH AND PROGRAMMING

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee