if!only_to_shm if !only_set_room 更新地图对象中缓存的区域信息 LDObjectSendMSGPOINT_TO_POINT_REQUEST_UPDATE_AREA_INFO OBJECT_ID_MAP_SEND area_json; LOGDupdate area_info s ar
if (!only_to_shm) { //更新地图对象中缓存的区域信息 LDObject::SendMSG(POINT_TO_POINT_REQUEST_UPDATE_AREA_INFO, OBJECT_ID_MAP_SEND, area_json); LOGD("update area_info: %s", area_json.toStyledString().c_str()); AreaData::SetUserAreaTactics(area_json); AreaData::UpdateTotalAreas(area_container, area_json);
if (!only_set_room) {
AreaData::UpdateTotalAutoAreas(area_container, area_json);
AreaData::UpdateTotalForbidAreas(area_container, area_json);
if (update_extra_area) {
//单次清扫的区域由于在刷新设置区域的时候被覆盖掉,所以一般场景下不要去刷新单次清扫的区域,避免指哪扫哪暂停的时候添加区域导致单次区域丢失
AreaData::UpdateTotalExtraAreas(area_container, area_json);
}
Json::Value tmp_json;
AreaData::ActiveForibidArea(tmp_json);
}
原文地址: https://www.cveoy.top/t/topic/egNU 著作权归作者所有。请勿转载和采集!