-
HINTERGRUND
DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf Verfahren und Vorrichtung
zur Erzeugung von Mustern für
Baumaterialien, Innenauskleidungsmaterialien und Außenverkleidungsmaterialien,
die nebeneinander in einer Ebene angeordnet sind, wie z.B. Fliesen,
Tapeten und Fliesenteppiche.
-
Im
Falle von Fliesen und ähnlichen
Industriestoffen ist deren Bedruckung mit Mustern wichtig, um ihren
Wert zu erhöhen.
Wenn die Muster auf nebeneinander an einer Wandfläche befindlichen
Fliesen nahtlos über
den Rand der Fliesen hinweg ineinander übergehen, ohne dass der Rand
dabei deutlich wird, so werden die Muster als ein ununterbrochenes
Muster betrachtet, das sich über
die gesamte Wandfläche erstreckt.
Werden des Weiteren Fliesen, die dasselbe Muster (ein einfaches
Fliesenmuster) aufweisen, mit derselben Orientierung ausgerichtet,
so weist jede Fliese dieselbe Mustervariation auf, und demzufolge
heben sich die Fliesen für
jedes Muster individuell deutlich ab. Werden Fliesen mit unterschiedlicher
Orientierung ausgerichtet oder wird eine geringe Fliesenzahl mit
unterschiedlichen Mustern angebracht, so können die Muster über den
Rand der Fliesen hinweg weiter geführt werden, und sie weisen dadurch
ein angenehmeres Erscheinungsbild auf, da sie als ein Muster betrachtet
werden können.
-
Des
Weiteren wäre
es in Anbetracht einer Erhöhung
der Mannigfaltigkeit der Fliesen vorzuziehen, wenn mehrere Arten
von Fliesen, die Muster aufweisen, welche über ihre jeweiligen Ränder zu
den angrenzenden Fliesen hinweg ineinander übergehen und Muster aufweisen,
die sich in den Randbereichen unterscheiden, in willkürlicher
Kombination in einer Ebene gelegt werden können. Neben der Formation einfacher
geometrischer Muster in den Randbereichen oder der manuellen Einzeichnung
ungefährer
Muster ist es jedoch schwierig, eine Vielzahl von Mustern zu erzeugen,
die über
die Ränder
fortgeführt
werden können.
Des Weiteren lassen sich lediglich zwei Arten derartiger Muster
erzeugen, bis die Ränder
der Fliesen dann irgendwie hervortreten; daher werden mindestens
vier Arten an einfachen Fliesenmustern benötigt. Die Vorbereitung von
Fliesen, die je eine Vielzahl von Mustern aufweisen, stellt jedoch
ein Problem in punkto Massenproduktionskosten, Vertriebskosten und
Komplexität
beim Umgang dar.
-
Fournier
et al. beschreiben in "Computer Rendering
of Stochastic Models",
Communication of the ACM, Band 25, 6. Juni 1982, Seiten 371–384, die Unterteilung
eines Vierseits durch Erzeugen des Mittelpunkts jeder der vier Seiten
unter Verwendung von fraktaler Polylinien-Unterteilung. Für jedes
der zwei Paare von gegenüberliegenden
Mittelpunkten ist der Mittelpunkt der sie verbindenden Linie versetzt.
Der Mittelpunkt der diese zwei "Mittelpunkte" verbindenden Linie
wird der Zentralpunkt der Vierseit-Unterteilung und vier kleinere
Vierseite werden erzeugt. Dieser Prozess wird fortgesetzt, bis die
gewünschte
Auflösung
erreicht ist, woraus ein fraktales Vierseit resultiert, dessen Oberfläche aus
vielen Vierseit-Facetten zusammengesetzt ist.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Eine
Aufgabe der vorliegenden Erfindung ist es, ein Verfahren sowie eine
Vorrichtung zu schaffen, die die oben genannten Probleme des Standes
der Technik lösen
und eine effiziente Erzeugung von Fraktalmustern in einem quadratischen
Bereich gestatten.
-
Diese
Aufgabe wird mit einem Verfahren gemäß Anspruch 1 und einer Vorrichtung
gemäß Anspruch
6 gelöst.
Bevorzugte Ausführungsformen
der Erfindung sind Gegenstand der Unteransprüche.
-
KURZE ERLÄUTERUNG
DER ZEICHNUNGEN
-
1A ist
ein Schaubild, das eine quadratische Fläche einer Fliese und einen
angrenzenden quadratischen Bereich zeigt, und die der Erläuterung der
Prinzipien dient, die der vorliegenden Erfindung zugrunde liegen;
-
1B ist
ein Schaubild, das der weiteren Erläuterung der Prinzipien dient,
die der vorliegenden Erfindung zugrunde liegen;
-
1C ist
ein Schaubild, das der noch genaueren Erläuterung der Prinzipien dient,
die der vorliegenden Erfindung zugrunde liegen;
-
2 ist
ein Schaubild, das die Prinzipien erläutert, die der Anwendung der
vorliegenden Erfindung auf eine regelmäßig geformte dreieckige Fliese zugrunde
liegen;
-
3 ist
ein Schaubild, das die Bedingungen für eine Musterfortführung auf
der regelmäßig geformten
dreieckigen Fliese erläutert;
-
4 ist
ein Schaubild, das die Bedingungen für eine Musterfortführung auf
der regelmäßig geformten
sechseckigen Fliese erläutert;
-
5 ist
ein Blockdiagramm, das eine Ausführungsform
für die
Vorrichtung zur Mustererzeugung gemäß vorliegender Erfindung verdeutlicht;
-
6A ist
ein Schaubild, das die Bedingungen für die Fortführung eines Musterelementes
auf einer quadratischen Fliese erläutert;
-
6B ist
ein Schaubild, das die Bedingungen für die Musterfortführung erläutert;
-
6C ist
ein Schaubild, das einen Stempelbereich zeigt, der ein Musterelement
umfasst;
-
7 ist
ein Flussdiagramm, dass das Verfahren zur Erzeugung eines Fliesenmusters
gemäß der Ausführungsform
in 5 zeigt;
-
8 ist
ein Blockdiagramm, das eine modifizierte Form der in 5 gezeigten
Ausführungsform
zeigt;
-
9 ist
ein Schaubild, das die Koordinatenkombination in der in 7 gezeigten
Ausführungsform
erläutert;
-
10 ist
ein Flussdiagramm, das das Mustererzeugungsverfahren gemäß der Ausführungsform
in 8 zeigt;
-
11A ist ein Schaubild, das ein Beispiel eines
Fliesenmusters zeigt, dass die Bedingungen für eine Musterfortführung erfüllt, wobei
die schwarzen Kreise die Musterelemente verkörpern;
-
11B ist ein Schaubild, das ein Beispiel zeigt,
bei dem eine Vielzahl von Fliesen nebeneinander angeordnet ist;
-
12A ist ein Schaubild, das ein Beispiel eines
Fliesenmusters zeigt, bei dem die Dichte der Musterelemente im Randbereich
sehr hoch ist;
-
12B ist ein Schaubild, das ein Beispiel eines
Fliesenmusters zeigt, das gemäß dem Verfahren
von 14 erzeugt wurde;
-
13A ist ein Schaubild, das ein Musterelement sowie
einen zugehörigen
Stempelbereich zeigt;
-
13B ist ein Schaubild, das das Verhältnis von
Fliesenfläche
und Stempelbereich zeigt, in die Musterelemente eingefügt werden;
-
14 ist
ein Flussdiagramm, das ein Verfahren zur Erzeugung eines Musters
zeigt, bei dem die Musterelemente eine einheitliche Dichte aufweisen;
-
15A ist ein Schaubild, das ein Beispiel eines
Fliesenmusters zeigt, das aus Musterelementen besteht, die eine
bestimmte Richtwirkung aufweisen;
-
15B ist ein Schaubild, das ein Beispiel für die Anordnung
einer Vielzahl von Fliesen gemäß 15A zeigt;
-
15C ist ein Schaubild, das ein Beispiel für die Fortführung von
Fliesenmustern zeigt, die durch das in 16 genannte
Verfahren erzeugt wurden;
-
16 ist
ein Blockdiagramm, das eine Vorrichtung zur Mustererzeugung darstellt,
welche die Richtung oder Orientierung verändert, in der gerichtete Musterelemente
geschrieben werden;
-
17 ist
ein Flussdiagramm, dass ein Verfahren zur Mustererzeugung mittels
der in 16 genannten Vorrichtung zeigt;
-
18 ist
ein Flussdiagramm, das ein Verfahren zur Erzeugung von Fliesen mit
unterschiedlichen Mustern zeigt, dass bei Erzeugung eines Zweitmusters
die Bedingungen zur Musterfortführung
erfüllt;
-
19A ist ein Schaubild, das ein Beispiel eines
Fliesenmusters zeigt, das durch ein Schreibschema erzeugt wurde,
das nicht dem Kommutativgesetz entspricht;
-
19B ist ein Schaubild, das ein Beispiel eines
Fliesenmusters zeigt, das durch sich abwechselnde Musterelemente
in den Rand- und Innenbereichen erzeugt wurde;
-
20 ist
ein Flussdiagramm, das ein Schreibverfahren zeigt, das sich im Falle
von NI > NB eines DDA-Schemas bedient;
-
21 ist
ein Flussdiagramm, das ein Schreibverfahren zeigt, das sich im Falle
von NI ≤ NB des DDA-Schemas bedient;
-
22A ist ein Schaubild, das ein Erstverfahren zur
Fraktalerzeugung gemäß vorliegender
Erfindung erläutert;
-
22B ist ein Schaubild, das ein Zweitverfahren
zur Fraktalerzeugung gemäß vorliegender
Erfindung erläutert;
-
22C ist ein Schaubild, das ein Drittverfahren
zur Fraktalerzeugung gemäß vorliegender
Erfindung erläutert;
-
23 ist
ein Blockdiagramm, das die Vorrichtung zur Erzeugung eines Fraktalmusters
gemäß vorliegender
Erfindung erläutert;
-
24 ist
ein Flussdiagramm, das ein Verfahren zur Erzeugung eines Fraktalmusters
mit der in 23 beschriebenen Vorrichtung
zeigt;
-
25A ist ein Schaubild, das einen quadratischen
Originalbereich im Fraktalmustererzeugungsverfahren gemäß vorliegender
Erfindung zeigt;
-
25B ist ein Schaubild, das die Bildung rhombischer
Bereiche bei der Fraktalerzeugung zeigt;
-
26A ist ein Schaubild, das erstgeteilte quadratische
Bereiche bei der Fraktalerzeugung zeigt;
-
26B ist ein Schaubild, das erstgeteilte rhombische
Bereiche bei der Fraktalerzeugung zeigt;
-
27A ist ein Schaubild, das zweitgeteilte quadratische
Bereiche bei der Fraktalerzeugung zeigt;
-
27B ist ein Schaubild, das zweitgeteilte rhombische
Bereiche bei der Fraktalerzeugung zeigt;
-
28A ist ein Schaubild, das drittgeteilte quadratische
Bereiche bei der Fraktalerzeugung zeigt;
-
28B ist ein Schaubild, das k-geteilte rhombische
Bereiche bei der Fraktalerzeugung zeigt;
-
29A ist ein Schaubild, das eine schematische Darstellung
der Konzentrationsverteilung miteinander verbundener Fraktalmuster
zeigt;
-
29B ist ein Schaubild, das ein Beispiel für Fraktalmuster
zeigt, die an den Verbindungen von Mustern über ihre Ränder hinweg gestaucht sind;
-
30 ist
ein Blockdiagramm, das eine Ausführungsform
einer Vorrichtung zur Erzeugung von Fraktalmustern darstellt, deren
Pixelwertgradienten über
ihre Grenze hinweg fortlaufen; und
-
31 ist
ein Schaubild, das die Wahl eines Pixels für den Fall erläutert, dass
sich die Scheitel der rhombischen Fläche außerhalb eines quadratischen Bereiches
befinden.
-
BESCHREIBUNG
BEVORZUGTER AUSFÜHRUNGSFORMEN
-
Um
ein besseres Verständnis
der vorliegenden Erfindung zu fördern,
wird zuerst eine Beschreibung der Grundprinzipien dieser Erfindung
gegeben, wobei Muster auf einer beliebigen quadratischen Fliese – bei Anordnung
in einer Matrixform – an
den Rändern
zu benachbarten Fliesen stets eine Fortsetzung zu deren Mustern
aufweisen. Übrigens
schließt das
hierbei erwähnte
Rechteck auch Quadrate ein.
-
Nehmen
wir jetzt einmal an, dass die quadratischen Fliesen Ta und Tb, deren
Seiten jeweils die Länge
W aufweisen, nebeneinander angeordnet sind und Muster aufweisen,
die Liniensegmente L beinhalten, welche über den Rand B der beiden Fliesen kontinuierlich
ineinander übergehen.
Gehen wir weiterhin davon aus, dass die Koordinaten der Pixel Pa und Pb, die sich
in Bezug auf Rand B am dichtesten aneinander auf den Liniensegmenten
L befinden, durch (xa, Ya)
bzw. (xb, yb) repräsentiert
werden. Damit auf Fliese Tb der Pixel Pb existiert,
der eine kontinuierliche Fortführung
von Pixel Pa der Fliese Ta darstellt, ungeachtet
dessen, welche Seite der Fliese Tb an Fliese Ta angrenzt, so ist
es notwendig, dass Fliese Tb die Pixel Pb1,
Pb2 und Pb3 aufweist,
die dieselbe Position wie Pixel Pb einnehmen,
wenn die Fliese Tb um 90, 180 bzw. 270 Grad gedreht wird. Umgekehrt ist
es notwendig, damit auf Fliese Ta der Pixel Pa existiert,
der eine kontinuierliche Fortführung
von Pixel Pb der Fliese Tb darstellt, ungeachtet
dessen, welche Seite der Fliese Ta an Fliese Tb angrenzt, dass die
Fliese Ta die Pixel Pa1, Pa2 und
Pa3 aufweist, die dieselbe Position wie
Pixel Pa einnehmen, wenn die Fliese Ta um
90, 180 bzw. 270 Grad gedreht wird. Die Fliesen Ta und Tb erfüllen diese
beiden Bedingungen, wenn Pixel Pa, Pa1, Pa2 und Pa3 sowie Pb, Pb1, Pb2 und Pb3, die die oben genannten beiden Bedingungen
erfüllen,
auf vier Seiten desselben Quadrats vorhanden sind, wobei Fliesen
Ta und Ta jeweils aufeinander gelegt werden. Demzufolge, wenn zwei
beliebig gewählte
Fliesen nebeneinander gelegt werden, wobei beliebige Seiten aneinander
grenzen, brauchen die Fliesenmuster, die über die Ränder der Fliesen fortgeführt werden
sollen, lediglich auf die im folgenden beschriebene Weise erzeugt
werden.
- (a) Wenn ein Pixelwert existiert, der
an einer Position (xa, ya)
geschrieben werden soll, die an eine beliebige Seite der Fliese
Ta wie in 1B gezeigt angrenzt, und zwar
im Zuge der sequenziellen Schreibung von Pixelwerten an Pixelpositionen,
die ein Muster auf Fliese Ta bilden, so wird die Position (xb, yb) von Pixel
Pb auf der angrenzenden Fliese Tb berechnet,
der sich neben Pixel Pa befindet.
- (b) Die Position von Pixel Pb', wobei Fliese Tb
auf Fliese Ta geschoben wird, wird zum Beispiel mit (xb-W,
yb), wie in 1B gezeigt,
berechnet.
- (c) Positionen der Pixel Pa, Pa1, Pa2, Pa3 und Pb', Pb1', Pb2' mit Pixeln Pa und Pb' um 90, 180 und 270 Grad
um die Koordinate (Xc, Yc) der Mitte Oc der Fliese Ta, wie in 1 C gezeigt, gedreht, werden bestimmt,
und die Pixelwerte werden an den auf diese Weise bestimmten Pixelpositionen
eingetragen. Ist Pixel Pa am Rand vorhanden,
so werden zusätzliche
Pixel am Rand mit Hilfe der oben beschriebenen Schrittfolge (a),
(b) und (c) eingetragen; das durch diese am Rand befindlichen Pixel gebildete
Muster geht nahtlos in das Muster der angrenzenden Fliese über.
-
Die
obige Beschreibung bezieht sich auf den Fall einer quadratischen
Fliese; im Falle einer rechteckigen Fliese, deren angrenzende Seiten
unterschiedliche Längen
aufweisen, brauchen die Pixel lediglich laut obigem Schritt (c)
um 180 Grad gedreht zu werden. Des Weiteren braucht im Falle der
quadratischen Fliesen die angrenzende Fliese Tb nicht immer auf
die in Schritt (b) beschriebene Weise auf Fliese Ta umgesetzt werden,
sondern kann ebenfalls auf diese aufgelegt werden, indem erstere
Fliese um ein Ende Ox der angrenzenden Seite um 90 Grad nach links
gedreht wird, wonach die Berechnung der Position von Pixel Pb'' anstelle von Pixel
Pb erfolgt.
-
Ähnliche
Prinzipien lassen sich ebenfalls auf regelmäßige (gleichseitig) dreieckige
und regelmäßige (gleichseitig)
sechseckige Fliesen anwenden. 2 zeigt
die Anwendung der Prinzipien auf regelmäßige dreieckige Fliesen. Ist
zum Beispiel ein Pixel Pa vorhanden, der
an eine Seite einer dreieckigen Fliese Ta angrenzt, so wird die
Position eines Pixels Pb auf der angrenzenden
dreieckigen Fliese Tb, der an Pixel Pa angrenzt
berechnet, dann wird die dreieckige Fliese Tb auf die dreieckige
Fliese Ta aufgelegt, indem erstere um ein Ende Ox der angrenzenden Seite
um 60 Grad gedreht wird, und die Position eines Pixels Pb' berechnet.
Daraufhin wird die dreieckige Fliese Ta um 120 und 240 Grad um ihre
Mitte Oc gedreht, wodurch sich Pixelpositionen Pa1,
Pa2 und Pb1', Pb2' erhalten lassen.
-
3 zeigt
Pixel A und B, die die oben beschriebenen Bedingungen zur Musterfortführung bezüglich 2 erfüllen, und
daher über
die Ränder
der oben genannten dreieckigen Fliesen Ta und Tb fortgeführt werden,
die in einer Ebene gelegt sind.
-
4 zeigt
eine Musterung, die die Kontinuität von Mustern an den Rändern zwischen
regelmäßigen sechseckigen
Fliesen, die in einer Ebene gelegt sind, sicherstellt. In diesem
Beispiel, wenn Pixel Pa am Rand zur Fliese
Ta geschrieben werden soll, wird die Koordinate des Pixels Pb auf der Fliese Tb, der über den Rand an Pixel Pa angrenzt, berechnet; dann wird Fliese Tb
um ein Ende Ox der Randseite um 120 Grad nach rechts gedreht, und
die Koordinate der Position Pb' des Pixels Pb auf Fliese Ta bestimmt. Als nächstes werden
die Koordinaten der Pixel Pa (durch A bestimmt)
und Pb' (durch
B bestimmt) berechnet, nachdem die Fliese Ta nacheinander um 60,
120, 180, 240 und 300 Grad gedreht wird, und die Werte für die Pixel
an den berechneten Koordinatenpositionen eingetragen werden. Die
Muster für
Fliesen, die auf diese Weise vorbereitet werden, werden stets über die
Ränder
der Fliesen fortgeführt – ungeachtet
dessen, welche Seite einer Fliese an welche Seite der anderen Fliese
angrenzt.
-
Als
nächstes
folgt eine Beschreibung – mit Verweis
auf 5 – einer
Vorrichtung zum Aufzeichnen vieler vorbestimmter Muster, wie zum
Beispiel Kreise, auf eine Fliese, wozu das oben beschriebene Erfindungsverfahren
zur Anwendung kommt. Gehen wir einmal davon aus, dass eine quadratische
Fliese mit einer Seitenlänge
W auf dem X-Y-Koordinatensystem wie in 6A beschrieben
definiert ist. In diesem Beispiel werden die Positionen von Musterelementen,
die auf der Fliese eingetragen werden sollen, willkürlich als
Mittenkoordinaten (Xc, Yc) der Elemente erzeugt, und ein Kreis mit
Radius R, der in 6B gezeigt wird, wird auf die
Fliese aufgetragen, wobei sich die Mittenkoordinaten jeweils in
der Mitte befinden. In diesem Fall nehmen wir jedoch an, dass der
auf die Fliese zu schreibende Pixelwert in einem Musterdatenspeicher 18 eingetragen
ist.
-
In
einem Musterelementspeicher 11 wird jeder Pixelwert auf
dem Kreis (der von nun an als Musterelement bezeichnet wird) des
in 6B abgebildeten Radius R an einer Adresse vorgespeichert,
die der Koordinate (x, y) des Pixels entspricht. Ein adressenerzeugendes
Teil 12 erzeugt sequentiell alle Adressen (x, y) in einem
quadratischen Bereich RS, einschließlich des
Musterelementes C im Musterelementspeicher 11, und zwar
jedes Mal, wenn ein mittenkoordinatenerzeugendes Teil 13 eine
Mittenkoordinate (XC, YC)
des zu schreibenden Musterelements erzeugt. Das mittenkoordinatenerzeugende
Teil 13 erzeugt willkürlich
Mittenkoordinaten (XC, YC)
innerhalb der Bereiche 0 ≤ XC ≤ W
und 0 ≤ YC ≤ W.
Ein koordinatenkombinierendes Teil 14 kombiniert die Auslese-Adresse,
die vom adressenerzeugenden Teil 12 erzeugt wurde, und
die Mittenkoordinate (XC, YC)
vom mittenkoordinatenerzeugenden Teil 13 und gibt eine Kombinationskoordinate
(x + XC, y + YC)
heraus. Bei dieser Ausführungsform,
wenn ein Kreis C, der ein auf Fliese Ta zu schreibendes Musterelement
darstellt, über
den in 6A gezeigten Rand hinausgeht,
wird Kreis C auf eine solche Weise auf Fliese Ta und die angrenzende
Fliese Tb geschrieben, dass sein kreisförmiger Bogenteil Cb,
der aus Fliese Ta herausragt, über
den zwischen beiden Fliesen befindlichen Rand kontinuierlich auf
der angrenzenden Fliese Tb fortgeführt wird. Um dies zu erreichen
führt ein flächenumwandelndes
Teil 15 Operationen aus, X = (x + Xc)modW und Y = (y +
Yc)modW, durch die die Koordinaten eines jeden Pixels auf dem kreisförmigen Bogenteil
Cb, der gemäß 6A aus
Fliese Ta herausragt, in X = (x + Xc)modW = x + Xc-W und Y = (y
+ Yc)modW = y + Yc-W umgewandelt werden. Auf Grundlage von Radius
R und der Mittenkoordinate von Kreis C, nimmt ein flächenbestimmendes
Teil 16 eine Überprüfung vor
um festzustellen, ob Kreis C auf dem Rand zu Fliese Ta (auf einer
beliebigen der vier Seiten) liegt. Das heißt, dass dann, wenn mindestens eine
der beiden Bedingungen W-Xc < R/2
und W-Yc < R/2
erfüllt
ist, daraus geschlussfolgert wird, dass Kreis C auf dem Rand liegt.
Ein koordinatenrotierendes Teil 17 folgt der Entscheidung
des flächenbestimmenden
Teils 16; wenn sich der Kreis C nicht auf dem Rand befindet,
verwendet das koordinatenrotierende Teil 17 die Kombinationskoordinate
(X, Y) vom flächenumwandelnden
Teil 15 als Adresse, um in den Musterdatenspeicher 18 einen
Pixelwert-Auslesewert von Musterelementspeicher 11 auf
Grundlage der oben genannten Koordinate (x, y) einzutragen. Beträgt der Pixelwert-Auslesewert
von Speicher 11 Null, so erfolgt keine Eintragung in Speicher 18. Nachdem
entschieden wurde, dass sich der Kreis C auf dem Rand befindet,
benutzt das koordinatenrotierende Teil 17 die Kombinationskoordinate
(X, Y) als Adresse, um – ähnlich dem
Auslesewert der Adresse (x, y) im Speicher 11 – im Speicher 18 einen
Pixelwert einzutragen. Gleichzeitig berechnet das koordinatenrotierende
Teil 17 die Koordinaten (X1, Y1), (X2, Y2) und (X3, Y3), die durch Drehung der Kombinationskoordinate
(X, Y) durch 90, 180 bzw. 270 Grad entstehen, und trägt Pixelwerte – ähnlich den
Auslesewerten im Speicher 11 – im Speicher 18 ein,
wobei die oben genannten Koordinaten als Adressen fungieren. Betragen
die aus Speicher 11 ausgelesenen Pixelwerte Null, so erfolgt
keine Eintragung im Speicher 18.
-
Die
oben beschriebene Verarbeitung wird für alle Adressen (x, y) vorgenommen,
die den quadratischen Bereich RS von Elementspeicher 11 abtasten, wodurch
das Muster für
eine der Mittenkoordinaten erzeugt wird, die vom mittenkoordinatenerzeugenden
Teil 18 erzeugt werden; dann werden Mittenkoordinaten zufällig erzeugt
und dieselbe Verarbeitung wie oben beschrieben wiederholt. In Bezug
auf die Mittenkoordinate eines Kreises Co, die gemäß der Entscheidung
des flächenbestimmenden
Teils 16 keinen der Ränder
der Fliese Ta überschreitet – siehe 6C – wird ein
vollständiger
Kreis Co in Speicher 18 eingetragen. In Bezug auf die Mittenkoordinate
eines Kreises, der den Rand überschreitet,
werden zwei Kreisbögen
Ca und Cb, die vom
Rand geteilt werden, sowie Sätze
an Kreisbögen
(Ca1, Cb1), (Ca2, Cb2) und (Ca3, Cb3), die durch
Drehung der beiden Kreisbögen
Ca und Cb erreicht werden, in den Datenspeicher 18 eingetragen.
Wie aus 6C hervorgeht, werden dann,
wenn Fliesen, die auf diese Weise erzeugte Muster aufweisen, so
angeordnet werden, dass sie einander berühren, die Muster über die
Ränder
der Fliesen weiter geführt – ungeachtet
dessen, welche Seiten der Fliesen aneinander grenzen.
-
Im
obigen Beispiel wurde in Bezug auf den Teil des Musterelements,
der von einer Seite der Fliese hervorsteht, das Umwandlungsteil 15 in 5 so beschrieben,
dass es die Modulo-Operationen zum Schreiben des hervorstehenden
Teils ausführt,
indem die besagte eine Seite parallel zur gegenüberliegenden Seite verschoben
wird. Es ist jedoch auch möglich,
den hervorstehenden Teil in die Fliese hinein zu bringen, indem
er durch eine 90-Grad-Drehung um ein Ende der Seite, aus der das
Muster hervorragt, verschoben wird, wie das bereits mit Verweis auf 1B beschrieben
wurde. In einem solchen Fall wird zum Beispiel der Kreisbogenteil
Cb, der aus einer Seite der Fliese Ta in 6A herausragt,
in 6C in Cb3 umgewandelt,
wenn er um ein Ende Ox der Seite um 90 Grad nach links gedreht wird.
Wird die Koordinate des Pixels, der zum Muster gehört, das
aus der Fliese Ta hervorsteht, mit (X, Y) dargestellt, so entspricht
die Koordinate des hervorragenden Kreisbogenteils, der um 90 Grad
um das Ende Ox der Seite gedreht wurde, (W-Y, X-W).
-
In 7 wird
durch ein Flussdiagramm ein Verfahren dargestellt, mit dem sich
mittels der in 5 genannten Vorrichtung Fliesenmuster
erzeugen lassen. Das Verfahren beginnt mit Schritt S1: der Vorgabe
der Gesamtmenge N, die anzeigt, wie oft die Mittenkoordinate erzeugt
wird und Rücksetzung
eines Rotationsflags Fc auf Null, gefolgt von Schritt 2: der
Erzeugung zufälliger
Mittenkoordinaten (Xc, Yc). In Schritt 3 wird die aktuelle
Anzahl der Male n, die die Mittenkoordinate bis dahin erzeugt wurde,
um eins inkrementiert, und in Schritt 4 wird eine Überprüfung vorgenommen,
um festzustellen, ob das Musterelement über den Rand der Fliese hinausgeht.
Ist dies nicht der Fall, so wird die Ausleseadresse (x, y) erzeugt,
die dann zum Auslesen des entsprechenden Pixelwertes aus dem Musterelementspeicher 11 verwendet
wird. In Schritt S6 werden die Adresse (x, y) und die Mittenkoordinate
(Xc, Yc) kombiniert, um Koordinate X = x + Xc, Y = y + Yc zu erhalten,
und in Schritt S7 wird der in Schritt S5 ausgelesene Pixelwert in
den Datenspeicher 18 eingetragen, wobei die Kombinationskoordinate
als Adresse verwendet wird. In Schritt S8 erfolgt eine Überprüfung, um
festzustellen, ob aus allen Adressen (x, y) Pixelwerte ausgelesen
wurden. Ist dies nicht der Fall, so werden Schritte S5, S6 und S7
nochmals wiederholt. Sobald das Auslesen aus allen Adressen beendet
ist, wird in Schritt S9 überprüft, ob die
Zahl n, die anzeigt, wie oft die Mittenkoordinate erzeugt wurde,
den Vorgabewert N erreicht hat. Ist dies nicht der Fall, so wird
das Verfahren mit Schritt S2 fortgeführt und ist dann beendet, wenn
Wert N erreicht wurde.
-
Wenn
in Schritt S4 festgestellt wird, dass das Musterelement über den
Rand hinausgeht, wird das Verfahren mit Schritt S10 weiter geführt, wobei
die Ausleseadresse (x, y) erzeugt und zum Auslesen des entsprechenden
Pixelwertes verwendet wird; dann werden in Schritt S11 Adresse (x,
y) und Mittenkoordinate (Xc, Yc) kombiniert und eine Modulo-W-Restprüfung der
Kombinationsadresse vorgenommen, um die Koordinate (X, Y) zu erhalten.
In Schritt S12 wird – wenn
Rotationsflag Fc 0, 1, 2 oder 3 beträgt – die Koordinate (X, Y) um
0, 90, 180 bzw. 270 Grad gedreht, um die Koordinate (X', Y') zu erhalten, und
in Schritt S13 wird der in Schritt S10 ausgelesene Pixelwert im
Datenspeicher 18 eingetragen, wobei die Koordinate (X', Y') als Adresse verwendet
wird. In Schritt S14 wird eine Prüfung vorgenommen um festzustellen,
ob aus allen Adressen (x, y) Pixelwerte ausgelesen wurden; ist dies
nicht der Fall, so werden die Schritte S10 bis S13 nochmals wiederholt.
Nach Abschluss des Auslesens aus allen Adressen (x, y) wird in Schritt
S15 überprüft, ob Flag
Fc 3 erreicht hat; ist dies nicht der Fall, so wird Flag Fc in Schritt S16
um eins inkrementiert, und das Verfahren mit Schritt S10 fortgeführt. Wird
in Schritt S15 festgestellt, dass Flag Fc 3 erreicht hat, so wird
Flag Fc in Schritt S17 auf Null rückgestellt, gefolgt von Schritt S9.
-
In
der oben bezüglich 5, 6A, 6B und 6C beschriebenen
Ausführungsform
werden, wenn die Kombinationskoordinate (X, Y) vom koordinatenrotierenden
Teil 17 durch 0, 90, 180 und 270 Grad gedreht wird, um
Adressen zum Eintrag in den Musterdatenspeicher 18 zu erhalten, die
Musterelemente, die mittels derartiger Schreibadressen in Speicher 18 eingetragen
wurden, ebenfalls um 0, 90, 180 bzw. 270 Grad rotiert. Um die oben beschriebenen
Ergebnisse zu erhalten ist es ebenfalls möglich ein Verfahren anzuwenden,
bei dem die Mittenkoordinate (Xc, Yc) um 0, 90, 180 bzw. 270 Grad
rotiert wird, dann die Adresse (x, y), die mit den rotierten Mittenkoordinaten
kombiniert werden soll, um 0, 90, 180 bzw. 270 Grad gedreht wird
(das heißt, die
Muster werden rotiert), und diese rotierten Mittenkoordinaten und
Adressen kombiniert werden.
-
So
wird zum Beispiel, wie in 8 gezeigt, das
koordinatenrotierende Teil 17 in 5 gegen
ein mittenkoordinatenrotierendes Teil 17A zur Rotation der
Mittenkoordinate und ein adressenrotierendes Teil 17B zum
Rotieren der Adresse (x, y) ausgetauscht. Wenn vom flächenbestimmenden
Teil 16 entschieden wurde, dass das zu schreibende Musterelement
C über
den Rand der Fliese hinausgeht, so wird seine Mittenkoordinate (Xc,
Yc) vom mittenkoordinatenrotierenden Teil 17A rotiert,
z.B, um 90 Grad um die Mitte Oc der Fliese zur Umwandlung in eine
Koordinate (Xc',
Yc'), wie in 9 gezeigt;
dann wird die Adresse (x, y), die mit der rotierten Mittenkoordinate
kombiniert werden soll, vom adressenrotierenden Teil 17B um
90 Grad gedreht und damit wird das Musterelement, das auf diese
Weise um 90 Grad von der Ausrichtung rotiert wird, die von der Strichellinie
in 9 angezeigt wird, im Speicher 18 an der Position
eingetragen, die auf die rotierte Mittenkoordinate (Xc', Yc') fällt. Dasselbe
trifft auf die anderen Rotationswinkel von 0, 180 und 270 Grad zu.
-
Bei
diesem Mustererzeugungsverfahren brauchen die in 7 gezeigten
Schritte S11 und S12 lediglich durch die in 10 gezeigten
Schritte ersetzt werden. Das bedeutet, dass – wie in 10 gezeigt – in Schritt
S11 die Adresse (x, y) um einen Winkel gedreht wird, der dem Wert
von Flag Fc entspricht, um die Adresse (x', y')
zu erhalten, dann die Mittenkoordinate (Xc, Yc) ebenfalls um einen
Winkel rotiert wird, der dem Wert von Flag Fc entspricht, um die
Koordinate (Xc',
Yc') zu erhalten,
und beide kombiniert werden, um eine Kombinationskoordinate X = x' + Xc', Y = y' + Yc' zu erhalten. In
diesem Falle, wenn Flag Fc 0, 1, 2 oder 3 ist, wird der Rotationswinkel
auf 0, 90, 280 bzw. 270 Grad eingestellt. Als nächstes wird in Schritt S12
eine Modulo-W-Restprüfung
vorgenommen, und zwar für
jede der Kombinationskoordinaten X, Y, um Restwerte X' und Y' zu erhalten, die
im in 7 gezeigten Schritt S13 als Adresse (X, Y) verwendet
werden.
-
11A zeigt ein Fliesenmuster, das durch wiederholtes
Schreiben eines schwarzen Kreises als Musterelement in einem quadratischen
Bereich (einem Fliesenbereich) mittels des oben beschriebenen und
in 5 bzw. 8 gezeigten Verfahrens erzeugt
wurde. Bei einer Gruppierung von Fliesen, die die gezeigten Muster
aufweisen, werden die Muster über
die Ränder
der Fliesen hinweg weiter geführt, wie
in 11B gezeigt wird.
-
Gelegentlich
müssen,
gemäß des bezüglich 5 und 8 beschriebenen
Verfahrens dann, wenn der schwarze zu schreibende Kreis über den Rand
einer Fliese hinausgeht, drei zusätzliche schwarze Kreise geschrieben
werden, um die Kontinuität
des Musters an den Rändern
der Fliese sicherzustellen, und demzufolge erhöht sich dann, wenn die Mittenkoordinaten
der schwarzen Kreise zufällig erzeugt
werden, die Dichte der schwarzen Kreise entlang den Rändern der
Fliese. Das heißt
also, je höher
die Zahl der schwarzen Kreise in 11A, desto
mehr schwarze Kreise sind an den Rändern von Fliesen konzentriert,
die, wie in 12A gezeigt, angeordnet sind,
was dazu führt,
dass die Fliesen deutlich sichtbar mit Mustern gerändert werden.
-
Die
Anzahl der Male, die das zusätzliche Schreiben
erfolgt, hängt
von der Bedingung ab, wie die Fliesen miteinander verbunden sind.
Zum Beispiel ist, unter der Bedingung, dass die Muster über die
Ränder
der Fliesen fortgeführt
werden, wenn die Fliesen dieselbe Ausrichtung aufweisen, kein zusätzliches
Schreiben erforderlich, und daher entstehen keine Probleme. Unter
der Bedingung, dass die Muster über
die Ränder
von Fliesen fortgeführt
werden, die um 180 Grad gedreht ausgerichtet sind, ist ein zusätzliches
Schreiben erforderlich, und unter den Bedingungen, dass die Muster über die
Ränder
der Fliesen fortgeführt
werden, die um 90, 180 und 270 Grad gedreht ausgerichtet sind, muss
das zusätzliche Schreiben
dreimal erfolgen.
-
Als
nächstes
folgt eine Beschreibung eines verbesserten Verfahrens zur Mustererzeugung,
bei dem zusätzliche
Muster ebenfalls im Innenbereich der Fliese geschrieben werden,
so dass sich die Schreibdichte in diesem Bereich, in dem sich die Muster
von den Rändern
der Fliese entfernt befinden, der Schreibdichte in den Randbereichen
nähern kann,
in denen die Muster über
den Fliesenrand hinausgehen. Da die Vorrichtung zur Mustererzeugung, die
das verbesserte Verfahren verkörpert,
in ihrer Grundkonfiguration mit der in 5 oder 8 gezeigten
Vorrichtung übereinstimmt,
wird das Verfahren mit Verweis auf 5 beschrieben.
Wird davon ausgegangen, dass im Musterelementspeicher 11 ein
gewünschtes
Musterelement C vorgespeichert ist, wie zum Beispiel ein elliptisches
Musterelement C, das – wie
in 13A gezeigt – in
Richtung x einen längeren
Durchmesser D aufweist. Ein quadratischer Bereich RS,
der das Musterelement beinhaltet (dessen Fläche von nun an als Stempelbereich
bezeichnet wird) ist definiert. Wie in 13B gezeigt,
wird eine quadratische Fliese mit einer Breite W definiert, sowie
ein Innenbereich RI, der von jeder Seite
der Fliese um D/2 nach innen verschoben ist, und ein äußerer Randbereich
RB.
-
Befindet
sich die Mittenkoordinate (Xc, Yc) im Innenbereich RI,
so befindet sich der Stempelbereich RS in
einiger Entfernung von den Seiten der Fliese, und demnach geht das
Musterelement C nicht über
die Ränder
der Fliese hinaus. Befindet sich die Mittenkoordinate (Xc, Yc) jedoch
im Randbereich RB, so ragt der Stempelbereich
RS teilweise über den Rand hinaus. Im letzteren
Falle, wenn das Musterelement C ein Kreis ist, der im quadratischen
Stempelbereich RS eingetragen ist, so ragt
immer ein Teil des Kreises über
den Rand hinaus, in dem Falle, dass ein Element C verwendet wird,
das – wie
in 13A gezeigt – über unterschiedliche
Längen
in Richtung der X- und Y-Achse verfügt, und sogar dann, wenn sich die
Mittenkoordinate (Xc, Yc) des Stempelbereiches RS im
Randbereich RB befindet, so ragt Element
C nicht immer über
den Fliesenrand hinaus. Nach dieser Ausführungsform und sogar in dem
Falle, wenn vom flächenbestimmenden
Teil 16 entschieden wird, dass die vom mittenkoordinatenerzeugenden
Teil 13 erzeugte Mittenkoordinate im Randbereich RB liegt, und solange wie der Stempelbereich
RS über
die Fliese hinausgeht, erfolgt eine Verarbeitung, um die bereits
erwähnte
Bedingung zur Musterfortführung
am Rand zu erfüllen.
Das bedeutet, dass im flächenumwandelnden
Teil 15, wie in 15 gezeigt,
der Teil des Stempelbereiches RS, der aus
der Fliese Ta hervorragt, in die danebenliegende Fliesenfläche hineinragt
und am Rand abgetrennt wird, in die Fliese Ta gebracht wird, indem
eine Umsetzung mit W oder eine Drehung um 90 Grad um ein Ende der
angrenzenden Seite erfolgt. Danach werden Pixelwerte in den getrennten
Stempelbereichen RS in den Datenspeicher 18 eingetragen,
und Pixelwerte in den getrennten Stempelbereichen RS,
die nacheinander um 90, 180 und 270 Grad gedreht werden, nach jeder Rotation
in den Datenspeicher 18 eingetragen.
-
Sogar
dann, wenn der Stempelbereich RS teilweise
aus der Fliese herausragt, wird das Musterelement C nicht abgeschnitten,
wenn es innerhalb der Fliesenränder
verbleibt; daher wird der Pixelwert des Elementes C an der Position
der Mittenkoordinate (Xc, Yc), der durch die obige Bearbeitung erhalten wird,
in den Speicher 18 eingetragen, und die Pixelwerte des
Elements C an den Positionen, an denen die Drehung um 90, 180 bzw.
270 Grad um die Mitte der Fliese erfolgte, werden zusätzlich in
den Speicher 18 eingetragen. Diese zusätzlichen Schreibungen haben
nichts mit der Fortführung
von Mustern über die
Fliesenränder
zu tun, haben jedoch ebenfalls keinen negativen Einfluss auf das äußere Erscheinungsbild
des Musters. Des Weiteren ist dieses Verfahren insofern vorteilhaft,
dass die Definition des Quadrats, das das Musterelement beinhaltet,
eine einheitliche Verarbeitung gestattet. Diese Ausführungsform
unterscheidet sich von der in 5 dargestellten
Ausführungsform
dahingehend, dass bezüglich
des zusätzlichen
Schreibens der drei Elemente in den Randbereich RB durch
die oben genannte Rotation mindestens ein oder mehrere Elemente
C (in diesem Beispiel drei) zusätzlich
geschrieben werden, so dass die Mittenkoordinaten (Xc, Yc) im Innenbereich RI verbleiben. Um dies auszuführen, erzeugt
das mittenkoordinatenerzeugende Teil 13 zufällige Mittenkoordinaten
(Xc, Yc), die auf den Innenbereich RI beschränkt sind,
nach oder vor den zusätzlichen
Schreibungen im Randbereich oder abwechselnd gleichzeitig, und zwar
auf der Grundlage der Entscheidung, die vom flächenbestimmenden Teil 16 getroffen
wurde, und es erfolgt die zusätzliche
Eintragung von Mustern in den Innenbereich RI.
-
14 zeigt
ein Flussdiagramm des oben beschriebenen Verfahrens zur Mustererzeugung.
In Schritt S2 wird die Anzahl der zu erzeugenden Mittenkoordinaten
mit N vorgegeben, und ein Flächenflag
FB sowie ein Koeffizientenflag FC werden rückgesetzt. In Schritt S1 werden
Mittenkoordinaten (Xc, Yc), die die Bedingungen W > Xc > 0 und W > Yc > 0 erfüllen, zufällig vom
mittenkoordinatenerzeugenden Teil 13 erzeugt, in Schritt
S3 wird dann die Anzahl der Male n um eins inkrementiert, und in
Schritt S4 wird eine Prüfung
vorgenommen, um festzustellen, ob alle Mittenkoordinaten (Xc, Yc)
im Innenbereich RI oder im Randbereich RB von 13B liegen;
sind sie im Randbereich RB, so wird bestimmt,
dass der Stempelbereich RS über den
Rand hinausgeht, und Flag FB gesetzt. Befindet
sich die Mittenkoordinate (Xc, Yc) im Innenbereich RI,
so wird in Schritt S6 die Ausleseadresse (x, y) erzeugt, und der
zugehörige
Pixelwert aus Elementspeicher 11 ausgelesen. In Schritt
S7 wird die Koordinate (X, Y), an die der Pixelwert angelegt werden
soll, vom koordinatenkombinierenden Teil 14 kombiniert,
und in Schritt S8 wird der Pixelwert in den Musterdatenspeicher 18 eingetragen.
In dem Falle, dass der Pixelwert Null ist, findet jedoch keine Eintragung
statt, da sich die Adresse (x, y) nicht auf dem Musterelement befindet.
In Schritt S9 wird eine Prüfung
durchgeführt,
um festzustellen, ob alle Ausleseadressen für den Elementspeicher 11 erzeugt worden
sind, und Schritte S6 bis S9 werden so lange wiederholt, bis alle
Adressen erzeugt worden sind, durch die ein Musterelement in den
Innenbereich RI eingetragen wird. Als nächstes wird
in Schritt 10 überprüft, ob Flächenflag
FB gesetzt ist oder nicht; ist dies nicht
der Fall, so kehrt das Verfahren zu Schritt S2 zurück, in dem
die Mittenkoordinate (Xc, Yc) nochmals erzeugt wird, dann in Schritt
S3 die Anzahl n um eins inkrementiert wird, gefolgt von Schritt
S4, wo eine Prüfung
durchgeführt
wird, um festzustellen, ob der Stempelbereich RS,
der das zu schreibende Muster beinhaltet, über den Rand hinausgeht. Geht der
Stempelbereich RS über den Rand hinaus, wird in Schritt
S5 Flag FB gesetzt, und in Schritt S11 wird
die Ausleseadresse (x, y) erzeugt und der Pixelwert aus dem Elementspeicher 11 ausgelesen.
Da Flag FB gesetzt ist, erstreckt sich der
zu schreibende Stempelbereich RS teilweise über den
Rand der Fliese hinaus; in Schritt S12 wandelt das Umwandlungsteil 15 die
Kombinationskoordinate (x + X, y + Yc) in eine auf der Fliese befindliche
Koordinate um, indem eine Verschiebung einer Seite der Fliese um
die Länge
W erfolgt.
-
Als
nächstes
wird in Schritt S13 festgestellt, welchen der Werte 0, 1, 2 und
3 der Koeffizientenflag FC annimmt. Ist
FC = 0, so wird die Umwandlungskoordinate
(X, Y) auf X ← X,
Y ← Y (0
Grad Drehung) gesetzt, ist FC = 1, X ← W-Y, Y ← X (90 Grad Drehung);
ist FC = 2, X ← W-X, Y ← X (180 Grad Drehung); und
ist FC = 3, X ← Ÿ, Y ← W-X (270 Grad Drehung). Durch
jede dieser Umwandlungen erhält
man die Adresse (X, Y). In Schritt S14 wird diese Adresse benutzt,
um den in Schritt S11 ausgelesenen Pixelwert in den Datenspeicher 18 einzutragen,
und in Schritt S14 wird überprüft, ob die
Erzeugung aller Adressen (x, y) von Speicher 11 abgeschlossen
ist. Schritte S11 bis S15 werden so lange wiederholt, bis die Erzeugung
aller Adressen beendet ist, und wenn die Erzeugung aller Adressen
in Schritt S15 festgestellt wird, wird in Schritt S16 geprüft, ob FC = 3; ist dies nicht der Fall, so wird der
Wert des Koeffizientenflags FC um eins inkrementiert,
und Schritte S11 bis S15 werden erneut durchgeführt.
-
Daraufhin
folgt Schritt S18, wobei die Mittenkoordinaten (Xc, Yc) zufällig im
Innenbereich RI – siehe 13B – erzeugt
werden, und Schritte S6 bis S9 werden wiederholt, wobei die aus
allen Adressen ausgelesenen Pixelwerte in den Datenspeicher 18 eingetragen
werden, und zwar auf die bereits beschriebene Weise. Wird in Schritt
S10 festgestellt, dass FB = 1 ist, so wird
Rotationsflag FC um eins inkrementiert;
ist Flag FC in Schritt S20 nicht 0, dann geht
das Verfahren zu Schritt S18 zurück,
und Schritte S18, S6 bis S10, S19 und S20 werden solange wiederholt,
bis Rotationsflag FC den Wert 0 annimmt. Auf
diese Weise werden dem Innenbereich RI drei Musterelemente
C hinzugefügt.
Wird in Schritt S20 festgestellt, dass FC =
0 ist, so wird Flag FB in Schritt S21 jeweils auf Null zurückgesetzt,
und es wird in Schritt S22 überprüft, ob die
Anzahl n den Wert N erreicht hat, ist dies nicht der Fall, so kehrt
das Verfahren zu Schritt S2 zurück,
und die oben genannte Verarbeitung wird wiederholt, bis die Anzahl
den gewünschten
Wert N erreicht.
-
Während im
obigen Abschnitt das Verfahren nach 14 zum
Schreiben einer Ellipse als Musterelement C eingesetzt wurde, so
lässt sich
das Verfahren auch zum Schreiben der bereits beschriebenen schwarzen
Kreise nach 11A, 11B und 12A einsetzen, wodurch eine kontinuierliche Fortführung der
Muster über
den Fliesenrand hinaus, wie z.B. in 12B gezeigt,
erreicht werden kann. Des Weiteren wird der Effekt, der durch eine
Konzentration der Muster in den Randbereichen hervorgerufen wird,
gemindert – und
dies bewirkt, dass die einzelnen Fliesen weniger deutlich hervortreten.
Während
die Zahl der Musterelemente, die im Innenbereich RI hinzugefügt werden,
als gleich der Anzahl der Musterelemente vorgegeben wurde, die im Randbereich
RB hinzugefügt werden, müssen erstere nicht
immer den letzteren gleichen, sondern können ebenfalls mit Hilfe dieser
bestimmt werden. Des Weiteren wurde die Ausführungsform nach 14 in Verbindung
mit dem Fall beschrieben, in dem quadratische Fliesen verwendet
werden, und diese allesamt Muster aufweisen, die alle über den
Rand auf die benachbarten Fliesen fortgeführt werden, aber in dem Fall,
dass die Fortführung
der Muster lediglich zwischen korrespondierenden Seiten oder gegenüberliegenden
Seiten der angrenzenden Fliesen fortgeführt werden soll, braucht lediglich
ein Musterelement, dessen Koordinate um 180 Grad rotiert wurde, hinzugefügt werden.
In diesem Falle erfolgt in Schritt S13 nur die Rotation der Koordinate
um 180 Grad, und in Schritt S16 wird überprüft, ob FC =
1 ist. Des Weiteren werden, da die Anzahl der im Innenbereich hinzuzufügenden Musterelemente
eins beträgt, Schritte
S19 und S20 ausgelassen. In diesem Falle kann die Form der Fliese einem
beliebigen Rechteck entsprechen, das ein Quadrat beinhaltet.
-
In 15A wird ein Beispiel eines Fliesenmusters gezeigt,
das durch das Schreiben keilförmiger
Musterelemente entsteht, die ihre Richtwirkung im Fliesenbereich
durch Anwendung des bereits bezüglich 14 beschriebenen
Verfahrens erhalten haben. Wird eine Vielzahl von Fliesen, wie in 15A dargestellt, angeordnet, so gehen die Musterelemente über den
Rand der angrenzenden Fliesen – wie
in 15B gezeigt – kontinuierlich
ineinander über,
dabei ist jede Fliese jedoch in ihrem Randbereich mit einem unnatürlichen
Ringmuster gerändert,
und zwar aufgrund des Unterschieds in der statistischen Verteilung
der Ausrichtung der Musterelemente zwischen dem Randbereich RB und dem Innenbereich RI der
Fliese.
-
Der
Grund dafür
liegt darin, dass in der oben beschriebenen Ausführungsform, wenn sich die Mittenkoordinaten
(Xc, Yc) zum Schreiben der Musterelemente im Innenbereich RI der Fliese befinden, die Musterelemente
stets in einer festen Ausrichtung geschrieben werden, während dann,
wenn die Mittenkoordinaten im Randbereich RB liegen,
die Muster um 180 oder 90, 180 und 270 Grad gedreht werden. Um dieses
Problem zu lösen,
muss das Muster, dessen Mittenkoordinaten im Innenbereich RI liegen, ebenfalls und in abwechselnder
Richtung nur um 0 und 180 Grad oder nacheinander um 90, 180 und
270 Grad gemäß der verwendeten
Bedingung zur Musterfortführung
gedreht werden. Es erfolgt eine Beschreibung – mit Verweis auf 16 und 17 – einer
Ausführungsform,
die eine solche Idee zur Grundlage hat.
-
Die
Vorrichtung zur Erzeugung eines kontinuierlichen Musters aus 16 wird
mit einem adressenübersetzenden
Teil 19 und einem Kurzzeitspeicher 21 in der Gerätekonfiguration
von 5 ausgestattet. Bei dieser Vorrichtung wird das
aus Musterelementspeicher 11 ausgelesene Muster nicht direkt
im Musterelementspeicher 18 eingetragen, sondern in einer
vorgegebenen Rotationsrichtung in den Kurzzeitspeicher 21 eingetragen.
Jedes Mal, wenn das Musterelement aus dem Kurzzeitspeicher 21 zum
Eintrag in den Innenbereich RI der Fliese
ausgelesen wird, wird die Ausleseadresse vom adressenübersetzenden
Teil 19 übersetzt,
um die Rotationsrichtung des aus dem Kurzzeitspeicher 21 ausgelesenen
Musterelementes zu ändern.
Das in 17 gezeigte Verfahren zur Erzeugung
eines Fliesenmusters weist lediglich den zusätzlichen Schritt der Übertragung
des Musterelementes in den Kurzzeitspeicher nach Schritt S1 aus 14 und
einen Schritt zum Rotieren des Musterelementes im Kurzzeitspeicher 21 nach
jedem der Schritte S10 und S16 aus 14 auf.
-
Um
es genauer zu sagen, in dieser Ausführungsform wird ebenfalls ein
vorbestimmtes Musterelement im Musterelementspeicher 11 gespeichert, und
der quadratische Stempelbereich, der das Musterelement beinhaltet,
ist vorbestimmt. Das adressenerzeugende Teil 12 erzeugt
nacheinander eine Sequenz von Adressen (x, y) aller im Stempelbereich befindlichen
Pixel. Zu Beginn der Operation wird die Adresse aus dem adressenerzeugenden
Teil 12 über das
adressenübersetzende
Teil 19 an den Elementspeicher 11 zum Auslesen
geliefert, und der Pixelwert des so ausgelesenen Elementes wird
im Kurzzeitspeicher 21 an der jeweiligen Adresse (Schritt S12
in 17) eingetragen. Das mittenkoordinatenerzeugende
Teil 13 erzeugt zufällige
Mittenkoordinaten (Xc, Yc) im Fliesenbereich (Schritt S3) wie im
Falle von 13B, und das flächenbestimmende
Teil 16 führt
eine Überprüfung durch,
um festzustellen, ob der Stempelbereich über den Rand der Fliese hinausgeht,
was davon abhängt,
ob die Mittenkoordinate im Randbereich RB oder
Innenbereich RI liegt (Schritt S5). Geht
der Stempelbereich nicht über
den Rand hinaus, so erzeugt das adressenerzeugende Teil 12 die
Adresse (x, y), die an den Kurzzeitspeicher 21 geliefert
wird, um daraus den entsprechenden Pixelwert (Schritt S7) auszulesen,
während
gleichzeitig die Adresse (x, y) mit der Mittenkoordinate (Xc, Yc) im
koordinatenkombinierenden Teil 14 (Schritt S8) kombiniert
wird.
-
Die
Kombinationskoordinate (X, Y) befindet sich im Fliesenbereich (W × W) und
erfährt
daher weder die Flächenumwandlung
im koordinatenumwandelnden Teil 15 noch die Rotation im
koordinatenrotierenden Teil 17, wird jedoch intakt an den
Musterdatenspeicher 18 geliefert, um darin den Pixelwert
einzutragen, der aus dem Kurzzeitspeicher 21 (Schritt S9)
ausgelesen wurde. Beträgt
der Pixelwert jedoch Null, so erfolgt keine Eintragung. Nach Beendigung der
oben beschriebenen Lese- und
Schreiboperationen für
alle Adressen des Stempelbereiches (Schritt S10) erzeugt das adressenerzeugende
Teil 12 sequentiell alle Adressen (x, y) zur Neueintragung
in den Kurzzeitspeicher 21, und das adressenumwandelnde
Teil 19 rotiert die Adressen (x, y) durch 90 Grad zur Übersetzung
in (–y,
x) und liefert sie als Ausleseadressen an den Musterelementspeicher 11.
Die auf diese Weise aus dem Musterelementspeicher 11 ausgelesenen
Pixelwerte werden sequentiell an Adressen (x, y) im Kurzzeitspeicher 21 eingetragen, um
ein um 90 Grad rotiertes Musterelement (Schritt S11) vorzugeben.
Demzufolge wird, wenn ein Musterelement, dessen Mittenkoordinate
im Innenbereich RI liegt, als nächstes in
Datenspeicher 18 eingetragen werden soll, ein um 90 Grad
rotiertes Element aus dem Kurzzeitspeicher 21 geschrieben,
wonach das Musterelement in Elementspeicher 11 in Schritt S11
in 17 um 180 Grad gedreht und in den Kurzzeitspeicher 21 zum
Neuschreiben eingetragen wird. Zu diesem Zwecke übersetzt das adressenübersetzende
Teil 19 die Adresse (x, y) in (–x, y). Des Weiteren wird,
nachdem das Musterelement in den Innenbereich RI eingetragen
wurde, das im Kurzzeitspeicher 21 befindliche Musterelement
um 270 Grad gedreht, um den Kurzzeitspeicher 21 neu zu
beschreiben. Die Ausleseadresse (x, y) für Speicher 11 wird zu
diesem Zeitpunkt in (y, –x) übersetzt.
Danach wird der Kurzzeitspeicher 21 wiederholt neu mit
um 0, 90, 180 und 270 Grad rotierten Elementen beschrieben.
-
Wenn
das flächenbestimmende
Teil 16 entschieden hat, dass die Mittenkoordinate (Xc,
Yc) im Randbereich RB liegt, so wird Flag
FB auf 1 gesetzt (Schritt S14), und – wie im
Falle der Ausführungsform in 14 – wird der
Teil der Kombinationskoordinate, X = x + Xc, Y = y + Tc, der vom
koordinatenkombinierenden Teil 14 kombiniert wird und sich
nicht auf der Fliese befindet, durch eine Restoperation (Schritt S14)
auf die Fliese übersetzt.
Danach wird die Kombinationskoordinate um 0, 180 und 270 Grad um
die Mitte der Fliese rotiert, wodurch das Musterelement entsprechend
um 0, 90, 180 oder 270 Grad rotiert wird, und die entstehenden Musterelemente
in den Musterdatenspeicher 118 eingetragen werden (Schritt
S13 bis S19). Erstreckt sich der Stempelbereich über den Rand der Fliese hinaus,
werden die Musterelemente jeweils nach einer Drehung um 0, 90, 180
und 270 Grad in Schritt S13 und S19 geschrieben, um die Bedingung
zur Musterfortführung wie
oben beschrieben zu erfüllen;
andererseits wird ebenfalls dann, wenn die Mittenkoordinate des
Musters im Innenbereich RI in Schritten
S7 bis S11 geschrieben wird, der Drehwinkel des Musterelements bei
jedem Schreiben in der Reihenfolge 0, 90, 180 und 270 Grad geändert. Werden
daher eine Vielzahl von Fliesen wie in 15C gezeigt
angeordnet, so sind z.B. die Ausrichtungen der Musterelemente, die im
Rand- und Innenbereich geschrieben werden, im großen und
ganzen einheitlich über
alle Winkel – 0, 90,
180 und 270 Grad – verteilt.
-
Während die
in 16 und 17 gezeigte Ausführungsform
in Zusammenhang mit dem Fall beschrieben wurde, dass die Bedingung
zur Musterfortführung
erfüllt
wird, ungeachtet dessen, welche Ausrichtung die quadratischen Fliesen
aufweisen, so ist leicht verständlich,
dass es – im
Falle von rechteckigen Fliesen – ebenfalls
möglich
ist Bedingungen vorzugeben, die die Fortführung von Mustern lediglich zwischen
jeder Seite einer Fliese und zwei gegenüberliegenden Seiten (0 und
180 Grad) von anderen Fliesen, die dieselbe Länge aufweisen, gestatten.
-
In
der Ausführungsform
in 5 wird – um verschiedene
Fliesenmuster zu erzeugen, die die Bedingung zur Musterfortführung an
der Grenze erfüllen – ein Koordinatenspeicher 16M im
flächenbestimmenden
Teil 16 eingerichtet (durch die Strichellinie gezeigt),
und beim ersten Verfahren zur Erzeugung eines Fliesenmusters wird
ein Schritt S4a zur Speicherung der Mittenkoordinate an der Seite
des „JA"-Zweiges von Entscheidungsstufe
S4 eingerichtet – wie
durch den Strichellinienblock im Flussdiagramm von 7 gekennzeichnet.
Beim ersten Verfahren zur Erzeugung eines Fliesenmusters wird jedes
Mal, wenn das flächenbestimmende
Teil 16 (Schritt S4 in 7) entschieden
hat, dass die Mittenkoordinate (Xc, Yc) vom mittenkoordinatenerzeugenden
Teil 16 in Schritt S2 zufällig erzeugt wurde, das mittenkoordinatenerzeugende
Teil 13 zum Abspeichern der Mittenkoordinate (Xc, Yc) im
Koordinatenspeicher 16M (Schritt S4a) veranlasst. Ist das
erste Verfahren zur Erzeugung eines Fliesenmusters mit Schritt S9
beendet, sind im Koordinatenspeicher 16M alle Mittenkoordinaten
(Xc, Yc), die bis dahin im Randbereich RB erzeugt
wurden, gespeichert.
-
18 ist
ein Flussdiagramm zur Erzeugung des zweiten, sowie weiterer nachfolgender
Fliesenmuster. In 18, zeigt Schritt S2 durch einen
Block lediglich an, dass dieselbe Verarbeitung wie in Schritten
S10 bis S14 in 7 erfolgt, und auf ähnliche Weise
zeigt Schritt S7 ebenfalls durch einen Block dieselbe Verarbeitung
wie in Schritten S5 bis S8 in 7 an. Zuerst
wird in Schritt S1 die Mittenkoordinate im Randbereich RB, die im Koordinatenspeicher 16M abgelegt
ist, ausgelesen. In Schritt S2 wird das Musterelement, das aus Elementspeicher 11 ausgelesen
wurde, an der Position der in Schritt S1 ausgelesenen Mittenkoordinate
abgelegt, dann wird der Teil des Musterelementes, der sich außerhalb
des Fliesenrandbereichs befindet, parallel verschoben oder durch
W im koordinatenumwandelnden Teil 15 übersetzt, und das so abgetrennte
Musterelement wird um 0, 90, 180 und 270 Grad gedreht. Die erzeugten
Muster werden in Datenspeicher 18 eingetragen. In Schritt
S3 erfolgt eine Überprüfung, um festzustellen,
ob die Verarbeitung für
alle Mittenkoordinaten (mit K bezeichnet) im Speicher 16M abgeschlossen
wurde. Ist dies nicht der Fall, so kehrt das Verfahren zu Schritt
S1 zurück,
bei dem die nächste Mittenkoordinate
aus dem Speicher 16M ausgelesen wird, gefolgt von der oben
beschriebenen Verarbeitung in Schritt S2. Wird in Schritt S3 festgelegt,
dass die Verarbeitung für
die K Mittenkoordinaten erfolgt ist, so geht das Verfahren zu Schritt
S4 über,
bei dem die Anzahl L der Mittenkoordinaten im Innenbereich berechnet
wird, indem die Zahl K der Mittenkoordinaten im Randbereich von
der Gesamtzahl N der erzeugten Mittenkoordinaten subtrahiert wird.
Als nächstes
werden die Mittenkoordinaten (Xc, Yc) im Bereich des Innenbereiches
RB in Schritt S5 zufällig erzeugt, dann wird in
Schritt S6 die Zahl m, die anzeigt, wie oft die Mittenkoordi nate
erzeugt wurde, um eins inkrementiert, und in Schritt S7 das aus Elementspeicher 11 ausgelesene
Musterelement im Datenspeicher 18 an der Stelle eingetragen,
an der sich die Mittenkoordinate (Xc, Yc) befindet. In Schritt S8
wird überprüft, ob die
Zahl m der Mittenkoordinaten im Innenbereich RB L
erreicht hat. Ist dies nicht der Fall, so kehrt das Verfahren zu
Schritt S5 zurück und
wiederholt Schritte S6 und S7. Wenn in Schritt S8 bestimmt wird,
dass m = L ist, so ist das Verfahren beendet.
-
Des
Weiteren werden beim dritten sowie nachfolgenden Mustererzeugungsverfahren
Musterelemente auf ähnliche
Weise geschrieben, indem die aus Speicher 16M ausgelesenen
Koordinaten als Mittenkoordinaten im Randbereich RB (Schritte
S1 bis S3) verwendet werden, und die Mittenkoordinaten im Innenbereich
RI werden zufällig erzeugt, wodurch dann
Musterelemente erzeugt werden (Schritte S4 bis S8).
-
Mit
dem oben beschriebenen Verfahren mit Verweis auf 18,
werden im zweiten oder nachfolgenden Mustererzeugungsverfahren die
Mittenkoordinaten im Randbereich RB, die
während
des ersten Mustererzeugungsverfahrens erzeugt wurden, aus dem Koordinatenspeicher 16M ausgelesen,
und die abgetrennten Musterelemente und Muster, die durch eine Rotation
um 90, 180 und 270 Grad entstehen, werden an den Positionen der
ausgelesenen Mittenkoordinaten vorgegeben. Auf diese Weise wird
die Bedingung zur Musterfortführung
am Rand immer erfüllt.
Des Weiteren kann, da die Musterelemente an zufälligen Positionen im Innenbereich
RI eingetragen werden, für jede Fliese ein anderes Muster
gebildet werden.
-
In
dem Falle, dass das oben beschriebene Schema auf die Ausführungsform
in 14 angewendet wird, und wenn in Schritt S4 entscheiden
wurde, dass sich die Mittenkoordinate im Flussdiagramm der ersten
Fliesenmustererzeugung in 14 im Randbereich
RB befindet, wird die Mittenkoordinate in Schritt
S4a im Speicher 16M abgelegt, was durch die Strichellinie
angezeigt wird. Bei der Erzeugung des zweiten und nachfolgender
Fliesenmuster werden die Musterelemente der gleichen Zahl wie die
in Schritt S2, 18, rotierten und im Randbereich
RB hinzugefügten, zusätzlich in den Innenbereich
RI eingetragen, indem in Schritt 3 L
= N-K + 3K = N + 2K gleichgesetzt wird. Dies hat zur Folge, dass
sich die Dichte der Musterelemente im Innenbereich RI der
im Randbereich RB annähert. Ebenfalls wird im Falle
der in 16 und 17 beschriebenen
Ausführungsform
der Koordinatenspeicher 16M auf ähnliche Weise im flächenbestimmenden
Teil 16 eingerichtet, und Schritt S5a wird an der JA-Abzweigung
von Entscheidungsblock S5 in dem in 17 beschriebenen
Verfahren – durch
die Strichellinie angedeutet – eingerichtet.
Bei der Erzeugung des ersten Fliesenmusters wird die Mittenkoordinate
(Xc, Yc), die im Randbereich RB erzeugt
wurde, im Koordinatenspeicher 16M, wie in 14 gezeigt,
abgelegt. Bei der Erzeugung des zweiten sowie nachfolgender Fliesenmuster
wird in Schritt S4 in 18 L = N + 2K gesetzt, des Weiteren
wird neben Schritt S7 ein weiterer Schritt S7 – wie durch die Strichellinie
markiert – eingerichtet,
und in Schritt S11 in 17 wird das Musterelement im
Kurzzeitspeicher 21 (16) jedes Mal,
wenn das Musterelement in den Innenbereich RI eingetragen
wird, um 90 Grad gedreht.
-
Normalerweise
liegt die Größe des Musterelementes
in vielen Fällen
beträchtlich
unter der der Fliese, und demzufolge ist der Randbereich RB bedeutend größer als der Innenbereich RI. Demzu folge werden in den Ausführungsformen
von 14 und 16–17 Musterelemente
in der gleichen Anzahl wie die rotierten und im Randbereich RB hinzugefügten, an zufälligen Positionen
im Innenbereich RI hinzugefügt, so dass
beide Bereiche ungefähr
dieselbe Dichte an Musterelementen aufweisen. Was die Erzeugung
unterschiedlicher Arten von Fliesenmustern anbelangt, die – durch
das Verfahren in 18 – dieselbe Bedingung zur Musterfortführung im
Randbereich erfüllen,
so ist vorgeschrieben, dass die Verarbeitung nach S5 und S8 wiederholt
wird, nachdem in Schritt S4 die Zahl L der Schreiboperationen im
Innenbereich RI mit L = N + 2K gemäß der Anzahl 3K der
zusätzlichen
Schreiboperationen im Randbereich RB vorgegeben
wurde. Es ist jedoch auch möglich, das
untengenannte Verfahren zu verwenden.
-
Nehmen
wir an, dass die bereits bezüglich 13B genannten Randbereiche und Innenbereiche RB und RI durch SB bzw. SI dargestellt
werden. Nehmen wir weiterhin an, dass die Anzahl der im ersten Fliesenmustererzeugungsverfahren
im Randbereich RB erzeugten Mittenkoordinaten
(Xc, Yc) durch K dargestellt wird, so ist die Anzahl der im Randbereich
RB eingetragenen Musterelemente 4K,
einschließlich
der Anzahl 3K der zusätzlich
zur Erfüllung der
Musterfortführungsbedingung
geschriebenen Musterelemente. Gehen wir dann davon aus, dass die
Anzahl der in den Innenbereich RI einzutragenden
Musterelemente durch L dargestellt wird, so kann die Dichte der
Elemente in den Rand- und Innenbereichen RB und
RI mit Hilfe von 4K/SB =
L/SI gleichgesetzt werden, und damit lässt sich
die Anzahl L der zusätzlichen
Eintragungen im Innenbereich mit Hilfe von L = 4KSI/SB bestimmen. In diesem Falle muss L eine
Ganzzahl sein, so dass dann, wenn der Wert von 4KSI/SB keine Ganzzahl ist, dieser Wert durch eine
vorherbestimmte Rundungsmethode, wie z.B. dem Weglassen oder Hinzufügen eines
Bruchteils, in eine Ganzzahl umgewandelt wird.
-
In
den oben beschriebenen Ausführungsformen
weist das in den Datenspeicher 18 einzutragende Musterelement
einen geschlossenen Bereich auf. In dem Falle, dass alle in diesem
Bereich befindlichen Pixel Pixelwerte aufweisen, die ungleich Null sind,
wird dann, wenn ein Musterelement so geschrieben wird, dass es ein
zuvor geschriebenes Musterelement teilweise überschneidet, der sich überschneidende
Teil vom zuletzt geschriebenen Musterelement überschrieben. Demzufolge – im Falle
der Erzeugung von Mustern durch das in der obigen Ausführungsform
beschriebene Verfahren – tritt die
Situation ein, bei der sich, gemäß des spezifizierten
Schreibverfahrens, das Kommutativgesetz nicht über den zu schreibenden Pixelwert
und den Pixelwert an der Stelle, die beschrieben werden soll, erstreckt.
Hier lässt
sich das Kommutativgesetz nur dann anwenden, wenn ein Schreibverfahren
verwendet wird, bei dem der vor dem Schreiben auf der Fliese befindliche
Pixelwert, der Pixelwert des zu schreibenden Musterelementes und
der Pixelwert nach dem Schreiben durch A, B bzw. C verkörpert werden und
C unverändert
bleibt, sogar dann, wenn A und B ausgetauscht werden, wie das bei
einer Addition oder Rundung der Fall ist. Der Ausdruck „das Kommutativgesetz
lässt sich
nicht anwenden" bedeutet,
dass sich C verändert,
wenn A und B gegeneinander ausgetauscht werden – dies entspricht zum Beispiel
einer zuletzt vorgenommenen bevorzugten Schreibung (die als Überschreibung
bezeichnet wird).
-
In
dem Falle, dass ein anderes Fliesenmuster erzeugt wird, das die
Bedingung zur Fortführung des
ursprünglichen
Fliesenmusters über
den Rand der Fliese hinaus erfüllt,
schreibt das in 18 gezeigte Verfahren zuerst
alle abgetrennten Muster in den Randbereich RB ein,
und zwar auf Grundlage der aus Speicher 16M (Schritte S1
bis S3) ausgelesenen Mittenkoordinate, und trägt dann Musterelemente an zufälligen Positionen
im Innenbereich RI (Schritte S4 bis S8)
ein. In 19A wird ein Beispiel eines
Fliesenmusters gezeigt, das durch ein Überschreiben gemäß der in 18 gezeigten
Ausführungsform
erzeugt wurde. Aufgrund der zuletzt vorgenommenen bevorzugten Schreibung, überlappen
die im Innenbereich geschriebenen Musterelemente, die nach den Musterelementen
im Randbereich an vier rotierten Positionen geschrieben wurden,
stets die im Randbereich geschriebenen Musterelemente, was in der Entstehung
eines unerwünschten
Ringmusters in Randnähe
resultiert.
-
Ein
derartiges Problem könnte
durch abwechselnde Schreibung der über die Ränder hinausgehenden Musterelemente
und von Musterelementen, die innerhalb des Randes verbleiben, gelöst werden,
wenn ein Schreibverfahren vorgegeben ist, bei dem sich das Kommutativgesetz
nicht anwenden lässt.
Zum Beispiel, wenn die Musterelemente abwechselnd geschrieben werden
während
das Schreibverfahren ausgewählt
wird, so dass das Verhältnis
zwischen der Anzahl NB der Musterelemente, die über die
Ränder
hinausgehen, und der Anzahl NI der Musterelemente,
die innerhalb der Ränder
verbleiben, zum Verhältnis
zwischen der Fläche
SB des Randbereiches RB und
der Fläche
SI des Innenbereiches RI werden
kann, das heißt,
dass die Dichte der Musterelemente in den beiden Bereichen gleich
ist.
-
20 und 21 zeigen
ein zweites sowie nachfolgende Verfahren zur Erzeugung von Fliesenmustern,
die sich in Bezug auf die oben beschriebene Idee von dem ursprünglichen
Fliesenmuster unterscheiden. Nehmen wir jetzt einmal an, dass im
Ergebnis der ersten Fliesenmustererzeugung durch die Vorrichtung,
die in der Ausführungsform
von 16 gezeigt wird, zum Beispiel im Koordinatenspeicher 16M die
Koordinaten der Rotationsmitten aller Musterelemente gespeichert
sind, die an den Rotationspunkten (einschließlich der Rotation um 0 Grad)
im Randbereich RB geschrieben sind, sowie
ebenfalls die Ausrichtungen dieser geschriebenen Musterelemente.
Nehmen wir an, dass die Anzahl der Mittenkoordinaten im Randbereich
RB, die vom flächenbestimmenden Teil 16 erkannt
wird, durch CB dargestellt wird, die Gesamtzahl
der im Randbereich RB einzutragenden Musterelemente – einschließlich der
Anzahl der Musterelemente, die zusätzlich an den Rotationspunkten
gemäß der Bedingung
zur Musterfortführung
am Rand zu schreiben sind – durch
NB = 4CB dargestellt
wird und die Gesamtzahl der Elemente, die im Innenbereich RI geschrieben werden soll, durch NI dargestellt ist. Gehen wir des Weiteren
davon aus, dass die Flächen
der Rand- und Innenbereiche RB und RI durch SB bzw. SI dargestellt werden. Um die Dichte der Musterelemente
im Rand- und Innenbereich annähernd
gleich zu gestalten, wird die Anzahl NI der
Musterelemente, die im Randbereich RI geschrieben
werden soll, so bestimmt, dass die Bedingung NB/SB = NI/SI im
Großen
und Ganzen erfüllt ist.
Das bedeutet, NI = NBSI/SB. Auf diese Weise
nutzt diese Ausführungsform
zum Beispiel ein sehr bekanntes DDA- (Digitale Differentialanalyse)
Verfahren, um für
jede Eintragung festzustellen, in welchem Randbereich RB und
Innenbereich RI das Musterelement einzutragen
ist, und schreibt das Musterelement in den auf diese Weise bestimmten
Bereich. Durch Wiederholung dieses Verfahrens wird das Verhältnis zwischen
der Anzahl der Male, die das Musterelement in einem der beiden Bereiche
geschrieben wird, bei NB:NI gehalten.
-
20 zeigt
ein Verfahren, das auf obiger Idee basiert, für den Fall NI > NB.
Das Verfahren beginnt mit Schritt S1, bei dem die Werte NI, NI/2 und NB in Variablen RG1,
RG2 bzw. RG3 initialisiert
werden. In Schritt S2 wird eine Überprüfung vorgenommen,
um festzustellen, ob RG2 > 0 ist. Ist dies der
Fall, so wird in Schritt S3 eine zufällige Mittenkoordinate (Xc,
Yc) im Innenbereich RI erzeugt, und in Schritt
S4 wird ein Musterelement aus dem Elementspeicher 11 ausgelesen
und an Position (Xc, Yc) im Datenspeicher 18 auf dieselbe
Weise wie in Schritt S6 bis S9 in dem in 14 gezeigten
Flussdiagramm eingetragen. In Schritt S5 erfolgt eine Subtraktion,
RG2 – RG3, und der erhaltene Wert wird als aktualisierter
Wert für
die Variable RG2 verwendet. In Schritt S6
wird die Anzahl der Male n, die die Verarbeitung vorgenommen wird, um
eins inkrementiert, und in Schritt S7 wird eine Überprüfung vorgenommen, um festzustellen,
ob die Zahl n den Gesamtwert NB + NI der Musterelemente, die im Fliesenbereich
zu schreiben sind, erreicht hat; ist dies nicht der Fall, so wird
das Verfahren mit Schritt S2 fortgesetzt. Wird in Schritt S2 entschieden, dass
RG2 > 0
nicht erfüllt
ist, so fährt
das Verfahren mit Schritt S8 fort, bei dem eine der Mittenkoordinaten
und die zugehörige
Rotationsrichtung aus Speicher 16M in der Reihenfolge ihrer
Ablagerung ausgelesen werden. Daraufhin folgt Schritt S9, bei dem – wie in
Schritten S11 bis S15 in dem in 14 gezeigten
Flussdiagramm – das
Musterelement in der vorgegebenen Rotationsrichtung gedreht wird,
dann die ausgelesene Mittenkoordinate (Xc, Yc) um die Mitte der
Fliese durch einen Winkel gedreht wird, der durch die ausgelesene
Ausrichtung bestimmt ist, und das rotierte Musterelement an der
Position der rotierten Mittenkoordinate (Xc, Yc) eingetragen wird.
Als nächstes
erfolgt in Schritt S10 die Berechnung von RG2 +
RG1, und der berechnete Wert wird zur Aktualisierung
der Variablen RG2 verwendet. In Schritt
S6 wird die Anzahl der Male n, die die Verarbeitung erfolgt ist,
um eins inkrementiert, und wenn in Schritt S7 entschieden wird,
dass n die Gesamtzahl der zu schreibenden Musterelemente erreicht
hat, so ist das Verfahren beendet. Durch die in 20 gezeigte
Verarbeitung wird die Schreibung von Musterelementen in den Rand-
und Innenbereichen mit einer Wahrscheinlichkeit von NB bis
NI abwechselnd ausgeführt.
-
Des
Weiteren ist das Verfahren in dem Falle, wenn NB ≥ NI, grundsätzlich
dasselbe wie oben bezüglich 20 beschrieben,
und unterscheidet sich lediglich in den folgenden Punkten. Wie in 21 gezeigt,
werden in Schritt S1 die Werte NB, NB/2 und NI zu Variablen
RG1, RG2 bzw. RG3 initialisiert. Wird dann in Schritt S2
entschieden, dass RG2 > 0 erfüllt ist,
so erfolgt die Schreibung im Randbereich in Schritten S8 und S9.
In Schritt S10 wird die Variable RG2 mit
dem Wert aktualisiert, der durch die Subtraktion RG2 – RG3 erhalten wird. Lautet die Entscheidung
in Schritt S2 NEIN, so erfolgt in Schritten S3 und S4 die Schreibung
im Innenbereich; und die Variable RG2 wird
mit dem Wert aktualisiert, der durch die Berechnung RG2 +
RG1 erhalten wurde.
-
Die
in 20 und 21 gezeigten
Ausführungsformen
wenden – wie
bereits beschrieben – das DDA-Verfahren an, um
eine abwechselnde Schreibung im Rand- und Innenbereich in einem
solchen Verhältnis
zu bewirken, dass die Dichte der Musterelemente, die in beiden Flächen geschrieben
werden, ungefähr
gleich ist. Zum Beispiel ist es in dem Fall, wenn NB < NI gilt,
jedoch ebenfalls möglich,
ein Verfahren anzuwenden, bei dem zuerst eine (NI – NB)-malige Schreibung im Innenbereich erfolgt
und dann eine abwechselnde Schreibung eines Musterelementes in beiden
Bereichen NB-Mal ausgeführt wird. Gilt NB > NI,
so erfolgt die Schreibung zuerst im Randbereich (NI – NB)-Mal nacheinander, und danach wird die
abwechselnde Schreibung eines Elementes in beiden Bereichen NI-Mal wiederholt. Gilt NI =
NB, so braucht die abwechselnde Schreibung
eines Elementes in beiden Bereichen nur NB-Mal
wiederholt werden.
-
19B zeigt das Beispiel eines zweiten Fliesenmusters,
das durch die in 20 gezeigte Ausführungsform
erzeugt wurde und auf dem zuerst erzeugten ursprünglichen Fliesenmuster basiert.
Aus 19B ist ersichtlich, dass die
in 19A gezeigten unerwünschten Ringmuster nicht an
den Rändern
der Fliese entstehen, da die Musterelemente im Innen- und Randbereich
abwechselnd geschrieben werden.
-
Während die
oben genannten Ausführungsformen
ein Muster erzeugen, das mit Hilfe einer Art von Musterelement erzeugt
wird, versteht sich von selbst, dass ein Muster erzeugt werden kann,
das aus zwei oder mehr Musterelementen besteht, wenn die in den
obigen Ausführungsformen
beschriebenen Verfahren einzeln auf die jeweiligen Elemente angewandt
werden.
-
Des
Weiteren versteht sich von selbst, dass – obwohl die Ausführungsformen
die Erzeugung eines quadratischen oder rechteckigen Bereiches (eines
Fliesenbereiches) mit Hilfe von zweidimensionalen Musterelementen
beschreiben – ein
kubisches Muster, das durch Aufeinanderstapeln kubischer oder rechteckiger
parallelflächiger
Ziegel entsteht und kubische Musterelemente aufweist, die an den Schnittflächen zwischen
den Ziegeln ineinander übergehen,
und das eine solide Struktur aufweist, die im Bereich der Computergrafik
zur Anwendung kommt – leicht
erzeugt werden kann, indem die zweidimensionalen Musterelemente
einfach in dreidimensionale erweitert werden, und der quadratische Stempelbereich
oder rechteckige Fliesenbereich in eine kubische Form (z.B. eine
Ziegelform) umgewandelt wird, und die Berechnung der (X, Y)-Koordinate auf
Berechnung einer (X, Y, Z)-Koordinate erweitert wird.
-
An
dieser Stelle soll angemerkt werden, dass die Bedruckung einer quadratischen
Fläche
mit einem Muster zur Erhöhung
des Wertes einer Fliese, eines Teppichs oder ähnlicher Industriestoffe von großer Bedeutung
ist. Gemäß den in
den oben beschriebenen Ausführungsformen
genannten Verfahren, die die Bedingung zur Musterfortführung am Rand
erfüllen,
wird ein vorher festgelegtes Musterelement wiederholt in den Fliesenbereich
geschrieben. Demzufolge ist das Muster, das durch derartige Methoden
im Fliesenbereich entsteht, lediglich die Wiederholung eines vorher
festgelegten Musterelementes, und ist daher in Bezug auf Vielfältigkeit
ungenügend.
Die Anwendung eines Fraktalverfahrens zur Erzeugung eines Fliesenmusters,
das die Bedingung zur Musterfortführung am Rand erfüllt, würde die
Vielfältigkeit
eines Musters weiter erhöhen.
-
Das
Fraktalverfahren, das zu den Verfahren zur Mustererzeugung gehört, ist
ein potentielles Mustererzeugungsverfahren, das die Erzeugung komplizierter
und natürlicher
Muster gestattet. Dieses Verfahren hat in letzter Zeit immer mehr
Aufmerksamkeit erlangt, und zwar auf Grundlage dessen, dass es eine
vereinfachte Erzeugung eines 1/f Fluktuationsmusters gestattet,
dessen räumliche
Frequenz mit einer Rate von –6
dB/Okt gedämpft
wird (z.B. James D. Foley et al., Computer Graphics, ISBN-Nr.: 0-201-12110-7).
Nach dem Fraktalverfahren wird der Pixelwert einer jeden Spitze
eines regelmäßigen Dreiecks
in einem vom regelmäßigen Dreieck
oder einem Satz derartiger regelmäßiger Dreiecke definierten
Bereich auf einen Eigenwert eingestellt, und ein Wert, der durch
Hinzufügen
einer Geräuschmenge
bzw. Rauschkomponente zum Mittelwert der Pixel werte, die sich an
gegenüberliegenden
Ecken (d.h. zwei Spitzen) einer jeden Seite eines jeden regelmäßigen Dreiecks
befinden, erhalten wird, wird am Mittelpunkt einer jeden Seite als
Pixelwert geliefert und unterteilt die regelmäßige Dreiecksfläche in vier
regelmäßige Dreiecksflächen. Die
vier regelmäßigen Dreiecksflächen werden
durch Wiederholung der oben beschriebenen Verarbeitung für jede der vier
Flächen
in 16 regelmäßige Dreiecksflächen unterteilt.
Danach wird diese Verarbeitung so lange wiederholt, bis in alle
Pixel der ursprünglichen
regelmäßigen Dreiecksfläche Werte
eingetragen sind, wodurch in dem Bereich, der durch das ursprüngliche regelmäßige Dreieck
und seinen Satz definiert ist, ein Fraktalmuster entsteht.
-
Mit
den bestehenden Techniken zur Fraktalmustererzeugung lassen sich
jedoch nur in Bereichen, die von regelmäßigen Dreiecken und ihren Sätzen wie
oben beschrieben definiert sind, Muster erzeugen. Soll ein Fraktalmuster
in einem rechteckigen Bereich erzeugt werden, so wird zuerst ein
Fraktalmuster in einem großen
Bereich erzeugt, der durch ein regelmäßiges Dreieck definiert ist,
und eine rechteckige Fläche
oder ihren Satz umfasst, und die rechteckige Fläche nach Erzeugung eines Fraktalmusters herausgeschnitten.
Da dieses Verfahren einen Speicher erfordert, der einen großflächigeren
Arbeitsbereich als das zu erzeugende Muster aufweist, würden sich
hierbei die vom Computer aufzubringende Speicherkapazität und Betriebszeit
unnötig
erhöhen.
Dies stellt besonders bei der Erzeugung von Mustern mit hoher Auflösung ein
ernsthaftes Problem dar. Es wurde daher ein Verfahren vorgeschlagen,
das Koordinatenberechnungen zum Zeichnen von Mustern erstellt, die über die
Ränder
von rechteckigen Bereichen, die aneinandergrenzen, fortgeführt werden. Bei
der Umsetzung dieses Erfindungsverfahrens muss das Muster für jede rechteckige
Fläche
erzeugt werden, und aus diesem Grunde ist die Anwendung des herkömmlichen
Verfahrens zur Fraktalmustererzeugung schwierig. Daher wenden wir
uns nun der Erzeugung eines Fraktalmusters in einem quadratischen
Bereich durch das im folgenden beschriebene Verfahren zu.
-
Zuerst
werden, wie in 22A gezeigt, die Koordinaten
der vier Spitzen einer ursprünglich
quadratischen Fläche
als Eigenwerte vorgegeben. Dann wird Pixelwert Vc des Mittelpunktes
Pc der vier Spitzen der ursprünglich
quadratischen Fläche
berechnet. In diesem Falle, wenn die Definition des herkömmlichen
Verfahrens zur Fraktalmustererzeugung in Dreiecksflächen einfach
erweitert wird, lässt
sich der Pixelwert Vc des Mittelpunktes Pc durch Berechnung des
Mittelwertes der Pixelwerte der vier Spitzen und Hinzufügen des
durchschnittlichen Geräuschwertes
zu diesem Mittelwert berechnen. Bei diesem Verfahren entstehen jedoch
kleine, sehr helle und dunkle Flecken in der Pixelwertverteilung
eines Fraktalmusters, das unter Berücksichtigung der Bedingung
erzeugt wird, dass sich die Geräuschmenge
mit der Anzahl der Male, die das Teilungsverfahren erfolgt, drastisch
verringert. Als Folge bleiben dann, wenn ein Farbmuster durch die
Figur von Farben gemäß den Pixelwerten
erzeugt wird, die hellen oder dunklen Flecken als Farbpunkte erhalten,
die sich bedeutend von den sie umgebenden Farben unterscheiden,
was die Struktur des Musters stark beeinträchtigt.
-
Um
dieses Problem zu vermeiden werden – nach vorliegender Erfindung – entweder
ein oder zwei Paare diagonal gegenüber befindlicher Spitzen des
quadratischen Bereichs ausgewählt,
und ein Wert, der durch Addieren der Geräuschmenge zu den durchschnittlichen
Pixelwerte der beiden Spitzen des ausgewählten Paares erhalten wird,
wird als Pixelwert Vc von Mittelpunkt Pc verwendet.
-
Da
dieses Verfahren gleich dem Verfahren zum Erhalt des Mittelpunktes
einer schiefen Seite eines rechteckigen gleichseitigen Dreiecks,
wie in 22A gezeigt, ist, weist das
auf diese Weise erzeugte Fraktalmuster eine Struktur auf, die der
Struktur, die sich mit Hilfe des traditionellen Fraktalmustererzeugungsverfahrens,
bei dem die wiederholte Teilung regelmäßiger Dreiecke erfolgt, erzeugen
lässt, sehr
nahe kommt. Des Weiteren weist ein solches Fraktalmuster keinerlei
auffällige
helle oder dunkle Flecken auf.
-
Nach
der Berechnung des Pixelwertes Vc von Mittelpunkt Pc werden vier
quadratische Flächen definiert,
von denen eine jede eine Seite des ihm unmittelbar vorausgehenden
ursprünglichen
Quadrats als Diagonale hat, den Mittelpunkt Pc als gemeinsame Spitze
zu den anderen Quadraten aufweist und je eine Seitenlänge von
W/2½ – wie in 22B gezeigt – aufweist.
Diese vier kleinen Quadrate, deren Diagonalen in einem Winkel von
45 Grad gegen die Diagonale des ursprünglichen Quadrats geneigt sind,
werden von nun an als rhombische Flächen bezeichnet. Als nächstes wird
eines der beiden Paare der diagonal gegenüber befindlichen Spitzen in
jeder rhombischen Fläche
ausgewählt
und ein Wert, der durch Hinzufügen
der Geräuschmenge
zum Mittelwert der Pixelwerte an den beiden Spitzen des ausgewählten Paares
erhalten wird, wird als der in der Mitte der rhombischen Fläche befindliche
Pixelwert verwendet. Gehen wir davon aus, dass in diesem Falle jedoch
in den rhombischen Flächen,
die außerhalb
des ursprünglichen
quadratischen Bereiches Spitzen aufweisen – durch weiße Kreise angezeigt – stets
ein Paar diagonal gegenüber
befindlicher Spitzen innerhalb des ursprünglich quadratischen Bereiches
ausgewählt
wird, und dass der Pixelwert im Mittelpunkt der rhombischen Fläche durch
Hinzufügen
der Geräuschmenge
zum Mittelwert der Pixelwerte an den beiden Spitzen des ausgewählten Paares
berechnet wird.
-
Das
heißt,
dass dann, wenn eine Diagonale der rhombischen Fläche eine
Seite der ursprünglich quadratischen
Fläche
durchkreuzt, die andere Diagonale ausgewählt wird. Durch Teilung der
rhombischen Flächen
durch das oben beschriebene Verfahren entsteht ein Satz quadratischer
Bereiche, mit einer Seitenlänge
von jeweils W/2 – wie
in 22C gezeigt. Dieser gleicht einem Satz von vier
quadratischen Flächen,
die durch Teilung der ursprünglichen quadratischen
Fläche
aus 22A entstehen. Das heißt, dass
mit Hilfe der beiden Verfahren zur Aufteilung der quadratischen
Fläche
in rhombische Flächen
und die darauffolgende Unterteilung in quadratische Flächen, die
ursprüngliche
quadratische Fläche
in einen Satz von vier aufgeteilten quadratischen Bereichen unterteilt
wird. Dann werden die beiden Verfahren abwechselnd ausgeführt, bis
die Länge
einer Seite jeder der so aufgeteilten quadratischen Flächen eine
Länge erreicht,
die der Höhe
der Pixel entspricht. Als Ergebnis erfolgt eine Schreibung in jedem Pixel
des quadratischen Bereiches, was die Erzeugung des Fraktalmusters
abschließt.
Mit Hilfe dieses Verfahrens ist es möglich, in einem quadratischen Bereich
eines Quadrats von bestimmter Größe ein Fraktalmuster
zu erzeugen.
-
23 zeigt
in Blockdarstellung eine Vorrichtung, die das oben beschriebene
Verfahren zur Fraktalmustererzeugung verdeutlicht. Referenznummer 51 verweist
auf einen Pixelwertspeicher zur Speicherung eines erzeugten Musters, 52 eine
Steuereinrichtung zur Regelung des Betriebs der Vorrichtung, 53 ein
spitzenberechnendes Teil der quadratischen Fläche zur Berechnung der Koordinatenwerte von
vier Spitzen einer vorgegebenen quadratischen Fläche, die in Speicher 51 abgelegt
ist, 54 ein Teil zur Berechnung der Spitzen einer rhombischen
Fläche zur
Berechnung der Koordinatenwerte von vier Spitzen einer vorgegebenen
von mindestens drei rhombischen Flächen, die in Speicher 51 abgelegt
sind, 55 ein Teil zur Auswahl eines diagonal gegenüber befindlichen
Spitzenpaars zur Sortierung der vier Spitzen, die vom spitzenberechnenden
Teil 53 oder 54 als zwei diagonal gegenüber befindliche
Spitzenpaare definiert werden und zur Auswahl eines der beiden Spitzenpaare
dienen, 56 ein Teil zur Berechnung eines Mittelpunkt-Pixelwertes
zur Berechnung des Pixelwerts Pc in der Mitte zwischen den beiden
Spitzen, die vom Teil 55 zur Auswahl diagonal gegenüber befindlicher
Spitzen ausgewählt
wurde, 57 ein Teil zur Erzeugung von zufälligen Werten
zur Erzeugung einer Zufallszahl, die zur willkürlichen Auswahl der diagonal
gegenüber
befindlichen Spitzenpaare verwendet wird, einem geräuscherzeugenden
Teil 58 und einem Schreibteil 59 zum Eintragen
der berechneten Pixelwerte in Speicher 51. In 23 zeigen
die aus zwei Linien bestehenden Pfeile den Strom der Pixelwerte
und die einfachen Pfeile den Strom von Koordinatenwerten und anderen
Werten oder Steuersignalen an.
-
Als
nächstes
folgt eine Beschreibung – siehe 24 – zur Erzeugung
eines Fraktalmusters mit der in 23 genannten
Konfiguration.
-
Im
Speicher 51 sind voreingetragene Pixeleigenwerte für vier Spitzen
der ursprünglich
quadratischen Fläche
abgelegt. Nehmen wir an, dass die Länge einer Seite der ursprünglich quadratischen Fläche durch
W verkörpert
wird. Die Länge
W kann einen beliebigen Wert annehmen, in diesem Falle gehen wir
davon aus, dass sie ein Faktor von 2 des Interpixelabstands
ist, was die Operation sehr vereinfacht, wie z.B. 16, 32, 64, 128,
256 ....
-
Das
Steuerteil 52 weist das quadratflächen-spitzenberechnende Teil 53 an,
die Koordinaten der vier Spitzen der ursprünglich quadratischen Fläche auf
Grundlage der Seitenlänge
W seiner einen Seite zu berechnen, die im Pixelwertspeicher 51 definiert
ist. Das quadratflächen-spitzenberechnende Teil 53 berechnet
die Koordinaten (0, 0), (W, 0), (W, W) und (0, W) der vier Spitzen
der quadratischen Fläche
(siehe 25A) nach Anweisung durch das Steuerteil 52 und
sendet diese zum Teil 55, das die diagonal gegenüberliegenden
Spitzen auswählt (Schritt
S1).
-
Das
Auswahlteil 55 sortiert die vier Spitzen, die vom quadratflächen-spitzenberechnende
Teil 53 gesendet wurden, in zwei Paare diagonal gegenüberliegender
Spitzen, und wählt
dann eines der Paare auf Grundlage des vom zufälligen werterzeugenden Teil 57 gesendeten
Wertes aus und schickt seine Koordinatenwerte an das mittelpunkt-pixelwerterzeugende
Teil 56 (Schritt S2). Das quadratflächen-spitzenberechnende Teil 53 berechnet
dann die Koordinate des Mittelpunkts zwischen den Spitzen des ausgewählten Paares
als Mittelpunkt PSC der quadratischen Fläche und
schickt sie als Adresse an Schreibteil 59. Das Zufallswerte
erzeugende Teil 57 erzeugt eine Zufallszahl, die vom Auswahlteil 55 zur
willkürlichen
Auswahl eines der beiden Paare der diagonal gegenüberliegenden
Spitzen verwendet wird. So erzeugt z.B. das Zufallswerte erzeugende
Teil 67 eine Zufallszahl R im Bereich von 0 bis 1, und
das Auswahlteil 55 wählt
das Spitzenpaar aus, das sich diagonal gegenüber in Richtung links unten
nach rechts oben oder von links oben nach rechts unten der quadratischen
Fläche
befindet, und zwar in Abhängigkeit davon,
ob R < 0,5 oder
R ≥ 0,5 ist.
Auf diese Weise kann jedes der beiden diagonal gegenüber befindlichen
Spitzenpaare mit derselben Wahrscheinlichkeit ausgewählt werden.
-
Als
nächstes
liest in Schritt S3 das mittelpunkt-pixelwertberechnende Teil 56 aus
Speicher 51 die Pixelwerte V1 und
V2 an den Koordinaten der Spitzen des ausgewählten Paares,
die von Auswahlteil 55 geschickt wurden, aus, und berechnet
dann den Mittelwert der Pixelwerte V1 und
V2 und addiert den Mittelwert zu einem Geräuschwert
N, der vom geräuscherzeugenden
Teil 58 gesendet wurde. Dann schickt es den addierten Wert
als Pixelwert Vc am Mittelpunkt PSC des
quadratischen Bereiches an Schreibteil 59. Die Intensität N des
Geräusches,
das vom geräuscherzeugenden
Teil 58 erzeugt wird, verändert sich in Reaktion auf
die Anweisungen, die vom Steuerteil 52 erteilt werden.
-
Das
Schreibteil 59 schreibt den Pixelwert Vc, der vom mittelpunkt-pixelberechnenden
Teil 56 berechnet wurde, gemäß der von Auswahlteil 55 angewiesenen
Koordinate. Mit dieser Operation wird die erste Unterteilung der
quadratischen Fläche
in rhombische Flächen
abgeschlossen, und die Zahl n der Male, die die Aufteilung vorgenommen
wurde, wird in Schritt S4 um eins inkrementiert.
-
Als
nächstes
teilt das Steuerteil 52 in Schritt S5 die darin gespeicherte
Länge W
durch 2½ und weist
Teil 54, das die Spitzen in der rhombischen Fläche berechnet,
zur Berechnung der Koordinaten der vier Spitzen einer jeden von
vier rhombischen Flächen
an, deren Seitenlänge
jeweils W/2½ entspricht – in 25B gezeigt – d.h.
dass vier rhombische Flächen
je eine Seite des quadratischen Bereiches als Diagonale nutzen.
Gleichzeitig verweist das Steuerteil 52 die Geräuschintensität N an das
geräuscherzeugende
Teil 58. Teil 54, das die Spitzen in der rhombischen
Fläche
berechnet, berechnet die Koordinaten der vier Spitzen einer jeden
rhombischen Fläche,
deren Seitenlänge
jeweils W/2½ entspricht – in 25B gezeigt – nach
Anweisung durch das Steuerteil 52 und schickt die so berechneten
Koordinatenwerte an das Auswahlteil 55.
-
In
Schritt S6 sortiert das Auswahlteil 55 die vier Spitzen
einer jeden rhombischen Fläche,
die es erhalten hat, in zwei Paare diagonal gegenüberliegender
Spitzen. Befinden sich alle vier Spitzen im Originalbereich, so
wählt Auswahlteil 55 ein
Paar vertikal oder horizontal gegenüberliegender Spitzen der rhombischen
Fläche
aus; was davon abhängt,
ob die Zufallszahl R, die vom Zufallswerte erzeugenden Teil 57 gesendet
wurde, kleiner als 0,5 oder gleich 0,5 oder größer als 0,5 ist, und das Auswahlteil 55 schickt
Koordinatenwerte der Spitzen des ausgewählten Paares an das mittelpunkt-pixelberechnende Teil 56.
Liegt eine der vier Spitzen außerhalb
der quadratischen Originalfläche,
so wählt
das Auswahlteil 55 ein Paar diagonal gegenüberliegender
Spitzen aus, die sich beide auf der Seite der quadratischen Originalfläche befinden,
und schickt ihre Koordinatenwerte an das mittelpunkt-pixelerzeugende
Teil 56. Danach berechnet das mittelpunkt-pixelberechnende Teil 56 die
Koordinatenwerte am Mittelpunkt zwischen den Spitzen eines jeden
ausgewählten
Paares als Mittelpunkt PRC einer jeden rhombischen
Fläche und
schickt sie an das Schreibteil 59.
-
In
Schritt S7 liest das mittelpunkt-pixelwertberechnende Teil 56 Pixelwerte
V3 und V4 an den
Koordinaten der beiden diagonal gegenüberliegenden Spitzen, die für jede rhombische
Fläche
geschickt wurden, aus Speicher 51 aus, berechnet dann den Mittelwert
der ausgelesenen Pixelwerte und addiert den Mittelwert zum Geräuschwert
N, der vom geräuscherzeugenden
Teil 58 gesendet wurde. Danach schickt es den addierten
Wert als Pixelwert Vc des Mittelpunktes PRC an
Schreibteil 59.
-
Schreibteil 59 schreibt
den Pixelwert Vc, der vom pixelwertberechnenden Teil 56 berechnet
wurde, gemäß der Koordinate
des Mittelpunktes PRC zwischen den ausgewählten Spitzen
in Speicher 51 ein, und die Anzahl n der Male, die die
Aufteilung vorgenommen wurde, wird in Schritt S8 um eins inkrementiert.
-
In
Schritt S9 werden vier geteilte quadratische Flächen, von denen jede eine Seite
der rhombischen Fläche
als Diagonallinie nutzt und eine Seitenlänge von W/2 – siehe 26A – aufweist,
definiert, womit die erste Teilung der rhombischen Fläche in quadratische
Flächen
abgeschlossen ist.
-
Als
nächstes
wird in Schritt S10 eine Überprüfung vorgenommen,
um festzustellen, ob die Länge
W/2n/2 einer Seite einer jeden geteilten
quadratischen Fläche
gleicht oder kürzer
als der Abstand d zwischen nebeneinander befindlichen Pixeln (oder der
Höhe d
der Pixel) ist. Ist dies nicht der Fall, so kehrt das Verfahren
zu Schritt S2 zurück,
bei dem eine Seite des quadratischen Bereiches, der eine Seitenlänge von
jeweils W/2 aufweist – in
Schritt S9 erhalten – wiederum
durch 2½ geteilt
wird, um die Länge
W/23/2 einer Seite einer rhombischen Fläche zu erhalten,
die die Seitenlänge
W/2 als Diagonallinie aufweist (siehe 26B).
Diese Länge
W/2 wird zur Aufteilung der Quadratfläche (27A)
in rhombische Flächen
(27B) verwendet, gefolgt von der Aufteilung jeder rhombischen
Fläche
(27B) in Quadratflächen
(28A). Zum Zeitpunkt der Auswahl der vier Spitzen der rhombischen
Flächen
gemäß ihrer
einen Seitenlänge
wählt das
Teil 54 zur Berechnung der Spitzen der rhombischen Fläche alle
rhombischen Bereiche aus, die – gemäß k-ter
Verarbeitung – über einen
Seite mit derselben Seitenlänge
W/(2½ 2k) verfügen – wie in 28 gezeigt – und berechnet die Koordinaten
der vier Spitzen einer jeden Quadratfläche jedes ausgewählten rhombischen
Bereiches (Schritt S5). Bei Auswahl der vier Spitzen einer jeden Quadratfläche aufgrund
ihrer Seitenlänge,
wählt das spitzenberechnende
Teil 53 für
die Quadratfläche
alle Quadratflächen
aus, die – gemäß k-ter
Verarbeitung – über dieselbe
Seitenlänge
von W/2k – wie in 28A gezeigt – verfügen und
berechnet dann die Koordinaten der vier Spitzen einer jeden Quadratfläche (Schritt
S9). Ist der Wert, der nach Teilung der Länge W durch 2n/2 erhalten
wird, kleiner als der Abstand d zwischen nebeneinanderliegenden
Pixeln, so wird die Operation in Schritt S10 gestoppt.
-
Die
oben beschriebene Teilungsverarbeitung wird wiederholt, und wenn
das Steuerteil 42 seine Funktion beendet, so wird in Speicher 51 ein
auf diese Weise erzeugtes Fraktalmuster gespeichert.
-
Wie
oben beschrieben gestattet diese Ausführungsform die effektive Erzeugung
eines Fraktalmusters in einem rechteckigen Bereich, der durch eine
Quadratfläche
oder einen Satz Quadratflächen definiert
ist, ohne dass dabei wie bei dem davor beschriebenen Verfahren Speicherkapazität und Betriebszeit
vergeudet werden. Des Weiteren basiert diese Methode auf Teilung
des Vierecks, da jedoch lediglich zwei diagonal gegenüberliegende
Spitzen zur Berechnung des Mittelpunktes verwendet werden, handelt
es sich bei der Teilung des Vierecks prinzipiell um die Teilung
eines rechtwinkligen gleichseitigen Dreiecks, wie in 22A oder 25A gezeigt;
und daher weist das in dieser Ausführungsform erzeugte Fraktalmuster
eine Struktur auf, die der durch die konventionelle Methode zur
Fraktalmustererzeugung durch Teilung eines regelmäßigen Dreiecks
sehr nahe kommt, und keine der Unnatürlichkeiten aufweist, über die
das auf Grundlage der Vierecksteilung erzeugte Fraktalmuster verfügt.
-
Im
Falle von quadratischen oder rechteckigen Fliesen- oder Teppichflächen, von
denen eine jede das Fraktalmuster aufweist, das durch das in vorliegender
Erfindung beschriebene Verfahren zur Fraktalmustererzeugung gebildet
wurde, ist es ebenfalls wünschenswert,
dass dann, wenn viele derartige Flächen zusammen angeordnet werden,
ihre Muster in den aneinandergrenzenden Bereichen ineinander übergehen,
um ein ununterbrochenes Gesamtmuster zu bilden. Des Weitern wiederholt
sich dann, wenn Fliesen mit demselben Muster mit derselben Ausrichtung
ausgerichtet werden, dasselbe Strukturmuster auf jeder Fliese, was
zur Folge hat, dass die einzelnen Fliesen deutlich voneinander unterscheidbar hervortreten.
Wenn es sich jedoch erreichen lässt, dass
die auf den einzelnen Fliesen befindlichen Muster über die
Ränder
der Fliesen nahtlos ineinander über
gehen, wenn die Fliesen mit unterschiedlicher Ausrichtung gelegt
werden oder eine geringe Anzahl von Fliesen mit unterschiedlichem
Muster gelegt wird, so können
die Muster in ihrer Einheitlichkeit gesehen werden. Dies verbessert
das äußere Erscheinungsbild über die
gesamte Fläche
von z.B. einer gefliesten Wandfläche.
Wie auch bei dem bereits erwähnten
Musterelement lässt
sich ebenfalls ein Fraktalmuster erzeugen, dass die Bedingungen
zur Musterfortführung,
die bereits bzgl. 1A, 1B und 1C beschrieben
wurden, erfüllt.
In diesem Fall jedoch, wenn die bereits erwähnten Bedingungen zur Musterfortführung in
ihrer Gesamtheit angewendet werden, ist die Kontinuität der Pixelwerte über die Ränder der
Fliese hinaus garantiert, da jedoch die Kontinuität der Änderungsrate
der Pixelwerte nicht garantiert ist, erfährt das Muster unerwünschte Veränderungen
im Randbereich – wie
in 29A und 29B gezeigt. 29A zeigt eine dreidimensionale Darstellung von
sechs Fraktalmustern, die jeweils in einem quadratischen Bereich
erzeugt wurden, wobei der Pixelwert als Höhe dargestellt ist. Die angrenzenden
Muster weisen an den Rändern
zwischen ihnen dieselbe Höhe
auf, die Neigung am Rand variiert jedoch unregelmäßig. 29B zeigt Muster, die durch die Figur von Pixelwerten,
die über einem
bestimmten Wert liegen, erzeugt werden, wobei die niedrigeren Pixelwerte
weiß markiert
sind. Diese Streifeninformation hat dieselbe Bedeutung wie Umrisslinien,
die in Karten und dergleichen verwendet werden. Nur dann, wenn die
Pixelwertgradienten über
den Rand der Muster fortgeführt
werden, gehen ihre Umrisse nahtlos ineinander über, anderenfalls entstehen
an den Verbindungsstellen zwischen den Mustern zackige Bereiche.
Aufgrund dessen treten die Ränder
der Muster deutlich hervor – siehe 29 – und
beeinträchtigen
so die Musterqualität.
Anders ausgedrückt
gehen die Musterumrisse, wenn sich die Pixelwertgradienten nur unwesentlich
zwischen aneinandergrenzenden Flächen
unterscheiden, ebenfalls nahtlos ineinander über.
-
Um
daher sicherzustellen, dass sich nicht nur die Pixelwerte, sondern
ebenfalls ihre Änderungsraten
nur geringfügig
in aneinandergrenzenden Bereichen unterscheiden ist, es notwendig,
Pixelwerte zu berechnen, wobei Angaben zu nebeneinander befindlichen
Mustern beim Teilungsverfahren zur Fraktalmustererzeugung berücksichtigt
werden müssen.
Im folgenden wird eine Ausführungsform
beschrieben, die auf dieser Idee basiert.
-
Da
bei der bereits bzgl. 22A bis 22C beschriebenen Flächenaufteilung nur Informationen
verwendet werden, die den Innenbereich der Quadratfläche betreffen,
basiert diese Ausführungs form
auf der bereits beschriebenen Verarbeitung. Die Aufteilung der rhombischen
Fläche
in Quadratflächen
wird vorgenommen, wobei Angaben zu aneinandergrenzenden Fliesenmustern
berücksichtigt
werden, da rhombische Flächen
vorhanden sind, die sich über
die Ränder
der quadratischen Originalfläche
der Fliese erstrecken. Das bedeutet, dass dann, wenn eine rhombische
Fläche
festgestellt wird, die eine ihrer Spitzen außerhalb der quadratischen Originalfläche aufweist,
ein bzw. mehrere Punkte des quadratischen Bereiches der angrenzenden
Fliese, die der Position der obengenannten Spitze entsprechen, nacheinander
ausgewählt
werden, zum Beispiel bzgl. vier Seiten der angrenzenden Fliese,
so dass durch Rotation eine Fortführung erreicht wird. Die Anzahl
der ausgewählten
Punkte hängt
von der Fortführungsbedingung
ab sowie der Anzahl der zu erzeugenden unterschiedlichen Muster.
Unter der Bedingung, dass Muster der besagten Fliese sowie der angrenzenden
Fliese nahtlos über
die Ränder
der beiden Fliesen hinweg ineinander übergehen, wenn die Fliesen
so angeordnet sind, dass ihre Muster dieselbe Ausrichtung aufweisen,
wird ein Pixel ausgewählt;
unter der Bedingung, dass die Muster der beiden Fliesen nahtlos über ihre
Ränder
hinweg ineinander übergehen,
wenn ihre Muster 180 Grad entfernt orientiert sind, so werden zwei
Pixel ausgewählt;
und unter der Bedingung, dass die Muster beider Fliesen über ihre
Ränder
hinweg fortgeführt
werden, wenn ihre Muster 90, 180 und 270 Grad entfernt orientiert sind,
werden vier Pixel ausgewählt.
Des Weiteren ist dann, wenn das Muster der besagten Fliese in eine Vielzahl
von Mustern übergehen
soll, die Anzahl der ausgewählten
Pixel ein Vielfaches der Zahl, die durch die Bedingungen zur Musterfortführung vorgegeben wird.
Gehen wir davon aus, dass die Zahl der auf diese Weise ausgewählten Pixel
oder Punkte Q entspricht, eines von Q-Spitzenpaaren der bereits
erwähnten
rhombischen Fläche
innerhalb des quadratischen Originalbereiches und die so gewählten Punkte
auf der angrenzenden Fliese sowie ein Paar diagonal gegenüberliegender
Spitzen der rhombischen Fläche
auf einer Seite der quadratischen Originalfläche zufällig ausgewählt werden, und ein Wert, der
durch Addieren der Geräuschmenge
zum Durchschnittswert der Pixelwerte an den beiden Spitzen des gewählten Paares
erhalten wird, als Pixelwert im Zentrum der oben genannten rhombischen
Fläche verwendet
wird. Dann wird das Fraktalmuster erzeugt, indem das Aufteilungsverfahren
von Quadrat- in rhombische Flächen
sowie von rhombischen in Quadratflächen abwechselnd wiederholt
wird, und zwar solange, bis die Länge einer Seite der unterteilten
Quadratfläche
dem Abstand zwischen nebeneinanderliegenden Pixeln entspricht.
-
30 zeigt
das Blockdiagramm einer Ausführungsform
einer Vorrichtung zur Erzeugung von Fraktalmustern, der auf oben
beschriebener Idee basiert. Die Teile, die in punkto Bezeichnung
und Funktion mit denen der in 23 gezeigten
Ausführung übereinstimmen,
sind mit denselben Referenznummern wie in 23 bezeichnet.
Diese Ausführungsform
unterscheidet sich von der in 23 gezeigten durch
das Vorhandensein von: einem Schreibbeendigungsflagspeicher 61,
der anzeigt, dass die Pixelwerte bereits im Pixelwertspeicher 51 abgelegt
wurden; einem Referenzmuster-Pixelwertspeicher 62, der
zur Erzeugung einer Vielzahl von Fliesenmustern verwendet wird,
die über
die Fliesenränder
fortgeführt
werden; einem flächenbestimmenden
Teil 63 das entscheidet, ob sich alle Spitzen der rhombischen
Fläche,
die vom spitzenberechnenden Teil für die rhombische Fläche 54 berechnet
werden, innerhalb des quadratischen Originalbereichs befinden, oder
ob eine von ihnen außerhalb
des quadratischen Originalbereichs liegt; ein Auswahlteil zur Auswahl außerhalb
des Bereichs befindlicher Spitzen 64, dass eine Vielzahl
von Pixeln im Muster des angrenzenden quadratischen Bereiches an
der Spitze des rhombischen Bereiches außerhalb des quadrati schen Originalbereiches
auswählt
und die Anzahl der ausgewählten
Pixel sowie ihre Koordinatenwerte sowie die Muster, in denen die
gewählten
Pixel auftreten, ausgibt; und einem Schreibentscheidungsteil 65 das überprüft, ob die
vom Teil 55 berechnete Mittelpunktkoordinate bereits geschrieben
wurde oder nicht. Die doppelten Pfeile in 30 zeigen
den Strom der Pixelwerte und die einfachen Pfeile den Strom der
Koordinatenwerte sowie anderer Datenwerte und Steuersignale an.
-
Im
Falle der Erzeugung eines einzelnen Fliesenmusters sind bereits
im Speicher 51 dieselben Pixelwerte an den vier Spitzen
der quadratischen Originalfläche
eingetragen und im Flagspeicher 61 sind entsprechende Schreibflags
an den vier Spitzen der quadratischen Originalfläche gesetzt. Gehen wir davon
aus, dass die Länge
einer Seite der quadratischen Originalfläche W entspricht. Bei der Erzeugung
einer Vielzahl von Fliesenmustern, die ein vorhererzeugtes Fliesenmuster über ihre
Ränder
hinweg fortführen,
werden Pixelwerte eines Referenzmusters in alle Pixel eingetragen,
die zu den Seiten der quadratischen Fläche in Pixelwertspeicher 51 gehören, und
Schreibflags werden an allen Pixeln gesetzt, die zu den Seiten der
quadratischen Fläche
im Schreibbeendigungsflagspeicher 61 gehören. Übrigens
braucht der Referenzmuster-Pixelwertspeicher 62 nicht eingerichtet
werden, wenn keine Notwendigkeit zur Erzeugung einer Vielzahl von
Mustern, die über
die Ränder
der Fliesen fortgeführt
werden, besteht.
-
Das
Steuerteil 52 weist das quadratflächen-spitzenberechende Teil 53 zur
Berechnung der Koordinaten der vier Spitzen des quadratischen Originalbereiches
an.
-
Das
quadratflächen-spitzenberechnende
Teil 53 berechnet – wie
in 25A gezeigt – die
Koordinaten der vier Spitzen des quadratischen Bereiches aus der
Länge W
der einen in Speicher 51 vordefinierten Seite und schickt
die Koordinaten an das Teil 55, das diagonal gegenüberliegende
Spitzen auswählt.
-
Wie
in der in 13 gezeigten Ausführungsform
sortiert das Auswahlteil 55 die vier Spitzen, die vom quadratflächen-spitzenberechenden
Teil 53 geschickt wurden, in zwei Paare diagonal gegenüberliegender
Spitzen, und zwar auf Grundlage der Zufallszahl R, die vom Zufallswerte
erzeugenden Teil 57 erstellt wurde, und schickt deren Koordinatenwerte
an den Schreibentscheidungsteil 65, der dann die Koordinate
des Mittelpunkts zwischen dem ausgewählten Spitzenpaar berechnet
und an Schreibteil 59 weiterleitet.
-
Das
Schreibentscheidungsteil 65 konsultiert den Flagspeicher 61,
um festzustellen, ob bereits Schreibungen an den von Auswahlteil 55 geschickten
Koordinaten veranlasst worden sind. Ist dies der Fall, so werden
keine Einträge
an den Koordinaten vorgenommen. Wurden keine Schreibungen veranlasst,
werden die Koordinatenwerte an das mittelpunkt-pixelwertberechnende
Teil 56 geschickt.
-
Das
mittelpunkt-pixelwertberechnende Teil 56 liest aus Speicher 51 Pixelwerte
V1 und V2 aus, die den
beiden Koordinatenwerten entsprechen, die vom Schreibentscheidungsteil 65 geschickt
wurden, berechnet dann den Mittelwert der ausgelesenen Pixelwerte
und schickt ihn an Schreibteil 59, nachdem der Geräuschwert
N, der vom geräuscherzeugenden
Teil 58 geliefert wurde, hinzugefügt worden ist. Die Intensität N des
vom geräuscherzeugenden
Teil 58 erzeugten Geräusches ändert sich
in Reaktion auf die von Steuerteil 52 erteilten Anweisungen.
-
Das
Schreibteil 59 schreibt den Pixelwert des Mittelpunktes,
der vom mittelpunkt-pixelwertberechnenden Teil 56 bestimmt
wurde, in Speicher 51 ein, und zwar gemäß der spezifizierten Koordinate
des Mittelpunktes PSC zwischen diagonal
gegenüberliegenden
Spitzen, die vom Auswahlteil 55 ausgewählt wurden, und setzt ein Schreibflag
an denselben Koordinaten in Flagspeicher 61. Befindet sich
dieser Koordinatenwert zu diesem Zeitpunkt auf einer Seite des quadratischen
Bereiches mit der Länge
W, so schreibt Schreibteil 59 gemäß den in 1A und 1B gezeigten
Musterfortführungsbedingungen denselben
Koordinatenwert an den Koordinaten von insgesamt acht Positionen
ein, das heißt,
der Position der oben genannten Seite des quadratischen Bereiches,
seiner verschobenen Position auf der entgegengesetzten Seite und
den Positionen auf beiden Seiten, die durch eine Rotierung um nacheinander 90,
280 und 270 Grad entstehen. Gleichzeitig setzt das Schreibteil 59 an
den zugehörigen
Koordinaten im Flagspeicher 61 Flags. Mit dieser Verarbeitung
ist die erste Teilung von Quadrat- in rhombische Flächen abgeschlossen.
In dieser Ausführungsform
werden Pixelwerte auf nur einer vordefinierten Seite der quadratischen
Fläche
durch die oben beschriebene Berechnung bestimmt, und die Pixelwerte
werden auf die verbleibenden anderen Seiten übertragen, und zwar unter Einhaltung
der oben genannten Bedingungen zur Musterfortführung.
-
Als
nächstes
teilt Steuerteil 52 die gespeicherte Länge W durch 21/2,
weist dann das rhombische flächenberechnende
Teil 54 zur Berechnung der Koordinaten der vier Spitzen
einer rhombischen Fläche
an, deren eine Seite eine Länge
W/2½ aufweist,
und spezifiziert die Geräuschintensität N für das geräuscherzeugende
Teil 58.
-
Das
rhombische Flächen
berechnende Teil 54 berechnet – wie in 25B gezeigt – die
Koordinaten der vier Spitzen der rhombischen Fläche, deren eine Seite eine
von Steuerteil 52 spezifizierte Länge von W/2½ aufweist,
und schickt die berechneten Koordinatenwerte an das flächenbestimmende Teil 63.
-
Das
flächenbestimmende
Teil 63 nimmt eine Prüfung
vor, um festzustellen, ob die vier Spitzen, die durch die Koordinatenwerte
dargestellt werden, innerhalb der quadratischen Originalbereiches
liegen, oder ob eine der Spitzen außerhalb des Bereiches liegt,
und schickt die Koordinatenwerte der Spitzen, die innerhalb des
quadratischen Originalbereiches liegen, an das Auswahlteil 55 und
den Koordinatenwert der Spitze, die außerhalb des quadratischen Originalbereiches
liegt, an das Auswahlteil für
außerhalb
liegende Spitzen 64. Befindet sich eine der vier Spitzen
der rhombischen Fläche
außerhalb
des quadratischen Originalbereiches, die anderen beiden Spitzen
an den Seiten der quadratischen Originalfläche und die verbleibende Spitze
innerhalb des quadratischen Originalbereiches, so nehmen wir an, dass
die Koordinaten dieser Spitzen PX, PB1, PB2 und PI heißen.
In dem in 25A gezeigten Fall fallen Spitze
PI und Mittelpunkt PSC zusammen.
-
Das
Auswahlteil für
außerhalb
liegende Spitzen 64 wählt
vier Koordinaten PR1, PR2,
PR3 und PR4 an Position
der Koordinate PX, die vom flächenbestimmenden
Teil 63 geliefert und auf der Fliese verzeichnet wurde,
aus, wobei Koordinate PX als eine auf einer
angrenzenden Fliese befindliche Koordinate angesehen wird, die die
Bedingungen zur Musterfortführung
erfüllt,
und mit den Koordinaten auf besagten Fliese übereinstimmt, und an Positionen
der Koordinate PX, die auf besagter Fliese
nacheinander um 90, 180 und 270 Grad rotiert wurden – wie in 31 gezeigt,
liegt. Wenn, wie in 25B gezeigt, die Koordinate
PX mit dem Mittelpunkt der benachbarten
quadratischen Fläche
zusammenfällt,
fallen diese vier Positionen ebenfalls mit Mittelpunkt PSC zusammen, in dem in 26B gezeigten Falle werden diese vier Punkte jedoch
auf die in 31 gezeigte Weise erhalten.
Bei Erzeugung eines Fraktalmusters, das sich vom Originalmuster
unterscheidet, wird das Muster der angrenzenden Fliese als Referenzmuster
der Originalfliese in Speicher 62 abgelegt, und Punkt PX wird zusammen mit Positionen PR2', PR3' und PR4' ausgewählt zu denen
Punkt PX um 90, 180 und 270 Grad auf der
Originalfliese gedreht wurde. Bei Erzeugung des ersten Fliesenmusters
(des Originalmusters) werden Informationen, die belegen, dass diese
vier Koordinaten denen in Speicher 51 abgelegten entsprechen,
an Auswahlteil 55 geliefert – zusammen mit den Koordinaten.
Bei einem zweiten und weiteren Verfahren zur Erzeugung verschiedener
Muster werden Informationen, die belegen, dass die vier Koordinaten
den in Speicher 62 abgelegten entsprechen, zusammen mit
den Koordinaten an Auswahlteil 62 geliefert.
-
Wenn
das flächenbestimmende
Teil 63 entscheiden hat, dass die vier Spitzen der rhombischen Fläche alle
innerhalb der quadratischen Originalfläche liegen, so sortiert Auswahlteil 55 die
vier Spitzen von Teil 54 in zwei Paare diagonal gegenüberliegender
Spitzen, wählt
dann willkürlich
eines der beiden Paare mit Hilfe von Zufallszahl R, die vom Zufallswerte
erzeugenden Teil 57 geliefert wurde, aus, und liefert ein
Koordinatenwertepaar für
die ausgewählten Spitzen
an das mittelpunktpixelwertberechende Teil 56. Wenn das
flächenbestimmende
Teil 63 entschieden hat, dass sich eine der vier Spitzen
außerhalb der
quadratischen Originalfläche
befindet, so erhält Auswahlteil 55 die
vier Koordinaten PX, PB1,
PB2 und PI vom rhombische
Flächen
berechnenden Teil 54, und die vier Koordinaten PR1, PR2, PR3 und PR4 vom Auswahlteil
für außerhalb
liegende Spitzen 64. Auswahlteil 55 definiert
zwei Paare diagonal gegenüberliegender
Spitzen (PX1, PI)
und (PB1, PB2) auf
Grundlage des vorherigen Koordinatenquartetts und wählt Pixelwerte
des letzteren Koordinatenquartetts als die Pixelwerte aus, die die
Spitze PX, die sich außerhalb des quadratischen Originalbereiches
befindet, annehmen darf. Das heißt, dass Auswahlteil 55 insgesamt
fünf solche
Spitzenpaare auswählt,
und zwar ein Spitzenpaar (PB1, PB2) auf einer Seite der quadratischen Originalfläche und
Paare (PI, PR1),
(PI, PR2), (PI, PR3) und (PI, PR4) von Spitze
PI innerhalb der quadratischen Fläche sowie
ausgewählter
Koordinaten. Das Auswahlteil 55 wählt eines von fünf Spitzenpaaren
aus, und zwar nach Zufallszahl R, und liefert das gewählte Koordinatenpaar
an das mittelpunkt-pixelberechnende Teil 56, zusammen mit
Informationen, die belegen, dass die Koordinatenwerte des ausgewählten Paares
den in Speicher 51 oder 61 abgelegten Werten entsprechen.
In jedem Falle berechnet das Auswahlteil 55 die Mittelpunkt-Koordinate
des ausgewählten
Paares und liefert diese an Schreibentscheidungsteil 65.
-
Das
Schreibentscheidungsteil 65 zieht den Flagspeicher 61 zu
Rate um zu überprüfen, ob
bereits eine Schreibung in der Koordinate erfolgt ist; ist dies
der Fall, so wird diese Koordinate nicht weiter beschrieben. Das
mittelpunkt-pixelwertberechnende Teil 56 liest aus Speicher 51 oder 62 die
Pixelwerte an den beiden Koordinaten der Koordinatenpaare aus, die
von Auswahlteil 55 geliefert wurden, und berechnet dann
den Mittelwert der ausgelesenen Pixelwerte und schickt diesen an
Schreibteil 59, nachdem der Mittelwert und der vom geräuscherzeugenden Teil 58 gelieferte
Geräuschwert
N addiert wurden.
-
Das
Schreibteil 59 trägt
den Pixelwert, der vom mittelpunkt-pixelwertberechnenden Teil 56 bestimmt
wurde, in Speicher 51 an der von Auswahlteil 55 ausgewählten Koordinate
ein. Dieses Verfahren beendet die erste Teilung einer rhombischen
in quadratische Flächen,
und die Quadratfläche
ist ein Satz quadratischer Flächen.
-
Als
nächstes
teilt das Steuerteil 52 die gespeicherte Länge W/2½ durch
2½.
Dadurch erhält
man die Länge
W/2 jeder Seite einer jeden der vier geteilten quadratischen Flächen. Dann
erfolgt die Aufteilung des Quadrats in rhombische Flächen auf
Grundlage der Länge
W/2, gefolgt von der Teilung rhombischer in quadratische Flächen mit
Hilfe der Länge W/23/2. Diese beiden Verfahren werden so lange
wiederholt, bis die Länge
W/2n/2 einer Seite der geteilten quadratischen
Fläche,
die in Steuerteil 52 abgespeichert ist, dem Abstand zwischen
nebeneinander befindlichen Pixeln gleicht. Bei der Auswahl von vier Spitzen
eines quadratischen Bereiches, dessen Diagonallänge W/2n/2 (N
= 1, 3, 5 ...) entspricht, berechnet das quadratflächen-spitzenberechende
Teil 53 die Koordinaten der vier Spitzen aller Quadratflächen, die
eine Seitenlänge
gemeinsam haben, laut Verarbeitung (n = K)-te Verarbeitung, wie in 28A gezeigt. Bei Auswahl der vier Spitzen eines
rhombischen Bereiches mit einer Diagonallänge von W/2n/2 (n
= 2, 4, 6 ... ), berechnet das rhombische Flächen berechnende Teil 54 die
Koordinaten der vier Spitzen aller rhombischen Flächen, die
eine Seitenlänge
gemeinsam haben, laut Verarbeitung (n = K)-te Verarbeitung, wie
in 28B gezeigt.
-
Die
oben beschriebene Teilungsverarbeitung wird wiederholt, und wenn
Steuerteil 52 seine Funktion beendet hat, so wurden im
Speicher 52 abgelegte Fraktalmuster erzeugt, die über die
Ränder
der Fliesen hinweg nahtlos ineinander übergehen.
-
Bei
den auf die oben beschriebene Weise erzeugten Fraktalmustern werden
nicht nur die Pixelwerte, sondern ebenfalls die Änderungswerte nahtlos über die
Fliesenränder
fortgeführt;
daher weisen diese Fraktalmuster keine unerwünschten Musteränderungen
im Randbereich auf, die ansonsten durch die Diskontinuität der Änderungsrate
des Pixelwertes entstehen, wie in 29A und 29B gezeigt wird. Des Weiteren können dann,
wenn das Fraktalmuster, das zur Auswahl eines Pixels an einer Spitze,
die außerhalb
der rhombischen Fläche
liegt, herangezogen wird, nicht nur vom Original-Fraktalmuster,
sondern ebenfalls einem weiteren Fraktalmuster herangezogen wird,
beide Fraktalmuster über
ihre Ränder
weiter geführt
werden.
-
Während die
obige Ausführungsform
davon ausgeht, dass das Verfahren sowie die Vorrichtung, die den
Gegenstand der vorliegenden Erfindung bilden, zur Erzeugung eines
Fraktalmusters in einem quadratischen Bereich verwendet werden,
so lässt sich – durch
eine einfache Modifikation dieser Ausführungsform – ebenfalls ein Fraktalmuster
in einem rechteckigen Bereich erzeugen, der durch einen Satz quadratischer
Flächen
definiert ist. So lässt
sich z.B. ein Fraktalmuster mit einem Aspektverhältnis von 1:2 durch Erzeugung
zweier Arten an Fraktalmustern erzeugen, die über ihren Rand ineinander übergehen und
dann miteinander verbunden werden. Ein Fraktalmuster kann ebenfalls
in einem rechteckigen Bereich mit vorgegebenem Aspektverhältnis erzeugt werden,
indem das Muster in Längsrichtung
gestaucht bzw. gedehnt wird. In diesem Fall erzeugt ein zu starkes
Stauchen oder Dehnen eine Richtwirkung in der Struktur des Musters
und gehört
daher nicht zu den bevorzugten Varianten. Dieses Problem könnte gelöst werden,
wenn das Muster vorher in einer rechteckigen Fläche eines Aspektverhältnisses
erzeugt wird, das der gewünschten
nahe kommt und durch einen Satz quadratischer Flächen definiert ist, und dann
leicht gestaucht bzw. gedehnt wird, um es in eine rechteckige Fläche mit
dem gewünschten
Aspektverhältnis
umzuwandeln.
-
Während die
Ausführungsform
die Erzeugung eines Fraktalmusters auf zweidimensionaler Ebene beschreibt,
so versteht sich von selbst, dass diese Erfindung problemlos auf
die Erzeugung kubischer Fraktalmuster umgelegt werden kann, die nahtlos über ihre
Ränder
ineinander übergehen,
und zwar durch Erweiterung der beschriebenen Verarbeitung auf der
x- und y-Achse zur Verarbeitung auf einer x-, y- und z-Achse, und
durch Ersatz der gegenseitigen Teilung von quadratischen und rhombischen Flächen durch
die gegenseitige Teilung kubischer und achteckiger Flächen.
-
Obwohl
die genannten Ausführungsformen das
Schreiben eines Fliesenmusters in einem Fliesenbereich beschreiben,
der im Musterdatenspeicher 18 oder 51 definiert
ist, so kann das Muster ebenfalls direkt mit Hilfe eines Druckers
oder Plotters ausgedruckt werden. Es ist ebenfalls möglich, die Musterdaten
auf einer Diskette, IC-Karte oder einem anderen herausnehmbaren
Datenaufzeichnungs-Medium abzuspeichern, und die Daten zum Ausdrucken
des Musters von dort bei Bedarf auszulesen. Es ist ebenfalls möglich, das
Muster, anstelle es auszudrucken, mit Hilfe numerischgesteuerter Maschinenwerkzeuge
auf ein tellerförmiges
Element zu zeichnen, und zwar auf Grundlage der von solch einem
Aufzeichnungsmedium ausgelesenen Musterdaten.
-
Es
ist offensichtlich, dass sich viele Modifikationen und Variationen
erzielen lassen, ohne dass dabei vom Umfang der beigefügten Ansprüche abgewichen
werden muss.