CreateLayer(x, y, width, height[, table])
width/height (Breite/Höhe) angegeben
wurde und sie wird an der angegebenen Position x/y angezeigt.
Dieser Befehl wird entweder eine Ebene vom Typ #BRUSH oder
vom Typ #ANIM erstellen. Wenn Sie eine Animationsebene erstellen
möchten, müssen Sie die gewünschte Anzahl der Einzelbilder
im Tag Frames der optionalen Tabelle table übergeben.
Die optionale Tabelle erkennt die folgenden Tags:
FramesCreateLayer() eine Pinselebene
erstellen. Andernfalls wird eine Animationsebene erstellt,
welche die angegebene Anzahl von Einzelbildern enthalten wird.
Der Standardwert ist 1 (was bedeutet, dass CreateLayer() eine
Pinselebene erstellt).
Color
MaskTrue, wenn CreateLayer() eine Maske
an der neuen Ebene anbringen soll. Wenn dies True ist, muss
AlphaChannel False sein. Der Standardwert ist False.
AlphaChannelTrue, wenn CreateLayer() einen Alphakanal
an der neuen Ebene anbringen soll. Wenn dies True ist, muss
Mask False sein. Der Standardwert ist False.
ClearAlphaChannel oder Mask auf True gesetzt wurde. Wenn das der
Fall ist, gibt Clear an, ob die Maske oder der Alphakanal
gelöscht werden sollen (das heißt vollständig transparent) oder
nicht (das heißt undurchsichtig). Der Standardwert ist False, was
bedeutet, dass die neue Maske oder der Alphakanal undurchsichtig
sind.
Darüber hinaus können Sie eine oder mehrere der Standard-Tags zum Zeichnen im optionalen Tabellenargument übergeben. Mit diesen Tags können Sie zum Beispiel die Position der Ebene angeben, einen Namen zuweisen und den Ankerpunkt dieser Ebene ändern. Siehe Standard-Tags zum Zeichnen für Details.
CreateLayer() ist der bevorzugte Weg, um eine leere Ebene zu
erstellen, die Sie später mit dem
Befehl SelectLayer() ändern können. Natürlich
könnte man auch einen leeren Pinsel
mit CreateBrush() erstellen und dann
mit DisplayBrush()
oder InsertLayer()
als Ebene einfügen, aber das ist nicht so effektiv wie die
der neue CreateLayer() Befehl. Denn wenn man
dann SelectLayer()
mit einer Ebene benutzt, die aus einer bestehenden Pinselquelle
erstellt wurde, muss Hollywood zunächst eine Kopie der Ebene
erstellen, weil SelectLayer() nur den
Inhalt der Ebene und nicht den Inhalt des Pinsels ändern.
Dies ist mit Pinselebenen nicht sehr kritisch, aber mit vielen
Einzelbildern einer Animationsebene hingegen
schon. SelectLayer()
auf eine solche Animationsebene anzuwenden, würde einige Zeit
dauern. In diesen Fällen ist CreateLayer() wirklich viel effektiver.
CreateLayer(#CENTER, #CENTER, 100, 100, {Color = #RED})
SelectLayer(1)
Circle(0, 0, 50, #WHITE)
EndSelect
Der obige Code erstellt eine neue 100x100 rote Ebene und zeichnet
dann einen weißen Kreis darauf.