batoolset 0.1.0__py3-none-any.whl

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.
Files changed (162) hide show
  1. batoolset/GUI/__init__.py +0 -0
  2. batoolset/GUI/list_gui.py +513 -0
  3. batoolset/GUI/multi_image_display.py +989 -0
  4. batoolset/GUI/open.py +325 -0
  5. batoolset/GUI/overlay_hints.py +45 -0
  6. batoolset/GUI/paint2.py +1345 -0
  7. batoolset/GUI/scrollablepaint.py +1152 -0
  8. batoolset/IJ_ROIs/__init__.py +0 -0
  9. batoolset/IJ_ROIs/tools.py +40 -0
  10. batoolset/PATH/__init__.py +0 -0
  11. batoolset/PATH/tools.py +79 -0
  12. batoolset/SQLite_tools/__init__.py +0 -0
  13. batoolset/SQLite_tools/tools.py +840 -0
  14. batoolset/__init__.py +0 -0
  15. batoolset/binary/__init__.py +0 -0
  16. batoolset/binary/tools.py +123 -0
  17. batoolset/binarytools/__init__.py +0 -0
  18. batoolset/binarytools/cell_center_detector.py +290 -0
  19. batoolset/clipboard_tools/__init__.py +0 -0
  20. batoolset/clipboard_tools/tools.py +7 -0
  21. batoolset/colors/__init__.py +0 -0
  22. batoolset/colors/colorgen.py +193 -0
  23. batoolset/colors/tools.py +22 -0
  24. batoolset/command_line/__init__.py +0 -0
  25. batoolset/command_line/tools.py +18 -0
  26. batoolset/dialogs/__init__.py +0 -0
  27. batoolset/dialogs/opensave.py +228 -0
  28. batoolset/dicts/__init__.py +0 -0
  29. batoolset/dicts/tools.py +299 -0
  30. batoolset/dims/__init__.py +0 -0
  31. batoolset/dims/tools.py +83 -0
  32. batoolset/draw/__init__.py +0 -0
  33. batoolset/draw/shapes/Position.py +183 -0
  34. batoolset/draw/shapes/__init__.py +0 -0
  35. batoolset/draw/shapes/automated_alignment_drawing_refactored.py +346 -0
  36. batoolset/draw/shapes/circle2d.py +99 -0
  37. batoolset/draw/shapes/compute_optimal_size_all_merged.py +317 -0
  38. batoolset/draw/shapes/ellipse2d.py +336 -0
  39. batoolset/draw/shapes/freehand2d.py +235 -0
  40. batoolset/draw/shapes/group.py +1830 -0
  41. batoolset/draw/shapes/image2d.py +2469 -0
  42. batoolset/draw/shapes/line2d.py +575 -0
  43. batoolset/draw/shapes/point2d.py +257 -0
  44. batoolset/draw/shapes/polygon2d.py +357 -0
  45. batoolset/draw/shapes/polyline2d.py +235 -0
  46. batoolset/draw/shapes/rect2d.py +388 -0
  47. batoolset/draw/shapes/rectangle2d.py +601 -0
  48. batoolset/draw/shapes/scalebar.py +304 -0
  49. batoolset/draw/shapes/serializablefont.py +126 -0
  50. batoolset/draw/shapes/serializableguiparams.py +10 -0
  51. batoolset/draw/shapes/square2d.py +103 -0
  52. batoolset/draw/shapes/textorientation.py +45 -0
  53. batoolset/draw/shapes/tools.py +467 -0
  54. batoolset/draw/shapes/transform2D.py +350 -0
  55. batoolset/draw/shapes/txt2d.py +550 -0
  56. batoolset/draw/widgets/__init__.py +0 -0
  57. batoolset/draw/widgets/col.py +343 -0
  58. batoolset/draw/widgets/image_group.py +248 -0
  59. batoolset/draw/widgets/image_organizer.py +96 -0
  60. batoolset/draw/widgets/paint.py +184 -0
  61. batoolset/draw/widgets/vectorial.py +257 -0
  62. batoolset/figure/__init__.py +0 -0
  63. batoolset/figure/alignment.py +814 -0
  64. batoolset/figure/column.py +1117 -0
  65. batoolset/figure/fig_tools.py +285 -0
  66. batoolset/figure/minimal_debugger_scale_etc.py +139 -0
  67. batoolset/figure/panel.py +697 -0
  68. batoolset/figure/row.py +852 -0
  69. batoolset/figure/user_selection.py +287 -0
  70. batoolset/files/__init__.py +0 -0
  71. batoolset/files/tools.py +1321 -0
  72. batoolset/images/__init__.py +0 -0
  73. batoolset/images/tools.py +81 -0
  74. batoolset/img.py +5216 -0
  75. batoolset/linux/__init__.py +0 -0
  76. batoolset/linux/tools.py +72 -0
  77. batoolset/lists/__init__.py +0 -0
  78. batoolset/lists/tools.py +436 -0
  79. batoolset/luts/__init__.py +0 -0
  80. batoolset/luts/lut_minimal_test.py +1207 -0
  81. batoolset/matplolib/__init__.py +0 -0
  82. batoolset/matplolib/tools.py +44 -0
  83. batoolset/np_tools/__init__.py +0 -0
  84. batoolset/np_tools/tools.py +252 -0
  85. batoolset/np_tools/trash.py +15 -0
  86. batoolset/pandas_tools/__init__.py +0 -0
  87. batoolset/pandas_tools/tools.py +880 -0
  88. batoolset/partials/__init__.py +0 -0
  89. batoolset/partials/tools.py +83 -0
  90. batoolset/plot_tools/__init__.py +0 -0
  91. batoolset/plot_tools/tools.py +70 -0
  92. batoolset/pyqt/__init__.py +0 -0
  93. batoolset/pyqt/tools.py +691 -0
  94. batoolset/re_tools/__init__.py +0 -0
  95. batoolset/re_tools/tools.py +35 -0
  96. batoolset/serialization/__init__.py +0 -0
  97. batoolset/serialization/tools.py +1192 -0
  98. batoolset/sets/__init__.py +0 -0
  99. batoolset/sets/tools.py +109 -0
  100. batoolset/settings/__init__.py +0 -0
  101. batoolset/settings/global_settings.py +134 -0
  102. batoolset/strings/__init__.py +0 -0
  103. batoolset/strings/tools.py +225 -0
  104. batoolset/ta/__init__.py +0 -0
  105. batoolset/ta/database/__init__.py +0 -0
  106. batoolset/ta/database/advanced_sql_plotter.py +1170 -0
  107. batoolset/ta/database/my_qt_table.py +79 -0
  108. batoolset/ta/database/preview_and_edit_sqlite_db.py +405 -0
  109. batoolset/ta/database/sql.py +2141 -0
  110. batoolset/ta/database/sql_column_name_dialog.py +122 -0
  111. batoolset/ta/measurements/TAmeasures.py +2226 -0
  112. batoolset/ta/measurements/__init__.py +0 -0
  113. batoolset/ta/measurements/measurements3D/__init__.py +0 -0
  114. batoolset/ta/measurements/measurements3D/get_point_on_surface_if_centroid_is_bad.py +175 -0
  115. batoolset/ta/measurements/measurements3D/height_map_to_projection.py +82 -0
  116. batoolset/ta/measurements/measurements3D/measures3D.py +208 -0
  117. batoolset/ta/measurements/measurements3D/triangulate.py +331 -0
  118. batoolset/ta/measurements/nematic.py +562 -0
  119. batoolset/ta/measurements/nematic_measurements.py +107 -0
  120. batoolset/ta/segmentation/__init__.py +0 -0
  121. batoolset/ta/segmentation/neo_wshed.py +314 -0
  122. batoolset/ta/selections/__init__.py +0 -0
  123. batoolset/ta/selections/selection.py +329 -0
  124. batoolset/ta/tracking/__init__.py +0 -0
  125. batoolset/ta/tracking/last_tracking_based_on_matching_or_on_translation_from_mermaid_warp.py +653 -0
  126. batoolset/ta/tracking/local_to_track_correspondance.py +138 -0
  127. batoolset/ta/tracking/rapid_detection_of_vertices.py +517 -0
  128. batoolset/ta/tracking/registration.py +108 -0
  129. batoolset/ta/tracking/swap_detector_and_fixer.py +296 -0
  130. batoolset/ta/tracking/track_correction.py +238 -0
  131. batoolset/ta/tracking/tracking_error_detector_and_fixer.py +3099 -0
  132. batoolset/ta/tracking/tracking_yet_another_approach_pyramidal_registration_n_neo_swapping_correction.py +725 -0
  133. batoolset/ta/utils/TA_tools.py +43 -0
  134. batoolset/ta/utils/__init__.py +0 -0
  135. batoolset/ta/utils/rps_tools.py +1783 -0
  136. batoolset/tests/__init__.py +0 -0
  137. batoolset/tests/rps_tools.py +51 -0
  138. batoolset/tests/tools.py +10 -0
  139. batoolset/tools/__init__.py +0 -0
  140. batoolset/tools/early_stopper_class.py +9 -0
  141. batoolset/tools/guided_data_recoverer.py +110 -0
  142. batoolset/tools/logger.py +100 -0
  143. batoolset/tools/mytimer.py +31 -0
  144. batoolset/tools/prompt_color.py +160 -0
  145. batoolset/tools/qthandler.py +118 -0
  146. batoolset/uitools/__init__.py +0 -0
  147. batoolset/uitools/blinker.py +56 -0
  148. batoolset/unsafe/__init__.py +0 -0
  149. batoolset/unsafe/tools.py +115 -0
  150. batoolset/utils/__init__.py +0 -0
  151. batoolset/utils/commontools.py +158 -0
  152. batoolset/utils/loadlist.py +728 -0
  153. batoolset/version.py +10 -0
  154. batoolset/xml/__init__.py +0 -0
  155. batoolset/xml/tools.py +65 -0
  156. batoolset/zip_tools/__init__.py +0 -0
  157. batoolset/zip_tools/tools.py +76 -0
  158. batoolset-0.1.0.dist-info/LICENSE +24 -0
  159. batoolset-0.1.0.dist-info/METADATA +45 -0
  160. batoolset-0.1.0.dist-info/RECORD +162 -0
  161. batoolset-0.1.0.dist-info/WHEEL +5 -0
  162. batoolset-0.1.0.dist-info/top_level.txt +1 -0
batoolset/version.py ADDED
@@ -0,0 +1,10 @@
1
+ __MAJOR__ = 0
2
+ __MINOR__ = 1
3
+ __MICRO__ = 0
4
+ __RELEASE__ = '' # a #b # https://www.python.org/dev/peps/pep-0440/#public-version-identifiers --> alpha beta, ...
5
+ __VERSION__ = ''.join([str(__MAJOR__), '.', str(__MINOR__), '.', str(__MICRO__)])
6
+ __DESCRIPTION__= """An aggregate of functions I find useful"""
7
+ __URL__='https://github.com/baigouy/batoolset'
8
+
9
+ __EMAIL__ = 'benoit.aigouy@gmail.com'
10
+ __AUTHOR__ = 'Benoit Aigouy'
File without changes
batoolset/xml/tools.py ADDED
@@ -0,0 +1,65 @@
1
+ import xml.etree.ElementTree as ET
2
+
3
+ from batoolset.files.tools import get_consolidated_filename_from_parent
4
+
5
+
6
+ def _replace_filename_tags(file_path):
7
+ # just a small trick to allow template mode in PyFigures
8
+ # Parse the XML file
9
+ tree = ET.parse(file_path)
10
+ root = tree.getroot()
11
+
12
+ # Find the <filename> tags and replace their content with '@template@'
13
+ for elem in root.iter('filename'):
14
+ if elem.text and elem.text !='None':
15
+ elem.text = '""@template@""'
16
+
17
+ # Overwrite the original file with the modified XML
18
+ tree.write(file_path)
19
+
20
+
21
+ # def _remove_insets(file_path):
22
+ # # just a small trick to allow template mode in PyFigures
23
+ # # Parse the XML file
24
+ # tree = ET.parse(file_path)
25
+ # root = tree.getroot()
26
+ #
27
+ # # Find the <annotations> tag
28
+ # annotations_tag = root.find('annotations')
29
+ # print('annotations_tag', annotations_tag)
30
+ # if annotations_tag is not None:
31
+ # # Iterate over its children and remove the <image2D> tags
32
+ # for elem in annotations_tag.iter('Image2D'):
33
+ # print('removing', elem)
34
+ # annotations_tag.remove(elem)
35
+ #
36
+ # # Overwrite the original file with the modified XML
37
+ # tree.write(file_path)
38
+
39
+
40
+
41
+
42
+ def _update_filename_of_consolidated_files(file_path, xml_string):
43
+ # just a small trick to allow template mode in PyFigures
44
+ # Parse the XML file
45
+ # tree = ET.parse(file_path)
46
+ root = ET.fromstring(xml_string)
47
+ # root = tree.getroot()
48
+
49
+ # Find the <filename> tags and replace their content with '@template@'
50
+ for elem in root.iter('filename'):
51
+ # elem.text = '""@template@""'
52
+ if elem.text == 'None':
53
+ continue
54
+
55
+ value = elem.text
56
+ if isinstance(value, str) and value.startswith('""') and value.endswith('""'):
57
+ value = value[2:-2]
58
+ elem.text = f'""{get_consolidated_filename_from_parent(value,file_path)}""'
59
+
60
+ # Overwrite the original file with the modified XML
61
+ # tree.write(file_path)
62
+ # Convert the modified XML back to a string
63
+ xml_string = ET.tostring(root, encoding='unicode') # encoding='unicode' returns a string, otherwise it returns a bytes object
64
+
65
+ return xml_string
File without changes
@@ -0,0 +1,76 @@
1
+ import gzip
2
+ import shutil
3
+ import os
4
+ import subprocess
5
+ from timeit import default_timer as timer
6
+ from batoolset.files.tools import smart_name_parser
7
+
8
+ def compress_file_using_python(file_path, output_name=None):
9
+ """
10
+ Compresses the specified file using gzip compression.
11
+
12
+ Args:
13
+ file_path (str): The path to the file to be compressed.
14
+ output_name (str, optional): The name of the compressed output file. If not provided, a default name is generated.
15
+ """
16
+ if output_name is None:
17
+ output_name = os.path.splitext(file_path)[0] + '.gz'
18
+ os.makedirs(smart_name_parser(output_name, 'parent'), exist_ok=True)
19
+ with open(file_path, 'rb') as f_in:
20
+ with gzip.open(output_name, 'wb') as f_out:
21
+ shutil.copyfileobj(f_in, f_out)
22
+
23
+
24
+ def compress_file_3rd_party(file_path, output_path=None):
25
+ """
26
+ Compresses the specified file using system gzip compression.
27
+
28
+ Args:
29
+ file_path (str): The path to the file to be compressed.
30
+ output_path (str, optional): The path to the output file. If not provided, a default path is generated.
31
+ """
32
+ if output_path is None:
33
+ output_path = file_path + '.gz'
34
+
35
+ command = ['gzip', '-c', file_path]
36
+ print('running: ' + ' '.join(command) + ' > ' + output_path)
37
+ # create dirs if not exist
38
+ os.makedirs(smart_name_parser(output_path, 'parent'), exist_ok=True)
39
+ subprocess.run(['gzip', '-c', file_path], stdout=open(output_path, 'wb'))
40
+
41
+
42
+ if __name__ == '__main__':
43
+
44
+ if True:
45
+ # do a real compression of a real file
46
+ start = timer()
47
+ file_path = '/D/hiC_microC/hiC_data_fub1_n_ctrl/mapped.pairs'
48
+ output_name = '/D/hiC_microC/hiC_data_fub1_n_ctrl/12-16.txt.gz'
49
+ compress_file_3rd_party(file_path, output_name)
50
+ print(timer() - start)
51
+ import sys
52
+
53
+ sys.exit(0)
54
+
55
+ if False:
56
+ # very slow --> only for small files
57
+ start = timer()
58
+ file_path = '/D/hiC_microC/hiC_data_fub1_n_ctrl/mapped.txt'
59
+ compress_file_using_python(file_path)
60
+ print(timer() - start)
61
+
62
+ start = timer()
63
+ output_name = '/D/hiC_microC/hiC_data_fub1_n_ctrl/tutu/mapped2.txt.gz'
64
+ compress_file_using_python(file_path, output_name)
65
+ print(timer() - start)
66
+
67
+ if True:
68
+ file_path = '/D/hiC_microC/hiC_data_fub1_n_ctrl/mapped.txt'
69
+ output_path = '/D/hiC_microC/hiC_data_fub1_n_ctrl/tutu/mapped2.txt.gz'
70
+ start = timer()
71
+ compress_file_3rd_party(file_path, output_path)
72
+ print(timer() - start)
73
+
74
+ start = timer()
75
+ compress_file_3rd_party(file_path)
76
+ print(timer() - start)
@@ -0,0 +1,24 @@
1
+ BSD 2-Clause License
2
+
3
+ Copyright (c) 2024, baigouy
4
+
5
+ Redistribution and use in source and binary forms, with or without
6
+ modification, are permitted provided that the following conditions are met:
7
+
8
+ 1. Redistributions of source code must retain the above copyright notice, this
9
+ list of conditions and the following disclaimer.
10
+
11
+ 2. Redistributions in binary form must reproduce the above copyright notice,
12
+ this list of conditions and the following disclaimer in the documentation
13
+ and/or other materials provided with the distribution.
14
+
15
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
19
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
21
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
22
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
23
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
24
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,45 @@
1
+ Metadata-Version: 2.1
2
+ Name: batoolset
3
+ Version: 0.1.0
4
+ Summary: An aggregate of functions I find useful
5
+ Home-page: https://github.com/baigouy/batoolset
6
+ Author: Benoit Aigouy
7
+ Author-email: benoit.aigouy@gmail.com
8
+ License: BSD
9
+ Classifier: Programming Language :: Python :: 3
10
+ Classifier: License :: OSI Approved :: BSD License
11
+ Classifier: Operating System :: OS Independent
12
+ Requires-Python: >=3.7, <3.11
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ Requires-Dist: czifile
16
+ Requires-Dist: Markdown
17
+ Requires-Dist: matplotlib >=3.5.2
18
+ Requires-Dist: numpy
19
+ Requires-Dist: Pillow >=8.1.2
20
+ Requires-Dist: PyQt6
21
+ Requires-Dist: read-lif
22
+ Requires-Dist: scikit-image >=0.19.3
23
+ Requires-Dist: scipy >=1.7.3
24
+ Requires-Dist: scikit-learn >=1.0.2
25
+ Requires-Dist: tifffile >=2021.11.2
26
+ Requires-Dist: tqdm
27
+ Requires-Dist: natsort
28
+ Requires-Dist: numexpr
29
+ Requires-Dist: urllib3
30
+ Requires-Dist: qtawesome
31
+ Requires-Dist: pandas
32
+ Requires-Dist: numba
33
+ Requires-Dist: elasticdeform
34
+ Requires-Dist: roifile
35
+ Requires-Dist: prettytable
36
+ Requires-Dist: pyperclip
37
+ Requires-Dist: QtPy >=2.1.0
38
+ Requires-Dist: Deprecated
39
+ Requires-Dist: Requests
40
+ Requires-Dist: python-bioformats
41
+ Requires-Dist: python-javabridge
42
+ Requires-Dist: pyautogui
43
+
44
+ # batoolset
45
+ An aggregate of functions I find useful
@@ -0,0 +1,162 @@
1
+ batoolset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ batoolset/img.py,sha256=nBs3rCTILhIc6to0buWZfPbPw_-i4zvLZTJERTiws1M,213578
3
+ batoolset/version.py,sha256=enGsc6bOrqD_rOSHpMUabU0j7eh8XkeNP0GdMLh74RI,418
4
+ batoolset/GUI/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
+ batoolset/GUI/list_gui.py,sha256=nJBf5Pyv47REYb6swga5SfBvi8UuiIcrJZaG36ce0tA,20007
6
+ batoolset/GUI/multi_image_display.py,sha256=UZkFH3yzljsGZmYNdn-ZBlPLZeBa-raQM0FabIkxsXg,41455
7
+ batoolset/GUI/open.py,sha256=oPyi6l6T5Z2TvSTOj4QGuaz3oScGasC5g53edgf0GnQ,12967
8
+ batoolset/GUI/overlay_hints.py,sha256=d1u2cWo6IsWOtqfQ8BTiCgTdBT7KKc_kJ2-NHDCNl0o,1481
9
+ batoolset/GUI/paint2.py,sha256=p5rICZrnpDi_Jzfylha7bhdRJY27rOGKIwZ93jL6axM,59662
10
+ batoolset/GUI/scrollablepaint.py,sha256=bH8NcIg7Dfm45nF8jV389bVIiQSD7hojINrfTwoXvEo,45382
11
+ batoolset/IJ_ROIs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
+ batoolset/IJ_ROIs/tools.py,sha256=68a9Dz47wNMHckSzXo0k1ThvOMeCShX6ONrPXnPYifM,1253
13
+ batoolset/PATH/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
+ batoolset/PATH/tools.py,sha256=SjSSrAs7TkZv4nAyQXlYuraruATXgPb-_OcKYVlnLwo,3070
15
+ batoolset/SQLite_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
+ batoolset/SQLite_tools/tools.py,sha256=E4ramRNzKdkHZXRXCw1mD-hNzBYeG9Lm5fFLAcRhENc,26112
17
+ batoolset/binary/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
+ batoolset/binary/tools.py,sha256=MfS_n38vhpCJSjhE6WCPav0ALccN6qJ7urgskdk_q8M,4362
19
+ batoolset/binarytools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
+ batoolset/binarytools/cell_center_detector.py,sha256=cvw-UH65yiRtKTRZeTFQWeOpU6mJJnFDImaEDc19JpU,9899
21
+ batoolset/clipboard_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
+ batoolset/clipboard_tools/tools.py,sha256=NX7HZ3eoF1KWdqQLiGES78SmWWxuQOa5KHAfY4xQRPI,105
23
+ batoolset/colors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
+ batoolset/colors/colorgen.py,sha256=RTC2iyCNDnjGshcz7fvzKjHwEg4iQ_zv-ZEKXpgdUPI,5580
25
+ batoolset/colors/tools.py,sha256=HWFg32puSx1MTpYLYnQahFkzGmVBDtCZtEoYb5J3Nac,780
26
+ batoolset/command_line/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
+ batoolset/command_line/tools.py,sha256=Dw1ohMrmi2pZWH27GcFD4ClOZ0oGL-RO4bBrry4sj8E,541
28
+ batoolset/dialogs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
+ batoolset/dialogs/opensave.py,sha256=cSyReyGOyngPoqKH1Qgs4G_3X4SjQ-cUTPveIVdJw4E,8055
30
+ batoolset/dicts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
+ batoolset/dicts/tools.py,sha256=JXfBxxa_ReqJzc-MlI1IA7XBYmK-rAIdjCuaP1gDB9o,9991
32
+ batoolset/dims/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
+ batoolset/dims/tools.py,sha256=LpJ1kTapFuWacdP0VQbNw8OPjfDZe4fQHHNHyANn07M,1930
34
+ batoolset/draw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
+ batoolset/draw/shapes/Position.py,sha256=4-aaKf3Vav2-vSmlytCo2tTai9mo2_XIEFwq42uI9F4,5280
36
+ batoolset/draw/shapes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
+ batoolset/draw/shapes/automated_alignment_drawing_refactored.py,sha256=uGUuk7kvfPjfIUv8LXGbAq5RNW7nqM6364yUOPo2hWU,16803
38
+ batoolset/draw/shapes/circle2d.py,sha256=-rZmW52M8k8G3Wknr3f_AYZaebzz4Z6XgpOfl5XiaaE,2828
39
+ batoolset/draw/shapes/compute_optimal_size_all_merged.py,sha256=vrEy3wtz6t7R40bddkoWwClMU62p1zw7uiCJ__KimMw,13568
40
+ batoolset/draw/shapes/ellipse2d.py,sha256=wINFo9KptxeDdiaOzUEBprGZWYbVrvr90CNTuS2x9ng,12198
41
+ batoolset/draw/shapes/freehand2d.py,sha256=qEJE3QBfDaWEkP5AjbDvUTMFY0c3aJTHj23jO-b57AQ,8938
42
+ batoolset/draw/shapes/group.py,sha256=RK3iWhro7q9vTf9e-E6Wr1zztvrY--TKfbrCXxZvI-k,70169
43
+ batoolset/draw/shapes/image2d.py,sha256=ox9FXkhMLGNL24Da-_Y56oQfNct-r1JeltW00A69T8g,119104
44
+ batoolset/draw/shapes/line2d.py,sha256=YfOziyL18PFqntlaA7-49V4r1WKYaTzVjh_MtTP5_xA,24282
45
+ batoolset/draw/shapes/point2d.py,sha256=IwKqWinMrKWvIcg1vdV396-JZiwxFkRJZ3FrRWTJbOs,9352
46
+ batoolset/draw/shapes/polygon2d.py,sha256=TaJ58Z9F7RkxBtVFqNA04S8_900ouinE-viSgM4-twg,13201
47
+ batoolset/draw/shapes/polyline2d.py,sha256=5k86Y0zTHFqrN-DASdImASzxspA2Ng41SmF1dPvpURQ,8428
48
+ batoolset/draw/shapes/rect2d.py,sha256=sxmTBRb2w7SyjTORQioDcCXAD3ZpkPcpMU2v2Ym5KkI,15115
49
+ batoolset/draw/shapes/rectangle2d.py,sha256=DRRhhywpOqBsD9Oj6-ShBVBIV51W58HTNpfuE-bSkMo,24978
50
+ batoolset/draw/shapes/scalebar.py,sha256=fy08qMK0-juyYtBrVojqU1nLePyMOItW9b-LNjqvCLQ,11609
51
+ batoolset/draw/shapes/serializablefont.py,sha256=lDJVo8XaNWKXrcPvk3wf-v89MSAFUWlFH2uNom49j64,4292
52
+ batoolset/draw/shapes/serializableguiparams.py,sha256=XBl514a7UJhsIwk3C_K8L5LYF4XT7nbjt9cj0V9bb6A,273
53
+ batoolset/draw/shapes/square2d.py,sha256=lbp4F1fcpLxPnHmy2g9fpm32MmEEDee6E50bvKrvn0A,3152
54
+ batoolset/draw/shapes/textorientation.py,sha256=9ew-qM8vc7BVFFfCwr-5izMbsy8Ki4GT3Ss1GV4mFUo,1257
55
+ batoolset/draw/shapes/tools.py,sha256=-q7hxc8gFUOZqDcjhZ0WSs-Et2NlqYoOjKixpdDv9uw,14226
56
+ batoolset/draw/shapes/transform2D.py,sha256=a7fFb79fnTqT3ey8c6m07xJVHOhU2hh4zFSqXiw5KdI,11492
57
+ batoolset/draw/shapes/txt2d.py,sha256=3jG5CKpHyLMtARdvgCMLHP3jTnYWmuPddqsFg-NZtrI,23615
58
+ batoolset/draw/widgets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
+ batoolset/draw/widgets/col.py,sha256=iVgkqsiuLxYPg_4em5zuuncxV1cPY-yh5IktNpMc0UU,9658
60
+ batoolset/draw/widgets/image_group.py,sha256=PG5oDHt1B0dV2I_2vJllpjHsUTawsr7nEY4OrL6TPjw,8946
61
+ batoolset/draw/widgets/image_organizer.py,sha256=4D9wTxwhiafxuaPgl67BjF7k7KlguElkqkzvPpkIskc,2959
62
+ batoolset/draw/widgets/paint.py,sha256=xakcpwG-bEumanux_NEVSoNqErIiENmZE_tfBEfV0Qs,7448
63
+ batoolset/draw/widgets/vectorial.py,sha256=QRHnXm_8nC0eqiRN-a81qmj0I18xcerd775tJt5KGfA,13124
64
+ batoolset/figure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
+ batoolset/figure/alignment.py,sha256=nf6N_QFwNYq3WP9NEyh5NDQDLL_O_OKJkoRZUD54xEw,32762
66
+ batoolset/figure/column.py,sha256=5Gwk-IRF65ftYjgaGrAiqDiOQw_DIhCoUHwvfPTQDy8,44470
67
+ batoolset/figure/fig_tools.py,sha256=5o4eZl83DvnAMA1iuzNjT3z-gHuSyb0qEM3oFHcKV2w,10794
68
+ batoolset/figure/minimal_debugger_scale_etc.py,sha256=N5cDrLLq4mspuzf2ifUJnj2PYPFgmphXEIF2bPCiJJY,3596
69
+ batoolset/figure/panel.py,sha256=SQPAjkPBP5_XHJKHGgyUN9ZJiZXisCwYatx2wd-JMFw,25803
70
+ batoolset/figure/row.py,sha256=cYbM1Qnkww5bETdzKhMnFnMYgtYK-1QpS4zVMhi0GQg,33440
71
+ batoolset/figure/user_selection.py,sha256=7q2-a4cLk9uqLR66CsN7SGPxn_jGiCjvoBhDgEjEfeA,16824
72
+ batoolset/files/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
+ batoolset/files/tools.py,sha256=Xa-tTv4xlv2nbjaop64lIGvkQ1Z91-fWCRgK0cMHWko,47726
74
+ batoolset/images/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
+ batoolset/images/tools.py,sha256=n8BpSvwxb_7xGbG96FuE-7USLAul6JHqykAK9wuqcX4,2744
76
+ batoolset/linux/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
+ batoolset/linux/tools.py,sha256=EntM5iS9K_mAsIvhA9NzF9v268gXZfzu2cjkerlerW8,2988
78
+ batoolset/lists/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
+ batoolset/lists/tools.py,sha256=0OoHvzYIQ0IXsh_3pQ7aj9-zkr5mZ2kNSQyK6J6eyEM,14192
80
+ batoolset/luts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
+ batoolset/luts/lut_minimal_test.py,sha256=IvXdvp1QJuCTBJjLn0KPiAl-BFlvBv0KkM_6ZMKywZ0,43903
82
+ batoolset/matplolib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
83
+ batoolset/matplolib/tools.py,sha256=CRIoJByVV1iC0mVlaXOyvCGurgRz8e0gYIKlt1l_sFw,1117
84
+ batoolset/np_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
+ batoolset/np_tools/tools.py,sha256=nktwkPoT6ePXu7fcV5Bw_BWmvxfsWHQAlqwVjy6A4YA,7059
86
+ batoolset/np_tools/trash.py,sha256=8_F8llHLI-6T95VN-L2cvMrUhYngIRj8O1U_EJ3LIRI,382
87
+ batoolset/pandas_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
+ batoolset/pandas_tools/tools.py,sha256=6ytllvzMvFR7klPoHt5O6-FTCHjeY3g-xMQbgI2mSfI,29388
89
+ batoolset/partials/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
+ batoolset/partials/tools.py,sha256=2fiCFRGIeNilP8a7ug-ltnBcc8hmgXPFBxgeblcD0qA,2132
91
+ batoolset/plot_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
+ batoolset/plot_tools/tools.py,sha256=o--HqJSywWS-arxU1ev6XbB288b-ECVeBGypvgVnlFA,1983
93
+ batoolset/pyqt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
94
+ batoolset/pyqt/tools.py,sha256=gxup6scxbloQu1--lmneRTveSIJ-g3p3VJwuhJTCNOs,24268
95
+ batoolset/re_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
96
+ batoolset/re_tools/tools.py,sha256=CzbAq8MxnVQWMlN2IUxggpIghx2-x8eZdqW73ID-HXM,1112
97
+ batoolset/serialization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
98
+ batoolset/serialization/tools.py,sha256=B0fJhaGrDN8CObJbJL6ekzLqew2jetJAH_Ho79TeoWI,46752
99
+ batoolset/sets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
100
+ batoolset/sets/tools.py,sha256=VJs4s4zC_nrOiw81b8-CEhovifEbKGVojQz4kVlFIlQ,2654
101
+ batoolset/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
102
+ batoolset/settings/global_settings.py,sha256=AHGy9HPwXWqRh1FuBG8MinCncmBr-rNKCj0RJs_W0qQ,3138
103
+ batoolset/strings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
104
+ batoolset/strings/tools.py,sha256=CjUrNsywzlbVb-JQ2D9o-S_NL9NvvBrpHCN3rH84ac8,8406
105
+ batoolset/ta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
+ batoolset/ta/database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
+ batoolset/ta/database/advanced_sql_plotter.py,sha256=hxzMWMXTh0j5TWfVGjZ911mlYEK0a7O2vRiCXIUt-s8,62672
108
+ batoolset/ta/database/my_qt_table.py,sha256=yA7dZsIie9wO7IYc1fq38WOWesvDvmnHIcTeI0CBzaY,2456
109
+ batoolset/ta/database/preview_and_edit_sqlite_db.py,sha256=6XN2SSuGkMnkIQ41p-5Wl3GIXn_bqXA_yR0HIvhvTNk,14015
110
+ batoolset/ta/database/sql.py,sha256=lzFi4laCmoMtlFyz2do-ePG5wDC78rTm6BGxVDZ7S1Y,85671
111
+ batoolset/ta/database/sql_column_name_dialog.py,sha256=wspKv3Jx43lJtc7c25WubPeXC-pNjErAzgkN77LAZ7o,4041
112
+ batoolset/ta/measurements/TAmeasures.py,sha256=eMDuPa1yiRQ1Pa0P9LX89lw_7kgFxnLBj1yo0hc45UE,109237
113
+ batoolset/ta/measurements/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
114
+ batoolset/ta/measurements/nematic.py,sha256=SLMEmVED7S_m-FPH2HHfzIMLRzwobOVymcOQYFoFyEE,19999
115
+ batoolset/ta/measurements/nematic_measurements.py,sha256=91ldubH1MNXtQrlr7iUffllhJgB41B9ru7jCa1SdCJU,3838
116
+ batoolset/ta/measurements/measurements3D/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
117
+ batoolset/ta/measurements/measurements3D/get_point_on_surface_if_centroid_is_bad.py,sha256=Dc4gCIynGBzcXZjlCchZO1IUbgJQpdtQsFuYCEWlMUo,8063
118
+ batoolset/ta/measurements/measurements3D/height_map_to_projection.py,sha256=cUdlYQ9-ZLmy0wNmhYs1KqmzG89qQ1Fwj2_AHjwhR8A,2904
119
+ batoolset/ta/measurements/measurements3D/measures3D.py,sha256=Uk1SVQv7lQV7hFlcwSQsiUfypNcg5oD4_JWWwiIEVOg,9184
120
+ batoolset/ta/measurements/measurements3D/triangulate.py,sha256=jjXogBQbvFNA5525C-8sj5dt3ZCbw_v6abceSjFey_Q,14246
121
+ batoolset/ta/segmentation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
122
+ batoolset/ta/segmentation/neo_wshed.py,sha256=Jy-mb1oyFzNMfzq1ZodzcbCjX0wON5JTDgbVpYL1p9c,11591
123
+ batoolset/ta/selections/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
+ batoolset/ta/selections/selection.py,sha256=cBNjRARnuqTghpnJWi4W6aWQcxxQpFkI020IrWzfZB0,13523
125
+ batoolset/ta/tracking/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
126
+ batoolset/ta/tracking/last_tracking_based_on_matching_or_on_translation_from_mermaid_warp.py,sha256=FarmZ9Ji5Ru4OLTJ1ZrjrRraMPr-BXWfd12xZ16445g,34778
127
+ batoolset/ta/tracking/local_to_track_correspondance.py,sha256=WIiqTxw9vIfQR3BAzmFVmec5AF4q_3lxwI7trfeWM8w,5249
128
+ batoolset/ta/tracking/rapid_detection_of_vertices.py,sha256=nPQq9Cn1YhkRLLja3QHgnAeRvRBEatSQ3K4BEn_Tnrc,17832
129
+ batoolset/ta/tracking/registration.py,sha256=8rYDLpld1-2990PMGF24zogCo4wIFvNSTfhyldcYBtA,4054
130
+ batoolset/ta/tracking/swap_detector_and_fixer.py,sha256=Kdm9YaWP7PpG_lpQBbs_RzkoJC4RqowuM7pKgyfxeS4,14119
131
+ batoolset/ta/tracking/track_correction.py,sha256=yX5UbqZNxOQ6-IhaPd1AMWaEhQBVGxd_-A6ZuI1Vr7g,10019
132
+ batoolset/ta/tracking/tracking_error_detector_and_fixer.py,sha256=ppHqqzX1zSYA04b0rMt1Q2Y-m6sIdqkOgH2XK2j0U6I,162827
133
+ batoolset/ta/tracking/tracking_yet_another_approach_pyramidal_registration_n_neo_swapping_correction.py,sha256=InCib33tUj8ObLT9WUym1fxA_HyjXz2YZ8xNIkREmE4,44246
134
+ batoolset/ta/utils/TA_tools.py,sha256=pkf1WuSo0z1jZvTYUijU2G3qhz6mvMK11LGtbi0m9zQ,1209
135
+ batoolset/ta/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
136
+ batoolset/ta/utils/rps_tools.py,sha256=k4xgDhnuLwkIii5gbRhV3lehnK59ENlZce3H3gEBt9M,87516
137
+ batoolset/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
138
+ batoolset/tests/rps_tools.py,sha256=oilmPcG8HsyzHJfIwSfsCTsbacGeO2yA1BcJWN3cq5Q,9819
139
+ batoolset/tests/tools.py,sha256=28ZVno9ypX8gwZccDrs4J8SfzE7mpK4tPpuyTAQnIuA,429
140
+ batoolset/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
141
+ batoolset/tools/early_stopper_class.py,sha256=0ZgDQhGdJ1A_ZBLJ1snqq_a1nxKMMOsV1fHf0dt0qBw,181
142
+ batoolset/tools/guided_data_recoverer.py,sha256=4j3A9-ZAjf24ws9NQdwqsCGsO0rcuvaiiFLS0sLa6Dw,3908
143
+ batoolset/tools/logger.py,sha256=GZOeHAW7ry9D5AXyfjpwNpY6U5fPix89wL3OruhP3VU,3015
144
+ batoolset/tools/mytimer.py,sha256=ZaSpjbzddKuVxJRgZCDxwZaAEgdv98YItuM8Ze1kbD8,558
145
+ batoolset/tools/prompt_color.py,sha256=uttd8p3gifpCWVfV8idFSZCim62e9Nl_CkWWp9Rr_g0,5321
146
+ batoolset/tools/qthandler.py,sha256=whEbFPkjkRO_67hx8KmF8eHCoWRioxulocoarnQ5M10,2963
147
+ batoolset/uitools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
148
+ batoolset/uitools/blinker.py,sha256=UWLHWv1MTf5Zp9lZLHIe_kfP4x7cLVc37JXUtfGXrOQ,1779
149
+ batoolset/unsafe/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
150
+ batoolset/unsafe/tools.py,sha256=3kgmnWa4149a7OHLFiuhMoo5uXat2BjDcpAbZdCZugw,4780
151
+ batoolset/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
152
+ batoolset/utils/commontools.py,sha256=Vgwuz9s0vzU1gXNprdqHHxgdcsEY50uTF-pQDRGszjU,5437
153
+ batoolset/utils/loadlist.py,sha256=S2-p1P3mxig1cgvAn-6DMzgTOKCsquevLbjBFp9xAK4,38104
154
+ batoolset/xml/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
155
+ batoolset/xml/tools.py,sha256=4TOBerd6Fcu9M9zsqku2n4azV2NYOu62nA9098FJxbw,2209
156
+ batoolset/zip_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
157
+ batoolset/zip_tools/tools.py,sha256=UaMNaYyNHCidtaCowxV-6zQqo38E-4EmQ9xdaUPcuCA,2641
158
+ batoolset-0.1.0.dist-info/LICENSE,sha256=vWeFi3etbXvloEYj0iWSQg7CZZSPBJmms2_s-idKvHQ,1296
159
+ batoolset-0.1.0.dist-info/METADATA,sha256=cUCF0y7fLvuufnXXFf1V4_L4ZUlia-4wHQMJ02LUhmE,1259
160
+ batoolset-0.1.0.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
161
+ batoolset-0.1.0.dist-info/top_level.txt,sha256=XBQ6lbzcfyrxZwpUUjh06_afHDoSOURlQjxVFCEfGE4,10
162
+ batoolset-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (70.3.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1 @@
1
+ batoolset