pymammotion 0.0.42__tar.gz → 0.0.44__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pymammotion might be problematic. Click here for more details.
- {pymammotion-0.0.42 → pymammotion-0.0.44}/PKG-INFO +1 -1
- pymammotion-0.0.44/pymammotion/data/model/hash_list.py +40 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pyproject.toml +1 -1
- pymammotion-0.0.42/pymammotion/data/model/hash_list.py +0 -37
- {pymammotion-0.0.42 → pymammotion-0.0.44}/LICENSE +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/README.md +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/cloud_gateway.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/cloud_service.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/aep_response.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/connect_response.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/dev_by_account_response.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/login_by_oauth_response.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/regions_response.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/session_by_authcode_response.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/tmp_constant.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/ble.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/ble_message.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/const.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/data/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/data/convert.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/data/framectrldata.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/bluetooth/data/notifydata.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/const.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/device.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/enums.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/excute_boarder_params.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/execute_boarder.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/generate_route_information.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/location.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/mowing_modes.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/plan.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/rapid_state.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/region_data.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/mqtt/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/mqtt/event.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/mqtt/properties.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/mqtt/status.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/state_manager.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/event/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/event/event.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/http/_init_.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/http/http.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/abstract_message.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/mammotion_command.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/driver.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/media.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/navigation.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/network.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/ota.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/system.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/video.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/control/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/control/joystick.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/devices/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/devices/mammotion.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mqtt/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mqtt/mammotion_mqtt.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/common.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/common.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/common_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/common_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/dev_net.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/dev_net.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/dev_net_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/dev_net_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_msg.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_msg.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_msg_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_msg_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_mul.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_mul.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_mul_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/luba_mul_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_driver.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_driver.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_driver_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_driver_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_nav.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_nav.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_nav_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_nav_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_ota.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_ota.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_ota_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_ota_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_pept.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_pept.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_pept_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_pept_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_sys.proto +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_sys.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_sys_pb2.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/proto/mctrl_sys_pb2.pyi +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/py.typed +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/utility/constant/__init__.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/utility/constant/device_constant.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/utility/datatype_converter.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/utility/device_type.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/utility/periodic.py +0 -0
- {pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/utility/rocker_util.py +0 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
from dataclasses import dataclass
|
|
2
|
+
|
|
3
|
+
from pymammotion.proto.mctrl_nav import NavGetCommDataAck
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@dataclass
|
|
7
|
+
class FrameList:
|
|
8
|
+
total_frame: int
|
|
9
|
+
data: list[NavGetCommDataAck]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@dataclass
|
|
13
|
+
class HashList:
|
|
14
|
+
"""stores our map data.
|
|
15
|
+
[hashID, FrameList].
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
area: dict # type 0
|
|
19
|
+
path: dict # type 2
|
|
20
|
+
obstacle: dict # type 1
|
|
21
|
+
|
|
22
|
+
def update(self, hash_data: NavGetCommDataAck):
|
|
23
|
+
"""Update the map data."""
|
|
24
|
+
if hash_data.type == 0:
|
|
25
|
+
self._add_hash_data(self.area, hash_data)
|
|
26
|
+
|
|
27
|
+
if hash_data.type == 1:
|
|
28
|
+
self._add_hash_data(self.obstacle, hash_data)
|
|
29
|
+
|
|
30
|
+
if hash_data.type == 2:
|
|
31
|
+
self._add_hash_data(self.path, hash_data)
|
|
32
|
+
|
|
33
|
+
@staticmethod
|
|
34
|
+
def _add_hash_data(hash_dict: dict, hash_data: NavGetCommDataAck) -> None:
|
|
35
|
+
if hash_dict.get(hash_data.hash) is None:
|
|
36
|
+
hash_dict[hash_data.hash] = FrameList(total_frame=hash_data.total_frame, data=[hash_data])
|
|
37
|
+
|
|
38
|
+
hash_values = [item.hash for item in hash_dict[hash_data.hash].data]
|
|
39
|
+
if hash_data not in hash_values:
|
|
40
|
+
hash_dict[hash_data.hash].data.append(hash_data)
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
from dataclasses import dataclass
|
|
2
|
-
|
|
3
|
-
from pymammotion.proto.mctrl_nav import NavGetCommDataAck
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
@dataclass
|
|
7
|
-
class FrameList:
|
|
8
|
-
total_frame: int
|
|
9
|
-
data: list[NavGetCommDataAck]
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
@dataclass
|
|
13
|
-
class HashList:
|
|
14
|
-
"""stores our map data.
|
|
15
|
-
[hashID, FrameList].
|
|
16
|
-
"""
|
|
17
|
-
|
|
18
|
-
area: dict # type 0
|
|
19
|
-
path: dict # type 2
|
|
20
|
-
obstacle: dict # type 1
|
|
21
|
-
|
|
22
|
-
def update(self, hash_data: NavGetCommDataAck):
|
|
23
|
-
"""Update the map data."""
|
|
24
|
-
if hash_data.type == 0:
|
|
25
|
-
if self.area.get(hash_data.hash) is None:
|
|
26
|
-
self.area[hash_data.hash] = FrameList(total_frame=hash_data.total_frame, data=[hash_data])
|
|
27
|
-
self.area[hash_data.hash].data.append(hash_data)
|
|
28
|
-
|
|
29
|
-
if hash_data.type == 1:
|
|
30
|
-
if self.obstacle.get(hash_data.hash) is None:
|
|
31
|
-
self.obstacle[hash_data.hash] = FrameList(total_frame=hash_data.total_frame, data=[hash_data])
|
|
32
|
-
self.obstacle[hash_data.hash].data.append(hash_data)
|
|
33
|
-
|
|
34
|
-
if hash_data.type == 2:
|
|
35
|
-
if self.path.get(hash_data.hash) is None:
|
|
36
|
-
self.path[hash_data.hash] = FrameList(total_frame=hash_data.total_frame, data=[hash_data])
|
|
37
|
-
self.path[hash_data.hash].data.append(hash_data)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/dev_by_account_response.py
RENAMED
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/aliyun/dataclass/login_by_oauth_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/data/model/generate_route_information.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/abstract_message.py
RENAMED
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/mammotion_command.py
RENAMED
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/navigation.py
RENAMED
|
File without changes
|
{pymammotion-0.0.42 → pymammotion-0.0.44}/pymammotion/mammotion/commands/messages/network.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|