DE69629173T2 - Automatisches Plazieren eines graphischen Musters - Google Patents

Automatisches Plazieren eines graphischen Musters Download PDF

Info

Publication number
DE69629173T2
DE69629173T2 DE69629173T DE69629173T DE69629173T2 DE 69629173 T2 DE69629173 T2 DE 69629173T2 DE 69629173 T DE69629173 T DE 69629173T DE 69629173 T DE69629173 T DE 69629173T DE 69629173 T2 DE69629173 T2 DE 69629173T2
Authority
DE
Germany
Prior art keywords
path
pattern
computer
graphic pattern
graphic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69629173T
Other languages
English (en)
Other versions
DE69629173D1 (de
Inventor
Michael D. Redwood City Schuster
John E. Los Altos Warnock
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of DE69629173D1 publication Critical patent/DE69629173D1/de
Application granted granted Critical
Publication of DE69629173T2 publication Critical patent/DE69629173T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf das Platzieren grafischer Muster, und insbesondere auf das automatische Platzieren grafischer Muster auf einem elektronischen Dokument.
  • 2. Beschreibung der verwandten Technik
  • In modernen Zeichenprogrammen, wie beispielsweise Adobe Illustrator® – hergestellt von Adobe Systems, Inc., Mountain View, Kalifornien – werden grafische Muster für einen Benutzer verfügbar gemacht. Der Benutzer ist in der Lage, ein entsprechendes grafisches Muster für eine Zeichnung auszuwählen, die der Benutzer anfertigt, und dann einzelne Kopien des ausgewählten grafischen Musters manuell immer dort zu platzieren, wo es auf der Zeichnung, die angefertigt wird, gewünscht wird. Ein Benutzer kann beispielsweise den Wunsch haben, eine Umrandung um eine Zeichnung herum zu platzieren. Das Erstellen der Umrandung würde vom Benutzer verlangen, ein grafisches Muster auszuwählen und dann mehrere Kopien des Musters um den Rand der Zeichnung herum einzeln zu platzieren.
  • In Wordperfect, Version 6.1, für Windows (Programmfreigabe 9. Dezember 1994) werden Textkästen verwendet, die vorgegebene rechteckige Umrandungen aufweisen, welche innerhalb bestimmter Grenzen den Wünschen des Benutzers angepasst werden können. Ferner wird in der US-A-4 9785860 (Kitaya Katsuhiko et al) eine Einrichtung zum automatischen Zeichnen eines Punktmusters offenbart, bei welcher auf der Basis von Punktkonturdaten und ihrer Koordinatendaten für die Erzeu gung eines Musters ein Punktmuster entlang des Randes eines Produkts gezeichnet wird.
  • Ein Hauptproblem bei herkömmlichen Ansätzen besteht darin, dass ein großer Teil der Zeit des Benutzers benötigt wird, um die grafischen Muster einzeln zu platzieren, damit die Umrandung oder eine andere Form entsteht. Ein weiteres Problem des herkömmlichen Ansatzes besteht darin, dass der Benutzer, wenn das grafische Muster auf einer gekrümmten Linie oder um eine Ecke herum platziert werden soll, große Schwierigkeiten hat, die Umrandung so anzuordnen, dass sie der Kurve oder der Ecke auf eine grafisch ansprechende Weise folgt. Obwohl der Benutzer normalerweise die einzelnen grafischen Muster, die platziert werden, modifizieren kann, um sie der gekrümmten Linie oder Ecke anzupassen, ist die Modifikation einzelner grafischer Muster schwierig und sehr zeitaufwendig.
  • Somit besteht ein Bedarf an verbesserten Verfahren, um grafische Muster an Umrandungen oder anderen Formen entlang auf eine solche Weise zu platzieren, dass grafisch ansprechende Umrandungen oder Formen mit einem nur minimalen Zeitaufwand für den Benutzer erzeugt werden können.
  • ZUSAMMENFASSENDE DARSTELLUNG DER ERFINDUNG
  • Die Erfindung wird durch die beigefügten Ansprüche definiert. Allgemein gesagt, bezieht sich die Erfindung auf eine Platzierungstechnik für grafische Muster, die von einem Computer automatisch ausgeführt wird. Zu Beginn wird ein Pfad auf einem elektronischen Dokument bereitgestellt und ein grafisches Muster wird ausgewählt. Dann wird das grafische Muster von einem programmierten Computer automatisch entlang des Pfades derart platziert, dass das grafische Muster der Ausrichtung und der Krümmung des Pfades folgt. Die Erfindung kann als ein Verfahren oder als ein computer-lesbares Medium implementiert werden.
  • Weitere Aspekte und Vorteile der Erfindung werden aus der folgenden detaillierten Beschreibung deutlich werden, und zwar im Zusammenhang mit den zugehörigen Zeichnungen, welche die Prinzipien der Erfindung anhand von Beispielen veranschaulichen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung ist aus der folgenden detaillierten Beschreibung in Verbindung mit den zugehörigen Zeichnungen problemlos zu verstehen, in welchen gleiche Bezugszahlen gleiche Strukturelemente bezeichnen, und in welchen:
  • 1 eine Blockdarstellung eines beispielhaften Computersystems zum automatischen Platzieren grafischer Muster gemäß der Erfindung ist;
  • 2 ein Flussdiagramm einer grafischen Platzierungstechnik gemäß einem grundlegenden Ausführungsbeispiel der Erfindung ist;
  • 3 ein Flussdiagramm einer grafischen Platzierungstechnik gemäß einem ersten Ausführungsbeispiel der Erfindung ist;
  • 4A4C Flussdiagramme einer grafischen Platzierungstechnik gemäß einem zweiten Ausführungsbeispiel der Erfindung sind;
  • 5 ein Flussdiagramm einer Musterzellenplatzierungsverarbeitung gemäß einem Ausführungsbeispiel der Erfindung ist; und
  • 6A6C Flussdiagramme einer Eckenmusterzellenplatzierungsverarbeitung gemäß einem Ausführungsbeispiel der Erfindung sind;
  • 7, 8, 9A, 9B, 9C, 9D, 10A und 10B Beispiele für Musterzellen, Pfade und Muster sind, die die Erfindung erzeugt;
  • 11A und 11B Darstellungen sind, die die Verzerrung einer Eckenmusterzelle veranschaulichen, damit sie an die Ecke eines Pfades passt;
  • 12A und 12B Darstellungen sind, die die Verzerrung eines bestimmten Koordinatenpunkts einer oberen Hälfte einer Eckenmusterzelle veranschaulichen; und
  • 13A und 13B Beispiele für Eckenmusterzellen, Pfade und Muster sind, die die Erfindung erzeugt.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Ausführungsbeispiele der Erfindung werden nachstehend unter Bezugnahme auf die Zeichnungen diskutiert. Fachleute werden jedoch problemlos erkennen, dass die detaillierte Beschreibung, die hierin unter Bezugnahme auf diese Figuren gegeben wird, nur Erläuterungszwecken dient, da die Erfindung über diese begrenzten Ausführungsbeispiele hinausgeht.
  • 1 ist eine Blockdarstellung eines beispielhaften Computersystems 10 für das automatische Platzieren grafischer Muster gemäß der Erfindung. Das Computersystem 10 enthält einen Digitalcomputer 11, einen Anzeigebildschirm (oder Monitor) 22, einen Drucker 24, ein Diskettenlaufwerk 26, ein Festplattenlaufwerk 28, eine Netzwerkschnittstelle 30, eine Tastatur 34 und eine Maus (Zeigereinrichtung) 35. Der Digitalcomputer 11 enthält einen Mikroprozessor 12, einen Speicherbus 14, einen Random Access Memory (RAM) 16, einen Read-Only Memory (ROM) 18, einen peripheren Bus 20 und eine Tastatursteuereinrichtung 32. Der Digitalcomputer 11 kann ein Personalcomputer (wie beispielsweise ein IBM-kompatibler Personalcomputer), ein Workstation-Computer (wie beispielsweise eine SUN- oder Hewlett-Packard-Workstation) oder irgendein anderer Computertyp sein.
  • Der Mikroprozessor 12 ist ein digitaler Mehrzweckprozessor, der den Betrieb des Computersystems 10 steuert. Der Mikroprozessor 12 kann ein Einchip-Prozessor sein oder er kann mit mehreren Komponenten implementiert werden. Unter Verwendung von aus dem Speicher abgerufenen Befehle steuert der Mikroprozessor 12 den Empfang und die Verarbeitung der Eingabedaten und die Ausgabe und Anzeige der Daten auf Ausgabeeinrichtungen. Bei dem beschriebenen Ausführungsbeispiel besteht eine Funktion des Mikroprozessors 12 darin, grafische Muster entlang eines Pfades innerhalb eines elektronischen Dokuments automatisch zu platzieren. Vorzugsweise ist diese Funktion Bestandteil eines Zeichen-Anwendungsprogramms, welches von dem Mikroprozessor 12 ausgeführt wird.
  • Der Speicherbus 14 wird von dem Mikroprozessor 12 verwendet, um auf den RAM 16 und den ROM 18 zuzugreifen. Der RAM 16 wird von dem Mikroprozessor 12 als ein allgemeiner Speicherbereich und als Notizblockspeicher verwendet, und er kann ebenfalls zum Speichern von eingegebenen und verarbeiteten Daten verwendet werden. Beispielsweise können Eingabedaten aus einer Datei einer Zeichnung oder eines anderen elektronischen Dokuments in Form des Adobe-Illustrator®-Programmdateiformats, des Portable Document Format (PDF) oder dergleichen vorliegen. Wenn die Eingabedaten auch Textbereiche enthalten, können Postscript®- oder andere Seitenbeschreibungssprachzeichencodes verwendet werden, um die Zeichen darzustellen. Der ROM 18 kann verwendet werden, um Befehle zu speichern, die von dem Mikroprozessor 12 befolgt werden, sowie Bildbeschreibungen, die zur Anzeige von Bildern in einem speziellen Format verwendet werden.
  • Der periphere Bus 20 wird verwendet, um auf die von dem Digitalcomputer 11 verwendeten Eingabe-, Ausgabe- und Speichereinrichtungen zuzugreifen. Bei dem beschriebenen Ausführungsbeispiel umfassen diese Einrichtungen den Anzeigebildschirm 22, die Druckereinrichtung 24, das Diskettenlaufwerk 26, das Festplattenlaufwerk 28 und die Netzwerkschnittstelle 30. Die Tastatursteuereinrichtung 32 wird verwendet, um Eingaben von der Tastatur 34 zu empfangen und über den Bus 33 decodierte Symbole für jede gedrückte Taste an den Mikroprozessor 12 zu senden.
  • Der Anzeigebildschirm 22 ist eine Ausgabeeinrichtung, die Bilder der Daten anzeigt, die von dem Mikroprozessor 12 über den peripheren Bus 20 oder von anderen Komponenten in Computersystem 10 bereitgestellt werden. Bei dem beschriebenen Ausführungsbeispiel ist der Anzeigebildschirm 22 eine Rastereinrichtung, welche Bilder auf einem Bildschirm entsprechend den Bits einer Bitmap in Zeilen und Spalten von Pixeln anzeigt. Das heißt, eine Bitmap kann in den Anzeigebildschirm 22 eingegeben werden und die Bits der Bitmap können als Pixel angezeigt werden. Eine eingegebene Bitmap kann direkt auf dem Anzeigebildschirm 22 angezeigt werden, oder Komponenten des Computersystems 10 können zuerst Codes oder andere Bildbeschreibungen aus einer Seitenbeschreibungsdatei in Bitmaps übertragen und diese Bitmaps senden, damit sie auf dem Anzeigebildschirm 22 angezeigt werden. Rasteranzeigebildschirme, wie beispielsweise CRTs, LCD-Displays etc., sind für die Verwendung als Anzeigebildschirm 22 geeignet.
  • Die Druckereinrichtung 24 liefert ein Bild einer Bitmap auf einem Blatt Papier oder einer ähnlichen Oberfläche. Der Drucker 24 kann ein Laserdrucker sein, welcher wie der Anzeigebildschirm 22 eine Rastereinrichtung ist, die Pixel anzeigt, welche von Bitmaps abgeleitet wurden. Die Druckereinrichtung 24 kann auch Bilder drucken, die von codierten Daten abgeleitet wurden, wie sie beispielsweise in einer Seitenbeschreibungssprachdatei zu finden sind. Andere Ausgabeeinrichtungen, wie beispielsweise Plotter, Schriftsetzer, etc., können anstelle von oder zusätzlich zu der Druckereinrichtung 24 verwendet werden.
  • Das Diskettenlaufwerk 26 und das Festplattenlaufwerk 28 können verwendet werden, um elektronische Dokumente, Bitmaps und Bildbeschreibungen sowie andere Datenarten zu speichern. Das Diskettenlaufwerk 26 ermöglicht den Transport derartiger Daten an andere Computersysteme, und das Festplattenlaufwerk 28 gestattet den schnellen Zugriff auf große Mengen gespeicherter Daten, wie beispielsweise Bitmaps, welche tendenziell einen großen Umfang an Speicherplatz benötigen.
  • Der Mikroprozessor 12 arbeitet zusammen mit einem (nicht dargestellten) Betriebssystem, um Computercodes auszuführen und Daten zu erzeugen und zu verwenden. Die Computercodes und Daten können sich auf dem RAM 16, dem RAM 18 oder dem Festplattenlaufwerk 28 befinden. Die Computercodes und Daten könnten sich auch auf einem wechselbaren Programmmedium befinden und bei Bedarf in das Computersystem 10 geladen oder installiert werden. Wechselbare Programmmedien sind beispielsweise CD-ROMs, PC-KARTEN, Disketten und Magnetbänder.
  • Die Netzwerkschnittstelle 30 wird verwendet, um Daten über ein mit anderen Computersystemen verbundenes Netzwerk zu senden und zu empfangen. Eine Schnittstellenkarte oder eine ähnliche Einrichtung und entsprechende Software, die von dem Mikroprozessor 12 implementiert werden, können verwendet werden, um das Computersystem 10 mit einem bestehenden Netzwerk zu verbinden und Daten gemäß den Standardprotokollen zu übermitteln.
  • Die Tatstatur 34 wird von einem Benutzer verwendet, um Befehle und andere Anweisungen in das Computersystem 10 einzugeben. Bilder, die auf dem Anzeigebildschirm 22 angezeigt werden oder für das Computersystem 10 zugänglich sind, können editiert, gesucht oder anderweitig durch den Benutzer bearbeitet werden, indem Anweisungen auf der Tastatur 34 eingegeben werden. Die Maus 35 ist ebenfalls mit dem Computersystem 10 verbunden, um ebenso Befehle und andere Anweisungen in das Computersystem 10 einzugeben. Üblicherweise operieren die Maus 35 oder andere Zeigereinrichtungen durch Manipulieren eines Zeigers auf dem Anzeigebildschirm 22. Andere Typen von Benutzereingabeeinrichtungen können ebenfalls im Zusammenhang mit der vorliegenden Erfindung verwendet werden. Beispielweise können ein Trackball, ein Kopierstift oder ein grafisches Eingabetablett verwendet werden, wie es in der Technik bekannt ist.
  • 2 ist ein Flussdiagramm einer Platzierungstechnik 36 für grafische Muster gemäß einem grundlegenden Ausführungsbeispiel der Erfindung. Die Platzierungstechnik 36 für grafische Muster wählt zu Beginn 38 eine Musterzelle aus. Die Musterzelle ist ein grafisches Muster, das auf einem elektronischen Dokument zu platzieren ist. Als nächstes wird ein Pfad gezeichnet oder ausgewählt 40. Üblicherweise zeichnet der Benutzer den Pfad auf dem elektronischen Dokument. Wenn jedoch in der Zeichnung ein entsprechender Pfad bereits existiert, dann kann der Benutzer den Pfad alternativ auswählen. Danach werden die Musterzellen wiederholt entlang des Pfades platziert 42. Das Platzieren der Musterzellen entlang des Pfades wird automatisch von einem Computersystem ausgeführt., das Operationen ausführt, die nachstehend detaillierter beschrieben werden. Wenn die Musterzellen entlang des Pfades platziert 42 werden, werden die einzelnen Musterzellen gebogen oder anderweitig modifiziert, wenn sie platziert werden, so dass die Musterzellen dem Pfad folgen. Somit folgen im Ergebnis der Erfindung die Musterzellen, welche automatisch entlang eines Pfades platziert 42 werden, dem Pfad auf eine grafisch ansprechende Weise. Auch muss der Benutzer nicht länger die zeitaufwendige manuelle Operation ertragen, die zum Platzieren der Musterzellen entlang des Pfades erforderlich ist, da das Platzieren der Musterzellen entlang des Pfades automatisch erfolgt.
  • 3 ist ein Flussdiagramm einer grafischen Platzierungstechnik 44 gemäß einem ersten Ausführungsbeispiel der Erfindung. Vorzugsweise wird die Platzierungstechnik 44 für grafische Muster von einem Computersystem, wie beispielsweise dem in 1 dargestellten Computersystem 10, implementiert.
  • Die Platzierungstechnik 44 für grafische Muster wählt zu Beginn 46 eine Musterzelle aus. Vorzugsweise würde ein Be nutzer die Musterzelle aus einer Vielzahl von Musterzellen auswählen, die dem Benutzer zur Verfügung stehen. Als nächstes würde der Benutzer einen Pfad auf einem elektronischen Dokument auswählen oder zeichnen 48. Üblicherweise zeichnet der Benutzer 48 den Pfad auf dem elektronischen Dokument. Wenn jedoch ein entsprechender Pfad bereits in der Zeichnung existiert, dann kann der Benutzer den Pfad alternativ auswählen 48. Das elektronische Dokument ist das Dokument, in welchem die Musterzellen zu platzieren sind. Vorzugsweise repräsentiert zumindest ein Teil des elektronischen Dokuments ein Bild, und die Musterzellen werden schließlich in dem elektronischen Dokument als Teil des Bildes platziert. Der Pfad wird dann in Ecken und Seiten eingeteilt 50. Ecken sind mit abrupten Änderungen der Richtung des Pfades verbunden, wohingegen Seiten entweder gerade oder gebogene Teile des Pfades sind. In Abhängigkeit von der Form des Pfades kann der Pfad möglicherweise keine Ecken haben, oder er kann viele Ecken haben. Der Pfad weist immer wenigsten eine Seite auf .
  • Als nächstes passt 52 die Platzierungstechnik 44 für grafische Muster die Größe der Musterzelle und/oder des Pfades für jede Seite so an, dass sich eine ganzzahlige Anzahl von Musterzellen entlang jeder der Seiten einpasst. Normalerweise weist die Musterzelle zu Beginn eine vorgegebene Größe auf. Folglich vergleicht die Platzierungstechnik 44 für grafische Muster die Größe oder Länge einer Seite des Pfades mit der vorher festgelegten Größe der Musterzelle. Dann wird entweder die Größe oder Länge der Seite oder die vorher festgelegte Größe der Musterzelle so angepasst 52, dass sich eine ganzzahlige Anzahl von Musterzellen entlang jeder der Seiten einpasst. Natürlich könnten sowohl die Größe als auch die Länge angepasst werden 52. Derartige Anpassungen werden für jede der Seiten des Pfades vorgenommen. Die Art und Weise der Anpassung kann von den Präferenzen des Benutzers abhängen. Der Benutzer kann beispielsweise den Wunsch haben, dass der Pfad angepasst wird, weil kleine Veränderungen seiner Größe nicht von Bedeutung sind. Alternativ kann der Benutzer den Wunsch haben, dass die Musterzelle selbst so gedehnt oder geschrumpft wird, dass sich eine ganzzahlige Anzahl von Musterzellen entlang jeder der Seiten einpasst. Noch eine weitere Alternative besteht darin, die Größe der Musterzelle effektiv (aber nicht wirklich) zu vergrößern oder zu verkleinern, indem gleiche Abstände (z. B. Leerraum) zwischen jeder der Musterzellen, die auf einer Seite platziert werden, eingefügt werden, so dass sich eine ganzzahlige Anzahl von Musterzellen entlang der Seite einpasst. Im Allgemeinen ist die Auswahl aus den obigen Alternativen üblicherweise von den Wünschen des Benutzers und dem bestimmten Typ der verwendeten Musterzelle abhängig.
  • Als nächstes wird die Form der Musterzelle nach Bedarf modifiziert 54, damit sie sich an jeder Ecke des Pfades einpasst. Vorzugsweise weist die Musterzelle wenigstens ein Eckenformat sowie ein Seitenformat auf. Das Eckenformat ist dazu bestimmt, an Ecken des Pfades platziert zu werden. Das Eckenformat ist jedoch für eine Ecke von 90° vorgesehen. Folglich benötigen Ecken, die von 90° abweichen, eine Modifizierung 54 für die Form der Musterzelle. Die Modifizierung 54 für die Form der Musterzelle ist im Allgemeinen mit dem Biegen der Form des Eckenformats verbunden, damit sie in eine nichtrechtwinklige Ecke hineinpasst. Die Modifizierung für die Form des Eckenformats der Musterzelle für die Ecken wird nachstehend unter Bezugnahme auf 6A6C detailliert diskutiert.
  • Danach werden die angepassten und modifizierten Musterzellen auf dem Pfad platziert 56. Die angepassten und modifizierten Musterzellen werden entweder aneinander angrenzend oder mit einem Abstand zwischen den angepassten und modifizierten Musterzellen platziert 56.
  • 4A4C sind Flussdiagramme einer grafischen Platzierungstechnik 58 gemäß einem zweiten Ausführungsbeispiel der Erfindung. Beispiele für Musterzellen, Pfade und Muster, die von diesem zweiten Ausführungsbeispiel der Erfindung erzeugt werden, werden in den 7, 8, 9A, 9B, 9C, 9D, 10A, 10B, 11A und 11B dargestellt. Vorzugsweise wird die Platzierungstechnik 58 für grafische Muster von einem Computersystem, wie beispielsweise dem in 1 dargestellten Computersystem 10, implementiert.
  • Zu Beginn wählt 60 die Platzierungstechnik 58 für grafische Muster eine Musterzelle aus. Die Musterzelle ist ein grafisches Muster mit einer vorgegebenen Größe. Normalerweise würde ein Benutzer die Musterzelle aus einer Vielzahl von vorher definierten Musterzellen auswählen, die dem Benutzer zur Verfügung stehen. Alternativ könnte die Auswahl der Musterzelle den Benutzer tatsächlich involvieren, der die Musterzelle konstruiert (z. B. zeichnet). In jedem Fall zeigt 7 eine beispielhafte Musterzelle zur Verwendung mit der Erfindung. Die in 7 dargestellte Musterzelle hat vorzugsweise ein Seitenformat 200, ein inneres Eckenformat 202 und ein äußeres Eckenformat 204. Andere, weniger komplizierte Zellenmuster haben möglicherweise nur oder erfordern nur ein einzelnes Format für die Musterzelle.
  • Dann zeichnet ein Benutzer einen Pfad oder wählt 62 einen Pfad auf einem elektronischen Dokument aus, auf welchem die ausgewählte Musterzelle zu platzieren ist. Üblicherweise wird der Benutzer den Pfad auf dem elektronischen Dokument zeichnen 62. Wenn jedoch ein entsprechender Pfad bereits in der Zeichnung existiert, dann kann der Benutzer den Pfad alternativ auswählen 62. Der Pfad kann jede beliebige Form haben. Der Pfad wird jedoch im Allgemeinen Ecken und Seiten enthalten. Bei diesem Ausführungsbeispiel wird angenommen, dass der Pfad wenigstens eine Ecke und wenigstens eine Seite enthält. Ecken sind mit abrupten Richtungsänderungen des Pfades verbunden, und Seiten sind mit geraden oder gebogenen Bereichen des Pfades verbunden. Das elektronische Dokument ist das Dokument, auf welchem die Musterzellen zu platzieren sind. Vorzugsweise repräsentiert das elektronische Dokument ein Bild oder eine Zeichnung, und der gezeichnete oder ausgewählte Pfad ist Teil des Bildes oder der Zeichnung. 8 stellt Beispielpfade 206, 208 und 210 dar, welche vom Benutzer gezeichnet oder ausgewählt werden können. Der Beispielpfad 206 weist zwei Seiten 212 und 214 auf, die durch eine Ecke 216 getrennt werden. Der Beispielpfad 208 weist vier Seiten 218, 220, 222 und 224 auf, die durch die Ecken 226, 228 und 230 getrennt werden. Der Beispielpfad 210 weist vier Seiten 232, 234, 236 und 238 auf, die durch vier Ecken 240, 242, 244 und 246 getrennt werden.
  • Als nächstes wird die Größe der Musterzelle und/oder des Pfades angepasst 66, so dass sich eine Mehrzahl von Musterzellen entlang einer Seite einpasst. Hier wird die Anpassung 66 für jede Seite des Pfades einzeln bestimmt. Die Art und Weise der Anpassung 66 kann von den Präferenzen des Benutzers abhängen. Der Benutzer kann beispielsweise den Wunsch haben, dass die Musterzelle selbst gedehnt oder geschrumpft werden soll, so dass sich eine ganzzahlige Anzahl von Musterzellen entlang jeder Seite einpasst. 9A und 9B zeigen ein Beispiel für diese Situation. 9A stellt einen Pfad 248 dar, um welchen die in 7 gezeigte Musterzelle platziert werden soll. Da die Breite des Pfades 248 geringfügig größer ist als die Breite von drei aneinander grenzenden Musterzellen, wird die Breite der (drei) Musterzellen, die entlang der Seiten des Pfades 248 entsprechend der Breite platziert werden sollen, geringfügig reduziert, so dass sich drei der Musterzellen genau entlang der Breite des Pfades 248 einpassen. Bei diesem Beispiel passt sich auch die Breite der drei aneinander grenzenden Zellmuster genau entlang der Höhe des Pfades 248 ein, so dass für die der Höhe entsprechenden Seiten des Pfades 248 keine Anpassung erforderlich wäre. 9B stellt ein Muster 250 dar, das nachfolgend unter Verwendung des Pfades 248, der angepassten Musterzelle und der nicht angepassten Musterzelle entsteht. Obwohl es visuell nicht offensichtlich ist, ist die Breite der Musterzellen, die entlang der der Breite entsprechenden Seiten des Pfades 248 platziert sind, im Vergleich zu ihrer vorgegebenen Breite (7) geringfügig reduziert worden.
  • Alternativ kann der Benutzer den Wunsch haben, dass der Pfad angepasst werden soll, da kleine Veränderungen seiner Größe nicht von Bedeutung sind. 9C und 9D stellen ein Beispiel für diese Situation dar. Hier sind die Höhe und Breite eines ursprünglichen Pfades 252 geringfügig vergrößert, so dass sich drei aneinander grenzende Musterzellen genau entlang der Seiten einpassen, wodurch ein vergrößerter Pfad 254 entstanden ist. 9B stellt ein Muster 256 dar, das nachfolgend unter Verwendung des vergrößerten Pfades 254 und der angepassten Musterzellen entstanden ist.
  • Im Allgemeinen ist die Auswahl der obigen Alternativen von den Wünschen des Benutzers und dem speziellen Typ der verwendeten Musterzelle abhängig.
  • Es wird erneut auf 4A Bezug genommen; es werden dann Koordinatenpunkte für alle Kurven in der Musterzelle identifiziert 68. Bei diesem zweiten Ausführungsbeispiel der Erfindung wird angenommen, dass die grafische Platzierungstechnik 58 Teil eines Zeichen-Anwendungsprogramms ist, und dass das Zeichen-Anwendungsprogramm vorzugsweise Kurven verwendet, um die Grafik der Zeichnung zu definieren. Folglich wird die Musterzelle aus Kurven und Attributen, die Kurven zugeordnet werden, gebildet. Beispiele, die diesen Annahmen folgen, sind die Zeichen-Anwendungsprogramme, die man als Adobe Illustrator® von Adobe Systems, Inc., FreehandTM von Macromedia, Inc. und CanvasTM von Deneba Systems, Inc. kennt.
  • Als nächstes wird eine Seite des Pfades ausgewählt 70. Dann wird die Musterzelle auf der ausgewählten Seite platziert 72, indem jede Kurve in der Musterzelle auf den Pfad transformiert wird. Die Transformation der Kurven bewirkt die Transformation der Koordinatenpunkte für die Kurven in der Musterzelle. Weitere Details zur Platzierung 72 der Musterzelle entlang des Pfades werden nachstehend unter Bezugnahme auf 5 detailliert diskutiert.
  • Als nächstes wird eine Entscheidung 74 darüber getroffen, ob noch mehr Musterzellen auf der ausgewählten Seite zu platzieren sind. Wenn noch mehr Musterzellen auf der ausgewählten Seite zu platzieren sind, dann kehrt die Verarbeitung zu Wiederholungsblock 72 und den nachfolgenden Blöcken zurück. wenn jedoch der Entscheidungsblock 74 bestimmt, dass keine weiteren Musterzellen auf der ausgewählten Seite zu platzieren sind, dann bestimmt eine Entscheidung 76, ob weitere Seiten zu verarbeiten sind. Wenn weitere Seiten zu verarbeiten sind, wird eine weitere Seite für die Verarbeitung ausgewählt 78. Nach Block 78 kehrt die Platzierungstechnik 58 für grafische Muster zu dem Wiederholungsblock 72 und den nachfolgenden Blöcken zurück.
  • Wenn jedoch der Entscheidungsblock 76 bestimmt, dass keine weiteren Seiten zu verarbeiten sind, wird eine Ecke innerhalb des Pfades ausgewählt 80. Eine Entscheidung 82 bestimmt dann, ob die Musterzelle für die ausgewählte Ecke bearbeitet werden muss. Wenn die Musterzelle für die Ecke bearbeitet werden muss, dann wird die Musterzelle für die Ecke bearbeitet 84: und zwar wird die Musterzelle für die Ecke durch die Bearbeitung geschrumpft, gedehnt oder gebogen. Die Bearbeitung kann auch die Drehung der Zelle erforderlich machen, damit sie an die Ecke passt. Weitere Details über die Bearbeitung der Musterzelle zur Einpassung in die Ecke werden nachstehend unter Bezugnahme auf 6A6C beschrieben. Wenn nach Block 84 die Musterzelle nicht für die Ecke bearbeitet werden muss, oder wenn nach Entscheidungsblock 82 die Musterzelle nicht für die Ecke bearbeitet werden muss, wird die Musterzelle an der Ecke platziert 86. Hier wird die Musterzelle (nach der Bearbeitung, falls sie erfolgt) an der Ecke platziert 86, indem jede Kurve in der Musterzelle (nach der Bearbeitung, falls sie erfolgt) auf den Pfad transfor miert wird. Die Transformation der Kurven in der Musterzelle bewirkt die Transformation der Koordinatenpunkte für die Kurven auf den Pfad.
  • Als nächstes bestimmt eine Entscheidung 88, ob weitere Ecken zu verarbeiten sind. Wenn weitere Ecken zu verarbeiten sind, wird eine weitere Ecke ausgewählt 90. Nach Block 90 kehrt die Platzierungstechnik 58 für grafische Muster zu dem Wiederholungsblock 82 und den nachfolgenden Blöcken zurück. Wenn jedoch der Entscheidungsblock 88 bestimmt, dass keine weiteren Ecken zu verarbeiten sind, ist die Platzierungstechnik 58 für grafische Muster abgeschlossen und endet.
  • 5 ist ein Flussdiagramm einer Musterzellenplatzierungsverarbeitung 92 gemäß einem Ausführungsbeispiel der Erfindung. Die Musterzellenplatzierungsverarbeitung 92 entspricht den Operationen, die von dem Block 72 in 4A ausgeführt werden.
  • Die Musterzellenplatzierungsverarbeitung 92 erhält 94 einen ersten Koordinatenpunkt (h, v) für eine Kurve in der Musterzelle. Als nächstes wird eine horizontale Position für den ersten Koordinatenpunkt identifiziert 96, indem man dem Pfad um einen Betrag entsprechend der horizontalen Koordinate (h) relativ zur Startlage des Musters auf dem Pfad folgt. Dann wird eine vertikale Position für den ersten Koordinatenpunkt identifiziert 98, indem man einer Linie senkrecht zum Pfad bei der horizontalen Position um einen Betrag entsprechend der vertikalen Koordinate (v) folgt. Im Ergebnis der Identifizierungsoperationen 96 und 98 transformiert die Musterzellenplatzierungsverarbeitung 92 effektiv den ersten Koordinatenpunkt für eine Kurve der grafischen Musterzelle auf den Pfad (für einen einzelnen Fall bzw. eine einzelne Instanz der Musterzelle).
  • Als nächstes bestimmt eine Entscheidung 100, ob weitere Koordinatenpunkte für die Kurve zu platzieren sind. Wenn weitere Koordinatenpunkte für die Kurve zu platzieren sind, wird der nächste Koordinatenpunkt für die Kurve erhalten 102. Nach Block 102 kehrt die Musterzellenplatzierungsverarbeitung 92 zu Wiederholungsblock 96 und den nachfolgenden Blöcken zurück. Wenn jedoch der Entscheidungsblock 100 bestimmt, dass keine weiteren Koordinatenpunkte für die Kurve zu platzieren sind, wird die Genauigkeit der platzierten Kurve verifiziert 104.
  • Die Verifizierung der Genauigkeit ist erforderlich, um sicherzustellen, dass die Transformation der Koordinatenpunkte nicht zu Ungenauigkeiten geführt hat. Folglich wird die transformierte Linie, die von den transformierten Koordinatenpunkten erzeugt wurde, mit einer Linie verglichen, die durch stückweises Transformieren kleiner linearer Segmente der Kurve erzeugt werden würde. Vorzugsweise wird die Verifizierung 104 der Genauigkeit der platzierten Kurve ausgeführt, indem einige Punkte entlang der Kurve ausgewählt werden und diese Punkte auf eine ähnliche Weise wie die Koordinatenpunkte auf den Pfad transformiert werden. Die Positionsdifferenz zwischen diesen platzierten Punkten und der transformierten Kurve wird bestimmt. Dann wird eine Bewertung der Genauigkeit der platzierten Kurve basierend auf diesen Positionsdifferenzen vorgenommen. Wenn die Positionsdifferenzen einen Schwellbetrag überschreiten, dann wird bestimmt, dass die Genauigkeit der platzierten Kurve unzureichend ist. Vorzugsweise wird, wenn die Genauigkeit unzureichend ist, die platzierte Kurve hälftig geteilt (in zwei Kurven) und die Platzierungsverarbeitung wird für die erste der Kurven erneut ausgeführt. Wenn dann Block 104 erneut bestimmt, ob die Genauigkeit der platzierten Kurve ausreichend ist: Wenn die Genauigkeit immer noch nicht ausreichend ist, würde die Kurve erneut in zwei Kurven geteilt. Dieser sich ständig wiederholende Prozess würde bis zu einer bestimmten maximalen Anzahl von Wiederholungen fortgesetzt, wobei die Platzierungsverarbeitung bei Erreichen der ausreichenden Genauigkeit die Entscheidung zur Beendigung treffen würde.
  • Als nächstes bestimmt eine Entscheidung 106, ob weitere Kurven in der Musterzelle zu verarbeiten sind. Wenn weitere Kurven in der Musterzelle zu verarbeiten sind, wird die erste Koordinate für die nächste Kurve erhalten 108 und dann kehrt die Verarbeitung zu Wiederholungsblock 96 und den nachfolgenden Blöcken zurück. Wenn jedoch keine weiteren Kurven in der Musterzelle zu verarbeiten sind, veranlasst der Entscheidungsblock 106, dass die Musterzellenplatzierungsverarbeitung 92 abschließt und beendet.
  • Allgemein ausgedrückt, erfordert die Platzierung der Musterzellen entlang einer Seite eines Pfades, dass die Musterzelle in Übereinstimmung mit der Krümmung des Pfades an der Position, an der die Musterzelle platziert werden soll, gebogen wird (d.h. gedehnt und/oder geschrumpft). Außerdem kann es auch erforderlich sein, dass die Musterzelle in die ordnungsgemäße Ausrichtung zum Pfad gedreht wird, und zwar dann, wenn die Ausführung der Musterzelle nicht ganz symmetrisch ist. Die Platzierung der Musterzellen durch Transformieren der Kurven ist die bevorzugte Technik, wenn die Muster durch Kurven definiert werden. Fachleute sollten jedoch erkennen, dass auch andere Techniken für das Biegen und Drehen der Musterzelle verwendet werden können.
  • 10A und 10B stellen ein Beispiel für das Platzieren der Musterzelle um einen elliptischen Pfad 258 herum dar. In 10A werden repräsentative platzierte Musterzellen 260, 262, 264 und 266 dargestellt. Man beachte, dass jede der platzierten Musterzellen 260, 262, 264 und 266 derart gedreht wird, dass die Musterzelle ordnungsgemäß gedreht ist. Bei diesem Beispiel erfolgt die Drehung derart, dass die Unterseite der ursprünglichen Musterzelle 200 (7) der Innenseite des Pfades 258 gegenüberliegt. Man beachte ebenfalls, dass jede der platzierten Musterzellen 260, 262, 264 und 266 in Übereinstimmung mit der Krümmung des Pfades 258 an der Position, an der Musterzelle platziert werden soll, gebogen ist. Hier zeigt der Vergleich der ursprüngli chen Musterzelle 200 (7) mit den platzierten Musterzellen 260, 262, 264 und 266 an, dass (i) die Unterseite der ursprünglichen Musterzelle 200 gestaucht bzw. geschrumpft worden ist, dass (ii) die Oberseite gedehnt worden ist, und dass (iii) die platzierten Musterzellen die Krümmung des Pfades 258 aufweisen. 10B stellt ein Muster 268 dar, das schließlich entstanden ist, nachdem alle Musterzellen automatisch platziert worden sind.
  • 6A ist ein Flussdiagramm der Eckenplatzierungsverarbeitung 110 gemäß einem Ausführungsbeispiel der Erfindung. Die Eckenplatzierungsverarbeitung 110 beginnt mit einer Entscheidung 112, die bestimmt, ob die Ecke nach links dreht. Wenn die Ecke nach links dreht, wird das innere Eckenformat 202 (7) an der Ecke platziert 114. Wenn jedoch festgestellt wird, dass die Ecke nicht nach links dreht (sondern stattdessen nach rechts dreht), dann wird das äußere Eckenformat 204 (7) an der Ecke platziert 116. Beispielweise ist für den in 8 gezeigten Beispielpfad 208 – beginnend bei dem am weitesten links befindlichen Teil des Pfades 208 – die erste Ecke 226 eine Drehung nach links, die zweite Ecke 228 ist eine Drehung nach rechts und die dritte Ecke 230 ist eine Drehung nach rechts. Nach jedem der Blöcke 114 oder 116 ist die Eckenplatzierungsverarbeitung 110 für die Ecke abgeschlossen. Wenn der Pfad weitere Ecken aufweist, dann wird die Eckenplatzierungsverarbeitung 110 für jede dieser Ecken wiederholt.
  • 6B ist ein Flussdiagramm der Eckenbearbeitungsverarbeitung 118 gemäß einem Ausführungsbeispiel der Erfindung. Wenn das entsprechende Eckenformat der Musterzelle an einer Ecke platziert wird, wie in den Blöcken 114 und 116 von 6A gezeigt, wird die Eckenbearbeitungsverarbeitung 118 aufgerufen.
  • Die Eckenbearbeitungsverarbeitung 118 misst zuerst 120 den Winkel des Pfades an der Ecke. Dann bestimmt eine Entscheidung 122, ob der gemessene Winkel gleich 90° ist. Wenn der Winkel 90° beträgt (d.h. eine rechtwinklige Ecke), wird das Eckenformat der Musterzelle an der Ecke des Pfades mit der ordnungsgemäßen Drehung platziert 124. Hier wird, da die Ecke rechtwinklig ist, das vorher ausgewählte (6A) Eckenformat einfach an der Ecke platziert, nachdem es für die Ausrichtung der Ecke gedreht worden ist. Die Platzierung des Eckenformats der Musterzelle an der Ecke wird vorzugsweise auf dieselbe Weise ausgeführt, wie sie oben diskutiert wurde., bei welcher die Musterzellen entlang der Seiten des Pfades platziert wurden.
  • Wenn jedoch festgestellt wird, dass der Winkel nicht 90° beträgt, dann wird das Eckenformat der Musterzelle verzerrt 126, damit es dem Winkel des Pfades an der Ecke entspricht, und wird dann an der Ecke platziert. Die Verzerrung des Eckenformats bewirkt, dass das Eckenformat verzerrt wird, damit es sich an der Ecke des Pfades auf eine grafisch ansprechende Weise einpasst.
  • 6C ist ein Flussdiagramm der Verzerrungsverarbeitung 128 für das Eckenformat gemäß einem Ausführungsbeispiel der Erfindung. Die Verzerrungsverarbeitung 128 ist vorzugsweise die Verarbeitung, die von dem Block 126 in 6B ausgeführt wird.
  • Die Verzerrungsverarbeitung 128 teilt zu Beginn 130 das Eckenformat der Musterzelle entlang einer Diagonale durch den Mittelpunkt des entsprechenden Eckenformats der Musterzelle in eine obere und untere Hälfte. Als nächstes wird die obere Hälfte verzerrt 132 und dann an der Ecke platziert. Dann wird die untere Hälfte verzerrt 134 und an der Ecke platziert. Nach Block 134 ist die Verzerrungsverarbeitung 128 abgeschlossen und endet. Die Verzerrungsverarbeitung 128 wird ferner mit Beispielen, die in den 11A, 11B, 12A und 12B dargestellt sind, erläutert.
  • 11A stellt ein Beispiel für die Teilung 130 einer Eckenmusterzelle 270 dar, die an einer Ecke eines Pfades 272 platziert werden soll. Die Eckenmusterzelle 270 zeigt nur die Zellenumrandungen, nicht das Muster selbst. Das Muster innerhalb der Zellenumrandungen kann jedes beliebige Muster sein. Bei diesem Beispiel wird die Eckenmusterzelle 270 durch eine Diagonale 274 halbiert, damit eine obere Hälfte 276 und eine untere Hälfte 278 entsteht.
  • 11B stellt ein Beispiel für die Verzerrung 132 der Eckenmusterzelle dar. Wenn die in 11A gezeigte Eckenmusterzelle 270 auf einem Pfad 280 platziert wird, der einen Winkel von weniger als 90° hat, wird die Eckenmusterzelle 270 zu der in 11B gezeigten Eckenmusterzelle 282 verzerrt. Man beachte, dass sowohl eine obere Hälfte 284 als auch eine untere Hälfte 286 der Eckenmusterzelle 282 für die Einpassung an der Ecke des Pfades 280 verzerrt 132, 134 werden.
  • 12A und 12B stellen ein Beispiel für die Verzerrung 132 einer oberen Hälfte 288 einer Eckenmusterzelle 290 dar. Hier soll die Eckenmusterzelle 290 an einer Ecke eines Pfades 292 platziert werden. Da jedoch der Winkel der Ecke kleiner als 90° ist, muss die Eckenmusterzelle 290 verzerrt werden 132, damit sie an die Ecke passt. Die Verzerrung 132 bei diesem Beispiel erzeugt eine verzerrte obere Hälfte 294 einer verzerrten Musterzelle 296. Im Einzelnen wird die verzerrte obere Hälfte 294 durch effektives Gehren der oberen Hälfte 288 der Eckenmusterzelle 290 erzeugt. Mit anderen Worten, für eine gegebene Ecke wird die verzerrte Musterzelle 296 aus der Eckenmusterzelle 290 gebildet.
  • Vorzugsweise verändert die Verzerrung 132 – wie in 12A und 12B gezeigt – jeden Koordinatenpunkt P (h, v) in der Eckenmusterzelle 290 zu einem verzerrten Koordinatenpunkt P' (h', v') in der verzerrten Musterzelle 296. Für die obere Hälfte 294 werden die Koordinaten h, v in Bezug auf die obere linke Ecke der oberen Hälfte 294 (oder für die untere Hälfte in Bezug auf die untere rechte Ecke der unteren Hälfte) gemessen. Die Verzerrungstechnik bestimmt h', v', bei h, v und Eckenwinkel α: h' = h/tan (α/2) v' = v
  • Die Verzerrung 132 bei diesem Beispiel verändert die verzerrte obere Hälfte 294 von einer Dreieckform der oberen Hälfte 288 zu einer „Keil"-Form, damit die Ecke mit einem korrekt gegehrten Eckenzellenmuster gefüllt wird. Die Verzerrung 132 erzeugt auf ähnliche Weise die verzerrte untere Hälfte.
  • 13A und 13B stellen ein Beispiel der Platzierung der Musterzelle an den Ecken eines fünfeckigen Pfades 298 dar. In 13A werden die fünf Eckenmusterzellen 300, 302, 304, 306 und 308 auf dem fünfeckigen Pfad 298 unter Verwendung der oben unter Bezugnahme auf 12A und 12B im Detail diskutierten Technik einzeln verzerrt. Wenn die Seiten und Ecken auf dem Pfad 298 automatisch platziert worden sind, entsteht ein Muster 310, wie in 13B dargestellt. Man beachte, dass die an den Ecken platzierten Musterzellen ordnungsgemäfl in die an den Seiten platzierten Musterzellen übergehen.
  • Die zahlreichen Merkmale und Vorteile der vorliegenden Erfindung werden aus der schriftlich dargelegten Beschreibung deutlich und somit ist beabsichtigt, dass die beigefügten Ansprüche alle derartigen Merkmale und Vorteile der Erfindung abdecken. Da für Fachleute zahlreiche Modifikationen und Veränderungen problemlos erkennbar sind, soll die vorliegende Erfindung ferner nicht auf die genauen Konstruktionen und Funktionsweisen beschränkt werden, die veranschaulicht und beschrieben wurden. Folglich können alle geeigneten Modifikationen und Äquivalente als unter dem Schutzbereich der Erfindung fallend betrachtet werden, welcher von den beigefügten Ansprüchen definiert wird.

Claims (27)

  1. Ein Computer-implementiertes Verfahren zum Plazieren eines grafischen Musters (260) entlang eines Pfades (258), wobei das Verfahren umfasst: (a) Bereitstellen eines beliebig geformten Pfades (258) auf einem elektronischen Dokument an den Computer; (b) Bereitstellen eines ausgewählten beliebig geformten grafischen Musters (260) an den Computer, wobei eine Mehrzahl von Wiederholungen des Musters (260, 262, 264, 266) wiederholt und zusammenhängend entlang des Pfades (258) platziert werden können; (c) wobei der Computer die Größe wenigstens eines der mehreren grafischen Muster (260, 262, 264, 266) und/oder die Länge des Pfades (258) derart einstellt, dass der Computer eine ganze Anzahl zusammenhängender grafischer Muster platzieren kann, die sich exakt entlang des Pfades (258) einpassen; (d) wobei der Computer eine selektive geometrische Modifikation an wenigstens einem ausgewählten Muster (264) der mehreren grafischen Muster (260, 262, 264, 266) derart ausführt, dass es der Form des Pfades (258) folgt; und (e) wobei der Computer die mehreren grafischen Muster (260, 262, 264, 266) einschließlich des Musters mit der selektiven Modifikation zusammenhängend entlang des Pfades (258) platziert.
  2. Ein Verfahren nach Anspruch 1, wobei das Plazieren (e) umfasst: (e1) Identifizieren von Koordinatenpunkten für sämtliche Kurven innerhalb des grafischen Musters (266); und (e2) Transformieren jeder der Kurven in dem grafischen Muster in den Pfad (258) unter Verwendung der Koordinatenpunkte für die Kurve.
  3. Ein Verfahren nach Anspruch 2, wobei das Transformieren (e2) jede der Kurven so krümmt, wie es erforderlich ist, um dem Pfad (258) zu folgen.
  4. Ein Verfahren nach Anspruch 3, wobei das Transformieren (e2) umfasst: Positionieren jedes der Koordinatenpunkte für jede der Kurven in dem grafischen Muster (260) zu dem Pfad (258) durch Abmessen in einem horizontalen Abstand entlang des Pfades (258) bis zu einem ersten Punkt und anschließendes Abmessen in einem vertikalen Abstand entlang einer zu dem Pfad (258) senkrechten Linie ausgehend von dem ersten Punkt zu einem zweiten Punkt, wobei der zweite Punkt ein transformierter Koordinatenpunkt ist.
  5. Ein Verfahren nach Anspruch 3, wobei das grafische Muster (260) ein Anfangsgröße aufweist und der Pfad (258) eine Anfangsgröße aufweist, und wobei das Plazieren (e) ein Ändern der Anfangsgröße des Pfades (258) und/oder des grafischen Musters (260) derart umfasst, dass mehrere Instanzen des grafischen Musters sich exakt entlang des Pfades (258) einpassen.
  6. Ein Verfahren nach Anspruch 1, wobei das Plazieren (e) umfasst: Einstellen der Größe des grafischen Musters (260) und/oder des Pfades derart, dass sich eine Mehrzahl von Musterzellen exakt entlang wenigstens eines Abschnitts des Pfades (258) einpasst.
  7. Ein Verfahren nach Anspruch 6, wobei der Pfad Seiten (212, 214) und Ecken (216) enthält und wobei der Abschnitt des Pfades eine Seite des Pfades ist.
  8. Ein Verfahren nach Anspruch 6, wobei der Pfad (258) eine Orientierung und eine Krümmung an jeder Position entlang des Pfades aufweist, und wobei das Verfahren ferner umfasst: (f) Modifizieren des grafischen Musters für jede Instanz zu der Orientierung und Krümmung einer Position entlang des Pfades, an der die Instanz platziert werden soll, vor dem Plazieren (e).
  9. Ein Verfahren nach Anspruch 8, wobei das Modifizieren (f) das grafische Muster (260) in die Orientierung der Position entlang des Pfades (258), an der das grafische Muster platziert werden soll, dreht und das grafische Muster bis zu der Krümmung der Position entlang des Pfades (258), an der das grafische Muster (260) platziert werden soll, krümmt.
  10. Ein Verfahren nach Anspruch 1, wobei das elektronische Dokument ein elektronischen Bilddokument ist.
  11. Ein Verfahren nach Anspruch 10, wobei das elektronische Bilddokument und der darauf befindliche Pfad von einem computer-betriebenen Zeichenanwendungsprogramm erzeugt werden.
  12. Das Computer-implementierte Verfahren nach Anspruch 1, wobei: der Pfad (258) in Eckbereiche (216) und Seitenbereiche (212, 214) unterteilt wird; das Einstellen im Schritt (c) für ein in einem Seitenbereich (212, 214) zu platzierendes grafisches Muster ausgeführt wird; und die Modifikation im Schritt (d) ausgeführt wird, um das ausgewählte Muster an einen Eckbereich (282) des Pfades anzupassen.
  13. Ein Verfahren nach Anspruch 12, wobei das Plazieren (e) umfasst (e1) Identifizieren von Koordinatenpunkten für sämtliche Kurven in dem grafischen Muster (260); und (e2) Transformieren jeder der Kurven in dem grafischen Muster (260) in den Pfad (258) unter Verwendung der für die Kurve in (e1) identifizierten Koordinatenpunkte.
  14. Ein Verfahren nach Anspruch 13, wobei das Transformieren (e2) jede der Kurven so krümmt, wie es erforderlich ist, um dem Pfad (258) zu folgen.
  15. Ein Verfahren nach Anspruch 12, wobei der Pfad (258) eine Orientierung und eine Krümmung an jedem Punkt entlang des Pfades (258) aufweist, und wobei das Verfahren, vor dem Plazieren (e), ferner (f) ein Modifizieren des grafischen Musters (260) bezüglich der Orientierung und Krümmung einer Position entlang des Pfades (258), an der das grafische Muster (260) platziert werden soll, umfasst.
  16. Ein Verfahren nach Anspruch 15, wobei das Modifizieren (f) das grafische Muster (260) in die Orientierung der Position entlang des Pfades (258), an der das grafische Muster platziert werden soll, dreht und das grafische Muster bis zu der Krümmung der Position entlang des Pfades (258), an der das grafische Muster (260) platziert werden soll, krümmt .
  17. Ein Verfahren nach Anspruch 12, wobei der Pfad (258) eine Orientierung, eine Krümmung und einen Winkel an jedem der Eckbereiche (216) entlang des Pfades (258) aufweist, und wobei das Modifizieren (d) das grafische Muster (260) in die Orientierung des Eckbereichs, wo das grafische Muster (260) platziert werden soll, dreht und das grafische Muster (260) bis zu der Krümmung und dem Winkel des Eckbereichs (216), wo das grafische Muster (260) platziert werden soll, krümmt .
  18. Ein Verfahren nach Anspruch 17, wobei das Krümmen des grafischen Musters (260) bis zu der Krümmung und dem Winkel des Eckbereichs (216) das grafische Muster (260) derart verzerrt, dass es in den Eckbereich (216) passt.
  19. Ein Verfahren nach Anspruch 18, wobei ein vorgegebenes Eckformat des grafischen Musters (260) an jedem der Eckbereiche (216) platziert wird, nachdem es so verzerrt worden ist, dass es sich in den bestimmten Eckbereich einpasst, und wobei die Verzerrung des vorgegebenen Eckformats ein Unterteilen des vorgegebenen Eckformats in Hälften unter Verwendung einer Diagonale durch den Mittelpunkt des vorgegebenen Eckformats und ein anschließendes Verzerren jeder der sich ergebenden Hälften einschließt.
  20. Ein Computer-lesbares Medium, enthaltend Programmbefehle zum Plazieren eines grafischen Musters (260) entlang eines Pfades (258) auf einem elektronischen Dokument, wobei das Computer-lesbare Medium aufweist: (a) Computer-lesbare Codeeinrichtungen zum Bereitstellen eines willkürlich geformten Pfades (258) auf einem elektronischen Dokument an den Computer; (b) Computer-lesbare Codeeinrichtungen zum Bereitstellen eines ausgewählten beliebig geformten grafischen Musters (260) an den Computer, wobei eine Mehrzahl von Wiederholungen des Musters (260, 262, 264, 266) wiederholt und zusammenhängend entlang des Pfades (258) platziert werden können; (c) computer-lesbare Codeeinrichtungen, die es dem Computer ermöglichen, die Größe wenigstens eines der mehreren grafischen Muster (260, 262, 264, 266) und/oder die Länge des Pfades (258) derart einzustellen, dass der Computer eine ganze Anzahl zusammenhängender grafischer Muster (260, 262, 264, 266) platzieren kann, die sich exakt entlang des Pfades (258) einpassen; (d) Computer-lesbare Codeeinrichtungen, die es dem Computer ermöglichen, eine selektive geometrische Modifikation an wenigstens einem ausgewählten Muster (264) der Mehrzahl grafischer Muster derart vorzunehmen, dass es der Form des Pfades (258) folgt; und (e) Computer-lesbare Codeeinrichtungen, die es dem Computer ermöglichen, die mehreren grafischen Muster (260, 262, 264, 266) einschließlich des die selektive Modifikation aufweisenden Musters zusammenhängend entlang des Pfades (258) zu platzieren.
  21. Ein Computer-lesbares Medium nach Anspruch 20, wobei die Computer-Codeeinrichtungen zum Plazieren umfassen: Computer-lesbare Codeeinrichtungen zum Identifizieren von Koordinatenpunkten für sämtliche Kurven innerhalb des grafischen Musters (260); und Computer-lesbare Codeeinrichtungen zum Transformieren jeder der Kurven in dem grafischen Muster (260) bezüglich des Pfades (258) unter Verwendung der Koordinatenpunkte für die Kurve.
  22. Ein computer-lesbares Medium nach Anspruch 21, wobei die Computer-lesbaren Codeeinrichtungen zum Transformieren jede der Kurve so krümmen, wie es erforderlich ist, um dem Pfad (258) zu folgen.
  23. Ein computer-lesbares Medium nach Anspruch 22, wobei die Computer-lesbaren Codeeinrichtungen zum Transformieren aufweisen: Computer-lesbare Codeeinrichtungen zum Positionieren jedes der Koordinatenpunkte für jede der Kurven in dem grafischen Muster (260) zu dem Pfad (258) durch Abmessen in einem horizontalen Abstand entlang des Pfades (258) bis zu einem ersten Punkt und anschließendes Abmessen in einem vertikalen Abstand entlang einer zu dem Pfad senkrechten Linie beginnend bei dem ersten Punkt bis zu einem zweiten Punkt, wobei der zweite Punkt ein transformierter Koordinatenpunkt ist.
  24. Ein Computer-lesbares Medium nach Anspruch 22, wobei das grafische Muster (260) eine Anfangsgröße aufweist und der Pfad eine Anfangsgröße aufweist, und wobei die Computer-Codeeinrichtungen zum Plazieren ferner umfassen: Computer-lesbare Codeeinrichtungen zum Ändern der Anfangsgröße des Pfades (258) und/oder des grafischen Musters (260) derart, dass mehrere Instanzen des grafischen Musters sich exakt entlang des Pfades (258) einpassen.
  25. Ein Computer-lesbares Medium nach Anspruch 20, wobei die Computer-Codeeinrichtungen zum Plazieren umfassen: Computer-lesbare Codeeinrichtungen zum Einstellen der Größe des grafischen Musters (260) und/oder des Pfades (258) derart, dass eine Mehrzahl von Musterzellen sich entlang zumindest eines Abschnitts des Pfades (258) einpasst.
  26. Ein Computer-lesbares Medium nach Anspruch 25, wobei der Pfad eine Orientierung und eine Krümmung an jeder Position entlang des Pfades aufweist, und wobei das Computer-lesbare Medium ferner aufweist: Computer-Codeeinrichtungen zum Modifizieren des grafischen Musters (260) für jede Instanz in die Orientierung und Krümmung einer Position entlang des Pfades (258), wo die Instanz platziert werden soll.
  27. Ein computer-lesbares Medium nach Anspruch 26, wobei die Computer-Codeeinrichtungen zum Modifizieren das grafische Muster (260) in die Orientierung der Position entlang des Pfades (258), wo das grafische Muster (260) platziert werden soll, drehen und das grafische Muster bis zu der Kriümmung der Position entlang des Pfades (258), an der das grafische Muster (260) platziert werden soll, krümmen.
DE69629173T 1995-12-28 1996-12-20 Automatisches Plazieren eines graphischen Musters Expired - Lifetime DE69629173T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US580472 1984-02-15
US08/580,472 US5831632A (en) 1995-12-28 1995-12-28 Automatic graphical pattern placement

Publications (2)

Publication Number Publication Date
DE69629173D1 DE69629173D1 (de) 2003-08-28
DE69629173T2 true DE69629173T2 (de) 2004-04-22

Family

ID=24321245

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69629173T Expired - Lifetime DE69629173T2 (de) 1995-12-28 1996-12-20 Automatisches Plazieren eines graphischen Musters

Country Status (5)

Country Link
US (1) US5831632A (de)
EP (1) EP0782103B1 (de)
JP (1) JP3976363B2 (de)
CA (1) CA2193769C (de)
DE (1) DE69629173T2 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6310622B1 (en) * 1998-04-07 2001-10-30 Adobe Systems Incorporated Automatic graphical pattern placement and adjustment
US6522328B1 (en) * 1998-04-07 2003-02-18 Adobe Systems Incorporated Application of a graphical pattern to a path
US6323879B1 (en) * 1998-05-14 2001-11-27 Autodesk, Inc. Method and system for determining the spacing of objects
US6201551B1 (en) * 1998-09-30 2001-03-13 Xerox Corporation PDL operator overloading for line width management
US6246419B1 (en) * 1998-09-30 2001-06-12 Xerox Corporation PDL operator overloading for line width management
US6380951B1 (en) 1999-10-01 2002-04-30 Global Graphics Software Limited Prepress workflow method and program
US6624908B1 (en) 1999-10-01 2003-09-23 Global Graphics Software Limited Method for arranging a prepress workflow
US6483524B1 (en) 1999-10-01 2002-11-19 Global Graphics Software Limited Prepress workflow method using raster image processor
US6784886B1 (en) * 2000-08-28 2004-08-31 Adobe Systems Incorporated Method for apparatus for associating objects with a spline by value
US6970169B1 (en) 2002-09-24 2005-11-29 Adobe Systems Incorporated Digitally synthesizing seamless texture having random variations
US20080143725A1 (en) 2004-02-09 2008-06-19 Smart Technologies Inc. Connected and overlapped shapes enhancements
US20040221265A1 (en) * 2003-02-07 2004-11-04 Smart Technologies Inc. Connected and overlapped shapes enhancements
US7028260B1 (en) 2003-03-14 2006-04-11 Adobe Systems Incorporated Text layout in path corner regions
JP4507790B2 (ja) * 2003-12-24 2010-07-21 セイコーエプソン株式会社 レイアウト要素の配置装置、配置プログラム、及び電子機器
JP4356593B2 (ja) * 2004-02-23 2009-11-04 セイコーエプソン株式会社 レイアウト要素の配置装置、配置方法、配置プログラム。
US7710423B2 (en) * 2005-03-21 2010-05-04 Microsoft Corproation Automatic layout of items along an embedded one-manifold path
US7495670B1 (en) 2005-04-15 2009-02-24 Johnnie Manzari Shapes comprising repeated graphic elements
US7589730B1 (en) 2005-05-20 2009-09-15 Adobe Systems Incorporated System and method for drawing a dashed path
US20100080491A1 (en) * 2008-09-26 2010-04-01 Nintendo Co., Ltd. Storage medium storing image processing program for implementing controlled image display according to input coordinate, information processing device and method for image processing
US8584012B1 (en) * 2008-10-10 2013-11-12 Adobe Systems Incorporated Methods and systems for displaying text on a path
US8941661B2 (en) 2009-04-14 2015-01-27 Adobe Systems Incorporated Automatic corner generation
JP5907780B2 (ja) * 2012-04-02 2016-04-26 富士フイルム株式会社 超音波診断装置
US10832453B2 (en) * 2017-03-24 2020-11-10 Pti Marketing Technologies Inc. Systems and methods for clipping images
JP6848713B2 (ja) * 2017-06-21 2021-03-24 ブラザー工業株式会社 プログラム及び情報処理端末

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01111276A (ja) * 1987-10-23 1989-04-27 Nippon Sheet Glass Co Ltd ドットパターンの自動作図装置
US5459820A (en) * 1992-09-10 1995-10-17 General Electric Company Method for graphical display of three-dimensional vector fields
US5751293A (en) * 1994-08-24 1998-05-12 Nippon Telegraph And Telephone Corp. Pattern generation method and apparatus for automatic generation of continuous tile patterns along any arbitrary side

Also Published As

Publication number Publication date
EP0782103A3 (de) 1997-10-01
EP0782103A2 (de) 1997-07-02
DE69629173D1 (de) 2003-08-28
US5831632A (en) 1998-11-03
EP0782103B1 (de) 2003-07-23
CA2193769A1 (en) 1997-06-29
JP3976363B2 (ja) 2007-09-19
CA2193769C (en) 2007-02-13
JPH09282479A (ja) 1997-10-31

Similar Documents

Publication Publication Date Title
DE69629173T2 (de) Automatisches Plazieren eines graphischen Musters
DE3806223C2 (de) Verfahren zur Erzeugung von Zeichenmustern
DE69936603T2 (de) Automatisches Bildanordnungsverfahren und -system
DE3436033C2 (de) Ausgabegerät und Verfahren zum Ausgeben von Zeichenmustern
DE69832544T2 (de) Anordnung und Verfahren zur Bildbearbeitung und Medium mit darauf gespeicherten Programmen
DE60036894T2 (de) Erzeugung einer Glyphe
DE4301766C2 (de) Verfahren zum Darstellen eines doppelseitigen, umwendbaren elektronischen Papiers
DE69133362T2 (de) Dokumentenverarbeitungs-verfahren und -gerät, entsprechende Program und Speichereinheit
DE60121388T2 (de) Graphische Anzeigevorrichtung, Vorrichtung zur Anzeige von Zeichen, Anzeigeverfahren, Aufzeichnungsmedium und Programm
DE69434405T2 (de) Verfahren zur Erzeugung eines visuellen Entwurfs
DE69933404T2 (de) System und Verfahren zum gemeinsamen Benutzen von Fonts und Speichermedium für das Programm zum Ausführen des Verfahrens
DE69907287T2 (de) Rechnersysteme
DE3121503C2 (de) Dokumenten-Verarbeitungssystem
DE69826044T2 (de) Vektorkartenplanarisierung und -einfang
DE4014231A1 (de) Verfahren zum bearbeiten der steuerpunkte eines symbolbildes
DE19944504A1 (de) Selbst-Umdimensionierungs-Demonstrationsseite für eine Druckvorrichtung
DE102005050846A1 (de) Perspektiveneditierwerkzeuge für 2-D Bilder
DE10051680A1 (de) Schema zur Darstellung mehrerer Druckauftragsabänderungselemente in einer Drucksoftware-Benutzerschnittstelle
DE19610759A1 (de) Verfahren zum Codieren eines Dokumentes und Verfahren zum Senden eines Dokumentes von einem Sendecomputersystem zu einem Empfangscomputersystem
EP1536377B1 (de) Verfahren zur Veränderung der Abmessungen eines elektronisch gespeicherten Bildes
DE3932024C2 (de) Datenverarbeitungsanlage zur Umwandlung einer Gruppe von Umrißdaten
DE19827017A1 (de) Digitales Fotografie-Bearbeitungssystem
DE4124554C2 (de) Datenumwandlungseinrichtung und Zeichenausgabeeinrichtung
DE3914905C2 (de)
EP1290628B1 (de) Verfahren zum erstellen und ausgeben mindestens einer druckseite

Legal Events

Date Code Title Description
8364 No opposition during term of opposition