Legenden für Raster (Grid)

Hallo!
Es scheint so als sei ein Import von Legenden für die Symbologie Raster-Layern in ArcGIS 8.x nicht vorgesehen.
Ich könnte auf den Import aus AV3.x verzichten, möchte aber nicht für jedes Raster immerwieder neu per Hand die Klassen eingeben und die Farbenauswählen. Zumindest innerhalb eines Datenrahmens sollte die Legend doch "kopierbar" sein.
Wer kann mir einen work-around nennen?
Danke im voraus
Gruß
Holger
Hallo Holger,

Workaround 1:
Anstatt die Farbeinstellunegen für Deine einzelnen Klassen bei den Eigenschaften festzulegen, könntest Du Dir zunächst im Style-Manager einen eigenen Farbverlauf erstellen(Color Ramps, Rechte Maustaste "Neu", "Voreingestellter Farbverlauf"--> Farben anpassen). Leider kann ich Dir so spontan auch nicht sagen wie man mehr als 13 Farben anlegen kann. Etwas blöd ist auch, daß Deine erste Klasse der ersten Farbe zugeordnet wird, Deine letzte Klasse aber auch der letzten Farbe. Wenn Anzahl von Klassen und Farben nicht übereinstimmen kommts zu "Verzerrungen". (Möglicherweise findest Du in der Styles-Ecke auch noch ne bessere Möglichkeit).

Workaround 2:
Programmatorisch: Pack Dir Dir alle Rasterlayer in einen Gruppenlayer, lies Dir die Renderer und Color-Eigenschaften des ersten Layers raus, durchlaufe anschließend den kompletten Gruppenlayer in einer Schleife und setze auch für die anderen Rasterlayer die ausgelesenen Eigenschaften des ersten Rasterlayers. Ist aber relativ viel Arbeit...

Viele Grüße
Jörg Ostendorp
Hallo Jörg,
der Workaround 1 "erscheint" als erste Lösung verlockend, jedoch sind die Einschränkungen, die Du auch nennst eben doch recht gravierend...(erste Klasse immer abhängig vom Datensatz)
Der Workaround 2 klingt kompliziert; für mich :-)
Ich habe dann doch noch eine dll bei esri gefunden mit der man Legenden "kopieren kann". siehe unten.
Nach dem copy/paste ist noch ein "Aktualisieren erforderlich", was in der Beschreibung nicht steht, aber hilft.
Viele Grüße
Holger

[url=]http://arcobjectsonline.esri.com/default.asp?URL=/ArcObjectsOnli ne/Samples/Raster/CopyRasterSymbologyBetweenLayers/CopyRasterSymbology .htm[/url]
Hallo Holger,

Danke für den link! Komisch, daß das bei den ArcScripts nicht zu finden ist...

Für den Fall, daß es Dich interessiert:
Zu 2.: Im Grunde machen die Klassenmodule clscopy../clspaste.. genau das, nur eben nicht für einen kompletten Gruppenlayer. Das komplizierte ist also eigentlich schon geschrieben... Anstatt der dll könntest Du Dir nun auch einfach das bas- und die beiden Klassenmodule importieren, (noch ein bißchen anpassen) und über eigene Controls instanzieren und ablaufen lassen. Schema:

Private Sub DeinCopyControl_Click()
Dim clsC As New clsCopyRasSym
clsC.ICommand_OnClick
End Sub

Private Sub DeinPasteControl_Click()
Dim clsP As New clsPasteRasSym
clsP.ICommand_OnClick
End Sub

Notwendige Änderungen in den Klassenmodulen wären:
Private durch Public zu ersetzen,
Private m_pApp durch Dim pApp (frag mich nicht warum)
und ggf. m_pApp.Document durch Application.Document

Zuletzt müssten nur noch die Properties (wenn man denn darauf Wert legt) und das error-handling an die neuen Controls angepaßt werden.

Das wärs schon. Damit hättest Du die gleichen Funktionen wie in der dll aber mit vollem Quellcode und allen Möglichkeiten das an Deine konkreten Bedürfnisse anzupassen, etwa eine Fehlerbehandlungsroutine, damit nicht ausversehen 8bit-Raster- durch 1bit-Raster-Einstellungen überschrieben werden können o.ä...

Viele Grüße
Joerg Ostendorp