[Wsplgen-commits] r64 - trunk/src
scm-commit@wald.intevation.org
scm-commit at wald.intevation.org
Mon Sep 25 22:54:55 CEST 2006
Author: mrchip
Date: 2006-09-25 22:54:55 +0200 (Mon, 25 Sep 2006)
New Revision: 64
Modified:
trunk/src/Makefile
trunk/src/file.cpp
trunk/src/tools.cpp
trunk/src/wsplgen.h
trunk/src/xy.cpp
Log:
Ein paar kleine Speicherprobleme behoben und die Endung ASC als Alternative zu GRD akzeptiert.
Modified: trunk/src/Makefile
===================================================================
--- trunk/src/Makefile 2006-09-25 05:44:29 UTC (rev 63)
+++ trunk/src/Makefile 2006-09-25 20:54:55 UTC (rev 64)
@@ -9,22 +9,23 @@
LDFLAGS=
LIBS=-lstdc++
-PROJECT=wsplgen.exe
-TEST=test.exe
-OBJFILES=tools.o xy.o tri.o parameter.o file.o shape.o quadtree.o
-TESTOBJFILES=test_profil.o test_tools.o test_xy.o test_tri.o test_file.o test_nodes.o test_quadtree.o
+OBJFILES1=tools.o xy.o tri.o parameter.o file.o shape.o quadtree.o
+OBJFILES2=test_profil.o test_tools.o test_xy.o test_tri.o test_file.o test_nodes.o test_quadtree.o
all: ../bin/test.exe ../bin/wsplgen.exe
-../bin/test.exe: test.o $(TESTOBJFILES) $(OBJFILES)
- $(CC) $(LDFLAGS) -o ../bin/test.exe test.o $(TESTOBJFILES) $(OBJFILES) $(LIBS)
+../bin/test.exe: test.o $(OBJFILES1) $(OBJFILES2)
+ $(CC) $(LDFLAGS) -o ../bin/test.exe test.o $(OBJFILES1) $(OBJFILES2) $(LIBS)
-../bin/wsplgen.exe: wsplgen.o $(OBJFILES)
- $(CC) $(LDFLAGS) -o ../bin/wsplgen.exe wsplgen.o $(OBJFILES) $(LIBS)
+../bin/wsplgen.exe: wsplgen.o $(OBJFILES1)
+ $(CC) $(LDFLAGS) -o ../bin/wsplgen.exe wsplgen.o $(OBJFILES1) $(LIBS)
%.o: %.cpp %.h Makefile
$(CC) -c $(CPPFLAGS) $*.cpp
+%.o: %.cpp Makefile
+ $(CC) -c $(CPPFLAGS) $*.cpp
+
clean:
rm -f *.o
Modified: trunk/src/file.cpp
===================================================================
--- trunk/src/file.cpp 2006-09-25 05:44:29 UTC (rev 63)
+++ trunk/src/file.cpp 2006-09-25 20:54:55 UTC (rev 64)
@@ -139,7 +139,7 @@
LoadDGM2DM(FileName, NodeList, ElementList, BegrenzungsPolygon, DebugLevel);
CheckForDuplicates(NodeList, ElementList, DebugLevel);
}
- else if (ToUpperCase(Ext) == ".GRD")
+ else if (ToUpperCase(Ext) == ".GRD" || ToUpperCase(Ext) == ".ASC")
{
LoadDGMGRD(FileName, NodeList, BegrenzungsPolygon, DebugLevel);
CheckForDuplicates(NodeList, ElementList, DebugLevel);
@@ -156,7 +156,7 @@
}
else
{
- write_error(1222, "Ungültige Dateinamenserweiterung '%s' beim Dateinamen '%s' für den Parameter -DGM\nErlaubt sind nur ADF, GRD, 2DM, XYZ, TXT oder SHP\n", ToUpperCase(Ext).c_str(), FileName.c_str());
+ write_error(1222, "Ungültige Dateinamenserweiterung '%s' beim Dateinamen '%s' für den Parameter -DGM\nErlaubt sind nur ADF, GRD, ASC, 2DM, XYZ, TXT oder SHP\n", ToUpperCase(Ext).c_str(), FileName.c_str());
}
if (BegrenzungsPolygon)
@@ -2597,7 +2597,7 @@
if (Count % 10000 == 0) write_fortschritt("Ring %d von %d überprüft\n", Count+1, ErgebnisPolygonList->size());
}
write_fortschritt("%d Ringe gelöscht\n", DelCount);
- write_fortschritt("kleinste gelöschte Ringfläche: %.3f\n", MinArea);
+ write_fortschritt("kleinste Ringfläche: %.3f\n", MinArea);
write_fortschritt("<-Löschen der zu kleinen Ringe beendet\n");
@@ -2736,6 +2736,8 @@
i = ErgebnisPolygonList->begin();
}
+ delete ErgebnisPolygonList;
+
DBFClose(DBFHandle);
SHPClose(SHPHandle);
Modified: trunk/src/tools.cpp
===================================================================
--- trunk/src/tools.cpp 2006-09-25 05:44:29 UTC (rev 63)
+++ trunk/src/tools.cpp 2006-09-25 20:54:55 UTC (rev 64)
@@ -371,6 +371,7 @@
return (MemoryPointer);
}
+
//---------------------------------------------------------------------------
void* SfMalloc(int Size)
{
@@ -380,6 +381,7 @@
return (MemoryPointer);
}
+
//---------------------------------------------------------------------------
void* SfCalloc(int Anz, int Size)
{
@@ -389,6 +391,7 @@
return (MemoryPointer);
}
+
//---------------------------------------------------------------------------
void Swap2Bytes(void *Bytes)
{
@@ -2432,15 +2435,13 @@
Edge->Node1->Wsp = Edge->Node2->Wsp;
- // Hier jetzt neue potentielle Kante aufnehmen
+ // Hier jetzt neue potentielle Kanten aufnehmen
TEdgeIndex *AktEdgeIndex = Edge->Node1->EdgeIndex;
while (AktEdgeIndex)
{
TEdgeIndex *NextEdgeIndex = AktEdgeIndex->NextEdgeIndex;
-// Hier war eine ganze Zeit die erste Zeile auskommentiert und die zweite nicht
- Temp2EdgeList->Add(new TEdge(AktEdgeIndex->Edge));
-// if (0 == Temp2EdgeList->Find(AktEdgeIndex->Edge)) Temp2EdgeList->Add(AktEdgeIndex->Edge);
+ Temp2EdgeList->Add(AktEdgeIndex->Edge);
AktEdgeIndex = NextEdgeIndex;
}
@@ -2462,9 +2463,7 @@
{
TEdgeIndex *NextEdgeIndex = AktEdgeIndex->NextEdgeIndex;
-// Hier war eine ganze Zeit die erste Zeile auskommentiert und die zweite nicht
- Temp2EdgeList->Add(new TEdge(AktEdgeIndex->Edge));
-// if (0 == Temp2EdgeList->Find(AktEdgeIndex->Edge)) Temp2EdgeList->Add(AktEdgeIndex->Edge);
+ Temp2EdgeList->Add(AktEdgeIndex->Edge);
AktEdgeIndex = NextEdgeIndex;
}
Modified: trunk/src/wsplgen.h
===================================================================
--- trunk/src/wsplgen.h 2006-09-25 05:44:29 UTC (rev 63)
+++ trunk/src/wsplgen.h 2006-09-25 20:54:55 UTC (rev 64)
@@ -10,8 +10,17 @@
// Read the file COPYING coming with WSPLGEN for details.
//
-const char Version[] = "0.9.17 r2";
+const char Version[] = "0.9.17 r3";
+// Es wird nun auch die Endung ASC für GRD-Files akzeptiert.
+// Zwei Speicherfehler wurden behoben
+
+// const char Version[] = "0.9.17 r2";
+
+// Die Speicherverwaltung wurde komplett überarbeitet
+// Es wurden diverse Ausgaben hinzugefügt
+// Es wurde eine Funktion zum Erzeugen von Point-Shapes-Files hinzugefügt
+
// const char Version[] = "0.9.17 r1";
// Ein Fehler bei der Erzeugung von Dämmen und Gräben wurde behoben (entartete Elemente).
Modified: trunk/src/xy.cpp
===================================================================
--- trunk/src/xy.cpp 2006-09-25 05:44:29 UTC (rev 63)
+++ trunk/src/xy.cpp 2006-09-25 20:54:55 UTC (rev 64)
@@ -435,7 +435,7 @@
Count++;
- if (Count % 100000 == 0) write_fortschritt("%d Objekte freigegeben\n", Count);
+ if (Count % 100000 == 0) write_fortschritt("%d von %d Objekte freigegeben\n", Count, size());
}
write_fortschritt("%d Objekte freigegeben\n", Count);
}
@@ -886,7 +886,7 @@
Count++;
- if (Count % 100000 == 0) write_fortschritt("%d Objekte freigegeben\n", Count);
+ if (Count % 100000 == 0) write_fortschritt("%d von %d Objekte freigegeben\n", Count, size());
}
write_fortschritt("<-Löschen des Knoten/Kanten-Index beendet\n");
@@ -1072,7 +1072,7 @@
Count++;
- if (Count % 100000 == 0) write_fortschritt("%d Objekte freigegeben\n", Count);
+ if (Count % 100000 == 0) write_fortschritt("%d von %d Objekte freigegeben\n", Count, size());
}
write_fortschritt("%d Objekte freigegeben\n", Count);
}
@@ -1773,7 +1773,7 @@
Count++;
- if (Count % 100000 == 0) write_fortschritt("%d Objekte freigegeben\n", Count);
+ if (Count % 100000 == 0) write_fortschritt("%d von %d Objekte freigegeben\n", Count, EdgeVector.size());
}
write_fortschritt("%d Objekte freigegeben\n", Count);
}
@@ -2323,7 +2323,7 @@
Count++;
- if (Count % 10000 == 0) write_fortschritt("%d Objekte freigegeben\n", Count);
+ if (Count % 10000 == 0) write_fortschritt("%d von %d Objekte freigegeben\n", Count, size());
}
write_fortschritt("%d Objekte freigegeben\n", Count);
}
More information about the Wsplgen-commits
mailing list