addDistrictOutline abstract method
添加地区轮廓
地区名称districtName
, 轮廓宽度width
, 轮廓颜色strokeColor
, 填充颜色fillColor
由于一个省份可能包含多个区域, 比如浙江包含很多岛屿, 如果把岛屿也画进去, 那么会非常消耗性能.
业务上而言, 我认为这些岛屿是否画进去基本上不影响使用, 所以增加了onlyMainDistrict
参数
来控制是否只显示主要部分的边界, 如果你对地区完整度的需求非常高, 那么就把onlyMainDistrict
设置为false, 随之而来像浙江这种地区的边界绘制起来就会非常慢.
我的测试结果是MIX 3, release模式下需要5-6秒才能绘制完成.
采样率sampleRate
可以控制经纬度列表的密度, 如果地区边界的经纬度列表长度非常长, 造成了卡顿,
那么可以把采样率调低一点, 这样画出来的区域可能没有采样率为1时那么精确, 但是减小了经纬度列表长度,
可以提升绘制速度.
Implementation
Future<List<IPolygon>> addDistrictOutline(
String districtName, {
double width = 5,
Color strokeColor = Colors.green,
Color fillColor = Colors.transparent,
bool onlyMainDistrict = true,
double sampleRate = 1.0,
});