Index: /issm/trunk/src/c/objects/KML/KML_Container.cpp
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Container.cpp	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Container.cpp	(revision 9201)
@@ -157,2 +157,30 @@
 /*}}}*/
 
+/*FUNCTION KML_Container::FindPolygons {{{1*/
+void  KML_Container::FindPolygons(DataSet* polygons){
+
+	int   i;
+
+/*  loop over the features for the container  */
+
+	for (i=0; i<feature->Size(); i++)
+		((KML_Feature *)feature->GetObjectByOffset(i))->FindPolygons(polygons);
+
+	return;
+}
+/*}}}*/
+
+/*FUNCTION KML_Container::FindLineStrings {{{1*/
+void  KML_Container::FindLineStrings(DataSet* linestrings){
+
+	int   i;
+
+/*  loop over the features for the container  */
+
+	for (i=0; i<feature->Size(); i++)
+		((KML_Feature *)feature->GetObjectByOffset(i))->FindLineStrings(linestrings);
+
+	return;
+}
+/*}}}*/
+
Index: /issm/trunk/src/c/objects/KML/KML_Container.h
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Container.h	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Container.h	(revision 9201)
@@ -32,4 +32,6 @@
 		void  Write(FILE* fid,char* indent);
 		void  Read(FILE* fid,char* kstr);
+		void  FindPolygons(DataSet* polygons);
+		void  FindLineStrings(DataSet* linestrings);
 		int   Id(){_error_("Not implemented yet.");};
 		int   MyRank(){_error_("Not implemented yet.");};
Index: /issm/trunk/src/c/objects/KML/KML_LineString.cpp
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_LineString.cpp	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_LineString.cpp	(revision 9201)
@@ -170,2 +170,11 @@
 /*}}}*/
 
+/*FUNCTION KML_LineString::FindLineStrings {{{1*/
+void  KML_LineString::FindLineStrings(DataSet* linestrings){
+
+	linestrings->AddObject((Object*)this);
+
+	return;
+}
+/*}}}*/
+
Index: /issm/trunk/src/c/objects/KML/KML_LineString.h
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_LineString.h	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_LineString.h	(revision 9201)
@@ -37,4 +37,5 @@
 		void  Write(FILE* fid,char* indent);
 		void  Read(FILE* fid,char* kstr);
+		void  FindLineStrings(DataSet* linestrings);
 		int   Id(){_error_("Not implemented yet.");};
 		int   MyRank(){_error_("Not implemented yet.");};
Index: /issm/trunk/src/c/objects/KML/KML_MultiGeometry.cpp
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_MultiGeometry.cpp	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_MultiGeometry.cpp	(revision 9201)
@@ -181,2 +181,30 @@
 /*}}}*/
 
+/*FUNCTION KML_MultiGeometry::FindPolygons {{{1*/
+void  KML_MultiGeometry::FindPolygons(DataSet* polygons){
+
+	int   i;
+
+/*  loop over the geometry elements for the multigeometry  */
+
+	for (i=0; i<geometry->Size(); i++)
+		((KML_Geometry *)geometry->GetObjectByOffset(i))->FindPolygons(polygons);
+
+	return;
+}
+/*}}}*/
+
+/*FUNCTION KML_MultiGeometry::FindLineStrings {{{1*/
+void  KML_MultiGeometry::FindLineStrings(DataSet* linestrings){
+
+	int   i;
+
+/*  loop over the geometry elements for the multigeometry  */
+
+	for (i=0; i<geometry->Size(); i++)
+		((KML_Geometry *)geometry->GetObjectByOffset(i))->FindLineStrings(linestrings);
+
+	return;
+}
+/*}}}*/
+
Index: /issm/trunk/src/c/objects/KML/KML_MultiGeometry.h
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_MultiGeometry.h	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_MultiGeometry.h	(revision 9201)
@@ -33,4 +33,6 @@
 		void  Write(FILE* fid,char* indent);
 		void  Read(FILE* fid,char* kstr);
+		void  FindPolygons(DataSet* polygons);
+		void  FindLineStrings(DataSet* linestrings);
 		int   Id(){_error_("Not implemented yet.");};
 		int   MyRank(){_error_("Not implemented yet.");};
Index: /issm/trunk/src/c/objects/KML/KML_Object.cpp
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Object.cpp	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Object.cpp	(revision 9201)
@@ -141,4 +141,6 @@
 			}
 
+/*  if found, get the value; otherwise use the default  */
+
 	if (katt)
 		katt->Get(pvalue,deflt);
@@ -169,2 +171,20 @@
 /*}}}*/
 
+/*FUNCTION KML_Object::FindPolygons {{{1*/
+void  KML_Object::FindPolygons(DataSet* polygons){
+
+	;
+
+	return;
+}
+/*}}}*/
+
+/*FUNCTION KML_Object::FindLineStrings {{{1*/
+void  KML_Object::FindLineStrings(DataSet* linestrings){
+
+	;
+
+	return;
+}
+/*}}}*/
+
Index: /issm/trunk/src/c/objects/KML/KML_Object.h
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Object.h	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Object.h	(revision 9201)
@@ -44,4 +44,6 @@
 		virtual void  FindAttrib(char** pvalue,char* name,char* deflt);
 		virtual void  WriteAttrib(FILE* fid,char* indent);
+		virtual void  FindPolygons(DataSet* polygons);
+		virtual void  FindLineStrings(DataSet* linestrings);
 
 };
Index: /issm/trunk/src/c/objects/KML/KML_Placemark.cpp
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Placemark.cpp	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Placemark.cpp	(revision 9201)
@@ -181,2 +181,30 @@
 /*}}}*/
 
+/*FUNCTION KML_Placemark::FindPolygons {{{1*/
+void  KML_Placemark::FindPolygons(DataSet* polygons){
+
+	int   i;
+
+/*  loop over the geometry elements for the placemark  */
+
+	for (i=0; i<geometry->Size(); i++)
+		((KML_Geometry *)geometry->GetObjectByOffset(i))->FindPolygons(polygons);
+
+	return;
+}
+/*}}}*/
+
+/*FUNCTION KML_Placemark::FindLineStrings {{{1*/
+void  KML_Placemark::FindLineStrings(DataSet* linestrings){
+
+	int   i;
+
+/*  loop over the geometry elements for the placemark  */
+
+	for (i=0; i<geometry->Size(); i++)
+		((KML_Geometry *)geometry->GetObjectByOffset(i))->FindLineStrings(linestrings);
+
+	return;
+}
+/*}}}*/
+
Index: /issm/trunk/src/c/objects/KML/KML_Placemark.h
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Placemark.h	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Placemark.h	(revision 9201)
@@ -33,4 +33,6 @@
 		void  Write(FILE* fid,char* indent);
 		void  Read(FILE* fid,char* kstr);
+		void  FindPolygons(DataSet* polygons);
+		void  FindLineStrings(DataSet* linestrings);
 		int   Id(){_error_("Not implemented yet.");};
 		int   MyRank(){_error_("Not implemented yet.");};
Index: /issm/trunk/src/c/objects/KML/KML_Polygon.cpp
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Polygon.cpp	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Polygon.cpp	(revision 9201)
@@ -254,2 +254,11 @@
 /*}}}*/
 
+/*FUNCTION KML_Polygon::FindPolygons {{{1*/
+void  KML_Polygon::FindPolygons(DataSet* polygons){
+
+	polygons->AddObject((Object*)this);
+
+	return;
+}
+/*}}}*/
+
Index: /issm/trunk/src/c/objects/KML/KML_Polygon.h
===================================================================
--- /issm/trunk/src/c/objects/KML/KML_Polygon.h	(revision 9200)
+++ /issm/trunk/src/c/objects/KML/KML_Polygon.h	(revision 9201)
@@ -39,4 +39,5 @@
 		void  Write(FILE* fid,char* indent);
 		void  Read(FILE* fid,char* kstr);
+		void  FindPolygons(DataSet* polygons);
 		int   Id(){_error_("Not implemented yet.");};
 		int   MyRank(){_error_("Not implemented yet.");};
