我使用的是HERE流量API,例如:
http://traffic.cit.api.here.com/traffic/6.0/incidents.xml?bbox=43.8,-79.5;43.6,-79.4&app_id=DemoAppId01082013GAL&app_code=AJKnXv84fjrb0KIHawS0Tg&status=active&maxresults=50
XML返回:
...
<RDS-TMC>
<ORIGIN>
<EBU_COUNTRY_CODE>C</EBU_COUNTRY_CODE>
<TABLE_ID>9</TABLE_ID>
<LOCATION_ID>04184</LOCATION_ID>
<LOCATION_DESC>DUFFERIN ST/EXIT 364</LOCATION_DESC>
<RDS_DIRECTION>-</RDS_DIRECTION>
</ORIGIN>
<TO>
<EBU_COUNTRY_CODE>C</EBU_COUNTRY_CODE>
<TABLE_ID>9</TABLE_ID>
<LOCATION_ID>04187</LOCATION_ID>
<LOCATION_DESC>HWY-11A/AVENUE RD/EXIT 367</LOCATION_DESC>
<RDS_DIRECTION>-</RDS_DIRECTION>
</TO>
<DIRECTION>+</DIRECTION>
<ALERTC>
<TRAFFIC_CODE>701</TRAFFIC_CODE>
<QUANTIFIERS>0</QUANTIFIERS>
<DESCRIPTION>(Q) (--//set of//sets of) roadwork</DESCRIPTION>
<ALERTC_DURATION>L</ALERTC_DURATION>
<ALERTC_DIRECTION>1</ALERTC_DIRECTION>
<UPDATE_CLASS>11</UPDATE_CLASS>
<PHRASE_CODE>E1</PHRASE_CODE>
<EXTENT>3</EXTENT>
<DURATION>0</DURATION>
</ALERTC>
</RDS-TMC>
...
是否有API可以将RDS-TMC截面信息转换为几何图形(点):例如:
<Path><Point lat,long /><Point lat,long />[snip]<Point lat,long /><Point lat,long /></Path>
返回道路几何图形(lat、long)的任何内容都可以。谢谢你的帮助。
发布于 2014-05-04 20:11:04
你能在geoloc/原点中使用纬度和经度元素吗?也许可以把这些存储在一个查询表中?我知道并非所有元素都存在,因此您可能还需要在Geocoding API中使用Street Intersection Gecoding。可从Enterprise Routing API获得Street geometry
发布于 2017-07-10 03:47:49
我不知道有什么API可以完全满足您的需求(不过,我对HERE服务不是很熟悉,所以我可能遗漏了一些东西)。
您发布的XML看起来像一条解码的TMC消息,其中的<origin>
和<to>
元素描述了受影响路由的开始和结束。为了在像RDS这样的低带宽连接上工作,TMC只传输16位的位置代码,其余的都依赖于接收器中的查找表;这里似乎是通过解析eqach位置的描述来为您做一些工作。
每个元素中的三个元素唯一地标识位置:<ebu_country_code>
和<table_id>
标识location表,<location_id>
标识该表中的唯一位置。您可以通过获取位置表(更确切地说,每个要覆盖的区域对应一个位置表)将其解码为坐标。这将为<origin>
和<to>
各得1分。对于较长的路段,在这两个点之间有额外的TMC位置,您可以走一遍表格并获得这些位置(在高速公路上,每个交叉口和每个休息区通常都有一个位置)。然而,它仍然不会给你一个完整的道路几何图形-你需要使用地图数据。
TMC位置数据集源的列表(但不是详尽的)是here。
https://stackoverflow.com/questions/23434984
复制相似问题