Tutorialbeschreibung

Uhr erstellen mit PS unter Zuhilfenahme eines Scriptes

Uhr erstellen mit PS unter Zuhilfenahme eines Scriptes

In diesem Tutorial wird erklärt, wie man sich unter Zuhilfenahme eines Scriptes die Arbeit mit Photoshop wesentlich erleichtern kann. Gezeigt wird das Ganze am Beispiel einer Uhrenskala.



Vorraussetzung:
-PS CS(2) oder PS7 mit Scriptunterstützungsplugin
- Windows
- Texteditor (Notepad reicht)
 
Vorbereitung:
Kopiert folgenden Code in eine neue Textdatei und speichert sie als 'Skala.vbs'
 
Option Explicit
Dim appref, docref, winkel, anzahl, Drehpunkt, i, layer
 
winkel=6                     'Hier den Winkel angeben
anzahl=59                    'Hier die Anzahl der Wiederholungen
Drehpunkt=4               'Punkte siehe Bild
  
Set appref = CreateObject("Photoshop.Application")
If appref.Documents.count=0 Then     
            MsgBox "Es muß ein Dokument in PS geöffnet sein!"
            WScript.Quit
Else
            Set docref=appref.ActiveDocument
End If
 
Set layer=docref.ActiveLayer
 
For i=1 To Anzahl
            layer.duplicate 
            docref.ArtLayers (i).Rotate Winkel*i, Drehpunkt
Next
 
1. neues Dokument in PS erstellen (bei mir 500x500px)
2. Kreis zeichnen
 
Bilder
 
3. neue Ebene
4. waagerechte Linie vom Mittelpunkt des Kreises zeichnen (bei mir 4px)
 
Bilder
 
5. Script editieren und die richtigen Werte für Winkel und Anzahl eingeben (in diesem Fall Winkel=30, Anzahl=11)
6. Script speichern und per Doppelklick starten
7. Hintergrundebenen (Uhr, Kontur etc.) ausblenden
[i]8. mit Shift+Strg+E Sichbare auf eine Ebene reduzieren. Will man Zeiger erstellen, erübrigt sich dieser Schritt) [/i]
 
 
Bilder
 
Je nachdem wie man die waagerechten Striche gezeichnet hat (z.B. per Buntstift), kann es vorkommen, dass sie nicht komplett mittig sind. Dann einfach mit dem Verschiebewerkzeug ('V') nach dem zusammenführen mittig ausrichten. (Die Hilfslinien habt ihr ja)
 
9. Punkt 3 bis 8 wiederholen mit geringerer Linienstärke, Winkel=6, Anzahl=59
 
 
Bilder
 
 
10. Kreisförmige Auswahl aufziehen und bei gedrückter Alt-Taste eine Ebenenmaske für die Stundenskala erstellen
 
 
Bilder
 
 
11. Siehe Pkt.10 für die Minutenskala
 
 
Bilder
 
 
12. Uhr nach Belieben weiterbearbeiten
 
 
 
Bilder
 

Erläuterungen zum Script: (Einsteigertutorials gibts hier und hier)
 
Option Explicit
Dim appref, docref, winkel, anzahl, Drehpunkt, i, layer
 
'Option Explicit' bedeutet, dass alle Variablen deklariert werden müssen. (Geschieht in der nächsten Zeile mit dem Befehl 'Dim') Dies ist zwar unter VB(S) nicht zwingend erforderlich, aber ratsam.
 
winkel=30                'Hier den Winkel angeben
anzahl=11                'Hier die Anzahl der Wiederholungen
Drehpunkt=4           'Zahlen siehe Bild
 
Hier werden den Variablen die Werte zugeordnet. Will man immer was um insgesamt 360° drehen, kann man statt der Anzahl auch die Formel '=360/winkel-1' eingeben. ('-1', weil ja schließlich schon eins gezeichnet ist)
Die Drehpunkte sind definiert:
Bilder
 
Set appref = CreateObject("Photoshop.Application")
Es wird ein Photoshopobjekt erstellt und der Variablen 'appref' zugewiesen.
 
If appref.Documents.count=0 Then
Wenn die Anzahl der geöffneten Dokumente in Photoshop=0 ist, dann
 
            MsgBox "Es muß ein Dokument in PS geöffnet sein!"
            WScript.Quit
Gib eine Meldung aus, dass ein Dokument geöffnet sein muß und beende dann das Script
 
Else
ansonsten
 
            Set docref=appref.ActiveDocument
weise der Variable 'docref' eine Referenz zum im Vordergrund befindlichen Dokument zu.
 
End If
beendet die Bedingung
 
Set layer=docref.ActiveLayer
weist der Variablen layer eine Referenz der aktuell gewählte Ebene zu. Diese muß die mit unserem Strich sein.
 
For i=1 To Anzahl
Führt eine Schleife in Einerschritten von 1 bis Anzahl aus, wobei die Variable 'i' jeweils um 1 erhöht wird . 'Anzahl' haben wir oben den Wert 11 zugewiesen. Man könnte hier statt 'Anzahl' auch diekt 11 schreiben, müsste dann aber bei jeder Änderung diese Stelle suchen und ersetzen.
 
            layer.duplicate
Wir erinnern uns...'layer' hat eine Referenz zur aktuellen Ebene, die durch den Befehl dupliziert wird
 
            docref.ArtLayers (i).Rotate Winkel*i, Drehpunkt
Man kann die einzelnen Ebenen eines Dokuments direkt mit dem 'Artlayer-Object' ansprechen.
Beispiel: 'artlayer(1)' bezeichnet die oberste Ebene. Da 'i' in jedem Schleifendurchgang um 1 erhöht wird, wird, bspw. im 5. Durchgang (i=5), Ebene 5 angesprochen ( artlayer(i) )
'Rotate' sagt, dass die Ebene gedreht werden soll. Der Syntax sieht so aus: 'artlayer().rotate [i]Winkel, Referenzpunkt[/i]'
 
Next
Beginne die Schleife von vorn.
 
 
Ich weiß, ich kann solche Sachen nicht sonderlich gut beschreiben, aber bei Fragen...immer raus damit.
 
Gruß hotschen 

Kommentare
Achtung: Du kannst den Inhalt erst nach dem Login kommentieren.
Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 13.01.2007 - 11:09

wirklich schön gemacht, danke

Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 17.12.2006 - 10:11

Wonderful Tutorial thank you!

Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 16.12.2006 - 01:04

Echt super! Danke, werde es auf alle Fälle mal ausprobieren

Portrait von ag00716
  • 26.11.2006 - 21:36

WoW....geniales tut. Haben proggen in der schule. Ist aber dennoch nicht so einfach. Danke....danke....danke

Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 29.08.2006 - 23:46

hehe schöönes tut. Genial

Portrait von Black_Play0r
  • 11.08.2006 - 12:12

Geiles tut. Natürlich volle Punktzahl

Portrait von dannyt
  • 02.08.2006 - 03:29

das sieht echt cool aus!

das probier ich doch gleich mal aus

Portrait von rebos
  • 28.07.2006 - 19:42

wirklich gut das tut!!! hab gar nicht gewusst dass mans so auch machen kann ^^

Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 25.07.2006 - 09:43

Sehr schönes Tut, muß ich mal ausprobieren.

Portrait von Sampiero
  • 24.07.2006 - 10:44

Hotschen,
ich bedanke mich recht herzlich für Dein freundliches entgegenkommen.
Schönen kühlen Tag noch.
lg.
Sampiero

Portrait von Sampiero
  • 24.07.2006 - 10:07

hotschen,
könntest Du auch das fertige Script zur Verfügung stellen ?
lg
Sampiero

Portrait von hotschen
  • 24.07.2006 - 10:22

Naja, eigentlich steht das komplette Script ja oben. Einfach nur kopieren und speichern.

Aber hier nochmal das fertige Scipt und eine Beispiel-PSD:
http://rapidshare.de/files/26808601/skala.rar.html

(PSD-öffnen und anschliessend das Script per Doppelklick starten)

Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 23.07.2006 - 18:43

Ob das auch was für Anfänger ist ?

Portrait von Tomdonna
  • 22.07.2006 - 18:02

Echt super!
Danke, werde es auf alle Fälle mal ausprobieren

Portrait von Sampiero
  • 21.07.2006 - 08:57

Mann O Mann,was für ein tolles Tutorial und das bei dieser Hitze !
Mein Kopf ist schon vom durchschauen am kochen!
Werde mich voraussichtlich im Herbst daran versuchen.
Volle Punktzahl für Deine Mühe.
lg.
Sampiero

Alternative Portrait
-versteckt-(Autor hat Seite verlassen)
  • 20.07.2006 - 20:36

s9ieht verdammt genial aus...
muss man mal testen... :)

Portrait von hotschen
  • 20.07.2006 - 18:13

Upps...da hat sich der Fehlerteufel eingeschlichen.
In der 2. Zeile muß es natürlich 'Drehpunkt' statt 'Drehupunkt' heißen. Sorry.

Portrait von hotschen
  • 21.07.2006 - 13:22

Fehler wurde korrigiert!

Portrait von Axl79
  • 20.07.2006 - 16:35

Geniales Teil, werde es mal ausprobieren !

Portrait von fkk
fkk
  • 22.03.2009 - 10:30

Super Sache, Script dient auch bei anderen sich mehrfach wiederholenden Sachen !!

x
×
×