guanxinyi 8 сар өмнө
parent
commit
86394bb9ca

+ 17 - 895
lib/process/primitives/multi_method/dop_trace_disp/data.dart

@@ -1,852 +1,26 @@
+import 'package:fis_jsonrpc/rpc.dart';
 import 'package:fis_measure/interfaces/process/workspace/application.dart';
 import 'package:fis_measure/interfaces/date_types/point.dart';
 import 'package:fis_measure/process/primitives/multi_method/dop_trace_disp/cardiac_cycle.dart';
 import 'package:get/get.dart';
 
 class TraceListData {
+  VetAutoTraceImageResult? _vetAutoTraceImageResult;
+  VetAutoTraceImageResult? get vetAutoTraceImageResult =>
+      _vetAutoTraceImageResult;
+
+  TraceListData._internal() {
+    setLocation(_currentType);
+    localData();
+    getCardiacCycles();
+  }
+
   static final List<DPoint> _maxPonints = [];
   static List<CardiacCycle> _cardiacCycleList = [];
 
   TraceLocationType _currentType = TraceLocationType.below;
 
-  static List<DPoint> belowList = [
-    DPoint(27, 616),
-    DPoint(28, 629),
-    DPoint(29, 637),
-    DPoint(30, 644),
-    DPoint(31, 650),
-    DPoint(32, 665),
-    DPoint(33, 679),
-    DPoint(34, 684),
-    DPoint(35, 692),
-    DPoint(36, 697),
-    DPoint(37, 703),
-    DPoint(38, 712),
-    DPoint(39, 715),
-    DPoint(40, 727),
-    DPoint(41, 732),
-    DPoint(42, 735),
-    DPoint(43, 741),
-    DPoint(44, 743),
-    DPoint(45, 744),
-    DPoint(46, 745),
-    DPoint(47, 746),
-    DPoint(48, 750),
-    DPoint(49, 752),
-    DPoint(50, 755),
-    DPoint(51, 757),
-    DPoint(52, 757),
-    DPoint(53, 756),
-    DPoint(54, 755),
-    DPoint(55, 752),
-    DPoint(56, 749),
-    DPoint(57, 744),
-    DPoint(58, 736),
-    DPoint(59, 729),
-    DPoint(60, 728),
-    DPoint(61, 728),
-    DPoint(62, 727),
-    DPoint(63, 718),
-    DPoint(64, 717),
-    DPoint(65, 716),
-    DPoint(66, 697),
-    DPoint(67, 692),
-    DPoint(68, 688),
-    DPoint(69, 686),
-    DPoint(70, 685),
-    DPoint(71, 659),
-    DPoint(72, 659),
-    DPoint(73, 658),
-    DPoint(74, 657),
-    DPoint(75, 654),
-    DPoint(76, 648),
-    DPoint(77, 647),
-    DPoint(78, 647),
-    DPoint(79, 646),
-    DPoint(80, 645),
-    DPoint(81, 642),
-    DPoint(82, 637),
-    DPoint(83, 630),
-    DPoint(84, 626),
-    DPoint(85, 621),
-    DPoint(86, 611),
-    DPoint(87, 617),
-    DPoint(88, 645),
-    DPoint(89, 646),
-    DPoint(90, 618),
-    DPoint(91, 616),
-    DPoint(92, 610),
-    DPoint(93, 607),
-    DPoint(94, 607),
-    DPoint(95, 606),
-    DPoint(96, 605),
-    DPoint(97, 598),
-    DPoint(98, 598),
-    DPoint(99, 599),
-    DPoint(100, 600),
-    DPoint(101, 600),
-    DPoint(102, 601),
-    DPoint(103, 601),
-    DPoint(104, 602),
-    DPoint(105, 603),
-    DPoint(106, 604),
-    DPoint(107, 606),
-    DPoint(108, 607),
-    DPoint(109, 607),
-    DPoint(110, 607),
-    DPoint(111, 606),
-    DPoint(112, 604),
-    DPoint(113, 603),
-    DPoint(114, 603),
-    DPoint(115, 604),
-    DPoint(116, 606),
-    DPoint(117, 607),
-    DPoint(118, 609),
-    DPoint(119, 611),
-    DPoint(120, 612),
-    DPoint(121, 612),
-    DPoint(122, 612),
-    DPoint(123, 612),
-    DPoint(124, 612),
-    DPoint(125, 611),
-    DPoint(126, 610),
-    DPoint(127, 610),
-    DPoint(128, 609),
-    DPoint(129, 617),
-    DPoint(130, 622),
-    DPoint(131, 623),
-    DPoint(132, 622),
-    DPoint(133, 617),
-    DPoint(134, 606),
-    DPoint(135, 602),
-    DPoint(136, 602),
-    DPoint(137, 602),
-    DPoint(138, 603),
-    DPoint(139, 608),
-    DPoint(140, 613),
-    DPoint(141, 616),
-    DPoint(142, 620),
-    DPoint(143, 622),
-    DPoint(144, 626),
-    DPoint(145, 633),
-    DPoint(146, 642),
-    DPoint(147, 647),
-    DPoint(148, 666),
-    DPoint(149, 672),
-    DPoint(150, 682),
-    DPoint(151, 686),
-    DPoint(152, 692),
-    DPoint(153, 705),
-    DPoint(154, 709),
-    DPoint(155, 713),
-    DPoint(156, 730),
-    DPoint(157, 735),
-    DPoint(158, 737),
-    DPoint(159, 747),
-    DPoint(160, 749),
-    DPoint(161, 750),
-    DPoint(162, 750),
-    DPoint(163, 750),
-    DPoint(164, 750),
-    DPoint(165, 750),
-    DPoint(166, 751),
-    DPoint(167, 753),
-    DPoint(168, 753),
-    DPoint(169, 752),
-    DPoint(170, 751),
-    DPoint(171, 750),
-    DPoint(172, 746),
-    DPoint(173, 741),
-    DPoint(174, 739),
-    DPoint(175, 727),
-    DPoint(176, 717),
-    DPoint(177, 715),
-    DPoint(178, 713),
-    DPoint(179, 710),
-    DPoint(180, 707),
-    DPoint(181, 694),
-    DPoint(182, 692),
-    DPoint(183, 689),
-    DPoint(184, 676),
-    DPoint(185, 675),
-    DPoint(186, 672),
-    DPoint(187, 663),
-    DPoint(188, 662),
-    DPoint(189, 660),
-    DPoint(190, 657),
-    DPoint(191, 654),
-    DPoint(192, 651),
-    DPoint(193, 648),
-    DPoint(194, 646),
-    DPoint(195, 647),
-    DPoint(196, 646),
-    DPoint(197, 645),
-    DPoint(198, 632),
-    DPoint(199, 629),
-    DPoint(200, 626),
-    DPoint(201, 624),
-    DPoint(202, 619),
-    DPoint(203, 614),
-    DPoint(204, 613),
-    DPoint(205, 614),
-    DPoint(206, 616),
-    DPoint(207, 618),
-    DPoint(208, 618),
-    DPoint(209, 618),
-    DPoint(210, 616),
-    DPoint(211, 609),
-    DPoint(212, 606),
-    DPoint(213, 603),
-    DPoint(214, 603),
-    DPoint(215, 602),
-    DPoint(216, 602),
-    DPoint(217, 602),
-    DPoint(218, 601),
-    DPoint(219, 602),
-    DPoint(220, 602),
-    DPoint(221, 603),
-    DPoint(222, 603),
-    DPoint(223, 603),
-    DPoint(224, 603),
-    DPoint(225, 603),
-    DPoint(226, 603),
-    DPoint(227, 603),
-    DPoint(228, 603),
-    DPoint(229, 604),
-    DPoint(230, 604),
-    DPoint(231, 605),
-    DPoint(232, 606),
-    DPoint(233, 607),
-    DPoint(234, 608),
-    DPoint(235, 609),
-    DPoint(236, 611),
-    DPoint(237, 611),
-    DPoint(238, 611),
-    DPoint(239, 611),
-    DPoint(240, 610),
-    DPoint(241, 608),
-    DPoint(242, 608),
-    DPoint(243, 607),
-    DPoint(244, 607),
-    DPoint(245, 607),
-    DPoint(246, 607),
-    DPoint(247, 609),
-    DPoint(248, 623),
-    DPoint(249, 625),
-    DPoint(250, 627),
-    DPoint(251, 627),
-    DPoint(252, 626),
-    DPoint(253, 624),
-    DPoint(254, 619),
-    DPoint(255, 617),
-    DPoint(256, 617),
-    DPoint(257, 616),
-    DPoint(258, 615),
-    DPoint(259, 613),
-    DPoint(260, 613),
-    DPoint(261, 616),
-    DPoint(262, 622),
-    DPoint(263, 625),
-    DPoint(264, 630),
-    DPoint(265, 638),
-    DPoint(266, 657),
-    DPoint(267, 679),
-    DPoint(268, 692),
-    DPoint(269, 705),
-    DPoint(270, 710),
-    DPoint(271, 712),
-    DPoint(272, 715),
-    DPoint(273, 720),
-    DPoint(274, 726),
-    DPoint(275, 728),
-    DPoint(276, 738),
-    DPoint(277, 740),
-    DPoint(278, 740),
-    DPoint(279, 739),
-    DPoint(280, 739),
-    DPoint(281, 739),
-    DPoint(282, 740),
-    DPoint(283, 741),
-    DPoint(284, 744),
-    DPoint(285, 745),
-    DPoint(286, 746),
-    DPoint(287, 746),
-    DPoint(288, 747),
-    DPoint(289, 748),
-    DPoint(290, 748),
-    DPoint(291, 748),
-    DPoint(292, 746),
-    DPoint(293, 741),
-    DPoint(294, 738),
-    DPoint(295, 733),
-    DPoint(296, 732),
-    DPoint(297, 731),
-    DPoint(298, 731),
-    DPoint(299, 730),
-    DPoint(300, 730),
-    DPoint(301, 728),
-    DPoint(302, 724),
-    DPoint(303, 716),
-    DPoint(304, 712),
-    DPoint(305, 710),
-    DPoint(306, 708),
-    DPoint(307, 705),
-    DPoint(308, 703),
-    DPoint(309, 701),
-    DPoint(310, 699),
-    DPoint(311, 696),
-    DPoint(312, 693),
-    DPoint(313, 691),
-    DPoint(314, 686),
-    DPoint(315, 684),
-    DPoint(316, 683),
-    DPoint(317, 680),
-    DPoint(318, 675),
-    DPoint(319, 664),
-    DPoint(320, 661),
-    DPoint(321, 657),
-    DPoint(322, 651),
-    DPoint(323, 640),
-    DPoint(324, 636),
-    DPoint(325, 630),
-    DPoint(326, 626),
-    DPoint(327, 611),
-    DPoint(328, 611),
-    DPoint(329, 609),
-    DPoint(330, 607),
-    DPoint(331, 606),
-    DPoint(332, 606),
-    DPoint(333, 606),
-    DPoint(334, 606),
-    DPoint(335, 605),
-    DPoint(336, 604),
-    DPoint(337, 603),
-    DPoint(338, 604),
-    DPoint(339, 605),
-    DPoint(340, 605),
-    DPoint(341, 606),
-    DPoint(342, 607),
-    DPoint(343, 607),
-    DPoint(344, 607),
-    DPoint(345, 607),
-    DPoint(346, 606),
-    DPoint(347, 607),
-    DPoint(348, 609),
-    DPoint(349, 611),
-    DPoint(350, 615),
-    DPoint(351, 618),
-    DPoint(352, 619),
-    DPoint(353, 619),
-    DPoint(354, 619),
-    DPoint(355, 617),
-    DPoint(356, 615),
-    DPoint(357, 613),
-    DPoint(358, 612),
-    DPoint(359, 611),
-    DPoint(360, 609),
-    DPoint(361, 607),
-    DPoint(362, 606),
-    DPoint(363, 607),
-    DPoint(364, 608),
-    DPoint(365, 610),
-    DPoint(366, 610),
-    DPoint(367, 609),
-    DPoint(368, 607),
-    DPoint(369, 603),
-    DPoint(370, 602),
-    DPoint(371, 600),
-    DPoint(372, 600),
-    DPoint(373, 600),
-    DPoint(374, 602),
-    DPoint(375, 608),
-    DPoint(376, 617),
-    DPoint(377, 621),
-    DPoint(378, 640),
-    DPoint(379, 645),
-    DPoint(380, 656),
-    DPoint(381, 662),
-    DPoint(382, 675),
-    DPoint(383, 677),
-    DPoint(384, 685),
-    DPoint(385, 696),
-    DPoint(386, 701),
-    DPoint(387, 716),
-    DPoint(388, 722),
-    DPoint(389, 724),
-    DPoint(390, 725),
-    DPoint(391, 727),
-    DPoint(392, 730),
-    DPoint(393, 733),
-    DPoint(394, 735),
-    DPoint(395, 735),
-    DPoint(396, 735),
-    DPoint(397, 735),
-    DPoint(398, 735),
-    DPoint(399, 736),
-    DPoint(400, 738),
-    DPoint(401, 741),
-    DPoint(402, 743),
-    DPoint(403, 743),
-    DPoint(404, 743),
-    DPoint(405, 743),
-    DPoint(406, 742),
-    DPoint(407, 740),
-    DPoint(408, 732),
-    DPoint(409, 728),
-    DPoint(410, 726),
-    DPoint(411, 725),
-    DPoint(412, 724),
-    DPoint(413, 724),
-    DPoint(414, 723),
-    DPoint(415, 723),
-    DPoint(416, 722),
-    DPoint(417, 722),
-    DPoint(418, 721),
-    DPoint(419, 719),
-    DPoint(420, 716),
-    DPoint(421, 708),
-    DPoint(422, 700),
-    DPoint(423, 697),
-    DPoint(424, 695),
-    DPoint(425, 692),
-    DPoint(426, 690),
-    DPoint(427, 687),
-    DPoint(428, 682),
-    DPoint(429, 680),
-    DPoint(430, 678),
-    DPoint(431, 676),
-    DPoint(432, 672),
-    DPoint(433, 669),
-    DPoint(434, 662),
-    DPoint(435, 654),
-    DPoint(436, 640),
-    DPoint(437, 637),
-    DPoint(438, 635),
-    DPoint(439, 633),
-    DPoint(440, 627),
-    DPoint(441, 625),
-    DPoint(442, 605),
-    DPoint(443, 609),
-    DPoint(444, 611),
-    DPoint(445, 612),
-    DPoint(446, 614),
-    DPoint(447, 616),
-    DPoint(448, 617),
-    DPoint(449, 617),
-    DPoint(450, 618),
-    DPoint(451, 618),
-    DPoint(452, 617),
-    DPoint(453, 615),
-    DPoint(454, 613),
-    DPoint(455, 610),
-    DPoint(456, 609),
-    DPoint(457, 608),
-    DPoint(458, 607),
-    DPoint(459, 606),
-    DPoint(460, 606),
-    DPoint(461, 606),
-    DPoint(462, 607),
-    DPoint(463, 607),
-    DPoint(464, 609),
-    DPoint(465, 610),
-    DPoint(466, 612),
-    DPoint(467, 613),
-    DPoint(468, 615),
-    DPoint(469, 619),
-    DPoint(470, 620),
-    DPoint(471, 621),
-    DPoint(472, 622),
-    DPoint(473, 618),
-    DPoint(474, 616),
-    DPoint(475, 615),
-    DPoint(476, 614),
-    DPoint(477, 610),
-    DPoint(478, 599),
-    DPoint(479, 598),
-    DPoint(480, 597),
-    DPoint(481, 596),
-    DPoint(482, 595),
-    DPoint(483, 594),
-    DPoint(484, 593),
-    DPoint(485, 593),
-    DPoint(486, 593),
-    DPoint(487, 593),
-    DPoint(488, 595),
-    DPoint(489, 601),
-    DPoint(490, 603),
-    DPoint(491, 612),
-    DPoint(492, 616),
-    DPoint(493, 623),
-    DPoint(494, 628),
-    DPoint(495, 632),
-    DPoint(496, 634),
-    DPoint(497, 658),
-    DPoint(498, 675),
-    DPoint(499, 681),
-    DPoint(500, 695),
-    DPoint(501, 702),
-    DPoint(502, 710),
-    DPoint(503, 711),
-    DPoint(504, 721),
-    DPoint(505, 735),
-    DPoint(506, 746),
-    DPoint(507, 749),
-    DPoint(508, 751),
-    DPoint(509, 751),
-    DPoint(510, 750),
-    DPoint(511, 747),
-    DPoint(512, 739),
-    DPoint(513, 739),
-    DPoint(514, 740),
-    DPoint(515, 740),
-    DPoint(516, 740),
-    DPoint(517, 741),
-    DPoint(518, 741),
-    DPoint(519, 740),
-    DPoint(520, 738),
-    DPoint(521, 735),
-    DPoint(522, 734),
-    DPoint(523, 732),
-    DPoint(524, 729),
-    DPoint(525, 726),
-    DPoint(526, 723),
-    DPoint(527, 721),
-    DPoint(528, 719),
-    DPoint(529, 717),
-    DPoint(530, 716),
-    DPoint(531, 711),
-    DPoint(532, 706),
-    DPoint(533, 705),
-    DPoint(534, 705),
-    DPoint(535, 704),
-    DPoint(536, 702),
-    DPoint(537, 699),
-    DPoint(538, 698),
-    DPoint(539, 697),
-    DPoint(540, 696),
-    DPoint(541, 694),
-    DPoint(542, 691),
-    DPoint(543, 686),
-    DPoint(544, 681),
-    DPoint(545, 678),
-    DPoint(546, 677),
-    DPoint(547, 676),
-    DPoint(548, 676),
-    DPoint(549, 675),
-    DPoint(550, 671),
-    DPoint(551, 644),
-    DPoint(552, 641),
-    DPoint(553, 633),
-    DPoint(554, 630),
-    DPoint(555, 625),
-    DPoint(556, 622),
-    DPoint(557, 619),
-    DPoint(558, 617),
-    DPoint(559, 607),
-    DPoint(560, 606),
-    DPoint(561, 606),
-    DPoint(562, 606),
-    DPoint(563, 605),
-    DPoint(564, 605),
-    DPoint(565, 604),
-    DPoint(566, 604),
-    DPoint(567, 605),
-    DPoint(568, 605),
-    DPoint(569, 605),
-    DPoint(570, 605),
-    DPoint(571, 604),
-    DPoint(572, 604),
-    DPoint(573, 604),
-    DPoint(574, 605),
-    DPoint(575, 605),
-    DPoint(576, 606),
-    DPoint(577, 605),
-    DPoint(578, 605),
-    DPoint(579, 604),
-    DPoint(580, 604),
-    DPoint(581, 606),
-    DPoint(582, 610),
-    DPoint(583, 614),
-    DPoint(584, 616),
-    DPoint(585, 621),
-    DPoint(586, 625),
-    DPoint(587, 625),
-    DPoint(588, 626),
-    DPoint(589, 625),
-    DPoint(590, 624),
-    DPoint(591, 618),
-    DPoint(592, 613),
-    DPoint(593, 611),
-    DPoint(594, 611),
-    DPoint(595, 610),
-    DPoint(596, 610),
-    DPoint(597, 610),
-    DPoint(598, 610),
-    DPoint(599, 610),
-    DPoint(600, 610),
-    DPoint(601, 609),
-    DPoint(602, 608),
-    DPoint(603, 603),
-    DPoint(604, 594),
-    DPoint(605, 602),
-    DPoint(606, 606),
-    DPoint(607, 608),
-    DPoint(608, 618),
-    DPoint(609, 620),
-    DPoint(610, 622),
-    DPoint(611, 628),
-    DPoint(612, 635),
-    DPoint(613, 642),
-    DPoint(614, 655),
-    DPoint(615, 661),
-    DPoint(616, 680),
-    DPoint(617, 685),
-    DPoint(618, 697),
-    DPoint(619, 701),
-    DPoint(620, 705),
-    DPoint(621, 708),
-    DPoint(622, 720),
-    DPoint(623, 731),
-    DPoint(624, 738),
-    DPoint(625, 741),
-    DPoint(626, 743),
-    DPoint(627, 744),
-    DPoint(628, 744),
-    DPoint(629, 744),
-    DPoint(630, 744),
-    DPoint(631, 746),
-    DPoint(632, 747),
-    DPoint(633, 747),
-    DPoint(634, 747),
-    DPoint(635, 747),
-    DPoint(636, 745),
-    DPoint(637, 743),
-    DPoint(638, 741),
-    DPoint(639, 740),
-    DPoint(640, 737),
-    DPoint(641, 734),
-    DPoint(642, 732),
-    DPoint(643, 728),
-    DPoint(644, 718),
-    DPoint(645, 717),
-    DPoint(646, 717),
-    DPoint(647, 716),
-    DPoint(648, 713),
-    DPoint(649, 705),
-    DPoint(650, 683),
-    DPoint(651, 679),
-    DPoint(652, 677),
-    DPoint(653, 676),
-    DPoint(654, 675),
-    DPoint(655, 675),
-    DPoint(656, 673),
-    DPoint(657, 655),
-    DPoint(658, 660),
-    DPoint(659, 662),
-    DPoint(660, 661),
-    DPoint(661, 659),
-    DPoint(662, 649),
-    DPoint(663, 647),
-    DPoint(664, 647),
-    DPoint(665, 647),
-    DPoint(666, 646),
-    DPoint(667, 642),
-    DPoint(668, 636),
-    DPoint(669, 619),
-    DPoint(670, 618),
-    DPoint(671, 618),
-    DPoint(672, 621),
-    DPoint(673, 625),
-    DPoint(674, 626),
-    DPoint(675, 627),
-    DPoint(676, 626),
-    DPoint(677, 625),
-    DPoint(678, 620),
-    DPoint(679, 617),
-    DPoint(680, 614),
-    DPoint(681, 603),
-    DPoint(682, 601),
-    DPoint(683, 601),
-    DPoint(684, 601),
-    DPoint(685, 601),
-    DPoint(686, 601),
-    DPoint(687, 602),
-    DPoint(688, 602),
-    DPoint(689, 603),
-    DPoint(690, 603),
-    DPoint(691, 604),
-    DPoint(692, 605),
-    DPoint(693, 605),
-    DPoint(694, 605),
-    DPoint(695, 604),
-    DPoint(696, 604),
-    DPoint(697, 604),
-    DPoint(698, 604),
-    DPoint(699, 604),
-    DPoint(700, 605),
-    DPoint(701, 607),
-    DPoint(702, 612),
-    DPoint(703, 616),
-    DPoint(704, 619),
-    DPoint(705, 621),
-    DPoint(706, 623),
-    DPoint(707, 623),
-    DPoint(708, 623),
-    DPoint(709, 622),
-    DPoint(710, 619),
-    DPoint(711, 616),
-    DPoint(712, 615),
-    DPoint(713, 613),
-    DPoint(714, 604),
-    DPoint(715, 603),
-    DPoint(716, 603),
-    DPoint(717, 607),
-    DPoint(718, 610),
-    DPoint(719, 610),
-    DPoint(720, 610),
-    DPoint(721, 609),
-    DPoint(722, 608),
-    DPoint(723, 606),
-    DPoint(724, 600),
-    DPoint(725, 599),
-    DPoint(726, 602),
-    DPoint(727, 607),
-    DPoint(728, 610),
-    DPoint(729, 613),
-    DPoint(730, 619),
-    DPoint(731, 630),
-    DPoint(732, 636),
-    DPoint(733, 639),
-    DPoint(734, 640),
-    DPoint(735, 658),
-    DPoint(736, 673),
-    DPoint(737, 677),
-    DPoint(738, 680),
-    DPoint(739, 699),
-    DPoint(740, 703),
-    DPoint(741, 718),
-    DPoint(742, 724),
-    DPoint(743, 726),
-    DPoint(744, 731),
-    DPoint(745, 737),
-    DPoint(746, 754),
-    DPoint(747, 757),
-    DPoint(748, 761),
-    DPoint(749, 763),
-    DPoint(750, 763),
-    DPoint(751, 761),
-    DPoint(752, 756),
-    DPoint(753, 755),
-    DPoint(754, 755),
-    DPoint(755, 755),
-    DPoint(756, 755),
-    DPoint(757, 753),
-    DPoint(758, 752),
-    DPoint(759, 749),
-    DPoint(760, 745),
-    DPoint(761, 742),
-    DPoint(762, 741),
-    DPoint(763, 725),
-    DPoint(764, 723),
-    DPoint(765, 721),
-    DPoint(766, 719),
-    DPoint(767, 713),
-    DPoint(768, 712),
-    DPoint(769, 711),
-    DPoint(770, 709),
-    DPoint(771, 691),
-    DPoint(772, 691),
-    DPoint(773, 690),
-    DPoint(774, 689),
-    DPoint(775, 687),
-    DPoint(776, 664),
-    DPoint(777, 653),
-    DPoint(778, 652),
-    DPoint(779, 652),
-    DPoint(780, 650),
-    DPoint(781, 647),
-    DPoint(782, 646),
-    DPoint(783, 645),
-    DPoint(784, 646),
-    DPoint(785, 646),
-    DPoint(786, 646),
-    DPoint(787, 645),
-    DPoint(788, 632),
-    DPoint(789, 625),
-    DPoint(790, 624),
-    DPoint(791, 640),
-    DPoint(792, 645),
-    DPoint(793, 652),
-    DPoint(794, 653),
-    DPoint(795, 651),
-    DPoint(796, 643),
-    DPoint(797, 618),
-    DPoint(798, 602),
-    DPoint(799, 600),
-    DPoint(800, 600),
-    DPoint(801, 600),
-    DPoint(802, 599),
-    DPoint(803, 598),
-    DPoint(804, 598),
-    DPoint(805, 598),
-    DPoint(806, 598),
-    DPoint(807, 599),
-    DPoint(808, 601),
-    DPoint(809, 602),
-    DPoint(810, 603),
-    DPoint(811, 604),
-    DPoint(812, 606),
-    DPoint(813, 607),
-    DPoint(814, 607),
-    DPoint(815, 607),
-    DPoint(816, 607),
-    DPoint(817, 606),
-    DPoint(818, 602),
-    DPoint(819, 601),
-    DPoint(820, 601),
-    DPoint(821, 601),
-    DPoint(822, 601),
-    DPoint(823, 601),
-    DPoint(824, 601),
-    DPoint(825, 602),
-    DPoint(826, 604),
-    DPoint(827, 607),
-    DPoint(828, 608),
-    DPoint(829, 608),
-    DPoint(830, 608),
-    DPoint(831, 608),
-    DPoint(832, 608),
-    DPoint(833, 608),
-    DPoint(834, 609),
-    DPoint(835, 609),
-    DPoint(836, 611),
-    DPoint(837, 613),
-    DPoint(838, 617),
-    DPoint(839, 620),
-    DPoint(840, 620),
-    DPoint(841, 620),
-    DPoint(842, 620),
-    DPoint(843, 619),
-    DPoint(844, 616),
-    DPoint(845, 605),
-    DPoint(846, 604),
-    DPoint(847, 603),
-    DPoint(848, 603),
-    DPoint(849, 604),
-    DPoint(850, 604),
-    DPoint(851, 605),
-    DPoint(852, 606),
-    DPoint(853, 607),
-    DPoint(854, 608),
-    DPoint(855, 612),
-    DPoint(856, 620),
-    DPoint(857, 629),
-    DPoint(858, 632),
-    DPoint(859, 633),
-    DPoint(860, 630),
-    DPoint(861, 596)
-  ];
-
+  static List<DPoint> belowList = [];
   static List<DPoint> aboveList = [];
   static List<DPoint> bothList = [];
 
@@ -875,57 +49,7 @@ class TraceListData {
   }
 
   List<CardiacCycle> getCardiacCycles() {
-    _cardiacCycleList = [
-      CardiacCycle(
-        systoleStart: DPoint(27, 616),
-        diastoleEnd: DPoint(98, 598),
-        peakSystolic: DPoint(52, 757),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 1,
-      ),
-      CardiacCycle(
-        systoleStart: DPoint(98, 598),
-        diastoleEnd: DPoint(245, 607),
-        peakSystolic: DPoint(168, 753),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 2,
-      ),
-      CardiacCycle(
-        systoleStart: DPoint(245, 607),
-        diastoleEnd: DPoint(347, 607),
-        peakSystolic: DPoint(291, 748),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 3,
-      ),
-      CardiacCycle(
-        systoleStart: DPoint(347, 607),
-        diastoleEnd: DPoint(460, 606),
-        peakSystolic: DPoint(404, 743),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 4,
-      ),
-      CardiacCycle(
-        systoleStart: DPoint(460, 606),
-        diastoleEnd: DPoint(580, 604),
-        peakSystolic: DPoint(509, 751),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 5,
-      ),
-      CardiacCycle(
-        systoleStart: DPoint(580, 604),
-        diastoleEnd: DPoint(685, 601),
-        peakSystolic: DPoint(634, 747),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 6,
-      ),
-      CardiacCycle(
-        systoleStart: DPoint(685, 601),
-        diastoleEnd: DPoint(800, 600),
-        peakSystolic: DPoint(750, 763),
-        minimumAbsoluteVelocity: DPoint(0, 0),
-        index: 7,
-      ),
-    ];
+    _cardiacCycleList = [];
     return _cardiacCycleList;
   }
 
@@ -940,15 +64,13 @@ class TraceListData {
     return DPoint(x * widthScale, y * widthScale);
   }
 
-  TraceListData._internal() {
-    setLocation(_currentType);
-    localData();
-    getCardiacCycles();
-  }
-
   static final TraceListData _instance = TraceListData._internal();
 
   static TraceListData get instance => _instance;
+
+  void setVetAutoTraceImageResult(VetAutoTraceImageResult? result) {
+    _vetAutoTraceImageResult = result;
+  }
 }
 
 enum TraceLocationType {

+ 2 - 2
lib/view/measure/measure_main_view.dart

@@ -343,7 +343,7 @@ class _MeasureMainViewState extends State<MeasureMainView> {
         try {
           standardLineCalibrationController!.confirmEdit(calibrationLine);
         } catch (e) {
-          Future.delayed(Duration(seconds: 1), () {
+          Future.delayed(const Duration(seconds: 1), () {
             standardLineCalibrationController!.confirmEdit(calibrationLine);
           });
         }
@@ -353,7 +353,7 @@ class _MeasureMainViewState extends State<MeasureMainView> {
         try {
           standardLineCalibrationController!.cancelEdit();
         } catch (e) {
-          Future.delayed(Duration(seconds: 1), () {
+          Future.delayed(const Duration(seconds: 1), () {
             standardLineCalibrationController!.cancelEdit();
           });
         }

+ 65 - 0
lib/view/player/controller.dart

@@ -2,17 +2,24 @@
 
 import 'dart:async';
 import 'dart:collection';
+import 'dart:convert';
 
 import 'package:fis_common/event/event_type.dart';
 import 'package:fis_common/logger/logger.dart';
 import 'package:fis_i18n/i18n.dart';
+import 'package:fis_jsonrpc/rpc.dart';
+import 'package:fis_measure/interfaces/date_types/rect_region.dart';
 import 'package:fis_measure/interfaces/process/player/play_controller.dart';
+import 'package:fis_measure/interfaces/process/workspace/application.dart';
+import 'package:fis_measure/process/workspace/rpc_bridge.dart';
 import 'package:fis_measure/view/player/buffer_waiter.dart';
 import 'package:fis_vid/data_channel/channel.dart';
 import 'package:flutter/foundation.dart';
+import 'package:get/get.dart';
 import 'package:vid/us/vid_us_image.dart';
 import 'package:vid/us/vid_us_image_data.dart';
 import 'package:vid/us/vid_us_probe.dart';
+import 'package:vid/us/vid_us_visual_area_type.dart';
 
 import 'enums.dart';
 import 'events.dart';
@@ -233,6 +240,9 @@ class VidPlayerController extends ChangeNotifier implements IPlayerController {
       final spendTime = end.difference(start).inMilliseconds;
       _bufferWaiter.recordFrameSpendTime(spendTime);
     }
+
+    // ///[TODO] 半自动 半自动自动测量获取的ai数据
+    // _getHalfAutoAiResult();
     return result;
   }
 
@@ -349,6 +359,61 @@ class VidPlayerController extends ChangeNotifier implements IPlayerController {
     }
   }
 
+  /// 获取半自动ai的结果
+  void _getHalfAutoAiResult() async {
+    final application = Get.find<IApplication>();
+    RectRegion? rectRegion;
+    application.visuals.first.visualAreas.firstWhereOrNull((element) {
+      if (element.visualAreaType == VidUsVisualAreaType.Doppler) {
+        rectRegion = element.layoutRegion;
+        return true;
+      }
+      return false;
+    });
+    if (currentFrame != null && rectRegion != null) {
+      var a = await getAutoTraceImageData(
+        imageInfo: VetAutoTraceImageDTO(
+          imageBase64String: base64Encode(currentFrame!.imageData),
+          height: currentFrame!.height,
+          width: currentFrame!.width,
+          sKColorType: 4,
+        ),
+        rectInfo: VetAutoTraceRectDTO(
+          left: ((rectRegion?.left ?? 0) * currentFrame!.width).toInt(),
+          top: ((rectRegion?.top ?? 0) * currentFrame!.height).toInt(),
+          right: ((rectRegion?.right ?? 0) * currentFrame!.width).toInt(),
+          bottom: ((rectRegion?.bottom ?? 0) * currentFrame!.height).toInt(),
+          height: ((rectRegion?.height ?? 0) * currentFrame!.height).toInt(),
+          width: ((rectRegion?.width ?? 0) * currentFrame!.width).toInt(),
+        ),
+      );
+
+      print("🍭🍭🍭🍭🍭");
+      print(a);
+      print("🍭🍭🍭🍭🍭");
+    }
+  }
+
+  /// [TODO] 需要拆出去
+  Future<VetAutoTraceImageResult?> getAutoTraceImageData({
+    required VetAutoTraceImageDTO imageInfo,
+    VetAutoTraceRectDTO? rectInfo,
+  }) async {
+    try {
+      return await RPCBridge.ins.rpc.aIDiagnosis.vetAutoTraceImageAsync(
+        VetAutoTraceImageRequest(
+          token: RPCBridge.ins.userToken,
+          imageInfo: imageInfo,
+          rectInfo: rectInfo,
+        ),
+      );
+    } catch (e) {
+      logger.e('Project getAutoTraceImageData ex:', e);
+
+      return null;
+    }
+  }
+
   /// [Carotid] ✅用于设置颈动脉单帧展示
   void set2DMeasureFrame(VidUsImage frame) {
     _emitFrameUpdated(frame);

+ 1 - 1
pubspec.yaml

@@ -100,7 +100,7 @@ dependency_overrides:
   fis_jsonrpc:
     git:
       url: http://git.ius.plus:88/Project-Wing/fis_lib_jsonrpc.git
-      ref: "6b6cb44"
+      ref: "625df14"
   fis_lib_business_components:
     git:
       url: http://git.ius.plus/Project-Wing/fis_lib_business_components.git