while (stmt.step()){
	Geometry geometry = new WKBReader().read(stmt.column_bytes(2));
	
	if (geometry.getGeometryType().equals("Point")){
	}
	else if (geometry.getGeometryType().equals("LineString")){
	}
	else if (geometry.getGeometryType().equals("Polygon")){
		
		LineString mExteriorPolygon = ((Polygon)geometry).getExteriorRing();
		float[] mExtPolygonData = new float[mExteriorPolygon.getNumPoints() * 3];
		
        for (int counter=0; counter <= mExteriorPolygon.getNumPoints()-1;counter++){
        	mExtPolygonData[counter * 3] = (float) mExteriorPolygon.getPointN(counter).getCoordinate().x;
        	mExtPolygonData[(counter * 3) + 1] = (float) mExteriorPolygon.getPointN(counter).getCoordinate().y;
        	mExtPolygonData[(counter * 3) + 2] = 0.0f; //z
        }
		
        FloatBuffer mPointArrayBuffer = ByteBuffer.allocateDirect(mExtPolygonData.length * mBytesPerFloat)
		        .order(ByteOrder.nativeOrder()).asFloatBuffer();
        mPointArrayBuffer.put(mExtPolygonData).position(0);

        //*******Create the index array********
        int[] returnvalue = PolygonTriangulation.Process(mExtPolygonData);
        //*********************************
        default_settings.orgNonAssetCatMappableLayers.get(Count).objFloatBuffer.add(mPointArrayBuffer);
		default_settings.orgNonAssetCatMappableLayers.get(Count).objTypeArray.add((byte) 3);
	}
}
stmt.close();