TOP

含百万/千万图元的可缩放矢量图形(SVG)的优化显示和处理
2014-01-20 17:19:40 来源: 作者: 【 】 浏览:8147
赛题简介:介绍整个赛题的思路和整体要求      本赛题为含百万/千万图元的可缩放矢量图形(SVG)的优化显示和处理。 
      可缩放矢量图形(Scalable  Vector Graphics,SVG)是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式。由于其开放性,目前已广泛应用于数据交换,图形显示等领域。随着其进一步的深入发展,用于展示的SVG所含图元个数量也在进一步膨胀,例如对于像基于地理信息系统GIS的应用,常常会含百万至千万级别的SVG图元。为了在普通PC机器或机器集群上能够实现含大数量级图元信息的SVG图形显示,缩放、查询信息功能,需要对SVG图形的内部表示方式、显示渲染方式、缩放计算方法能方面做数据结构、算法上的研究。 
      图形显示和渲染的速度要能满足人机交互的要求,对于百万/千万级图元的SVG图形显示处理,需要考虑能在性能较高的单台PC机完成,如有可能对于千万级以上的SVG的SVG图形显示,处理可以使用多台PC机的集群完成。
赛题业务场景:描述赛题相关的真实企业业务背景。从真实场景中,适当简化或者提炼出适合比赛的赛题场景      本企业从事电力系统及工业自动化领域方面的产品制造、解决方案提供和工程实施工作,在电力系统中图形交互中越来越多的采用SVG图形格式,特别是在配网自动化方面,要求将地理信息系统图形信息和电力输电线、电力配电设备等信息统一到一份SVG图形中用于交换数据和显示,对于电力设备和相关配电系统要能够根据实时状况进行渲染。 
      考虑到软件大赛的要求,适合比赛的赛题场景如下: 
      可以事先准备好SVG图形库,一部分发给参赛团队,供其研究对其的显示缩放的优化算法。在比赛现场,可以再提供一部分SVG,供实际比赛评判用。
功能性需求      能够正确根据座标定义显示缩放SVG图形
      1)SVG图形定义了6种基本图形元素:矩形、圆、椭圆、线段、折线、多边形以及用PATH描述的复杂线条形状。这里,每一种基本图形元素称为一个图元。对于这些图元,还可以附加风格样式(主要是填充、描边等)。系统参赛作品系统(下称系统)应该可以正确显示这些图元。图元的渐变等渲染效果可以暂不考虑。 
      2)SVG可以定义组合图元,而图元的声明则实例化了一个图元类型。要求对于组合图元能够正确显示,并可以对图元对象进行搜索,例如以下是一个发电机的图元定义 
      <properties  description=’generator’ status=’on’/>
      系统应该可以允许用户搜索定位此类形图元,并在图形上标示出来。 
      3)组合图元的图元量级可以计为其包含的基本图形元素的数目。 
      4)系统能够显示百万、千万级别的图元图形,可以对其进行缩放处理,处理速度满足人机交互对处理时延的要求。 
      5)在千万级别及以上情况下,要求根据需要,展示到给定粒度的细节。以中国地图为例,当展示全国地图时,一般需要展示省界,主要河流等信息;当缩放至城市时,一般要显示城市主要街道,景点等信息。在本赛题中,会给出展示大小在某一级别时要展示的图元有那些,如当缩放至’generator’,那么相应的’generator’接线等信息就需要展示。 
  参考硬件平台: 
  Inspiron 灵越™ 660
  
  1. 英特尔® 酷睿™ i5-3340 处理器  (6M 缓存)

  2. 4GB DDR3 SDRAM, 1600MHz-1X4GB

  3. 3.5" 1TB 7200RPM SATA 硬盘, 1X1TB

  4. Nvidia GeForce GT 620 

      本赛题要求提供算法以优化显示展示速度,为方便评分时间要求均以为参考硬件平台运行为准;如使用非大赛用机和上述硬件平台不同,可以重点关注CPU,内存情况,等同或好于下述硬件即可。 
  功能评分要求: 
      以下每个功能点均要有相应的需求分析和设计文档;文档占各功能点总分的30%。 
  
  1. 通过DOM或SAX等方式正确解析SVG文件,并转化为便于后期处理使用的内部结构(15分) 

  2. 渲染上述的6种SVG基本图元,包括常见的填充、线型等属性的处理。(25分) 

  3. 按给定的高宽,截取,显示SVG图形的一部分内容,并考查相应的优化算法。(20分) 

  4. SVG图形的缩放及其优化处理,要求处理百万图元情况下,在上述标准硬件平台上的时间小于10秒钟。(30分) 

      千万级SVG的SVG图形显示,要求采用3台PC机做集群,用CLIENT-SERVER方式向客户端提供SVG图形的数据,供其显示,客户端在显示时需要展示到给定粒度的细节。(10分)
非功能性需求    对于百万级别SVG图形,系统占用内存不大于2GB。对于使用Intel I7 平台,CPU  5 分钟平均占用率应该小于30%,人机交互UI优美,使用方便。
其他限制条件:开发环境、实验平台、开发语言、数据库、编译器等限制条件    为方便较广泛的参与和实际应用,实验平台为Windows,开发语言为C++,编译器采用Visual Studio 2010,但应该注意目标效率是否能达到。开发图形库采用可以跨Windows、Linux平台的图形库,如QT。
测试数据或平台:提供给参赛者的测试环境和测试数据。(可提供电子档) 

data.rar

其他要求 
关键字: 责任编辑:cnsoft
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到QQ空间
分享到: 
上一篇数据挖掘可视化技术 下一篇移动端(安卓或IOS)物品识别

相关栏目