temp = longitude - (1L << 31); if (temp < 0) { temp = -temp; direction = 'W'; } else direction = 'E';  sb.append(temp / (3600 * 1000));  temp = temp % (3600 * 1000); sb.append(" ");  sb.append(temp / (60 * 1000));  temp = temp % (60 * 1000); sb.append(" ");  sb.append(nf.format((double)temp / 1000));  sb.append(" ");  sb.append(direction);
sb.append(positionToString(nf, longitude, 'E', 'W'));
rrToString() {	StringBuffer sb = new StringBuffer();	long temp;	char direction;	NumberFormat nf = new DecimalFormat();	nf.setMaximumFractionDigits(3);	nf.setGroupingUsed(false);	/* Latitude */	temp = latitude - (1L << 31);	if (temp < 0) {		temp = -temp;		direction = 'S';	}	else		direction = 'N';	sb.append(temp / (3600 * 1000)); /* degrees */	temp = temp % (3600 * 1000);	sb.append(" ");	sb.append(temp / (60 * 1000)); /* minutes */	temp = temp % (60 * 1000);	sb.append(" ");	sb.append(nf.format((double)temp / 1000)); /* seconds */	sb.append(" ");	sb.append(direction);	sb.append(" ");	/* Latitude */	temp = longitude - (1L << 31);	if (temp < 0) {		temp = -temp;		direction = 'W';	}	else		direction = 'E';	sb.append(temp / (3600 * 1000)); /* degrees */	temp = temp % (3600 * 1000);	sb.append(" ");	sb.append(temp / (60 * 1000)); /* minutes */	temp = temp % (60 * 1000);	sb.append(" ");	sb.append(nf.format((double)temp / 1000)); /* seconds */	sb.append(" ");	sb.append(direction);	sb.append(" ");	nf.setMaximumFractionDigits(2);	/* Altitude */	sb.append(nf.format((double)(altitude - 10000000)/100));	sb.append("m ");	/* Size */	sb.append(nf.format((double)size/100));	sb.append("m ");	/* Horizontal precision */	sb.append(nf.format((double)hPrecision/100));	sb.append("m ");	/* Vertical precision */	sb.append(nf.format((double)vPrecision/100));	sb.append("m");	return sb.toString();}