diff options
author | Théo de la Hogue | 2024-04-17 13:32:51 +0200 |
---|---|---|
committer | Théo de la Hogue | 2024-04-17 13:32:51 +0200 |
commit | 4d0de7c804914a55977635ec6bc46beb0cf7808a (patch) | |
tree | b3e40c76052b067723bfc41547b81a38a0da00b2 /src/argaze.test/ArUcoMarker/ArUcoBoard.py | |
parent | 9e0e2db258a2a475637813649e81b7e400b17022 (diff) | |
download | argaze-4d0de7c804914a55977635ec6bc46beb0cf7808a.zip argaze-4d0de7c804914a55977635ec6bc46beb0cf7808a.tar.gz argaze-4d0de7c804914a55977635ec6bc46beb0cf7808a.tar.bz2 argaze-4d0de7c804914a55977635ec6bc46beb0cf7808a.tar.xz |
Renaming ArUcoMarkers into ArUcoMarker
Diffstat (limited to 'src/argaze.test/ArUcoMarker/ArUcoBoard.py')
-rw-r--r-- | src/argaze.test/ArUcoMarker/ArUcoBoard.py | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/argaze.test/ArUcoMarker/ArUcoBoard.py b/src/argaze.test/ArUcoMarker/ArUcoBoard.py new file mode 100644 index 0000000..b20be13 --- /dev/null +++ b/src/argaze.test/ArUcoMarker/ArUcoBoard.py @@ -0,0 +1,50 @@ +""" + +This program is free software: you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version. +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. +You should have received a copy of the GNU General Public License along with +this program. If not, see <https://www.gnu.org/licenses/>. +""" + +__author__ = "Théo de la Hogue" +__credits__ = [] +__copyright__ = "Copyright 2023, Ecole Nationale de l'Aviation Civile (ENAC)" +__license__ = "GPLv3" + +import unittest +import os + +from argaze.ArUcoMarker import ArUcoBoard, ArUcoMarkerDictionary + +import numpy + +class TestArUcoBoardClass(unittest.TestCase): + """Test ArUcoBoard class.""" + + def test_new(self): + """Test ArUcoBoard creation using a dictionary instance.""" + + columns = 4 + rows = 3 + square_size = 2 + marker_size = 1 + + # Check ArUco board creation + aruco_dictionary = ArUcoMarkerDictionary.ArUcoMarkerDictionary('DICT_APRILTAG_16h5') + aruco_board = ArUcoBoard.ArUcoBoard(columns, rows, square_size, marker_size, aruco_dictionary) + + # Check ArUco board dictionary name + self.assertEqual(aruco_board.dictionary.name, 'DICT_APRILTAG_16h5') + self.assertIsNone(numpy.testing.assert_array_equal(aruco_board.identifiers, [i for i in range(int((columns*rows)/2))])) + self.assertIsNone(numpy.testing.assert_array_equal(aruco_board.size, [columns, rows])) + self.assertEqual(aruco_board.markers_number, int((columns*rows)/2)) + self.assertEqual(aruco_board.corners_number, (columns-1)*(rows-1)) + +if __name__ == '__main__': + + unittest.main()
\ No newline at end of file |