Bug修复
- HDMAPMDK-1215完成
- HDMAPMDK-1218 Done
按天翻看 2020 年的工作日志。
61 则 第 5 / 7 页
HDMAPMDK-1132 杆牌车道线端点的 id tracing
杆牌车道线端点面临的tracing问题相比较于线性object的tracing十分简单,只存在Id的映射,而没有offset和length的映射。
然而要考虑的问题也不少:
本质上这个问题的根源在于,我们在定义Id的时候全部使用了Long Id,而MDM的定义中使用了Int,很有可能造成溢出问题。
Bugfix: HDMAPMDK-1211 想到解法
可以看到,在车道变道还没有结束时(车道中心线正在跨越车道线),就已经进行了切分,且这种切分是有可能跨越Rp的。
由于附着在lanecenter形状点上的lane border观测信息会忠实地根据几何,利用scan line的方式将两侧的车道线记录下来,没有根据语再过滤。因此在车道线跨越车道的位置,与车道线相交的车道中心线会将该车道线同时记录在左右lane border ref上
在现有的代码逻辑下,根据语义对相交车道线的border ref进行过滤时会根据车道变道类型推断出待删除的border ref
而当前逻辑在碰到这类切分的时候失效,从而导致这个问题。
核心点在于找到相交车道线的变道趋势,考虑到这类切分可能跨越rp,因此过滤不应当以rp为单位进行。
交给了子良做
面试一人没过
PolyLine的问题主要在于有可能在PolyLine生成的时候给重复点进去,从而导致一系列几何有关segment的计算问题:
于是在构造PolyLine时,对PolyLine中的点进行检查,如果有发现重复点,就抛出异常
检查出下列问题:
Jts中getEnd出现问题
Jts LinearLocation会存在normalize的问题
val loc1 = new LinearLocation(0, 1, 1.0)
val loc2 = new LinearLocation(0, 2, 0.0)
loc1 compareTo loc2
// the output is -1
Interpolate的时候有可能会取到两个过于近的点
解决方案:核心在于不允许野指针存在,决定对NaviEventProvider做一个重构
PathReader::getAttributes,原因在于之前的实现只考虑了相对于当前车的offset,现在需要一个相对于Path的Offset接口考了科一用了半天时间
HDMAPMDK-1130 宽度问题,三个问题
HDMAPMDK-1121重新修复
状态极差