package com.baidu.map_tool;
import java.util.ArrayList;
import java.util.List;
import org.xdgdg.tripguide_xidian.R;
import org.xdgdg.tripguide_xidian.route;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import com.baidu.mapapi.map.MapView;
import com.baidu.platform.comapi.basestruct.GeoPoint;
public class result_mapActivity extends mapActivity {
private static int i = 0;
private List<String> rec_name = null;
private List<Integer> rec_pts_x = null;
private List<Integer> rec_pts_y = null;
private route rec_route = null;
private int[] markers={R.drawable.icon_marka,R.drawable.icon_markb,R.drawable.icon_markc
,R.drawable.icon_markd,R.drawable.icon_marke,R.drawable.icon_markf,R.drawable.icon_markg,
R.drawable.icon_markh,R.drawable.icon_marki,R.drawable.icon_markj};
private result_MapMask amask;
@Override
public void init() {
Log.i("axlecho", "chiled init");
setContentView(R.layout.result_map);
Log.i("axlecho", "setContentView ok.");
map_view = (MapView) findViewById(R.id.bmapsresultView);
map_controller = map_view.getController();
setbegin();
Log.i("axlehco", "set srcpoint ok.");
// 地图图形处理工具
amask = new result_MapMask(this, map_view);
Log.i("axlecho", "new mask ok.");
Intent intent = getIntent();
rec_route = (route) intent.getSerializableExtra("route");
Log.i("axlecho", "getIntent ok");
rec_name = rec_route.poi_name_ToList(rec_route.getPoi_name());
rec_pts_x = rec_route.poi_xToList(rec_route.getPoi_x());
rec_pts_y = rec_route.poi_yToList(rec_route.getPoi_y());
TextView busline = (TextView)findViewById(R.id.busline_textview);
busline.setText(rec_route.getBusline());
GeoPoint pos = new GeoPoint((int) (34.1233959 * 1e6),(int) (108.83594160000007 * 1e6));
Button button_refresh = (Button)findViewById(R.id.refresh);
button_refresh.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
// TODO Auto-generated method stub
amask.cover_Mypos();
}
});
// amask.cover_pic(pos, R.drawable.icon_marka, rec_name.get(i));
ArrayList<GeoPoint> lines = make_point();
// lines.add(pos);
// rec_name.add("西电");
for(String name:rec_name)
{
Log.e("names",name);
}
amask.cover_lines(lines);
print_point(lines);
Log.e("pre Loc","ok");
amask.start_GetLoction();
amask.mLocClient.requestLocation();
amask.cover_Mypos();
}
public ArrayList<GeoPoint> make_point(){
ArrayList<GeoPoint> lines = new ArrayList<GeoPoint>();
for (int i = 0; i < rec_name.size(); i++) {
GeoPoint pos = new GeoPoint(rec_pts_x.get(i), rec_pts_y.get(i));
Log.i("axlecho", "x:" + String.valueOf(rec_pts_x.get(i)) + " "+ "y:" + String.valueOf(rec_pts_y.get(i)));
lines.add(pos);
}
return lines;
}
public void print_point(ArrayList<GeoPoint> lines) {
for(int i = 0;i < lines.size();i ++)
amask.cover_pic(lines.get(i), markers[i], rec_name.get(i));
}
class result_MapMask extends MapMask {
public result_MapMask(Activity _context, MapView _mapview) {
super(_context, _mapview);
// TODO Auto-generated constructor stub
}
//在这里可以重写点击tip的响应事件
protected void on_tip(GeoPoint pt) {
}
}
@Override
protected void onDestroy() {
map_view.destroy();
MapBase.Instance(this).terminate();
amask.clear();
Log.i("axlecho", "destroy ok.");
super.onDestroy();
}
}