From c5eb26ed95cefff2740f0ff954a04778f09cfe1b Mon Sep 17 00:00:00 2001
From: wu_xinjun <bent20140204@outlook.com>
Date: 星期二, 08 三月 2022 12:47:57 +0800
Subject: [PATCH] add slam

---
 src/microwave/demo/demoData/2524.ply |  337 +++++++++
 src/microwave/demo/demoData/2522.bin |    0 
 src/microwave/demo/demoData/2527.bin |    0 
 src/microwave/demo/demoData/2525.bin |    0 
 src/microwave/demo/demoData/2523.bin |    0 
 src/microwave/demo/demoData/2526.ply |  358 +++++++++
 src/utils/tools.py                   |   30 
 src/microwave/demo/demoData/2522.ply |  328 +++++++++
 src/microwave/demo/demoData/2526.bin |    0 
 src/microwave/demo/demoData/2524.bin |    0 
 src/microwave/demo/demoData/2527.ply |  354 +++++++++
 src/utils/slam.py                    |   52 +
 src/microwave/demo/demoData/2525.ply |  340 +++++++++
 src/microwave/demo/demoData/2523.ply |  341 +++++++++
 14 files changed, 2,140 insertions(+), 0 deletions(-)

diff --git a/src/microwave/demo/demoData/2522.bin b/src/microwave/demo/demoData/2522.bin
new file mode 100644
index 0000000..fffa5e3
--- /dev/null
+++ b/src/microwave/demo/demoData/2522.bin
Binary files differ
diff --git a/src/microwave/demo/demoData/2522.ply b/src/microwave/demo/demoData/2522.ply
new file mode 100644
index 0000000..4a1aabe
--- /dev/null
+++ b/src/microwave/demo/demoData/2522.ply
@@ -0,0 +1,328 @@
+ply
+format ascii 1.0
+comment MicroWave2Ply generated
+element vertex 318
+property float x
+property float y
+property float z
+element face 0
+property list uchar int vertex_indices
+end_header
+1.63948 1.51857 5.92946
+-0.36172 1.52495 6.25051
+4.09794 1.55037 4.87074
+1.08070 1.50760 6.61858
+0.73507 1.50760 6.66582
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47649 1.37526 12.23736
+-4.51169 1.42715 12.33358
+-4.37222 -1.57816 14.29945
+-4.48662 -1.58943 14.37590
+-4.51541 -1.69449 14.46813
+-4.03159 -5.57540 13.85085
+-4.57095 -1.22326 14.94941
+-6.30205 -2.03288 14.33200
+-5.62556 -2.38745 14.67346
+-3.68498 -2.40359 15.38593
+-4.12806 -2.37045 15.39065
+-6.37659 -0.74415 16.63241
+-4.67380 0.26505 17.42534
+-4.70110 0.37888 17.52713
+-3.54697 -0.93678 17.99526
+-4.02278 5.39983 18.35038
+14.72715 -4.52262 12.54727
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95303 1.31640 16.25310
+-4.95716 0.66585 31.50322
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-4.08125 0.69275 32.92740
+4.09417 0.79793 33.03167
+3.85185 0.80051 33.16890
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79183 0.28864 32.77858
+10.33426 0.40232 33.11271
+-4.73573 -2.57528 42.94519
+-4.74833 -2.44770 43.05949
+3.09358 -3.90559 43.31882
+-4.18017 -4.72236 43.25444
+7.72531 -3.98255 43.60586
+-6.30997 -3.85486 43.95337
+-0.26693 -0.67841 46.17625
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53754 -0.82695 46.49374
+0.53496 -10.10228 46.27039
+2.41336 -9.98171 46.34672
+1.16424 -10.14810 46.46876
+-6.13905 0.00000 47.28878
+4.32201 -0.55428 47.59395
+4.60526 -1.55522 47.65313
+-10.98012 -9.07625 45.84547
+1.18476 -8.80413 47.28801
+-9.04512 -1.86378 47.33002
+-0.55052 -8.86309 47.61643
+0.93500 -1.27601 48.51902
+-12.32854 -1.16601 47.04980
+2.53501 -1.01783 48.68302
+-1.20795 -8.51425 48.21349
+1.19270 -8.86309 47.60467
+-10.52191 -1.55522 46.70459
+15.83382 -10.74206 46.01398
+15.87715 -1.62148 47.32220
+15.91622 -1.04473 47.43864
+16.31982 0.11634 47.42630
+-0.52802 -0.81230 45.67042
+-0.87193 10.87424 45.24604
+-2.92666 11.21811 45.96494
+-2.97988 11.42208 46.80066
+-2.83825 0.26589 49.04552
+16.26574 -0.27056 47.26915
+-11.55778 -0.43249 49.51936
+-11.75367 -0.43982 50.35867
+-12.24573 -0.12195 51.12976
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.25982 0.00000 51.43124
+-11.83290 -0.89895 60.03324
+-12.00005 -0.71970 60.88125
+-12.16623 -0.92427 61.72432
+-12.13326 -0.74969 63.48917
+8.58751 0.00000 69.28373
+17.38704 0.00000 68.50372
+20.38640 -1.27210 68.55960
+20.22938 -1.51130 69.49957
+20.45115 3.51061 70.26147
+-58.92476 29.16052 100.15268
+-59.34868 29.37031 100.87320
+-61.66606 -2.57280 106.68486
+58.05436 -4.08567 111.57083
+59.30981 -4.50528 111.86939
+58.84343 -4.53593 113.08729
+-6.35123 -2.39616 99.74969
+23.81069 3.51061 69.19519
+1.63948 1.51857 5.92946
+1.08218 1.46609 6.62766
+4.80913 1.46952 5.14707
+-4.33202 1.39234 12.05801
+-4.43980 1.36398 12.13706
+-4.47649 1.37526 12.23736
+-4.51319 1.38653 12.33767
+-3.40184 -1.43936 14.57522
+-5.00445 -1.62325 14.54322
+-4.32960 -1.58662 14.87466
+-3.24203 -0.79924 17.51292
+-4.53980 -0.95641 17.32537
+-4.57342 0.09765 17.45369
+-4.70138 -0.32276 17.52818
+-6.32426 -0.34568 18.37864
+-4.10405 -0.41475 19.43610
+-4.91230 -0.58684 19.35411
+-4.45063 -1.39571 19.75543
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95020 1.38469 16.25002
+-4.95682 0.76447 31.50103
+-0.37861 0.68378 32.74767
+-0.37988 0.58440 32.85701
+-0.38112 0.58631 32.96438
+-0.38238 0.48593 33.07342
+-3.82758 0.59013 32.95985
+4.09470 0.59204 33.03594
+3.85235 0.59395 33.17318
+8.92944 0.38862 32.29480
+8.95864 -0.07797 32.40040
+8.98696 -0.28682 32.50282
+9.01558 -0.28773 32.60634
+8.79212 0.07872 32.77968
+8.18346 0.60541 33.04211
+10.14226 0.50960 33.17054
+-1.07842 -4.40971 43.04347
+0.24981 -3.88635 43.21448
+0.50098 -3.76197 43.33112
+-5.07980 -3.03511 43.74296
+-7.10199 -3.96331 43.49494
+-6.53569 -3.56288 43.72714
+-6.55151 -3.57150 43.83302
+-2.85220 0.79830 44.79539
+-0.26695 -0.39277 46.17956
+-0.26753 -0.82313 46.28131
+-0.26815 -0.82504 46.38869
+-0.53751 -0.97075 46.49096
+9.01302 -0.68472 45.72678
+-1.18256 -1.97245 47.20001
+-3.29168 -10.38831 46.09273
+2.41174 -10.12519 46.31567
+2.68549 -10.14810 46.40570
+3.03004 -0.25809 47.58854
+31.39335 -0.84987 36.02646
+-10.52292 -1.40715 46.70906
+-10.97353 -9.22200 45.81796
+-11.36521 -8.95038 45.88894
+-8.77655 0.85751 47.40945
+3.01492 -9.74516 47.35107
+2.80397 -1.01334 48.45316
+0.56230 -1.16601 48.63498
+-1.50788 -2.34680 48.89489
+-14.71858 0.85751 45.91348
+-3.40428 -3.56288 44.08162
+3.39073 -3.03511 43.90620
+15.87715 -1.62148 47.32220
+15.91717 -0.88997 47.44148
+16.31876 -0.58168 47.42324
+-5.65813 -0.78165 43.58421
+2.84747 -0.79698 44.72115
+-0.52802 -0.81230 45.67042
+-0.52279 11.01414 45.21757
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-3.01576 12.69331 47.36428
+16.53871 0.27056 47.17434
+-11.55820 0.00000 49.52115
+-11.75410 0.00000 50.36049
+-11.94997 0.12195 51.19969
+25.47503 -0.47647 49.89417
+25.86695 -0.48380 50.66178
+26.25887 -0.49113 51.42938
+-11.83290 -0.89895 60.03324
+-12.00005 -0.71970 60.88125
+-12.16672 -0.72970 61.72683
+-12.13326 -0.74969 63.48917
+14.57630 -1.63187 66.49158
+14.42354 0.16194 68.30751
+8.58748 0.16194 69.28354
+14.20164 0.16394 69.23406
+20.38742 -1.05088 68.56305
+20.23161 -1.06354 69.50722
+23.81730 3.05791 69.21440
+23.55705 3.09388 70.21233
+-4.83916 -2.23091 92.93256
+-4.88397 -2.25157 93.79304
+20.14391 0.16394 67.74411
+8.76342 -1.63187 67.50408
+-60.80723 -2.16104 105.19906
+-58.15124 -2.17636 107.67061
+-62.49589 -1.42941 106.22242
+-62.11065 -0.28789 107.45403
+-62.54198 -0.28989 108.20024
+58.05991 -3.69668 111.58150
+59.32173 -3.72200 111.89187
+4.80471 1.52495 4.01428
+1.13323 1.46609 6.61912
+4.80601 1.49130 5.14372
+-4.33202 1.39234 12.05801
+-4.43980 1.36398 12.13706
+-4.47649 1.37526 12.23736
+-4.51319 1.38653 12.33767
+-6.93826 -4.82851 13.33419
+-3.06989 -0.81078 15.57484
+-3.09455 -0.13610 15.69995
+-3.01551 -1.20709 15.77915
+-4.67413 0.15346 17.42659
+-4.70162 0.26663 17.52906
+14.52441 -3.35568 15.01444
+14.98977 1.10113 15.49549
+15.06434 1.10660 15.57258
+15.01402 1.05503 16.06905
+15.07785 1.31640 16.13737
+-4.95682 0.76447 31.50103
+-0.37864 0.58249 32.74963
+-0.37988 0.58440 32.85701
+-0.38112 0.58631 32.96438
+-0.38238 0.48593 33.07342
+-3.82777 0.48751 32.96151
+4.09446 0.69499 33.03396
+3.85212 0.69723 33.17120
+8.92944 0.38862 32.29480
+8.95864 -0.07797 32.40040
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+8.18420 0.39484 33.04511
+10.14045 0.83140 33.16459
+-5.89235 -2.57528 42.80183
+-4.53660 -1.68944 43.44291
+-4.54957 -1.15179 43.56716
+1.10178 -1.97402 43.97593
+0.49379 -11.14086 42.70949
+2.60256 16.74660 40.87462
+-4.60810 -2.92006 44.12766
+-4.88371 -1.17155 44.28714
+-0.26694 -0.53559 46.17812
+-0.26753 -0.82313 46.28131
+-0.53630 -0.82504 46.38636
+-0.26877 -0.82695 46.49607
+-0.89788 -0.97299 46.59279
+-1.18240 -2.11846 47.19368
+0.53469 -10.20959 46.24684
+2.41174 -10.12519 46.31567
+1.16502 -10.00429 46.49991
+-6.13904 0.11061 47.28865
+-6.15191 -0.84987 47.38779
+0.92271 -0.99989 47.88107
+-10.97353 -9.22200 45.81796
+0.91087 -8.95038 47.26662
+1.18912 -9.59837 47.46197
+0.93512 -1.01334 48.52521
+0.56234 -1.01558 48.63835
+-1.46963 10.71810 47.65445
+2.11223 10.71810 47.63029
+2.68729 -10.00429 46.43682
+15.87365 -1.93019 47.31179
+15.91281 -1.47025 47.42850
+3.08921 11.31183 43.25765
+-0.52802 -0.81230 45.67042
+-0.87128 11.01414 45.21220
+-2.92445 11.36050 45.93009
+-2.97301 11.85668 46.69289
+-3.03309 11.62604 47.63639
+16.53784 0.57976 47.17186
+-11.55816 0.11795 49.52102
+-11.75407 0.11995 50.36035
+-11.94997 0.12195 51.19969
+25.47557 -0.30321 49.89525
+26.25752 -0.13195 50.46260
+26.65544 0.00000 51.22732
+-11.83338 -0.70970 60.03568
+-12.00043 -0.52779 60.88315
+-12.16710 -0.53512 61.72875
+-12.33377 -0.54245 62.57435
+14.57630 -1.63187 66.49158
+14.42337 -0.37785 68.30669
+8.98772 -0.37785 69.23192
+17.17475 -0.37785 67.66732
+16.99051 -0.38251 68.60208
+19.99075 -1.05088 68.67975
+20.23059 -1.28743 69.50373
+23.27667 3.51061 69.37665
+-29.37976 -0.91962 73.64543
+38.98556 -0.74037 77.83066
+39.37156 -0.74770 78.60126
+39.75755 -0.75503 79.37186
+1.13553 -2.58269 98.21609
+1.90932 -2.06904 99.07851
+-45.05741 -0.98227 106.33846
+-46.01218 -0.98960 106.86784
+-59.13255 -3.14907 104.14628
+-59.55796 -3.17172 104.89553
+-58.15833 -1.04091 107.68374
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-54.46051 -3.14907 106.66377
+1.92604 -1.77787 99.94603
+-25.42015 -0.72571 81.45044
+20.45115 3.51061 70.26147
+-56.19992 7.55483 171.88697
+-56.46754 7.59081 172.70548
diff --git a/src/microwave/demo/demoData/2523.bin b/src/microwave/demo/demoData/2523.bin
new file mode 100644
index 0000000..60a6bcd
--- /dev/null
+++ b/src/microwave/demo/demoData/2523.bin
Binary files differ
diff --git a/src/microwave/demo/demoData/2523.ply b/src/microwave/demo/demoData/2523.ply
new file mode 100644
index 0000000..c4325e2
--- /dev/null
+++ b/src/microwave/demo/demoData/2523.ply
@@ -0,0 +1,341 @@
+ply
+format ascii 1.0
+comment MicroWave2Ply generated
+element vertex 331
+property float x
+property float y
+property float z
+element face 0
+property list uchar int vertex_indices
+end_header
+-3.97423 -1.05348 43.76419
+-5.76832 -1.07414 44.43307
+-0.52799 -0.95356 45.66769
+-0.87062 11.15395 45.17793
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-2.75559 11.77361 47.61700
+-1.86986 11.98016 48.49742
+-11.55803 0.27522 49.52042
+-11.75392 0.27989 50.35975
+-11.94997 0.12195 51.19969
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.65544 0.00000 51.22732
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16710 -0.53512 61.72875
+-11.97148 -0.73969 62.64265
+17.38429 -1.25677 68.49289
+20.38640 -1.27210 68.55960
+20.22938 -1.51130 69.49957
+23.29836 -1.52929 69.44131
+-28.81314 -0.18393 73.87445
+-29.12633 -0.18593 74.67743
+38.98277 -1.27878 77.82507
+39.36873 -1.29145 78.59562
+39.75470 -1.30411 79.36616
+1.13560 -2.35485 98.22181
+1.90944 -1.76255 99.08443
+1.15567 -1.77787 99.95791
+-45.05601 -1.33944 106.33515
+-59.57212 -1.77257 104.92047
+16.53784 0.57976 47.17186
+2.84710 -1.07414 44.71538
+-0.51799 -1.07414 44.80293
+-5.99310 -1.05348 43.53369
+-58.15652 -1.41941 107.68039
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-24.90987 -2.77071 130.34479
+-31.10949 -2.78870 129.89193
+1.63948 1.51857 5.92946
+1.08218 1.46609 6.62766
+4.80913 1.46952 5.14707
+-4.33202 1.39234 12.05801
+-4.43980 1.36398 12.13706
+-4.47649 1.37526 12.23736
+-4.44179 1.38653 12.36355
+-3.40184 -1.43936 14.57522
+-5.00445 -1.62325 14.54322
+-4.32960 -1.58662 14.87466
+-3.24203 -0.79924 17.51292
+-4.53980 -0.95641 17.32537
+-4.57342 0.09765 17.45369
+-4.70138 -0.32276 17.52818
+-6.32426 -0.34568 18.37864
+-4.10405 -0.41475 19.43610
+-4.91230 -0.58684 19.35411
+-4.45063 -1.39571 19.75543
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95020 1.38469 16.25002
+-4.95682 0.76447 31.50103
+-0.37861 0.68378 32.74767
+-0.37988 0.58440 32.85701
+-0.38112 0.58631 32.96438
+-0.38238 0.48593 33.07342
+-3.82758 0.59013 32.95985
+4.09470 0.59204 33.03594
+3.85235 0.59395 33.17318
+8.92944 0.38862 32.29480
+8.95864 -0.07797 32.40040
+8.98696 -0.28682 32.50282
+9.01558 -0.28773 32.60634
+8.79212 0.07872 32.77968
+8.18346 0.60541 33.04211
+10.14226 0.50960 33.17054
+-1.07842 -4.40971 43.04347
+0.24981 -3.88635 43.21448
+0.50098 -3.76197 43.33112
+-5.07980 -3.03511 43.74296
+-7.10199 -3.96331 43.49494
+-6.53569 -3.56288 43.72714
+-6.55151 -3.57150 43.83302
+-2.85220 0.79830 44.79539
+-0.26695 -0.39277 46.17956
+-0.26753 -0.82313 46.28131
+-0.26815 -0.82504 46.38869
+-0.53751 -0.97075 46.49096
+9.01302 -0.68472 45.72678
+-1.18256 -1.97245 47.20001
+-3.29168 -10.38831 46.09273
+2.41174 -10.12519 46.31567
+2.68549 -10.14810 46.40570
+3.03004 -0.25809 47.58854
+31.39335 -0.84987 36.02646
+-10.52292 -1.40715 46.70906
+-10.97353 -9.22200 45.81796
+-11.36521 -8.95038 45.88894
+-8.77655 0.85751 47.40945
+3.01492 -9.74516 47.35107
+2.80397 -1.01334 48.45316
+0.56230 -1.16601 48.63498
+-1.50788 -2.34680 48.89489
+-14.71858 0.85751 45.91348
+-3.40428 -3.56288 44.08162
+3.39073 -3.03511 43.90620
+15.87715 -1.62148 47.32220
+15.91717 -0.88997 47.44148
+16.31876 -0.58168 47.42324
+-5.65813 -0.78165 43.58421
+2.84747 -0.79698 44.72115
+-0.52802 -0.81230 45.67042
+-0.52279 11.01414 45.21757
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-3.01576 12.69331 47.36428
+16.53871 0.27056 47.17434
+-11.55820 0.00000 49.52115
+-11.75410 0.00000 50.36049
+-11.94997 0.12195 51.19969
+25.47503 -0.47647 49.89417
+25.86695 -0.48380 50.66178
+26.25887 -0.49113 51.42938
+-11.83290 -0.89895 60.03324
+-12.00005 -0.71970 60.88125
+-12.16672 -0.72970 61.72683
+-12.13326 -0.74969 63.48917
+14.57630 -1.63187 66.49158
+14.42354 0.16194 68.30751
+8.58748 0.16194 69.28354
+14.20164 0.16394 69.23406
+20.38742 -1.05088 68.56305
+20.23161 -1.06354 69.50722
+23.81730 3.05791 69.21440
+23.55705 3.09388 70.21233
+-4.83916 -2.23091 92.93256
+-4.88397 -2.25157 93.79304
+20.14391 0.16394 67.74411
+8.76342 -1.63187 67.50408
+-60.80723 -2.16104 105.19906
+-58.15124 -2.17636 107.67061
+-62.49589 -1.42941 106.22242
+-62.11065 -0.28789 107.45403
+-62.54198 -0.28989 108.20024
+58.05991 -3.69668 111.58150
+59.32173 -3.72200 111.89187
+4.80471 1.52495 4.01428
+1.13323 1.46609 6.61912
+4.80601 1.49130 5.14372
+-4.33202 1.39234 12.05801
+-4.43980 1.36398 12.13706
+-4.47649 1.37526 12.23736
+-4.51319 1.38653 12.33767
+-6.93826 -4.82851 13.33419
+-3.06989 -0.81078 15.57484
+-3.09455 -0.13610 15.69995
+-3.01551 -1.20709 15.77915
+-4.67413 0.15346 17.42659
+-4.70162 0.26663 17.52906
+14.52441 -3.35568 15.01444
+14.98977 1.10113 15.49549
+15.06434 1.10660 15.57258
+15.01402 1.05503 16.06905
+15.07785 1.31640 16.13737
+-4.95682 0.76447 31.50103
+-0.37864 0.58249 32.74963
+-0.37988 0.58440 32.85701
+-0.38112 0.58631 32.96438
+-0.38238 0.48593 33.07342
+-3.82777 0.48751 32.96151
+4.09446 0.69499 33.03396
+3.85212 0.69723 33.17120
+8.92944 0.38862 32.29480
+8.95864 -0.07797 32.40040
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+8.18420 0.39484 33.04511
+10.14045 0.83140 33.16459
+-5.89235 -2.57528 42.80183
+-4.53660 -1.68944 43.44291
+-4.54957 -1.15179 43.56716
+1.10178 -1.97402 43.97593
+0.49379 -11.14086 42.70949
+2.60256 16.74660 40.87462
+-4.60810 -2.92006 44.12766
+-4.88371 -1.17155 44.28714
+-0.26694 -0.53559 46.17812
+-0.26753 -0.82313 46.28131
+-0.53630 -0.82504 46.38636
+-0.26877 -0.82695 46.49607
+-0.89788 -0.97299 46.59279
+-1.18240 -2.11846 47.19368
+0.53469 -10.20959 46.24684
+2.41174 -10.12519 46.31567
+1.16502 -10.00429 46.49991
+-6.13904 0.11061 47.28865
+-6.15191 -0.84987 47.38779
+0.92271 -0.99989 47.88107
+-10.97353 -9.22200 45.81796
+0.91087 -8.95038 47.26662
+1.18912 -9.59837 47.46197
+0.93512 -1.01334 48.52521
+0.56234 -1.01558 48.63835
+-1.46963 10.71810 47.65445
+2.11223 10.71810 47.63029
+2.68729 -10.00429 46.43682
+15.87365 -1.93019 47.31179
+15.91281 -1.47025 47.42850
+3.08921 11.31183 43.25765
+-0.52802 -0.81230 45.67042
+-0.87128 11.01414 45.21220
+-2.92445 11.36050 45.93009
+-2.97301 11.85668 46.69289
+-3.03309 11.62604 47.63639
+16.53784 0.57976 47.17186
+-11.55816 0.11795 49.52102
+-11.75407 0.11995 50.36035
+-11.94997 0.12195 51.19969
+25.47557 -0.30321 49.89525
+26.25752 -0.13195 50.46260
+26.65544 0.00000 51.22732
+-11.83338 -0.70970 60.03568
+-12.00043 -0.52779 60.88315
+-12.16710 -0.53512 61.72875
+-12.33377 -0.54245 62.57435
+14.57630 -1.63187 66.49158
+14.42337 -0.37785 68.30669
+8.98772 -0.37785 69.23192
+17.17475 -0.37785 67.66732
+16.99051 -0.38251 68.60208
+19.99075 -1.05088 68.67975
+20.23059 -1.28743 69.50373
+23.27667 3.51061 69.37665
+-29.37976 -0.91962 73.64543
+38.98556 -0.74037 77.83066
+39.37156 -0.74770 78.60126
+39.75755 -0.75503 79.37186
+1.13553 -2.58269 98.21609
+1.90932 -2.06904 99.07851
+-45.05741 -0.98227 106.33846
+-46.01218 -0.98960 106.86784
+-59.13255 -3.14907 104.14628
+-59.55796 -3.17172 104.89553
+-58.15833 -1.04091 107.68374
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-54.46051 -3.14907 106.66377
+1.92604 -1.77787 99.94603
+-25.42015 -0.72571 81.45044
+20.45115 3.51061 70.26147
+-56.19992 7.55483 171.88697
+-56.46754 7.59081 172.70548
+1.63948 1.51857 5.92946
+-0.36172 1.52495 6.25051
+4.09794 1.55037 4.87074
+1.08070 1.50760 6.61858
+0.73507 1.50760 6.66582
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47649 1.37526 12.23736
+-4.51169 1.42715 12.33358
+-4.37222 -1.57816 14.29945
+-4.48662 -1.58943 14.37590
+-4.51541 -1.69449 14.46813
+-4.03159 -5.57540 13.85085
+-4.57095 -1.22326 14.94941
+-6.30205 -2.03288 14.33200
+-5.62556 -2.38745 14.67346
+-3.68498 -2.40359 15.38593
+-4.12806 -2.37045 15.39065
+-6.37659 -0.74415 16.63241
+-4.67380 0.26505 17.42534
+-4.70110 0.37888 17.52713
+-3.54697 -0.93678 17.99526
+-4.02278 5.39983 18.35038
+14.72715 -4.52262 12.54727
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95303 1.31640 16.25310
+-4.95716 0.66585 31.50322
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-4.08125 0.69275 32.92740
+4.09417 0.79793 33.03167
+3.85185 0.80051 33.16890
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79183 0.28864 32.77858
+10.33426 0.40232 33.11271
+-4.73573 -2.57528 42.94519
+-4.74833 -2.44770 43.05949
+3.09358 -3.90559 43.31882
+-4.18017 -4.72236 43.25444
+7.72531 -3.98255 43.60586
+-6.30997 -3.85486 43.95337
+-0.26693 -0.67841 46.17625
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53754 -0.82695 46.49374
+0.53496 -10.10228 46.27039
+2.41336 -9.98171 46.34672
+1.16424 -10.14810 46.46876
+-6.13905 0.00000 47.28878
+4.32201 -0.55428 47.59395
+4.60526 -1.55522 47.65313
+-10.98012 -9.07625 45.84547
+1.18476 -8.80413 47.28801
+-9.04512 -1.86378 47.33002
+-0.55052 -8.86309 47.61643
+0.93500 -1.27601 48.51902
+-12.32854 -1.16601 47.04980
+2.53501 -1.01783 48.68302
+-1.20795 -8.51425 48.21349
+1.19270 -8.86309 47.60467
+-10.52191 -1.55522 46.70459
+15.83382 -10.74206 46.01398
+15.87715 -1.62148 47.32220
+15.91622 -1.04473 47.43864
+16.31982 0.11634 47.42630
diff --git a/src/microwave/demo/demoData/2524.bin b/src/microwave/demo/demoData/2524.bin
new file mode 100644
index 0000000..f5675c9
--- /dev/null
+++ b/src/microwave/demo/demoData/2524.bin
Binary files differ
diff --git a/src/microwave/demo/demoData/2524.ply b/src/microwave/demo/demoData/2524.ply
new file mode 100644
index 0000000..6aa14b1
--- /dev/null
+++ b/src/microwave/demo/demoData/2524.ply
@@ -0,0 +1,337 @@
+ply
+format ascii 1.0
+comment MicroWave2Ply generated
+element vertex 327
+property float x
+property float y
+property float z
+element face 0
+property list uchar int vertex_indices
+end_header
+-0.75600 1.54234 6.09936
+4.84316 1.52495 3.96781
+-0.07753 1.50760 6.70578
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47501 1.41555 12.23331
+-4.51169 1.42715 12.33358
+-5.56115 -1.14197 14.84678
+-7.36912 -1.10032 14.16222
+-5.01333 -5.46934 14.29982
+-1.82381 -1.37407 17.46495
+-3.79185 -4.90145 16.83124
+-4.67429 -0.04185 17.42717
+-3.86367 -0.04185 17.62462
+-4.70138 0.32276 17.52818
+-5.59510 3.64647 17.45349
+-4.24271 -1.03086 18.83250
+14.54160 5.90773 14.18778
+14.98540 1.21779 15.49098
+15.05725 1.29084 15.56526
+15.01402 1.05503 16.06905
+15.02755 6.97787 14.66190
+-4.95746 0.56721 31.50510
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38110 0.68827 32.96241
+-0.38236 0.58822 33.07176
+-4.08149 0.59013 32.92937
+4.09417 0.79793 33.03167
+3.85212 0.69723 33.17120
+8.92863 0.59586 32.29186
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+0.80885 10.53496 41.97272
+3.09173 -2.85658 43.29284
+1.08880 -3.40166 43.45787
+1.67812 -3.67953 43.52432
+2.27012 3.78984 43.59594
+0.81828 11.21805 42.46212
+0.81961 11.37709 42.53097
+-1.34586 8.40619 43.64099
+-0.26695 -0.39277 46.17956
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53757 -0.68314 46.49607
+6.00057 -0.39643 46.22204
+0.53496 -10.10228 46.27039
+2.41174 -10.12519 46.31567
+1.16365 -10.25589 46.44511
+-6.13904 -0.11061 47.28865
+1.19435 -0.11061 47.67051
+-6.15266 -0.40647 47.39357
+-10.52382 -1.25907 46.71308
+-10.98012 -9.07625 45.84547
+0.91033 -9.09655 47.23872
+-14.68892 -9.55581 44.92595
+9.75360 -0.71312 47.54952
+10.05048 -0.71470 47.59741
+-11.00469 -9.09655 45.94804
+15.88096 -1.19690 47.33356
+16.28137 -1.04473 47.31456
+16.59262 -0.58168 47.32812
+-5.65813 -0.78165 43.58421
+2.84747 -0.79698 44.72115
+-0.52802 -0.81230 45.67042
+-0.52279 11.01414 45.21757
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-3.01576 12.69331 47.36428
+16.53871 0.27056 47.17434
+-11.55820 0.00000 49.52115
+-11.75410 0.00000 50.36049
+-11.94997 0.12195 51.19969
+25.47503 -0.47647 49.89417
+25.86695 -0.48380 50.66178
+26.25887 -0.49113 51.42938
+-11.83290 -0.89895 60.03324
+-12.00005 -0.71970 60.88125
+-12.16672 -0.72970 61.72683
+-12.13326 -0.74969 63.48917
+14.57630 -1.63187 66.49158
+14.42354 0.16194 68.30751
+8.58748 0.16194 69.28354
+14.20164 0.16394 69.23406
+20.38742 -1.05088 68.56305
+20.23161 -1.06354 69.50722
+23.81730 3.05791 69.21440
+23.55705 3.09388 70.21233
+-4.83916 -2.23091 92.93256
+-4.88397 -2.25157 93.79304
+20.14391 0.16394 67.74411
+8.76342 -1.63187 67.50408
+-60.80723 -2.16104 105.19906
+-58.15124 -2.17636 107.67061
+-62.49589 -1.42941 106.22242
+-62.11065 -0.28789 107.45403
+-62.54198 -0.28989 108.20024
+58.05991 -3.69668 111.58150
+59.32173 -3.72200 111.89187
+4.80471 1.52495 4.01428
+1.13323 1.46609 6.61912
+4.80601 1.49130 5.14372
+-4.33202 1.39234 12.05801
+-4.43980 1.36398 12.13706
+-4.47649 1.37526 12.23736
+-4.51319 1.38653 12.33767
+-6.93826 -4.82851 13.33419
+-3.06989 -0.81078 15.57484
+-3.09455 -0.13610 15.69995
+-3.01551 -1.20709 15.77915
+-4.67413 0.15346 17.42659
+-4.70162 0.26663 17.52906
+14.52441 -3.35568 15.01444
+14.98977 1.10113 15.49549
+15.06434 1.10660 15.57258
+15.01402 1.05503 16.06905
+15.07785 1.31640 16.13737
+-4.95682 0.76447 31.50103
+-0.37864 0.58249 32.74963
+-0.37988 0.58440 32.85701
+-0.38112 0.58631 32.96438
+-0.38238 0.48593 33.07342
+-3.82777 0.48751 32.96151
+4.09446 0.69499 33.03396
+3.85212 0.69723 33.17120
+8.92944 0.38862 32.29480
+8.95864 -0.07797 32.40040
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+8.18420 0.39484 33.04511
+10.14045 0.83140 33.16459
+-5.89235 -2.57528 42.80183
+-4.53660 -1.68944 43.44291
+-4.54957 -1.15179 43.56716
+1.10178 -1.97402 43.97593
+0.49379 -11.14086 42.70949
+2.60256 16.74660 40.87462
+-4.60810 -2.92006 44.12766
+-4.88371 -1.17155 44.28714
+-0.26694 -0.53559 46.17812
+-0.26753 -0.82313 46.28131
+-0.53630 -0.82504 46.38636
+-0.26877 -0.82695 46.49607
+-0.89788 -0.97299 46.59279
+-1.18240 -2.11846 47.19368
+0.53469 -10.20959 46.24684
+2.41174 -10.12519 46.31567
+1.16502 -10.00429 46.49991
+-6.13904 0.11061 47.28865
+-6.15191 -0.84987 47.38779
+0.92271 -0.99989 47.88107
+-10.97353 -9.22200 45.81796
+0.91087 -8.95038 47.26662
+1.18912 -9.59837 47.46197
+0.93512 -1.01334 48.52521
+0.56234 -1.01558 48.63835
+-1.46963 10.71810 47.65445
+2.11223 10.71810 47.63029
+2.68729 -10.00429 46.43682
+15.87365 -1.93019 47.31179
+15.91281 -1.47025 47.42850
+3.08921 11.31183 43.25765
+-0.52802 -0.81230 45.67042
+-0.87128 11.01414 45.21220
+-2.92445 11.36050 45.93009
+-2.97301 11.85668 46.69289
+-3.03309 11.62604 47.63639
+16.53784 0.57976 47.17186
+-11.55816 0.11795 49.52102
+-11.75407 0.11995 50.36035
+-11.94997 0.12195 51.19969
+25.47557 -0.30321 49.89525
+26.25752 -0.13195 50.46260
+26.65544 0.00000 51.22732
+-11.83338 -0.70970 60.03568
+-12.00043 -0.52779 60.88315
+-12.16710 -0.53512 61.72875
+-12.33377 -0.54245 62.57435
+14.57630 -1.63187 66.49158
+14.42337 -0.37785 68.30669
+8.98772 -0.37785 69.23192
+17.17475 -0.37785 67.66732
+16.99051 -0.38251 68.60208
+19.99075 -1.05088 68.67975
+20.23059 -1.28743 69.50373
+23.27667 3.51061 69.37665
+-29.37976 -0.91962 73.64543
+38.98556 -0.74037 77.83066
+39.37156 -0.74770 78.60126
+39.75755 -0.75503 79.37186
+1.13553 -2.58269 98.21609
+1.90932 -2.06904 99.07851
+-45.05741 -0.98227 106.33846
+-46.01218 -0.98960 106.86784
+-59.13255 -3.14907 104.14628
+-59.55796 -3.17172 104.89553
+-58.15833 -1.04091 107.68374
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-54.46051 -3.14907 106.66377
+1.92604 -1.77787 99.94603
+-25.42015 -0.72571 81.45044
+20.45115 3.51061 70.26147
+-56.19992 7.55483 171.88697
+-56.46754 7.59081 172.70548
+1.63948 1.51857 5.92946
+-0.36172 1.52495 6.25051
+4.09794 1.55037 4.87074
+1.08070 1.50760 6.61858
+0.73507 1.50760 6.66582
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47649 1.37526 12.23736
+-4.51169 1.42715 12.33358
+-4.37222 -1.57816 14.29945
+-4.48662 -1.58943 14.37590
+-4.51541 -1.69449 14.46813
+-4.03159 -5.57540 13.85085
+-4.57095 -1.22326 14.94941
+-6.30205 -2.03288 14.33200
+-5.62556 -2.38745 14.67346
+-3.68498 -2.40359 15.38593
+-4.12806 -2.37045 15.39065
+-6.37659 -0.74415 16.63241
+-4.67380 0.26505 17.42534
+-4.70110 0.37888 17.52713
+-3.54697 -0.93678 17.99526
+-4.02278 5.39983 18.35038
+14.72715 -4.52262 12.54727
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95303 1.31640 16.25310
+-4.95716 0.66585 31.50322
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-4.08125 0.69275 32.92740
+4.09417 0.79793 33.03167
+3.85185 0.80051 33.16890
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79183 0.28864 32.77858
+10.33426 0.40232 33.11271
+-4.73573 -2.57528 42.94519
+-4.74833 -2.44770 43.05949
+3.09358 -3.90559 43.31882
+-4.18017 -4.72236 43.25444
+7.72531 -3.98255 43.60586
+-6.30997 -3.85486 43.95337
+-0.26693 -0.67841 46.17625
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53754 -0.82695 46.49374
+0.53496 -10.10228 46.27039
+2.41336 -9.98171 46.34672
+1.16424 -10.14810 46.46876
+-6.13905 0.00000 47.28878
+4.32201 -0.55428 47.59395
+4.60526 -1.55522 47.65313
+-10.98012 -9.07625 45.84547
+1.18476 -8.80413 47.28801
+-9.04512 -1.86378 47.33002
+-0.55052 -8.86309 47.61643
+0.93500 -1.27601 48.51902
+-12.32854 -1.16601 47.04980
+2.53501 -1.01783 48.68302
+-1.20795 -8.51425 48.21349
+1.19270 -8.86309 47.60467
+-10.52191 -1.55522 46.70459
+15.83382 -10.74206 46.01398
+15.87715 -1.62148 47.32220
+15.91622 -1.04473 47.43864
+16.31982 0.11634 47.42630
+-3.97423 -1.05348 43.76419
+-5.76832 -1.07414 44.43307
+-0.52799 -0.95356 45.66769
+-0.87062 11.15395 45.17793
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-2.75559 11.77361 47.61700
+-1.86986 11.98016 48.49742
+-11.55803 0.27522 49.52042
+-11.75392 0.27989 50.35975
+-11.94997 0.12195 51.19969
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.65544 0.00000 51.22732
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16710 -0.53512 61.72875
+-11.97148 -0.73969 62.64265
+17.38429 -1.25677 68.49289
+20.38640 -1.27210 68.55960
+20.22938 -1.51130 69.49957
+23.29836 -1.52929 69.44131
+-28.81314 -0.18393 73.87445
+-29.12633 -0.18593 74.67743
+38.98277 -1.27878 77.82507
+39.36873 -1.29145 78.59562
+39.75470 -1.30411 79.36616
+1.13560 -2.35485 98.22181
+1.90944 -1.76255 99.08443
+1.15567 -1.77787 99.95791
+-45.05601 -1.33944 106.33515
+-59.57212 -1.77257 104.92047
+16.53784 0.57976 47.17186
+2.84710 -1.07414 44.71538
+-0.51799 -1.07414 44.80293
+-5.99310 -1.05348 43.53369
+-58.15652 -1.41941 107.68039
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-24.90987 -2.77071 130.34479
+-31.10949 -2.78870 129.89193
diff --git a/src/microwave/demo/demoData/2525.bin b/src/microwave/demo/demoData/2525.bin
new file mode 100644
index 0000000..8600ee0
--- /dev/null
+++ b/src/microwave/demo/demoData/2525.bin
Binary files differ
diff --git a/src/microwave/demo/demoData/2525.ply b/src/microwave/demo/demoData/2525.ply
new file mode 100644
index 0000000..e8b6a5f
--- /dev/null
+++ b/src/microwave/demo/demoData/2525.ply
@@ -0,0 +1,340 @@
+ply
+format ascii 1.0
+comment MicroWave2Ply generated
+element vertex 330
+property float x
+property float y
+property float z
+element face 0
+property list uchar int vertex_indices
+end_header
+-0.51813 0.24257 44.81515
+-0.52807 -0.52978 45.67458
+-2.87127 11.15395 45.09500
+-2.92445 11.36050 45.93009
+-2.70724 11.56706 46.78161
+-2.75559 11.77361 47.61700
+-11.55820 0.00000 49.52115
+-11.75410 0.00000 50.36049
+-11.94997 0.12195 51.19969
+25.85937 -0.30321 49.69742
+26.25752 -0.13195 50.46260
+26.65537 0.13395 51.22718
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16672 -0.72970 61.72683
+-11.97148 -0.73969 62.64265
+17.38699 -0.16394 68.50354
+20.38742 -1.05088 68.56305
+20.23059 -1.28743 69.50373
+20.47143 -1.30275 70.33115
+38.98081 -1.54798 77.82116
+39.36676 -1.56330 78.59167
+39.75271 -1.57863 79.36218
+1.06594 -1.92510 92.19704
+-4.84038 -0.79168 92.95590
+-4.88530 -0.50846 93.81862
+1.89283 -1.74722 98.22283
+1.90944 -1.76255 99.08443
+1.92604 -1.77787 99.94603
+20.14391 -0.16394 67.74411
+-0.87062 11.15395 45.17793
+-54.47736 -1.01892 106.69677
+-59.56913 -2.14571 104.91520
+-58.15124 -2.17636 107.67061
+-62.49589 -1.42941 106.22242
+-62.10857 -1.05557 107.45044
+-62.53988 -1.06290 108.19662
+58.05436 -4.08567 111.57083
+59.30300 -4.89685 111.85655
+59.70642 -4.93017 112.61748
+4.84316 1.52495 3.96781
+1.13323 1.46609 6.61912
+4.80601 1.49130 5.14372
+-4.23896 1.39234 12.09104
+-4.36957 1.36398 12.16252
+-4.47649 1.37526 12.23736
+-4.44179 1.38653 12.36355
+-6.93826 -4.82851 13.33419
+-3.06989 -0.81078 15.57484
+-3.09455 -0.13610 15.69995
+-3.01551 -1.20709 15.77915
+-4.67413 0.15346 17.42659
+-4.70162 0.26663 17.52906
+14.52441 -3.35568 15.01444
+14.98977 1.10113 15.49549
+15.06434 1.10660 15.57258
+15.01402 1.05503 16.06905
+15.07785 1.31640 16.13737
+-4.95682 0.76447 31.50103
+-0.37864 0.58249 32.74963
+-0.37988 0.58440 32.85701
+-0.38112 0.58631 32.96438
+-0.38238 0.48593 33.07342
+-3.82777 0.48751 32.96151
+4.09446 0.69499 33.03396
+3.85212 0.69723 33.17120
+8.92944 0.38862 32.29480
+8.95864 -0.07797 32.40040
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+8.18420 0.39484 33.04511
+10.14045 0.83140 33.16459
+-5.89235 -2.57528 42.80183
+-4.53660 -1.68944 43.44291
+-4.54957 -1.15179 43.56716
+1.10178 -1.97402 43.97593
+0.49379 -11.14086 42.70949
+2.60256 16.74660 40.87462
+-4.60810 -2.92006 44.12766
+-4.88371 -1.17155 44.28714
+-0.26694 -0.53559 46.17812
+-0.26753 -0.82313 46.28131
+-0.53630 -0.82504 46.38636
+-0.26877 -0.82695 46.49607
+-0.89788 -0.97299 46.59279
+-1.18240 -2.11846 47.19368
+0.53469 -10.20959 46.24684
+2.41174 -10.12519 46.31567
+1.16502 -10.00429 46.49991
+-6.13904 0.11061 47.28865
+-6.15191 -0.84987 47.38779
+0.92271 -0.99989 47.88107
+-10.97353 -9.22200 45.81796
+0.91087 -8.95038 47.26662
+1.18912 -9.59837 47.46197
+0.93512 -1.01334 48.52521
+0.56234 -1.01558 48.63835
+-1.46963 10.71810 47.65445
+2.11223 10.71810 47.63029
+2.68729 -10.00429 46.43682
+15.87365 -1.93019 47.31179
+15.91281 -1.47025 47.42850
+3.08921 11.31183 43.25765
+-0.52802 -0.81230 45.67042
+-0.87128 11.01414 45.21220
+-2.92445 11.36050 45.93009
+-2.97301 11.85668 46.69289
+-3.03309 11.62604 47.63639
+16.53784 0.57976 47.17186
+-11.55816 0.11795 49.52102
+-11.75407 0.11995 50.36035
+-11.94997 0.12195 51.19969
+25.47557 -0.30321 49.89525
+26.25752 -0.13195 50.46260
+26.65544 0.00000 51.22732
+-11.83338 -0.70970 60.03568
+-12.00043 -0.52779 60.88315
+-12.16710 -0.53512 61.72875
+-12.33377 -0.54245 62.57435
+14.57630 -1.63187 66.49158
+14.42337 -0.37785 68.30669
+8.98772 -0.37785 69.23192
+17.17475 -0.37785 67.66732
+16.99051 -0.38251 68.60208
+19.99075 -1.05088 68.67975
+20.23059 -1.28743 69.50373
+23.27667 3.51061 69.37665
+-29.37976 -0.91962 73.64543
+38.98556 -0.74037 77.83066
+39.37156 -0.74770 78.60126
+39.75755 -0.75503 79.37186
+1.13553 -2.58269 98.21609
+1.90932 -2.06904 99.07851
+-45.05741 -0.98227 106.33846
+-46.01218 -0.98960 106.86784
+-59.13255 -3.14907 104.14628
+-59.55796 -3.17172 104.89553
+-58.15833 -1.04091 107.68374
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-54.46051 -3.14907 106.66377
+1.92604 -1.77787 99.94603
+-25.42015 -0.72571 81.45044
+20.45115 3.51061 70.26147
+-56.19992 7.55483 171.88697
+-56.46754 7.59081 172.70548
+1.63948 1.51857 5.92946
+-0.32558 1.52495 6.25249
+4.09794 1.55037 4.87074
+1.08070 1.50760 6.61858
+0.73507 1.50760 6.66582
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47649 1.37526 12.23736
+-4.51169 1.42715 12.33358
+-4.37222 -1.57816 14.29945
+-4.48662 -1.58943 14.37590
+-4.51541 -1.69449 14.46813
+-4.03159 -5.57540 13.85085
+-4.57095 -1.22326 14.94941
+-6.30205 -2.03288 14.33200
+-5.62556 -2.38745 14.67346
+-3.68498 -2.40359 15.38593
+-4.12806 -2.37045 15.39065
+-6.37659 -0.74415 16.63241
+-4.67380 0.26505 17.42534
+-4.70110 0.37888 17.52713
+-3.54697 -0.93678 17.99526
+-4.02278 5.39983 18.35038
+14.72715 -4.52262 12.54727
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95303 1.31640 16.25310
+-4.95716 0.66585 31.50322
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-4.08125 0.69275 32.92740
+4.09417 0.79793 33.03167
+3.85185 0.80051 33.16890
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79183 0.28864 32.77858
+10.33426 0.40232 33.11271
+-4.73573 -2.57528 42.94519
+-4.74833 -2.44770 43.05949
+3.09358 -3.90559 43.31882
+-4.18017 -4.72236 43.25444
+7.72531 -3.98255 43.60586
+-6.30997 -3.85486 43.95337
+-0.26693 -0.67841 46.17625
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53754 -0.82695 46.49374
+0.53496 -10.10228 46.27039
+2.41336 -9.98171 46.34672
+1.16424 -10.14810 46.46876
+-6.13905 0.00000 47.28878
+4.32201 -0.55428 47.59395
+4.60526 -1.55522 47.65313
+-10.98012 -9.07625 45.84547
+1.18476 -8.80413 47.28801
+-9.04512 -1.86378 47.33002
+-0.55052 -8.86309 47.61643
+0.93500 -1.27601 48.51902
+-12.32854 -1.16601 47.04980
+2.53501 -1.01783 48.68302
+-1.20795 -8.51425 48.21349
+1.19270 -8.86309 47.60467
+-10.52191 -1.55522 46.70459
+15.83382 -10.74206 46.01398
+15.87715 -1.62148 47.32220
+15.91622 -1.04473 47.43864
+16.31982 0.11634 47.42630
+-3.97423 -1.05348 43.76419
+-5.76832 -1.07414 44.43307
+-0.52799 -0.95356 45.66769
+-0.87062 11.15395 45.17793
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-2.75559 11.77361 47.61700
+-1.86986 11.98016 48.49742
+-11.55803 0.27522 49.52042
+-11.75392 0.27989 50.35975
+-11.94997 0.12195 51.19969
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.65544 0.00000 51.22732
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16710 -0.53512 61.72875
+-11.97148 -0.73969 62.64265
+17.38429 -1.25677 68.49289
+20.38640 -1.27210 68.55960
+20.22938 -1.51130 69.49957
+23.29836 -1.52929 69.44131
+-28.81314 -0.18393 73.87445
+-29.12633 -0.18593 74.67743
+38.98277 -1.27878 77.82507
+39.36873 -1.29145 78.59562
+39.75470 -1.30411 79.36616
+1.13560 -2.35485 98.22181
+1.90944 -1.76255 99.08443
+1.15567 -1.77787 99.95791
+-45.05601 -1.33944 106.33515
+-59.57212 -1.77257 104.92047
+16.53784 0.57976 47.17186
+2.84710 -1.07414 44.71538
+-0.51799 -1.07414 44.80293
+-5.99310 -1.05348 43.53369
+-58.15652 -1.41941 107.68039
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-24.90987 -2.77071 130.34479
+-31.10949 -2.78870 129.89193
+-0.75600 1.54234 6.09936
+4.84316 1.52495 3.96781
+-0.07753 1.50760 6.70578
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47501 1.41555 12.23331
+-4.51169 1.42715 12.33358
+-5.56115 -1.14197 14.84678
+-7.36912 -1.10032 14.16222
+-5.01333 -5.46934 14.29982
+-1.82381 -1.37407 17.46495
+-3.79185 -4.90145 16.83124
+-4.67429 -0.04185 17.42717
+-3.86367 -0.04185 17.62462
+-4.70138 0.32276 17.52818
+-5.59510 3.64647 17.45349
+-4.24271 -1.03086 18.83250
+14.54160 5.90773 14.18778
+14.98540 1.21779 15.49098
+15.05725 1.29084 15.56526
+15.01402 1.05503 16.06905
+15.02755 6.97787 14.66190
+-4.95746 0.56721 31.50510
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38110 0.68827 32.96241
+-0.38236 0.58822 33.07176
+-4.08149 0.59013 32.92937
+4.09417 0.79793 33.03167
+3.85212 0.69723 33.17120
+8.92863 0.59586 32.29186
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+0.80885 10.53496 41.97272
+3.09173 -2.85658 43.29284
+1.08880 -3.40166 43.45787
+1.67812 -3.67953 43.52432
+2.27012 3.78984 43.59594
+0.81828 11.21805 42.46212
+0.81961 11.37709 42.53097
+-1.34586 8.40619 43.64099
+-0.26695 -0.39277 46.17956
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53757 -0.68314 46.49607
+6.00057 -0.39643 46.22204
+0.53496 -10.10228 46.27039
+2.41174 -10.12519 46.31567
+1.16365 -10.25589 46.44511
+-6.13904 -0.11061 47.28865
+1.19435 -0.11061 47.67051
+-6.15266 -0.40647 47.39357
+-10.52382 -1.25907 46.71308
+-10.98012 -9.07625 45.84547
+0.91033 -9.09655 47.23872
+-14.68892 -9.55581 44.92595
+9.75360 -0.71312 47.54952
+10.05048 -0.71470 47.59741
+-11.00469 -9.09655 45.94804
+15.88096 -1.19690 47.33356
+16.28137 -1.04473 47.31456
+16.59262 -0.58168 47.32812
diff --git a/src/microwave/demo/demoData/2526.bin b/src/microwave/demo/demoData/2526.bin
new file mode 100644
index 0000000..d1a648e
--- /dev/null
+++ b/src/microwave/demo/demoData/2526.bin
Binary files differ
diff --git a/src/microwave/demo/demoData/2526.ply b/src/microwave/demo/demoData/2526.ply
new file mode 100644
index 0000000..c0b829e
--- /dev/null
+++ b/src/microwave/demo/demoData/2526.ply
@@ -0,0 +1,358 @@
+ply
+format ascii 1.0
+comment MicroWave2Ply generated
+element vertex 348
+property float x
+property float y
+property float z
+element face 0
+property list uchar int vertex_indices
+end_header
+0.95535 1.54234 6.07133
+-3.58032 1.48166 5.67736
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47501 1.41555 12.23331
+-4.51319 1.38653 12.33767
+-4.22859 -1.65869 14.22079
+-4.25901 -1.67062 14.32310
+-4.80813 -1.08555 14.99860
+-5.48455 -2.86016 14.64229
+-5.20423 -0.51957 15.12380
+-5.00213 -0.67243 15.29897
+-4.94698 -0.62679 15.43174
+-4.89216 -1.97741 15.67530
+-4.67833 5.46515 16.54698
+-4.70196 0.15437 17.53032
+-3.53006 0.38112 17.90944
+-2.71051 -1.03603 18.13471
+-3.23212 -1.39218 18.24388
+-3.25226 -1.28494 18.35751
+-5.28877 0.04509 18.70607
+-3.92714 -0.34759 19.14508
+-4.05940 -0.47104 19.22465
+-3.44551 -0.64162 19.44833
+14.54160 5.90773 14.18778
+14.98977 1.10113 15.49549
+15.06252 1.15686 15.57070
+15.02006 0.85094 16.07551
+15.08056 1.24809 16.14026
+-4.95682 0.76447 31.50103
+-0.37859 0.78506 32.74540
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-3.82758 0.59013 32.95985
+4.09446 0.69499 33.03396
+3.85212 0.69723 33.17120
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+0.50098 -3.76197 43.33112
+-4.76024 -3.90559 43.16747
+0.50614 -1.82900 43.77809
+2.27506 3.93445 43.69085
+1.94453 -3.53700 43.84862
+7.67681 -3.44356 43.33211
+7.70235 -2.90595 43.47626
+7.72542 -2.50223 43.60653
+1.13248 -0.10488 45.20109
+-0.26694 -0.53559 46.17812
+-0.26755 -0.67999 46.28363
+-0.26815 -0.82504 46.38869
+-0.26877 -0.82695 46.49607
+-1.18223 -2.26445 47.18691
+0.53469 -10.20959 46.24684
+2.41174 -10.12519 46.31567
+2.68549 -10.14810 46.40570
+-6.13904 0.11061 47.28865
+-6.15266 -0.40647 47.39357
+0.55358 -1.25907 47.88065
+-10.98012 -9.07625 45.84547
+0.91087 -8.95038 47.26662
+-1.46218 -8.67712 47.41296
+-0.53454 14.06788 46.23417
+-0.91642 -9.15747 47.55505
+0.88962 14.98973 46.16399
+16.41878 -9.66222 44.88389
+-1.46963 10.71810 47.65445
+-10.88354 -1.25907 46.63059
+0.89561 -10.14810 46.47472
+-4.54718 -1.82900 43.54423
+0.24230 -11.21060 41.91564
+14.55862 -1.63910 14.20439
+-4.34088 -0.64162 19.26826
+-3.02372 -2.86016 15.34060
+15.84791 -1.04024 47.23505
+15.88381 -0.73363 47.34205
+15.91911 -0.42566 47.44727
+16.31927 -0.42657 47.42472
+3.08921 11.31183 43.25765
+-0.52802 -0.81230 45.67042
+-0.87128 11.01414 45.21220
+-2.92445 11.36050 45.93009
+-2.97301 11.85668 46.69289
+-3.03309 11.62604 47.63639
+16.53784 0.57976 47.17186
+-11.55816 0.11795 49.52102
+-11.75407 0.11995 50.36035
+-11.94997 0.12195 51.19969
+25.47557 -0.30321 49.89525
+26.25752 -0.13195 50.46260
+26.65544 0.00000 51.22732
+-11.83338 -0.70970 60.03568
+-12.00043 -0.52779 60.88315
+-12.16710 -0.53512 61.72875
+-12.33377 -0.54245 62.57435
+14.57630 -1.63187 66.49158
+14.42337 -0.37785 68.30669
+8.98772 -0.37785 69.23192
+17.17475 -0.37785 67.66732
+16.99051 -0.38251 68.60208
+19.99075 -1.05088 68.67975
+20.23059 -1.28743 69.50373
+23.27667 3.51061 69.37665
+-29.37976 -0.91962 73.64543
+38.98556 -0.74037 77.83066
+39.37156 -0.74770 78.60126
+39.75755 -0.75503 79.37186
+1.13553 -2.58269 98.21609
+1.90932 -2.06904 99.07851
+-45.05741 -0.98227 106.33846
+-46.01218 -0.98960 106.86784
+-59.13255 -3.14907 104.14628
+-59.55796 -3.17172 104.89553
+-58.15833 -1.04091 107.68374
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-54.46051 -3.14907 106.66377
+1.92604 -1.77787 99.94603
+-25.42015 -0.72571 81.45044
+20.45115 3.51061 70.26147
+-56.19992 7.55483 171.88697
+-56.46754 7.59081 172.70548
+1.63948 1.51857 5.92946
+-0.32558 1.52495 6.25249
+4.09794 1.55037 4.87074
+1.08070 1.50760 6.61858
+0.73507 1.50760 6.66582
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47649 1.37526 12.23736
+-4.51169 1.42715 12.33358
+-4.37222 -1.57816 14.29945
+-4.48662 -1.58943 14.37590
+-4.51541 -1.69449 14.46813
+-4.03159 -5.57540 13.85085
+-4.57095 -1.22326 14.94941
+-6.30205 -2.03288 14.33200
+-5.62556 -2.38745 14.67346
+-3.68498 -2.40359 15.38593
+-4.12806 -2.37045 15.39065
+-6.37659 -0.74415 16.63241
+-4.67380 0.26505 17.42534
+-4.70110 0.37888 17.52713
+-3.54697 -0.93678 17.99526
+-4.02278 5.39983 18.35038
+14.72715 -4.52262 12.54727
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95303 1.31640 16.25310
+-4.95716 0.66585 31.50322
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-4.08125 0.69275 32.92740
+4.09417 0.79793 33.03167
+3.85185 0.80051 33.16890
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79183 0.28864 32.77858
+10.33426 0.40232 33.11271
+-4.73573 -2.57528 42.94519
+-4.74833 -2.44770 43.05949
+3.09358 -3.90559 43.31882
+-4.18017 -4.72236 43.25444
+7.72531 -3.98255 43.60586
+-6.30997 -3.85486 43.95337
+-0.26693 -0.67841 46.17625
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53754 -0.82695 46.49374
+0.53496 -10.10228 46.27039
+2.41336 -9.98171 46.34672
+1.16424 -10.14810 46.46876
+-6.13905 0.00000 47.28878
+4.32201 -0.55428 47.59395
+4.60526 -1.55522 47.65313
+-10.98012 -9.07625 45.84547
+1.18476 -8.80413 47.28801
+-9.04512 -1.86378 47.33002
+-0.55052 -8.86309 47.61643
+0.93500 -1.27601 48.51902
+-12.32854 -1.16601 47.04980
+2.53501 -1.01783 48.68302
+-1.20795 -8.51425 48.21349
+1.19270 -8.86309 47.60467
+-10.52191 -1.55522 46.70459
+15.83382 -10.74206 46.01398
+15.87715 -1.62148 47.32220
+15.91622 -1.04473 47.43864
+16.31982 0.11634 47.42630
+-3.97423 -1.05348 43.76419
+-5.76832 -1.07414 44.43307
+-0.52799 -0.95356 45.66769
+-0.87062 11.15395 45.17793
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-2.75559 11.77361 47.61700
+-1.86986 11.98016 48.49742
+-11.55803 0.27522 49.52042
+-11.75392 0.27989 50.35975
+-11.94997 0.12195 51.19969
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.65544 0.00000 51.22732
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16710 -0.53512 61.72875
+-11.97148 -0.73969 62.64265
+17.38429 -1.25677 68.49289
+20.38640 -1.27210 68.55960
+20.22938 -1.51130 69.49957
+23.29836 -1.52929 69.44131
+-28.81314 -0.18393 73.87445
+-29.12633 -0.18593 74.67743
+38.98277 -1.27878 77.82507
+39.36873 -1.29145 78.59562
+39.75470 -1.30411 79.36616
+1.13560 -2.35485 98.22181
+1.90944 -1.76255 99.08443
+1.15567 -1.77787 99.95791
+-45.05601 -1.33944 106.33515
+-59.57212 -1.77257 104.92047
+16.53784 0.57976 47.17186
+2.84710 -1.07414 44.71538
+-0.51799 -1.07414 44.80293
+-5.99310 -1.05348 43.53369
+-58.15652 -1.41941 107.68039
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-24.90987 -2.77071 130.34479
+-31.10949 -2.78870 129.89193
+-0.75600 1.54234 6.09936
+4.84316 1.52495 3.96781
+-0.07753 1.50760 6.70578
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47501 1.41555 12.23331
+-4.51169 1.42715 12.33358
+-5.56115 -1.14197 14.84678
+-7.36912 -1.10032 14.16222
+-5.01333 -5.46934 14.29982
+-1.82381 -1.37407 17.46495
+-3.79185 -4.90145 16.83124
+-4.67429 -0.04185 17.42717
+-3.86367 -0.04185 17.62462
+-4.70138 0.32276 17.52818
+-5.59510 3.64647 17.45349
+-4.24271 -1.03086 18.83250
+14.54160 5.90773 14.18778
+14.98540 1.21779 15.49098
+15.05725 1.29084 15.56526
+15.01402 1.05503 16.06905
+15.02755 6.97787 14.66190
+-4.95746 0.56721 31.50510
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38110 0.68827 32.96241
+-0.38236 0.58822 33.07176
+-4.08149 0.59013 32.92937
+4.09417 0.79793 33.03167
+3.85212 0.69723 33.17120
+8.92863 0.59586 32.29186
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+0.80885 10.53496 41.97272
+3.09173 -2.85658 43.29284
+1.08880 -3.40166 43.45787
+1.67812 -3.67953 43.52432
+2.27012 3.78984 43.59594
+0.81828 11.21805 42.46212
+0.81961 11.37709 42.53097
+-1.34586 8.40619 43.64099
+-0.26695 -0.39277 46.17956
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53757 -0.68314 46.49607
+6.00057 -0.39643 46.22204
+0.53496 -10.10228 46.27039
+2.41174 -10.12519 46.31567
+1.16365 -10.25589 46.44511
+-6.13904 -0.11061 47.28865
+1.19435 -0.11061 47.67051
+-6.15266 -0.40647 47.39357
+-10.52382 -1.25907 46.71308
+-10.98012 -9.07625 45.84547
+0.91033 -9.09655 47.23872
+-14.68892 -9.55581 44.92595
+9.75360 -0.71312 47.54952
+10.05048 -0.71470 47.59741
+-11.00469 -9.09655 45.94804
+15.88096 -1.19690 47.33356
+16.28137 -1.04473 47.31456
+16.59262 -0.58168 47.32812
+-0.51813 0.24257 44.81515
+-0.52807 -0.52978 45.67458
+-2.87127 11.15395 45.09500
+-2.92445 11.36050 45.93009
+-2.70724 11.56706 46.78161
+-2.75559 11.77361 47.61700
+-11.55820 0.00000 49.52115
+-11.75410 0.00000 50.36049
+-11.94997 0.12195 51.19969
+25.85937 -0.30321 49.69742
+26.25752 -0.13195 50.46260
+26.65537 0.13395 51.22718
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16672 -0.72970 61.72683
+-11.97148 -0.73969 62.64265
+17.38699 -0.16394 68.50354
+20.38742 -1.05088 68.56305
+20.23059 -1.28743 69.50373
+20.47143 -1.30275 70.33115
+38.98081 -1.54798 77.82116
+39.36676 -1.56330 78.59167
+39.75271 -1.57863 79.36218
+1.06594 -1.92510 92.19704
+-4.84038 -0.79168 92.95590
+-4.88530 -0.50846 93.81862
+1.89283 -1.74722 98.22283
+1.90944 -1.76255 99.08443
+1.92604 -1.77787 99.94603
+20.14391 -0.16394 67.74411
+-0.87062 11.15395 45.17793
+-54.47736 -1.01892 106.69677
+-59.56913 -2.14571 104.91520
+-58.15124 -2.17636 107.67061
+-62.49589 -1.42941 106.22242
+-62.10857 -1.05557 107.45044
+-62.53988 -1.06290 108.19662
+58.05436 -4.08567 111.57083
+59.30300 -4.89685 111.85655
+59.70642 -4.93017 112.61748
diff --git a/src/microwave/demo/demoData/2527.bin b/src/microwave/demo/demoData/2527.bin
new file mode 100644
index 0000000..9bae359
--- /dev/null
+++ b/src/microwave/demo/demoData/2527.bin
Binary files differ
diff --git a/src/microwave/demo/demoData/2527.ply b/src/microwave/demo/demoData/2527.ply
new file mode 100644
index 0000000..1ce1541
--- /dev/null
+++ b/src/microwave/demo/demoData/2527.ply
@@ -0,0 +1,354 @@
+ply
+format ascii 1.0
+comment MicroWave2Ply generated
+element vertex 344
+property float x
+property float y
+property float z
+element face 0
+property list uchar int vertex_indices
+end_header
+-2.58876 -0.93556 44.73419
+-0.52799 -0.95356 45.66769
+-0.52318 10.87424 45.25142
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-2.75293 11.95791 47.57120
+16.53323 1.31400 47.15873
+-11.55816 -0.11795 49.52102
+-11.75407 -0.11995 50.36035
+-11.94997 -0.12195 51.19969
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.65537 -0.13395 51.22718
+-11.48615 -0.70970 60.10308
+-11.64793 -0.71970 60.94960
+-11.80970 -0.72970 61.79613
+-11.97148 -0.73969 62.64265
+-12.13326 -0.74969 63.48917
+14.06258 -1.78976 66.59807
+8.98786 0.00000 69.23293
+17.38704 0.00000 68.50372
+20.38742 -1.05088 68.56305
+20.63078 -1.51130 69.38147
+39.37034 -1.01958 78.59881
+39.75632 -1.02957 79.36939
+-5.32619 -2.42410 92.03745
+-5.37596 -2.44676 92.89761
+-4.88431 -1.96109 93.79955
+4.92912 -1.97908 94.66009
+20.14396 0.00000 67.74429
+-0.51781 -1.59370 44.78746
+-58.15124 -2.17636 107.67061
+-62.49918 -0.66707 106.22801
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+58.05436 -4.08567 111.57083
+59.30981 -4.50528 111.86939
+59.71328 -4.53593 112.63041
+-5.17697 -4.78111 134.27160
+-5.21016 -4.81176 135.13232
+-99.27207 3.70627 147.15916
+1.63948 1.51857 5.92946
+-0.32558 1.52495 6.25249
+4.09794 1.55037 4.87074
+1.08070 1.50760 6.61858
+0.73507 1.50760 6.66582
+4.80283 1.51306 5.14033
+-4.23896 1.39234 12.09104
+-4.36812 1.40395 12.15849
+-4.47649 1.37526 12.23736
+-4.44032 1.42715 12.35946
+-4.37222 -1.57816 14.29945
+-4.48662 -1.58943 14.37590
+-4.51541 -1.69449 14.46813
+-4.03159 -5.57540 13.85085
+-4.57095 -1.22326 14.94941
+-6.30205 -2.03288 14.33200
+-5.62556 -2.38745 14.67346
+-3.68498 -2.40359 15.38593
+-4.12806 -2.37045 15.39065
+-6.37659 -0.74415 16.63241
+-4.67380 0.26505 17.42534
+-4.70110 0.37888 17.52713
+-3.54697 -0.93678 17.99526
+-4.02278 5.39983 18.35038
+14.72715 -4.52262 12.54727
+14.98795 1.15113 15.49361
+15.06252 1.15686 15.57070
+15.01172 1.12304 16.06659
+14.95303 1.31640 16.25310
+-4.95716 0.66585 31.50322
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-4.08125 0.69275 32.92740
+4.09417 0.79793 33.03167
+3.85185 0.80051 33.16890
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79183 0.28864 32.77858
+10.33426 0.40232 33.11271
+-4.73573 -2.57528 42.94519
+-4.74833 -2.44770 43.05949
+3.09358 -3.90559 43.31882
+-4.18017 -4.72236 43.25444
+7.72531 -3.98255 43.60586
+-6.30997 -3.85486 43.95337
+-0.26693 -0.67841 46.17625
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53754 -0.82695 46.49374
+0.53496 -10.10228 46.27039
+2.41336 -9.98171 46.34672
+1.16424 -10.14810 46.46876
+-6.13905 0.00000 47.28878
+4.32201 -0.55428 47.59395
+4.60526 -1.55522 47.65313
+-10.98012 -9.07625 45.84547
+1.18476 -8.80413 47.28801
+-9.04512 -1.86378 47.33002
+-0.55052 -8.86309 47.61643
+0.93500 -1.27601 48.51902
+-12.32854 -1.16601 47.04980
+2.53501 -1.01783 48.68302
+-1.20795 -8.51425 48.21349
+1.19270 -8.86309 47.60467
+-10.52191 -1.55522 46.70459
+15.83382 -10.74206 46.01398
+15.87715 -1.62148 47.32220
+15.91622 -1.04473 47.43864
+16.31982 0.11634 47.42630
+-3.97423 -1.05348 43.76419
+-5.76832 -1.07414 44.43307
+-0.52799 -0.95356 45.66769
+-0.87062 11.15395 45.17793
+-2.92445 11.36050 45.93009
+-2.97475 11.74812 46.72021
+-2.75559 11.77361 47.61700
+-1.86986 11.98016 48.49742
+-11.55803 0.27522 49.52042
+-11.75392 0.27989 50.35975
+-11.94997 0.12195 51.19969
+25.85882 -0.47647 49.69635
+26.25721 -0.30788 50.46199
+26.65544 0.00000 51.22732
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16710 -0.53512 61.72875
+-11.97148 -0.73969 62.64265
+17.38429 -1.25677 68.49289
+20.38640 -1.27210 68.55960
+20.22938 -1.51130 69.49957
+23.29836 -1.52929 69.44131
+-28.81314 -0.18393 73.87445
+-29.12633 -0.18593 74.67743
+38.98277 -1.27878 77.82507
+39.36873 -1.29145 78.59562
+39.75470 -1.30411 79.36616
+1.13560 -2.35485 98.22181
+1.90944 -1.76255 99.08443
+1.15567 -1.77787 99.95791
+-45.05601 -1.33944 106.33515
+-59.57212 -1.77257 104.92047
+16.53784 0.57976 47.17186
+2.84710 -1.07414 44.71538
+-0.51799 -1.07414 44.80293
+-5.99310 -1.05348 43.53369
+-58.15652 -1.41941 107.68039
+-62.49783 -1.04824 106.22572
+-62.10991 -0.67173 107.45275
+-62.54123 -0.67640 108.19895
+-24.90987 -2.77071 130.34479
+-31.10949 -2.78870 129.89193
+-0.70896 1.54234 6.10500
+4.84316 1.52495 3.96781
+-0.03877 1.50760 6.70612
+4.80283 1.51306 5.14033
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47501 1.41555 12.23331
+-4.51169 1.42715 12.33358
+-5.56115 -1.14197 14.84678
+-7.36912 -1.10032 14.16222
+-5.01333 -5.46934 14.29982
+-1.82381 -1.37407 17.46495
+-3.79185 -4.90145 16.83124
+-4.67429 -0.04185 17.42717
+-3.86367 -0.04185 17.62462
+-4.70138 0.32276 17.52818
+-5.59510 3.64647 17.45349
+-4.24271 -1.03086 18.83250
+14.54160 5.90773 14.18778
+14.98540 1.21779 15.49098
+15.05725 1.29084 15.56526
+15.01402 1.05503 16.06905
+15.02755 6.97787 14.66190
+-4.95746 0.56721 31.50510
+-4.97279 0.94021 31.60254
+-0.37861 0.68378 32.74767
+-0.37986 0.68602 32.85504
+-0.38110 0.68827 32.96241
+-0.38236 0.58822 33.07176
+-4.08149 0.59013 32.92937
+4.09417 0.79793 33.03167
+3.85212 0.69723 33.17120
+8.92863 0.59586 32.29186
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+0.80885 10.53496 41.97272
+3.09173 -2.85658 43.29284
+1.08880 -3.40166 43.45787
+1.67812 -3.67953 43.52432
+2.27012 3.78984 43.59594
+0.81828 11.21805 42.46212
+0.81961 11.37709 42.53097
+-1.34586 8.40619 43.64099
+-0.26695 -0.39277 46.17956
+-0.26755 -0.67999 46.28363
+-0.26817 -0.68156 46.39102
+-0.53757 -0.68314 46.49607
+6.00057 -0.39643 46.22204
+0.53496 -10.10228 46.27039
+2.41174 -10.12519 46.31567
+1.16365 -10.25589 46.44511
+-6.13904 -0.11061 47.28865
+1.19435 -0.11061 47.67051
+-6.15266 -0.40647 47.39357
+-10.52382 -1.25907 46.71308
+-10.98012 -9.07625 45.84547
+0.91033 -9.09655 47.23872
+-14.68892 -9.55581 44.92595
+9.75360 -0.71312 47.54952
+10.05048 -0.71470 47.59741
+-11.00469 -9.09655 45.94804
+15.88096 -1.19690 47.33356
+16.28137 -1.04473 47.31456
+16.59262 -0.58168 47.32812
+-0.51813 0.24257 44.81515
+-0.52807 -0.52978 45.67458
+-2.87127 11.15395 45.09500
+-2.92445 11.36050 45.93009
+-2.70724 11.56706 46.78161
+-2.75559 11.77361 47.61700
+-11.55820 0.00000 49.52115
+-11.75410 0.00000 50.36049
+-11.94997 0.12195 51.19969
+25.85937 -0.30321 49.69742
+26.25752 -0.13195 50.46260
+26.65537 0.13395 51.22718
+-11.48615 -0.70970 60.10308
+-12.00005 -0.71970 60.88125
+-12.16672 -0.72970 61.72683
+-11.97148 -0.73969 62.64265
+17.38699 -0.16394 68.50354
+20.38742 -1.05088 68.56305
+20.23059 -1.28743 69.50373
+20.47143 -1.30275 70.33115
+38.98081 -1.54798 77.82116
+39.36676 -1.56330 78.59167
+39.75271 -1.57863 79.36218
+1.06594 -1.92510 92.19704
+-4.84038 -0.79168 92.95590
+-4.88530 -0.50846 93.81862
+1.89283 -1.74722 98.22283
+1.90944 -1.76255 99.08443
+1.92604 -1.77787 99.94603
+20.14391 -0.16394 67.74411
+-0.87062 11.15395 45.17793
+-54.47736 -1.01892 106.69677
+-59.56913 -2.14571 104.91520
+-58.15124 -2.17636 107.67061
+-62.49589 -1.42941 106.22242
+-62.10857 -1.05557 107.45044
+-62.53988 -1.06290 108.19662
+58.05436 -4.08567 111.57083
+59.30300 -4.89685 111.85655
+59.70642 -4.93017 112.61748
+0.95535 1.54234 6.07133
+-3.58032 1.48166 5.67736
+-4.33202 1.39234 12.05801
+-4.43833 1.40395 12.13304
+-4.47501 1.41555 12.23331
+-4.51319 1.38653 12.33767
+-4.22859 -1.65869 14.22079
+-4.25901 -1.67062 14.32310
+-4.80813 -1.08555 14.99860
+-5.48455 -2.86016 14.64229
+-5.20423 -0.51957 15.12380
+-5.00213 -0.67243 15.29897
+-4.94698 -0.62679 15.43174
+-4.89216 -1.97741 15.67530
+-4.67833 5.46515 16.54698
+-4.70196 0.15437 17.53032
+-3.53006 0.38112 17.90944
+-2.71051 -1.03603 18.13471
+-3.23212 -1.39218 18.24388
+-3.25226 -1.28494 18.35751
+-5.28877 0.04509 18.70607
+-3.92714 -0.34759 19.14508
+-4.05940 -0.47104 19.22465
+-3.44551 -0.64162 19.44833
+14.54160 5.90773 14.18778
+14.98977 1.10113 15.49549
+15.06252 1.15686 15.57070
+15.02006 0.85094 16.07551
+15.08056 1.24809 16.14026
+-4.95682 0.76447 31.50103
+-0.37859 0.78506 32.74540
+-0.37986 0.68602 32.85504
+-0.38112 0.58631 32.96438
+-0.38236 0.58822 33.07176
+-3.82758 0.59013 32.95985
+4.09446 0.69499 33.03396
+3.85212 0.69723 33.17120
+8.92907 0.49224 32.29348
+8.95866 0.00000 32.40048
+8.98715 -0.18252 32.50352
+9.01577 -0.18310 32.60704
+8.79201 0.18368 32.77929
+0.50098 -3.76197 43.33112
+-4.76024 -3.90559 43.16747
+0.50614 -1.82900 43.77809
+2.27506 3.93445 43.69085
+1.94453 -3.53700 43.84862
+7.67681 -3.44356 43.33211
+7.70235 -2.90595 43.47626
+7.72542 -2.50223 43.60653
+1.13248 -0.10488 45.20109
+-0.26694 -0.53559 46.17812
+-0.26755 -0.67999 46.28363
+-0.26815 -0.82504 46.38869
+-0.26877 -0.82695 46.49607
+-1.18223 -2.26445 47.18691
+0.53469 -10.20959 46.24684
+2.41174 -10.12519 46.31567
+2.68549 -10.14810 46.40570
+-6.13904 0.11061 47.28865
+-6.15266 -0.40647 47.39357
+0.55358 -1.25907 47.88065
+-10.98012 -9.07625 45.84547
+0.91087 -8.95038 47.26662
+-1.46218 -8.67712 47.41296
+-0.53454 14.06788 46.23417
+-0.91642 -9.15747 47.55505
+0.88962 14.98973 46.16399
+16.41878 -9.66222 44.88389
+-1.46963 10.71810 47.65445
+-10.88354 -1.25907 46.63059
+0.89561 -10.14810 46.47472
+-4.54718 -1.82900 43.54423
+0.24230 -11.21060 41.91564
+14.55862 -1.63910 14.20439
+-4.34088 -0.64162 19.26826
+-3.02372 -2.86016 15.34060
+15.84791 -1.04024 47.23505
+15.88381 -0.73363 47.34205
+15.91911 -0.42566 47.44727
+16.31927 -0.42657 47.42472
diff --git a/src/utils/slam.py b/src/utils/slam.py
new file mode 100644
index 0000000..946e612
--- /dev/null
+++ b/src/utils/slam.py
@@ -0,0 +1,52 @@
+import numpy as np
+from .tools import read_ply
+
+
+
+def get_rotation_matrix(angle:str):
+    """generate a rotation matrix from the specific angel,
+        the angle is the degree that coordinate system B rotated from coordinate A
+        in direction from x to y  with z is the axis.
+
+    Args:
+        angle (str): the angle, value in [-360,360]
+
+
+    Returns:
+        rotation_matrix (np.array): the rotation matrix
+    """
+
+    if np.abs(float(angle))>360:
+        raise ValueError(f"incorrect angle value: value in [-360,360] is excepted, but {angle} is offered.")
+    angle_float = np.pi * float(angle) / 180 
+    rotation_matrix = np.array(
+        [[np.cos(angle_float,), np.sin(angle_float), 0.],
+        [-np.sin(angle_float), np.cos(angle_float), 0.],
+        [0., 0., 1.]],
+        dtype=np.float16
+    )
+    return rotation_matrix
+
+def compose_ply(muti_ply_with_angle: list):
+
+    ply_nums = len(muti_ply_with_angle)
+    composed_ply_List = []
+
+    for ply_with_angle in muti_ply_with_angle:
+        angle = ply_with_angle[0]
+        ply = ply_with_angle[1]
+
+        if isinstance(ply,str):
+            ply = read_ply(ply)
+        
+        rotation_matrix = get_rotation_matrix(angle)
+        rotated_ply = np.matmul(rotation_matrix,ply)
+        composed_ply_List.append(rotated_ply)
+    
+    composed_ply_array = np.array(composed_ply_List).reshape(-1,3)
+    return composed_ply_array
+
+
+if __name__ == "__main__":
+    m = get_rotation_matrix('180')
+    print(m)
diff --git a/src/utils/tools.py b/src/utils/tools.py
index 90adc7c..463b80a 100644
--- a/src/utils/tools.py
+++ b/src/utils/tools.py
@@ -1,4 +1,5 @@
 import os, sys
+import numpy as np
 
 def file_fliter(folder:str, file_ext:str, sort_format):
 
@@ -13,5 +14,34 @@
     target_files.sort(key=sort_format)
 
     return target_files
+
+def read_ply(path:str,start_line:int = 10):
+    count = 0
+    ply_list = []
+    with open(path,"r") as ply_file:
+        # read the line
+        for line in ply_file.readlines():
+            # strip the str of the header
+            if count < start_line:
+                pass
+            else:
+                line_str_list = line.strip().split(' ')
+                # convert the str type to float type
+                line_float_list = []
+                for value in line_str_list:
+                    line_float_list.append(float(value))
+
+                ply_list.append(line_float_list)
+            count += 1
+    ply_array = np.array(ply_list,dtype=np.float16)
+
+    return ply_array
+
+
+if __name__ == "__main__":
+    ply_array = read_ply('src\\microwave\\demo\\demoData\\2522.ply')
+    
+    print(type(ply_array))
+    print(ply_array)
     
 

--
Gitblit v1.9.1