mirror of
https://github.com/TheFunny/ArisuAutoSweeper
synced 2026-10-18 03:32:18 +00:00
feat: add cached_property for OCR initialization in draggable_list
This commit is contained in:
@@ -4,6 +4,7 @@ import numpy as np
|
|||||||
|
|
||||||
from module.base.base import ModuleBase
|
from module.base.base import ModuleBase
|
||||||
from module.base.button import ButtonWrapper
|
from module.base.button import ButtonWrapper
|
||||||
|
from module.base.decorator import cached_property
|
||||||
from module.base.timer import Timer
|
from module.base.timer import Timer
|
||||||
from module.base.utils import area_size, random_rectangle_vector_opted
|
from module.base.utils import area_size, random_rectangle_vector_opted
|
||||||
from module.logger import logger
|
from module.logger import logger
|
||||||
@@ -67,6 +68,10 @@ class DraggableList:
|
|||||||
def __hash__(self):
|
def __hash__(self):
|
||||||
return hash(self.name)
|
return hash(self.name)
|
||||||
|
|
||||||
|
@cached_property
|
||||||
|
def ocr(self):
|
||||||
|
return self.ocr_class(self.search_button)
|
||||||
|
|
||||||
def keyword2index(self, row: Keyword) -> int:
|
def keyword2index(self, row: Keyword) -> int:
|
||||||
try:
|
try:
|
||||||
return self.known_rows.index(row) + 1
|
return self.known_rows.index(row) + 1
|
||||||
@@ -88,8 +93,7 @@ class DraggableList:
|
|||||||
"""
|
"""
|
||||||
Parse current rows to get list position.
|
Parse current rows to get list position.
|
||||||
"""
|
"""
|
||||||
self.cur_buttons = self.ocr_class(self.search_button) \
|
self.cur_buttons = self.ocr.matched_ocr(main.device.image, self.keyword_class)
|
||||||
.matched_ocr(main.device.image, self.keyword_class)
|
|
||||||
# Get indexes
|
# Get indexes
|
||||||
indexes = [self.keyword2index(row.matched_keyword)
|
indexes = [self.keyword2index(row.matched_keyword)
|
||||||
for row in self.cur_buttons]
|
for row in self.cur_buttons]
|
||||||
|
|||||||
Reference in New Issue
Block a user