Teechart图表应用技术详解—第五章之TeeChart的地图显示原理和代码设计思路
Steema公司和慧都科技针对中国市场联合推出中文版TeeChart for .NET图表控件,一共汉化2000个词条(17000个单词),汉化文档35000个单词,包括控件设计时与运行时的界面汉化以及控件使用向导文档的汉化,总汉化90%以上!
TeeChart for .NET中文版让您在使用和学习上没有任何语言障碍,至少可以节省30%的开发时间。TeeChart for .NET中文版具有易上手,使用方便,稳定性好,性价比高,价格优惠等优势,并且针对Web应用提供无限制服务器分发授权方式,非常有利于产品集成。
TeeChart的地图显示原理
TeeChart提供的序列类型包含了 TMapSeries类用于地图的显示和管理。所谓地图,就是由若干个不规则多边形构成的封闭区域,并以不同的颜色予以区分和说明文字进行标注,形成一个指定区域的地图。
根据地图的几何特征和应用中的基本需求, TeeChart的TMapSeries序列是由Shapes:TTeePolygonList多边形列表对象构成的(若干个多边型),而这个列表中的每-Shape是一
个多边形对象Polygon:TTeePolygon,也就是说地图上的一个多边形区域可以使用一个Polygon对象来描述,如下图所示。另外,利用序列的Maks属性可以标注区域的属性如名称、面积等,这样,将 TMapseries的Shapes属性和Maks属性结合起来就可以描述一幅地图的基本特征。
代码设计思路
在TMapSeries对象中,Shapes属性的Polygon属性提供了有关区城绘制的方法AddXY区域原色设定属性Color和文本标注属性Text,用这三个属性和方法就可以绘制出地图的基本特征。为了程序设计方便,可以将绘制和标注区域名称的任务编写为一个过程供程序设计时调用,代码如下:
procedure TForm1.AddShape(X, Y:array of integer; Color:TColor; Labels:String); var i,tmpIndex: integer; begin tmpIndex:=Series1.Shapes.Count; Serie1.Shapes.Add; /先增加一个 Shape,为绘制区域做准备 for i:=0 to High(X) do Series1.Shapes.Polygon [tmpIndex].AddXY(X[i],Y[i]);//绘制区域 Series1.Shapes.Polygon [tmpIndex].Color:=Color;//设定颜色 Series1.Shapes.Polygon [tmpIndex].Text :=Labels;//设定标签 Series1.Shapes.Polygon [tmpIndex].Z:=Random;//随机产生一个z值 end;
需要注意的是,每个多边形区域各点的坐标分别放在X、Y两个不同的数组里,利用Polygon[ tmplndex].AddXY()绘制多边形区域;调用 Polygon[tmplndex]前这个Shape必须存在,所以,首次绘制时需调用Shapes对象的Add方法增加一个空的Shape,Shape对象的Count方法是用来计算目前Shapes对象中含有几个Shape的。这样就可以完成地图区域的绘制工作了。
相关资料推荐:
上一章:使用极值控制实现实时监控
=====================================
现TeeChart for .NET,TeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在线订购,现在抢购可立享优惠!
关注慧聚IT微信公众号???,了解产品的最新动态及最新资讯。