Hallo zusammen,
ich habe hier jetzt schon viel über Berechnung von Flächenanteilen gelesen, mein Problem konnte ich damit aber leider nicht lösen. Vielleicht weiß ja einer von euch was...
... also ich habe ein Polygon mit 1x1° Kästechen. Diese Datei habe ich mit Deutschlan "geclippt". Da Deutschland natürlich nicht genau in die Kästchen passt, gibt es auch Teile von Deutschland, die ZB. nur ein halbes Kästchen einnehemen. Ich möchte pro Kästchen berechnen wieviel Prozent in Deutschland liegen.
Ich habe bei GIS 8 immer ein Feld hinzugefügt und dann field calculation gemacht. Dabei habe ich advanced angeklickt und dann
Dim dblArea as double
Dim pArea as IArea
Set pArea = [shape]
dblArea = pArea.area
eingefügt und es hat funktioniert.
Wenn ich das jetzt aber in GIS 9 mache, berechnet es etwas, aber das Ergeniss kann nicht stimmen. Hat von euch einer eine Idee, woran das liegen kann?
Danke
ich habe hier jetzt schon viel über Berechnung von Flächenanteilen gelesen, mein Problem konnte ich damit aber leider nicht lösen. Vielleicht weiß ja einer von euch was...
... also ich habe ein Polygon mit 1x1° Kästechen. Diese Datei habe ich mit Deutschlan "geclippt". Da Deutschland natürlich nicht genau in die Kästchen passt, gibt es auch Teile von Deutschland, die ZB. nur ein halbes Kästchen einnehemen. Ich möchte pro Kästchen berechnen wieviel Prozent in Deutschland liegen.
Ich habe bei GIS 8 immer ein Feld hinzugefügt und dann field calculation gemacht. Dabei habe ich advanced angeklickt und dann
Dim dblArea as double
Dim pArea as IArea
Set pArea = [shape]
dblArea = pArea.area
eingefügt und es hat funktioniert.
Wenn ich das jetzt aber in GIS 9 mache, berechnet es etwas, aber das Ergeniss kann nicht stimmen. Hat von euch einer eine Idee, woran das liegen kann?
Danke
- Anmelden oder Registieren, um Kommentare verfassen zu können
Gespeichert von Robsn am Di., 06.11.2007 - 15:41
PermalinkAlso:
DIM Surface As Double
Dim pArea As IArea
Set pArea = [Shape] <- halt die richtige Bezeichnung des Tablefields, eventuell ist auch da einfach ein Fehler drin :shape, Shape, SHAPE, Shape_1,...
Surface = pArea.area
Und dann halt noch
"NAME" = Surface <- Im Zuweisungsfeld
Gespeichert von Andreas Wolf am Di., 06.11.2007 - 15:43
Permalinkvielleicht liegt es an der Projektion? Ist denn die Projektion deines Datenrahmens gleich deinem Layer?
Was bekommst du denn für ein Ergebnis raus?
Gruß
Andreas
Gespeichert von Fee am Di., 06.11.2007 - 16:03
Permalinkalso, der Vorschlag von Robsn liefert mir eine Fehlermeldung :-(
Die Projektion der beiden Layers sollte gleich sein...
Meine Ergebnisse sind entweder 1 oder 0, aber ich sollte manchmal eben 0,5 oder 0,02 oder sowas rausbekommen.
Gespeichert von Robsn am Di., 06.11.2007 - 17:25
PermalinkWas für ein Fehler kommt denn?
^^
das "Name" = Surface muss in die zweite Textbox rein mit "Name" für den Fieldnamen.
Gespeichert von Robsn am Mi., 07.11.2007 - 12:12
PermalinkGespeichert von Fee am Mi., 07.11.2007 - 13:34
PermalinkDANKE für den Tipp mit dem double, es funktioniert *freu*
Das es mal wieder so ein einfacher Fehler war...