プログラミング初心者(2ヶ月)です。
車を運転して雑草を摘むときに、緯度と経度を記録するアプリを作成しています。次に、kml ファイルを作成して、農家がどこに行ったかを確認できるようにします。
同じ場所 (緯度と経度が同じ) で 4 つの雑草を選ぶと、出力は 1 つの kml 画鋲になり、クリックすると 4 つに展開されます。ただし、これは、ファーマーが複数のピンを表示するには、すべてのピンをクリックする必要があることを意味します。
これが私のkmlを作成するコードです
db = openOrCreateDatabase(rabbitsrv.DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null);
cursor = db.rawQuery("SELECT * " +
" FROM " + rabbitsrv.BAG_TABLE_NAME +
" ORDER BY LATITUDE ASC;",
null);
int gmtTimestampColumnIndex = cursor.getColumnIndexOrThrow("GMTTIMESTAMP");
int latitudeColumnIndex = cursor.getColumnIndexOrThrow("LATITUDE");
int longitudeColumnIndex = cursor.getColumnIndexOrThrow("LONGITUDE");
if (cursor.moveToFirst()) {
StringBuffer fileBuf = new StringBuffer();
String beginTimestamp = null;
String endTimestamp = null;
String gmtTimestamp = null;
initFileBufk(fileBuf, initValuesMap());
do {gmtTimestamp = cursor.getString(gmtTimestampColumnIndex);
if (beginTimestamp == null) {beginTimestamp = gmtTimestamp;}
double latitude = cursor.getDouble(latitudeColumnIndex);
double longitude = cursor.getDouble(longitudeColumnIndex);
fileBuf.append("<Placemark><Point><coordinates>"+
sevenSigDigits.format(longitude)+","+sevenSigDigits.format(latitude)+
"</coordinates></Point></Placemark>\n");
} while (cursor.moveToNext());
endTimestamp = gmtTimestamp;
cursor.moveToLast();
closeFileBufk(fileBuf, beginTimestamp, endTimestamp);
String fileContents = fileBuf.toString();
Log.d(tag, fileContents);
私が本当にやりたいことは、if ステートメントを持つことです。私が作ったように以下が機能しないことを私は知っています.nextvalue
:
if ((cursor.lat==cursor.nextvalue.lat)&(cursor.long==cursor.nextvalue,long){
// make purple pushpin
} else {
// make yellow pushpin.
}
同じ緯度経度で何本の雑草が生えているか数えて、例えば7本だったら7番の旗が作れたらもっといいですよね。
私ができるkml側-それは私が立ち往生しているSQL/カーソルビットです。