`
mapdigit
  • 浏览: 262214 次
文章分类
社区版块
存档分类
最新评论
文章列表
本地查询可以查询指定区域内诸如宾馆,邮局等用户感兴趣的地方。其使用方法和地址查询非常类似。 下面示例查询32.0616667, 118.7777778为中心点一定区域内宾馆的信息。 package com.pstreets.gisengine.demo.lwuit; //--------------------------------- IMPORTS ------------------------------------ import com.mapdigit.gis.MapPoint; import com.mapdigit.gis.geometry.GeoLa ...
可以通过RasterMap的getDirection()方法来查询路径,和查询地址类似,路径查询的结果也是通过回调函数的方式来通知应用程序的,下面的例子返回南京到北京的路径。返回结果存放在MapDirection中,MapDirection包含了路径的详细信息,包括路径的每个步骤,长度,时间,方向等。 //--------------------------------- PACKAGE ------------------------------------ package com.pstreets.gisengine.demo.lwuit; //----------------- ...
对于简单的封闭图形(路径无相交的现象),图形的外部和内部和容易判断,但如果路径有相交的情况,对应重叠的部分,使用不同的填充模式,内部和外部的定义有所不同。填充模式可以分为两类: EVEN_ODD 意味着如果用一条直线横贯图形时,外部和内部交替出现。 WINDING 对应一条曲线C和指定点P,创建一条由P出发的任意方向无限延伸的直线。找到曲线C和这条直线的所有交点。计算所有由顺时针方向和曲线相交的交点的个数,再计算由逆时针方向和曲线相交的个数,如果两个数相等,表示这个点在曲线内部,如果不等,表示这个点在曲线外部。 Android的Path.FillType除了支持上面两种模式外,还 ...
android.graphics.Path允许使用线段,二次曲线,三次曲线构成路径(类似SVG),Canvas缺省绘制Path时为单色细实线,但在例Android ApiDemos示例解析(65):Graphics->Drawable->ShapeDrawable 我们看到使用PathEffect来修改路径的模式(使用DiscretePathEffect随机更改线段的粗细)。 本例更详细的介绍了其它几种PathEffect的显示效果: CornerPathEffect 修改路径上线段连接处的显示模式(从尖角改为可以指定圆弧半径的圆角连接)。 DashPathEffect ...
引路蜂地图API中同样提供了地址查询,路径查询,本地搜索,IP地址查询,地址反编码(通过经纬度查地名)等。 地址查询(或称为地址编码)是将输入的地名(如南京林业大学)转换成对应的经纬度坐标然后将其显示在地图上。 package com.pstreets.gisengine.demo.lwuit; //--------------------------------- IMPORTS ------------------------------------ import com.mapdigit.gis.MapPoint; import com.pstreets.gisen ...
Canvas提供drawText,drawPostText在屏幕上显示文字,字体的类型和大小是通过设置paint 的属性来定义的。 Paint同时也提供了使用当前字体和大小绘制文字串时,文字在屏幕上占据的大小(宽度,高度,范围等)。 MeasureText 介绍了如何使用Paint提供的方法来测量文字的大小。 mPaint.setTextSize(64); mPaint.setTypeface(Typeface.create(Typeface.SERIF, Typeface.ITALIC)); ... int count = mPaint.getTextWidths(text, 0, ...
Canvas 在一般的情况下可以看作是一张画布,所有的绘图操作如drawBitmap, drawCircle都发生在这张画布上,这张画板还定义了一些属性比如Matrix,颜色等等。 但是如果需要实现一些相对复杂的绘图操作,比如多层动画,地图(地图可以有多个地图层叠加而成,比如:政区层,道路层,兴趣点层)。 Canvas提供了图层(Layer)支持,缺省情况可以看作是只有一个图层Layer。如果需要按层次来绘图,Android的Canvas可以使用SaveLayerXXX, Restore 来创建一些中间层,对于这些Layer是按照“栈结构“来管理的: 创建一个新的Layer到“栈”中, ...
RasterMap 有两个方法可以用于平移地图,panTo 将地图移动到指定经纬度坐标,panDirection(dx,dy) 将地图从当前位置平移dx,dy 个象素。 下列示例可以上,下,左,右平移地图。 package com.pstreets.gisengine.demo.lwuit; //-------------------------- ...
本例FingerPaint实现了使用手指在屏幕上任意涂鸦,支持颜色选择,多种画刷模式,并可以擦除部分绘图。 例子使用Path来通过onTouchEvent事件记录手指在屏幕上的绘制路线。 @Override public boolean onTouchEvent(MotionEvent event) { float x = event.getX(); float y = event.getY(); switch (event.getAction()) { case MotionEvent.ACTION_DOWN: touch_start(x, y); invalidate() ...
创建RasterMap实例之后,可以对其进行放大,缩小,平移,设置地图类型等操作。 在第一个地图应用中,在调用RasterMap.setCenter 时可以指定地图类型,另外也可以使用RasterMap.setMapType来更改地图类型,地图开发包中定义了Google 地图,Google 中国地图,Bing 地图,Bing 卫星图等20多种地图类型,也就可设置自已定义地图类型。 下面的例子顺序显示Google 中国地图,MapAbc地图,Bing 中国地图 //--------------------------------- PACKAGE ---------------------- ...
除了在XML中使用Shape Drawable 资源外(如上例),也可以使用代码来定义Shape Drawable,下图为Android中定义的Shape 类层次图: 如果熟悉二维图形开发,Path, Arc, Rect, Oval, RoundRect应该不陌生。 本例ShapeDrawable使用代码来创建各种ShapeDrawable 并自定义一个Shape :MyShapeDrawable. Android 中的 Shader 类同于其它平台的画刷Brush (可以由单色画刷,线性渐变画刷,材质bitmap画刷等)。 ShapeDrawable 中的几个例子,只有第四个Roun ...
Android平台的Drawable代表可以绘制在屏幕上的资源,可以使用getDrawable(int)从资源文件中获取Drawable 资源,或者在XML资源文件中采用 @drawable来引用一个drawable资源。 Drawable资源可以分为 Bitmap ,Nine-Patch, Layer List, State List, Level List, Transition ,Insert ,Clip ,Scale 和Shape 多种类型。 本例GradientDrawable 介绍了 Sharp Drawable资源的用法: Shape资源可以定义一个矩形 (rectangle ...
依旧采用NetBean作为开发IDE,创建一个LwuitGISEngineTutorial项目,将引路蜂地图开发包libgisengine.jar 和LWUIT开发包 LWUIT.jar复制到lib子目录下,并作为外部Jar库文件添加到项目中。将LWUITTheme.res 和 Licence文件guidebee.lic 放在res 子目录下,并将res目录添加到项目中。 为避免重复,就示例共用的代码设计一个基类,MapDemoLWUIT,并从LWUIT库的Form派生一个子类MapCanvas用来显示地图 //------------------------------------ ...
支持Android系统的手机的种类很多,每种手机的屏幕大小和分辨率可能有所不同(屏幕像素密度),Android系统提供了方法在这些有着不同大小,屏幕像素密度的手机上自动调整显示界面的布局和大小,同时Android也提供了相关API允许开发者针对不同的屏幕大小和显示密度来控制UI以便应用在不同配置的设备屏幕上都有良好的显示效果。 尽管Android系统提供了屏幕自适应功能可以解决大部分不同屏幕UI显示的问题,应用还是需要做一些能支持不同屏幕配置的工作,这样可以给最终用户在不同屏幕配置下都取的很好的用户体验。 在介绍本例之前,先解释一些术语: 屏幕大小(Screen Size): 设备屏幕的物 ...
LWUIT是Sun (现在是Oracle)推出的基于Java ME平台的一个UI开发包,类似于Swing的MVC构架,支持多种Layout,Theme,动画,3D过渡效果。个人认为是目前在Java ME上最好的UI工具包,而且是免费的。 引路蜂Java ME地图开发包,加上Gis.Drawing在LWUIT上的实现,可以开发出基于LWUIT的地图应用,支持多种地图类型,多图层管理,地理编码服务,地图位置匹配,查询路径以及电子导航等。 在Java ME平台上也可以直接使用javax.microedition.lcdui 开发MIDlet,Java ME引路蜂地图开发示例:第一个地图应用。由于L ...
Global site tag (gtag.js) - Google Analytics