当前位置:首页 » 安卓系统 » android地图绘制

android地图绘制

发布时间: 2023-02-19 14:09:16

㈠ android上怎么实现 手绘地图功能

1、获取Android端的坐标、放大系数等参数,回传到服务端绘制好图片和相关数据后回传到Android端.

2、提前准备好图片和数据放到Androd端,然后根据相关参数选择合适的数据和图片。

㈡ android 百度地图上怎么画线,画圆

//代码如下
importandroid.content.Context;
importandroid.graphics.Canvas;
importandroid.graphics.Color;
importandroid.graphics.Paint;
importandroid.graphics.Paint.Style;
importandroid.graphics.Path;
importandroid.graphics.Point;
importandroid.os.Bundle;
importcom..mapapi.BMapManager;
importcom..mapapi.GeoPoint;
importcom..mapapi.MapActivity;
importcom..mapapi.MapController;
importcom..mapapi.MapView;
importcom..mapapi.Overlay;
importcom..mapapi.Projection;

{
privateContextmContext;
privateMapViewmapView;
@Override
(){
//TODOAuto-generatedmethodstub
returnfalse;
}
privateGeoPointgpoint1,gpoint2,gpoint3;//连线的点
@Override
protectedvoidonCreate(Bundlearg0){
super.onCreate(arg0);
setContentView(R.layout.map_layout);

BaseApplicationbaseApp=(BaseApplication)this.getApplication();
if(baseApp.mBMapManage==null){
baseApp.mBMapManage=newBMapManager(mContext);
baseApp.mBMapManage.init(baseApp.mStrKey,
newBaseApplication.MyGeneralListener());
}
baseApp.mBMapManage.start();
super.initMapActivity(baseApp.mBMapManage);//初始化mapsdk
mapView=(MapView)findViewById(R.id.bmapView);
mapView.setBuiltInZoomControls(true);
//设置在缩放动画过程中也显示overlay,默认为不绘制
mapView.setDrawOverlayWhenZooming(true);

//RouteLinerouteLine=
//(RouteLine)getIntent().getSerializableExtra("routeLine");

//这里画点和连接线
MyOverlaymyOverlay=newMyOverlay();
mapView.getOverlays().add(myOverlay);

MapControllermapController=mapView.getController();
mapController.zoomIn();

gpoint1=newGeoPoint((int)(2259316*10),
(int)(11396279*10));
gpoint2=newGeoPoint((int)(2259245*10),
(int)(11396226*10));
gpoint3=newGeoPoint((int)(2259121*10),
(int)(11396066*10));
mapController.animateTo(gpoint1);//设置一个起点
}

classMyOverlayextendsOverlay{

@Override
publicvoiddraw(Canvascanvas,MapViewmapView,booleanshadow){
super.draw(canvas,mapView,shadow);

Projectionprojection=mapView.getProjection();
Pointp1=newPoint();
Pointp2=newPoint();
Pointp3=newPoint();
//经度转像素
projection.toPixels(gpoint1,p1);
projection.toPixels(gpoint2,p2);
projection.toPixels(gpoint3,p3);

//第一个画笔画圆
PaintfillPaint=newPaint();
fillPaint.setColor(Color.BLUE);
fillPaint.setAntiAlias(true);
fillPaint.setStyle(Style.FILL);

//将图画到上层
canvas.drawCircle(p1.x,p1.y,5.0f,fillPaint);
canvas.drawCircle(p2.x,p2.y,5.0f,fillPaint);
canvas.drawCircle(p3.x,p3.y,5.0f,fillPaint);

//第二个画笔画线
Paintpaint=newPaint();
paint.setColor(Color.BLUE);
paint.setDither(true);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeJoin(Paint.Join.ROUND);
paint.setStrokeCap(Paint.Cap.ROUND);
paint.setStrokeWidth(4);

//连接
Pathpath=newPath();
path.moveTo(p1.x,p1.y);
path.lineTo(p2.x,p2.y);
path.lineTo(p3.x,p3.y);
//画出路径
canvas.drawPath(path,paint);
}
}

}

㈢ 基于android做推箱子游戏,地图如何绘制啊。三层地图 谢谢了,求大神

实在不行就直接opengl

㈣ android 开发使用最新百度地图如何画轨迹

android 使用网络地图画轨迹

java">importandroid.content.Context;
importandroid.graphics.Canvas;
importandroid.graphics.Color;
importandroid.graphics.Paint;
importandroid.graphics.Paint.Style;
importandroid.graphics.Path;
importandroid.graphics.Point;
importandroid.os.Bundle;
importcom..mapapi.BMapManager;
importcom..mapapi.GeoPoint;
importcom..mapapi.MapActivity;
importcom..mapapi.MapController;
importcom..mapapi.MapView;
importcom..mapapi.Overlay;
importcom..mapapi.Projection;

{
privateContextmContext;
privateMapViewmapView;
@Override
(){
//TODOAuto-generatedmethodstub
returnfalse;
}
privateGeoPointgpoint1,gpoint2,gpoint3;//连线的点
@Override
protectedvoidonCreate(Bundlearg0){
super.onCreate(arg0);
setContentView(R.layout.map_layout);

BaseApplicationbaseApp=(BaseApplication)this.getApplication();
if(baseApp.mBMapManage==null){
baseApp.mBMapManage=newBMapManager(mContext);
baseApp.mBMapManage.init(baseApp.mStrKey,
newBaseApplication.MyGeneralListener());
}
baseApp.mBMapManage.start();
super.initMapActivity(baseApp.mBMapManage);//初始化mapsdk
mapView=(MapView)findViewById(R.id.bmapView);
mapView.setBuiltInZoomControls(true);
//设置在缩放动画过程中也显示overlay,默认为不绘制
mapView.setDrawOverlayWhenZooming(true);

//RouteLinerouteLine=
//(RouteLine)getIntent().getSerializableExtra("routeLine");

//这里画点和连接线
MyOverlaymyOverlay=newMyOverlay();
mapView.getOverlays().add(myOverlay);

MapControllermapController=mapView.getController();
mapController.zoomIn();

gpoint1=newGeoPoint((int)(2259316*10),
(int)(11396279*10));
gpoint2=newGeoPoint((int)(2259245*10),
(int)(11396226*10));
gpoint3=newGeoPoint((int)(2259121*10),
(int)(11396066*10));
mapController.animateTo(gpoint1);//设置一个起点
}

classMyOverlayextendsOverlay{

@Override
publicvoiddraw(Canvascanvas,MapViewmapView,booleanshadow){
super.draw(canvas,mapView,shadow);

Projectionprojection=mapView.getProjection();
Pointp1=newPoint();
Pointp2=newPoint();
Pointp3=newPoint();
//经度转像素
projection.toPixels(gpoint1,p1);
projection.toPixels(gpoint2,p2);
projection.toPixels(gpoint3,p3);

//第一个画笔画圆
PaintfillPaint=newPaint();
fillPaint.setColor(Color.BLUE);
fillPaint.setAntiAlias(true);
fillPaint.setStyle(Style.FILL);

//将图画到上层
canvas.drawCircle(p1.x,p1.y,5.0f,fillPaint);
canvas.drawCircle(p2.x,p2.y,5.0f,fillPaint);
canvas.drawCircle(p3.x,p3.y,5.0f,fillPaint);

//第二个画笔画线
Paintpaint=newPaint();
paint.setColor(Color.BLUE);
paint.setDither(true);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeJoin(Paint.Join.ROUND);
paint.setStrokeCap(Paint.Cap.ROUND);
paint.setStrokeWidth(4);

//连接
Pathpath=newPath();
path.moveTo(p1.x,p1.y);
path.lineTo(p2.x,p2.y);
path.lineTo(p3.x,p3.y);
//画出路径
canvas.drawPath(path,paint);
}
}

}
热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:585
制作脚本网站 发布:2025-10-20 08:17:34 浏览:881
python中的init方法 发布:2025-10-20 08:17:33 浏览:574
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:761
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:677
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1005
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:250
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:108
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:799
python股票数据获取 发布:2025-10-20 07:39:44 浏览:705