Skip to content
Snippets Groups Projects
Commit 09b691dc authored by jlaura's avatar jlaura Committed by GitHub
Browse files

Updates to the GPF reader/writer (#21)

* Adds prototype socet gpf read from @thareUSGS

* Adds test to gpf reader

* Adds length assertion and logic for dynamic cols

* removed static struct arr

* Finishing the merge cleanly

* removed assertTrue

* Fixes test to compare in/out files.
parent 7aac3c31
No related branches found
No related tags found
No related merge requests found
GROUND POINT FILE
160
point_id,stat,known,lat_Y_North,long_X_East,ht,sig(3),res(3)
1 1 1
0.08538133869186999 2.38013146162178 -2697.2374469465
0.0 0.0 1.707214
16.348041000000002 -13.917623 -0.151001
2 1 1
0.08508542650082002 2.3808135855714703 -2702.0
0.0 0.0 1.0
15.983285999999998 -16.869508 0.103341
3 1 1
0.08626480095809 2.3870838392611 -2714.16003756809
0.0 0.0 3.828854
12.831839 -34.360639 -2.2058459999999998
4 1 1
0.08568717143105001 2.38669347579564 -2720.3873574332
0.0 0.0 2.06082
13.102864 -34.063651 0.334757
5 1 1
0.08077770259688 2.3838894311434102 -2692.00307359153
0.0 0.0 2.768034
15.876249 -23.172029000000002 -0.461974
6 1 1
0.08125893072767999 2.38445721412659 -2691.71435885471
0.0 0.0 1.707214
15.410701999999999 -25.944881 0.225806
7 1 1
0.07483240230363 2.3814261265746297 -2668.18002134863
0.0 0.0 1.353607
17.789075 -15.211119 0.087284
8 1 1
0.07443515640509 2.38212146862 -2664.7747769489906
0.0 0.0 1.353607
17.273365 -18.001185999999997 0.323137
9 1 1
0.07495055817805 2.3884619283655804 -2700.63760007568
0.0 0.0 1.707214
14.324904 -35.58345 -0.288152
10 1 1
0.07519371955078 2.38757259631679 -2694.18565786937
0.0 0.0 1.353607
14.771196 -33.010921 -0.08018600000000001
11 1 1
0.07010083277386 2.3849213916922003 -2668.62598527203
0.0 0.0 2.414427
15.933368 -22.780039000000002 -0.579354
12 1 1
0.06957324833251 2.3853276647149904 -2670.6045801106907
0.0 0.0 1.707214
15.773589999999999 -23.804103 -0.330565
13 1 1
0.06563711957712 2.3825780897637503 -2652.6543697460706
0.0 0.0 1.707214
16.419539 -15.919385 0.250239
14 1 1
0.0664454678652 2.38304264645782 -2658.85707321604
0.0 0.0 1.353607
16.313481 -17.239438 0.11514
15 1 1
0.06649272348884999 2.38951682947442 -2692.0
0.0 0.0 1.0
12.517966 -36.540841 -0.063341
16 1 1
0.06706972009678 2.38873585114457 -2692.0
0.0 0.0 1.0
13.078013 -34.602107000000004 0.027464999999999996
D18_034427_1842_XN_04N223W_28 1 0
0.06642563152224999 2.38304560848777 -2652.7379931980295
0.0 0.0 0.0
16.347926 -16.786457000000002 202.26425
D18_034427_1842_XN_04N223W_29 1 0
0.06701245416812 2.38319472448874 -2655.8936787285143
0.0 0.0 0.0
16.345939 -17.39285 202.351222
D18_034427_1842_XN_04N223W_30 1 0
0.06714286922356 2.38459540070318 -2666.2181217736006
0.0 0.0 0.0
15.56071 -21.543285 206.451357
D18_034427_1842_XN_04N223W_31 1 0
0.06699131624733 2.38537597452635 -2667.917382767097
0.0 0.0 0.0
15.129148999999998 -23.909211 208.666933
D18_034427_1842_XN_04N223W_32 1 0
0.0668897961665 2.38667024343657 -2676.4753153168867
0.0 0.0 0.0
14.271489 -27.786033000000003 212.56778599999998
D18_034427_1842_XN_04N223W_33 1 0
0.06725333266900001 2.3873695967267903 -2680.2541795701445
0.0 0.0 0.0
13.938915 -30.138825 214.17239500000002
D18_034427_1842_XN_04N223W_34 1 0
0.06734814823241 2.38802769571932 -2689.8761881734445
0.0 0.0 0.0
13.586741 -32.256271999999996 215.92250499999997
D18_034427_1842_XN_04N223W_37 1 0
0.06827861281198999 2.38281829913636 -2654.651058159914
0.0 0.0 0.0
16.734595000000002 -16.750685 200.728446
D18_034427_1842_XN_04N223W_38 1 0
0.06785042142429 2.38358220068826 -2655.152592163299
0.0 0.0 0.0
16.371177 -18.807863 203.084628
D18_034427_1842_XN_04N223W_39 1 0
0.06848531606765 2.3842691958979 -2665.4967618571454
0.0 0.0 0.0
16.028295 -21.041457 204.98470600000002
D18_034427_1842_XN_04N223W_40 1 0
0.06835459149418 2.38523660668123 -2670.27617625958
0.0 0.0 0.0
15.360716 -23.872982999999998 207.75411599999998
D18_034427_1842_XN_04N223W_41 1 0
0.06848765704014 2.3864536869340096 -2675.9421768906273
0.0 0.0 0.0
14.686125 -27.652577 211.133186
D18_034427_1842_XN_04N223W_42 1 0
0.06853528389166999 2.3871649779555 -2677.442308160816
0.0 0.0 0.0
14.326697 -29.917028000000002 213.039612
D18_034427_1842_XN_04N223W_43 1 0
0.06812356483517999 2.3881815525258796 -2687.8001243238173
0.0 0.0 0.0
13.665585 -32.992428000000004 215.977587
D18_034427_1842_XN_04N223W_46 1 0
0.06910953643377 2.38271848114252 -2656.715912874613
0.0 0.0 0.0
17.002323 -16.719943 199.939328
D18_034427_1842_XN_04N223W_47 1 0
0.06912052519181 2.38317372399279 -2659.6259584890695
0.0 0.0 0.0
16.7234 -18.02816 201.397423
D18_034427_1842_XN_04N223W_48 1 0
0.06921287603448 2.38370782097352 -2662.599411605864
0.0 0.0 0.0
16.459808 -19.611708 202.954937
D18_034427_1842_XN_04N223W_49 1 0
0.06941422430034 2.38536468483276 -2676.429047836165
0.0 0.0 0.0
15.563282000000001 -24.595201 207.76693799999998
D18_034427_1842_XN_04N223W_50 1 0
0.06972642994167999 2.38581920841575 -2685.039536273431
0.0 0.0 0.0
15.397463 -26.084508 208.858854
D18_034427_1842_XN_04N223W_51 1 0
0.06934741459200999 2.38710391506758 -2684.774432824858
0.0 0.0 0.0
14.491313 -29.952594 212.70436400000003
D18_034427_1842_XN_04N223W_52 1 0
0.06942432539212 2.38733818383773 -2685.8420333989134
0.0 0.0 0.0
14.360056 -30.699132000000002 213.376721
D18_034427_1842_XN_04N223W_55 1 0
0.07042311025238 2.38254966475176 -2652.3577409452973
0.0 0.0 0.0
17.241636 -16.68754 198.783423
D18_034427_1842_XN_04N223W_56 1 0
0.0710517242282 2.38321132895148 -2652.7501214722947
0.0 0.0 0.0
16.922747 -18.710957999999998 200.57691200000002
D18_034427_1842_XN_04N223W_57 1 0
0.07056080973178999 2.3835543556055803 -2660.4572360640773
0.0 0.0 0.0
16.751189 -19.618982 201.807268
D18_034427_1842_XN_04N223W_58 1 0
0.07096187128716999 2.38487692065399 -2677.687606349641
0.0 0.0 0.0
16.047975 -23.608642 205.74328500000001
D18_034427_1842_XN_04N223W_59 1 0
0.07108077399242 2.3859380288014 -2675.2442799303685
0.0 0.0 0.0
15.485341 -26.866797 208.752177
D18_034427_1842_XN_04N223W_60 1 0
0.07115124246621 2.38657444101636 -2682.8816229984386
0.0 0.0 0.0
15.132392000000001 -28.854257 210.517027
D18_034427_1842_XN_04N223W_61 1 0
0.07077295848888 2.38786580634713 -2696.8819496211686
0.0 0.0 0.0
14.357418 -32.808412 214.19962
D18_034427_1842_XN_04N223W_64 1 0
0.07148971840912 2.38247259758759 -2620.89438652133
0.0 0.0 0.0
17.305942 -16.7511 198.286489
D18_034427_1842_XN_04N223W_65 1 0
0.07202055149403 2.38255638944198 -2615.5720527991343
0.0 0.0 0.0
17.268113 -17.157173 198.467782
D18_034427_1842_XN_04N223W_66 1 0
0.07216060168744001 2.3838290740342596 -2656.665119201533
0.0 0.0 0.0
16.631242 -20.879829 202.222367
D18_034427_1842_XN_04N223W_67 1 0
0.07232352446967999 2.38470773377977 -2668.9659520065584
0.0 0.0 0.0
16.209736 -23.514046 204.924653
D18_034427_1842_XN_04N223W_68 1 0
0.07269790506316001 2.38565779012721 -2678.9349270785033
0.0 0.0 0.0
15.710246 -26.538726 207.417412
D18_034427_1842_XN_04N223W_69 1 0
0.07199351427375 2.3865242686286203 -2678.942698191817
0.0 0.0 0.0
15.232723000000002 -28.952780999999998 210.11350699999997
D18_034427_1842_XN_04N223W_70 1 0
0.07287457185955999 2.38740913225819 -2689.383386504829
0.0 0.0 0.0
14.790548999999999 -32.056628 212.276935
D18_034427_1842_XN_04N223W_73 1 0
0.07282103502438 2.38224105347397 -2658.9086849075047
0.0 0.0 0.0
17.508243 -16.49175 197.259326
D18_034427_1842_XN_04N223W_74 1 0
0.0736051230051 2.3823626596671 -2653.237004469596
0.0 0.0 0.0
17.380384 -17.141116 197.206208
D18_034427_1842_XN_04N223W_75 1 0
0.07379170560024001 2.38384099669321 -2672.8644993645244
0.0 0.0 0.0
16.64967 -21.459742000000002 201.683498
D18_034427_1842_XN_04N223W_76 1 0
0.07382062370162 2.38409005492065 -2675.049868637645
0.0 0.0 0.0
16.539460000000002 -22.201383 202.42708100000002
D18_034427_1842_XN_04N223W_77 1 0
0.07373556771058 2.38535831527985 -2681.031323697884
0.0 0.0 0.0
15.794412 -25.889234 206.354471
D18_034427_1842_XN_04N223W_78 1 0
0.07413489106961998 2.38652925036891 -2689.011926074597
0.0 0.0 0.0
15.311494 -29.705488 209.40125700000002
D18_034427_1842_XN_04N223W_79 1 0
0.07424012184321001 2.38724097889804 -2692.0540176576637
0.0 0.0 0.0
14.971244 -31.978009000000004 211.354569
D18_034427_1842_XN_04N223W_82 1 0
0.07465980169223 2.38199709172594 -2660.382836778674
0.0 0.0 0.0
17.458551999999997 -16.379278 195.823681
D18_034427_1842_XN_04N223W_83 1 0
0.07480666965683999 2.38294587119221 -2662.107046549235
0.0 0.0 0.0
17.012866 -19.120053 198.73936
D18_034427_1842_XN_04N223W_84 1 0
0.07486208263203999 2.3834573505507 -2665.6739994721297
0.0 0.0 0.0
16.754496 -20.610599 200.295491
D18_034427_1842_XN_04N223W_85 1 0
0.07524574930831 2.38443916455468 -3067.0699559090967
0.0 0.0 0.0
16.388751 -23.622301999999998 203.165592
D18_034427_1842_XN_04N223W_86 1 0
0.07532253697328001 2.38497620501387 -2562.067272943178
0.0 0.0 0.0
16.118722 -25.275464000000003 204.691139
D18_034427_1842_XN_04N223W_87 1 0
0.07541028942 2.38609511438821 -2689.0762846417138
0.0 0.0 0.0
15.566456 -28.711112 207.924363
D18_034427_1842_XN_04N223W_88 1 0
0.07502083927259 2.38712713096084 -2686.0309107394964
0.0 0.0 0.0
14.974822 -31.788203999999997 210.917769
D18_034427_1842_XN_04N223W_91 1 0
0.07544271458467 2.38190763446656 -2663.1885343123454
0.0 0.0 0.0
17.530485000000002 -16.373877 195.285223
D18_034427_1842_XN_04N223W_92 1 0
0.07609298537421001 2.38284082344542 -2669.991112381614
0.0 0.0 0.0
16.981026 -19.17163 198.221173
D18_034427_1842_XN_04N223W_93 1 0
0.07569262450294999 2.3835948505035898 -2664.363012905885
0.0 0.0 0.0
16.725125 -21.260144 200.48741
D18_034427_1842_XN_04N223W_94 1 0
0.07568183382181 2.38386104647574 -2638.070608008627
0.0 0.0 0.0
16.59471 -22.044769 201.26955900000002
D18_034427_1842_XN_04N223W_95 1 0
0.07643679545117 2.3855276120427797 -2690.565595600588
0.0 0.0 0.0
15.675845 -27.23565 206.195255
D18_034427_1842_XN_04N223W_96 1 0
0.07623428585877999 2.3860131459160296 -2694.2605774758485
0.0 0.0 0.0
15.544069 -28.698193 207.536093
D18_034427_1842_XN_04N223W_97 1 0
0.07631737925585001 2.3869597835395697 -2686.270688960265
0.0 0.0 0.0
15.10268 -31.678234000000003 210.172179
D18_034427_1842_XN_04N223W_100 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_101 1 0
0.07710648816635 2.38244666710461 -2674.757113262216
0.0 0.0 0.0
17.175873 -18.333013 196.741651
D18_034427_1842_XN_04N223W_102 1 0
0.07688652201011001 2.38274290176313 -2677.261035660838
0.0 0.0 0.0
17.020941 -19.135099 197.73838500000002
D18_034427_1842_XN_04N223W_103 1 0
0.07698732512291999 2.38368560312227 -2672.8058123786263
0.0 0.0 0.0
16.564778 -21.904031 200.604555
D18_034427_1842_XN_04N223W_104 1 0
0.07725781409317 2.38541132577514 -2678.9729946217353
0.0 0.0 0.0
15.715968 -27.142064 205.653107
D18_034427_1842_XN_04N223W_105 1 0
0.07754700778458999 2.38608822128795 -2685.902288063236
0.0 0.0 0.0
15.399054999999999 -29.288173999999998 207.53491599999998
D18_034427_1842_XN_04N223W_106 1 0
0.07765166471801 2.3868567142168797 -2692.2502406341946
0.0 0.0 0.0
15.016573000000001 -31.7198 209.68493999999998
D18_034427_1842_XN_04N223W_109 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_110 1 0
0.07825589007503 2.3814746987964903 -2682.0369870914246
0.0 0.0 0.0
17.451342 -15.97556 193.541643
D18_034427_1842_XN_04N223W_111 1 0
0.0777909671343 2.3821813449905 -2684.2976023432325
0.0 0.0 0.0
17.201581 -17.824538 195.72653799999998
D18_034427_1842_XN_04N223W_112 1 0
0.07895148846825999 2.3838995301463903 -2680.283464869887
0.0 0.0 0.0
16.217541 -23.119061 200.94688100000002
D18_034427_1842_XN_04N223W_113 1 0
0.07880061008219 2.38515205025766 -2681.0689323457127
0.0 0.0 0.0
15.663326000000001 -26.827882000000002 204.67450300000002
D18_034427_1842_XN_04N223W_114 1 0
0.07912751338502 2.38567210517307 -2680.5241761832826
0.0 0.0 0.0
15.318241 -28.522911999999998 206.122973
D18_034427_1842_XN_04N223W_115 1 0
0.07923871661002001 2.3866391259865094 -2677.9957990335997
0.0 0.0 0.0
14.857852 -31.566578999999997 208.84844099999998
D18_034427_1842_XN_04N223W_118 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_119 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_120 1 0
0.07909884220494999 2.38200418824725 -2690.5838255001736
0.0 0.0 0.0
17.126492000000002 -17.662860000000002 195.032487
D18_034427_1842_XN_04N223W_121 1 0
0.07958915360864001 2.38399498135818 -2686.9644558180007
0.0 0.0 0.0
16.080707 -23.583734 201.09865
D18_034427_1842_XN_04N223W_122 1 0
0.08009889425597999 2.38481478771522 -2679.8546293676136
0.0 0.0 0.0
15.554520000000002 -26.148241 203.564889
D18_034427_1842_XN_04N223W_123 1 0
0.08046910387407001 2.38552789985923 -2672.557670133197
0.0 0.0 0.0
15.188120999999999 -28.462495 205.52240700000002
D18_034427_1842_XN_04N223W_124 1 0
0.08061159131957 2.3864289699855 -2675.5407470919668
0.0 0.0 0.0
14.758322 -31.292753 208.080307
D18_034427_1842_XN_04N223W_127 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_128 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_129 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_130 1 0
0.0807587589976 2.38374817253972 -2692.5341627782573
0.0 0.0 0.0
15.903652 -23.15444 200.29195900000002
D18_034427_1842_XN_04N223W_131 1 0
0.08141052509445 2.3846218021322096 -2690.646176145482
0.0 0.0 0.0
15.367770000000002 -25.971438 202.863648
D18_034427_1842_XN_04N223W_132 1 0
0.0810025822268 2.38538947599592 -2678.6318727962107
0.0 0.0 0.0
15.170943 -28.178753999999998 205.07906599999998
D18_034427_1842_XN_04N223W_133 1 0
0.08107923559935001 2.3863856082821 -2672.625395576906
0.0 0.0 0.0
14.625275 -31.282871999999998 207.987084
D18_034427_1842_XN_04N223W_136 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D18_034427_1842_XN_04N223W_137 1 0
0.08263285059475 2.38133461572435 -2683.0003819636645
0.0 0.0 0.0
16.588435999999998 -16.809387 192.530755
D18_034427_1842_XN_04N223W_138 1 0
0.08279974960992999 2.3825064680589705 -2690.3086972013957
0.0 0.0 0.0
16.003621 -20.154424 196.259151
D18_034427_1842_XN_04N223W_139 1 0
0.08261031901177 2.3835085239362406 -2696.6597455666833
0.0 0.0 0.0
15.646648999999998 -23.032201 199.362676
D18_034427_1842_XN_04N223W_140 1 0
0.08251437752552 2.3847056707278 -2690.2849407961357
0.0 0.0 0.0
15.117034 -26.57193 203.05957800000002
D18_034427_1842_XN_04N223W_141 1 0
0.08252178672164 2.3849717266292303 -2687.889644801681
0.0 0.0 0.0
14.987132999999998 -27.369891 203.871116
D18_034427_1842_XN_04N223W_142 1 0
0.08273138568844 2.38618775838929 -2677.185140199846
0.0 0.0 0.0
14.37331 -31.187855 207.33795600000002
D18_034427_1842_XN_04N223W_145 1 0
0.08314384168538 2.38103274708381 -2675.8459256381375
0.0 0.0 0.0
16.548911999999998 -16.154316 191.48131
D18_034427_1842_XN_04N223W_146 1 0
0.08317744168997 2.3812028045342797 -2677.1145496460754
0.0 0.0 0.0
16.473178 -16.631674 192.031276
D18_034427_1842_XN_04N223W_147 1 0
0.08412341655091 2.3823527317424 -2694.7548330566738
0.0 0.0 0.0
15.647117999999999 -20.139863000000002 195.774669
D18_034427_1842_XN_04N223W_148 1 0
0.08396046283667 2.38332546147269 -2703.6142848311583
0.0 0.0 0.0
15.352435 -22.811291 198.892823
D18_034427_1842_XN_04N223W_149 1 0
0.08382969551064 2.3845423499065603 -2700.1447135786443
0.0 0.0 0.0
14.804625 -26.475214 202.404746
D18_034427_1842_XN_04N223W_150 1 0
0.08415135552261001 2.38500847163554 -2682.707299494345
0.0 0.0 0.0
14.501748000000001 -27.899921999999997 203.943382
D18_034427_1842_XN_04N223W_151 1 0
0.08420659528157001 2.38557536272079 -2709.074688761304
0.0 0.0 0.0
14.19581 -29.662759 205.593161
D18_034427_1842_XN_04N223W_154 1 0
0.08445366128885001 2.38086053908945 -2693.5493187345555
0.0 0.0 0.0
16.318131 -16.01231 190.99998200000002
D18_034427_1842_XN_04N223W_155 1 0
0.08446746372827 2.38108913070666 -2694.488567373283
0.0 0.0 0.0
16.202373 -16.637541 191.756412
D18_034427_1842_XN_04N223W_156 1 0
0.08516972192796002 2.3822109242128597 -2711.8555271208647
0.0 0.0 0.0
15.437729000000001 -20.014731 195.299337
D18_034427_1842_XN_04N223W_157 1 0
0.08531133572734 2.38318096403792 -2714.270351478282
0.0 0.0 0.0
14.951564999999999 -22.858547 198.323136
D18_034427_1842_XN_04N223W_158 1 0
0.08487854784258998 2.3844528838834504 -2715.6725443945274
0.0 0.0 0.0
14.556977 -26.474738000000002 202.239417
D18_034427_1842_XN_04N223W_159 1 0
0.08495335374929999 2.38469780263608 -2716.062106547546
0.0 0.0 0.0
14.428042000000001 -27.25546 202.936374
D18_034427_1842_XN_04N223W_160 1 0
0.08508087148994001 2.38571223426977 -2717.83392672337
0.0 0.0 0.0
13.891814000000002 -30.403139000000003 205.89565100000002
D17_033939_1843_XN_04N223W_4 1 0
0.06625014491544 2.3845841181489797 -2660.090675836453
0.0 0.0 0.0
15.424957000000001 -21.243929 206.8327
D17_033939_1843_XN_04N223W_5 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_9 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_13 1 0
0.06914475802492 2.38849791571965 -2691.9104235633968
0.0 0.0 0.0
13.677446 -34.329995000000004 216.544848
D17_033939_1843_XN_04N223W_20 1 0
0.07092973369266001 2.3876529657743504 -2692.5617023619434
0.0 0.0 0.0
14.425557999999999 -32.17475 213.546801
D17_033939_1843_XN_04N223W_21 1 0
0.07124567527532001 2.3879127853347404 -2698.292857413034
0.0 0.0 0.0
14.314792 -33.073778000000004 214.155417
D17_033939_1843_XN_04N223W_25 1 0
0.07208759676714001 2.3881288650845898 -2688.160938871417
0.0 0.0 0.0
14.385124 -34.098183 214.372349
D17_033939_1843_XN_04N223W_29 1 0
0.07311197710963001 2.38369244257928 -2669.107756395676
0.0 0.0 0.0
16.732203 -20.749382 201.564945
D17_033939_1843_XN_04N223W_30 1 0
0.0733029335397 2.3849744268966804 -2679.8137082315743
0.0 0.0 0.0
16.086261999999998 -24.61359 205.332402
D17_033939_1843_XN_04N223W_31 1 0
0.07330334944136001 2.3873609578731902 -2698.739011087669
0.0 0.0 0.0
14.742326 -32.001938 212.12347200000002
D17_033939_1843_XN_04N223W_32 1 0
0.07338955731292 2.38770126601367 -2689.596935094261
0.0 0.0 0.0
14.587051999999998 -33.119208 212.982204
D17_033939_1843_XN_04N223W_36 1 0
0.07421918441302 2.38784091138244 -2692.7956947421035
0.0 0.0 0.0
14.609923 -33.847834999999996 213.049021
D17_033939_1843_XN_04N223W_40 1 0
0.07549747478812 2.38735704567769 -2691.9114083993104
0.0 0.0 0.0
14.872268 -32.659216 211.512798
D17_033939_1843_XN_04N223W_41 1 0
0.07150549700838 2.38544854881654 -2675.675300437365
0.0 0.0 0.0
15.709075 -25.469598 207.255396
D17_033939_1843_XN_04N223W_42 1 0
0.07475390508307 2.38388723029626 -2661.9128925963423
0.0 0.0 0.0
16.603867 -21.807993 201.602253
D17_033939_1843_XN_04N223W_43 1 0
0.07488635602731 2.38476634230257 -2586.856823673883
0.0 0.0 0.0
16.132327 -24.459763 204.19101
D17_033939_1843_XN_04N223W_47 1 0
0.07695260085138 2.38601355619879 -2683.893964122806
0.0 0.0 0.0
15.475879999999998 -28.909091999999998 207.41083899999998
D17_033939_1843_XN_04N223W_48 1 0
0.07711389195528 2.3875087777435 -2693.8573397565838
0.0 0.0 0.0
14.709003 -33.643352 211.559756
D17_033939_1843_XN_04N223W_51 1 0
0.07754022960353 2.38686883133015 -2692.849990156094
0.0 0.0 0.0
14.944764000000001 -31.743209000000004 209.693445
D17_033939_1843_XN_04N223W_54 1 0
0.07785708479223 2.38253471372513 -2681.754856027621
0.0 0.0 0.0
17.079795 -18.841307 196.83134099999998
D17_033939_1843_XN_04N223W_55 1 0
0.07855211987842001 2.38691355057712 -2690.664971166216
0.0 0.0 0.0
14.702332 -32.182937 209.71213600000002
D17_033939_1843_XN_04N223W_57 1 0
0.07889926268603 2.3823819719857595 -2695.2530979748667
0.0 0.0 0.0
16.826406 -18.666045999999998 196.39186
D17_033939_1843_XN_04N223W_58 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_62 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_63 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_66 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_67 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_68 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_69 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_70 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_73 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_74 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_75 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_79 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_82 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_83 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_84 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_85 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
D17_033939_1843_XN_04N223W_86 0 0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
{
"cells": [],
"metadata": {},
"nbformat": 4,
"nbformat_minor": 2
}
import numpy as np import numpy as np
import pandas as pd import pandas as pd
def read_gpf(input_data): def read_gpf(input_data):
...@@ -43,7 +43,7 @@ def read_gpf(input_data): ...@@ -43,7 +43,7 @@ def read_gpf(input_data):
assert int(cnt) == len(df) assert int(cnt) == len(df)
return df return df
def save_gpf(df, output_file): def save_gpf(df, output_file):
""" """
Write a socet gpf file from a gpf-defined pandas dataframe Write a socet gpf file from a gpf-defined pandas dataframe
...@@ -55,7 +55,7 @@ def save_gpf(df, output_file): ...@@ -55,7 +55,7 @@ def save_gpf(df, output_file):
output_file : str output_file : str
path to the output data file path to the output data file
Returns Returns
------- -------
int : success value int : success value
...@@ -68,10 +68,10 @@ def save_gpf(df, output_file): ...@@ -68,10 +68,10 @@ def save_gpf(df, output_file):
except: except:
print ('Unable to open output gpf file: {0}'.format(output_file)) print ('Unable to open output gpf file: {0}'.format(output_file))
return 1 return 1
#grab number of rows in pandas dataframe #grab number of rows in pandas dataframe
numpts = len(df) numpts = len(df)
#Output gpf header #Output gpf header
outGPF.write('GROUND POINT FILE\n') outGPF.write('GROUND POINT FILE\n')
outGPF.write('{0}\n'.format(numpts)) outGPF.write('{0}\n'.format(numpts))
...@@ -83,6 +83,6 @@ def save_gpf(df, output_file): ...@@ -83,6 +83,6 @@ def save_gpf(df, output_file):
outGPF.write('{0} {1} {2}\n'.format(row['lat_y_North'], row['long_X_East'], row['ht'])) outGPF.write('{0} {1} {2}\n'.format(row['lat_y_North'], row['long_X_East'], row['ht']))
outGPF.write('{0} {1} {2}\n'.format(row['sigma0'], row['sigma1'], row['sigma2'])) outGPF.write('{0} {1} {2}\n'.format(row['sigma0'], row['sigma1'], row['sigma2']))
outGPF.write('{0} {1} {2}\n\n'.format(row['res0'], row['res1'], row['res2'])) outGPF.write('{0} {1} {2}\n\n'.format(row['res0'], row['res1'], row['res2']))
outGPF.close() outGPF.close()
return 0 return
...@@ -3,21 +3,16 @@ import pandas as pd ...@@ -3,21 +3,16 @@ import pandas as pd
from pandas.util.testing import assert_frame_equal from pandas.util.testing import assert_frame_equal
from plio.io.io_gpf import read_gpf from plio.io.io_gpf import read_gpf
from plio.io.io_gpf import save_gpf from plio.io.io_gpf import save_gpf
from plio.examples import get_path from plio.examples import get_path
import filecmp
import pytest import pytest
@pytest.fixture @pytest.fixture
def insight_gpf(): def insight_gpf():
return get_path('InSightE08_XW.gpf') return get_path('InSightE08_XW.gpf')
def out_insight_gpf(): @pytest.fixture()
return get_path('out_InSightE08_XW.gpf')
@pytest.fixture()
def insight_expected(): def insight_expected():
return pd.read_csv(get_path('InSightE08_XW.csv')) return pd.read_csv(get_path('InSightE08_XW.csv'))
...@@ -25,10 +20,26 @@ def insight_expected(): ...@@ -25,10 +20,26 @@ def insight_expected():
def test_read_gfp(gpf, expected): def test_read_gfp(gpf, expected):
df = read_gpf(gpf) df = read_gpf(gpf)
assert_frame_equal(df, expected) assert_frame_equal(df, expected)
@pytest.mark.parametrize('gpf, out_gpf', [(insight_gpf(),out_insight_gpf())]) @pytest.mark.parametrize('gpf', [(insight_gpf())])
def test_write_gfp(gpf, out_gpf): def test_write_gpf(gpf):
"""
We test by manually comparing files and not using filecmp so that we
are not testing float point precision differences, e.g. 0.0 == 0.00000000.
"""
df = read_gpf(gpf) df = read_gpf(gpf)
val = save_gpf(df, out_gpf) save_gpf(df, 'out.gpf')
assertTrue(filecmp.cmp(gpf, out_gpf, shallow=True), "save_gpf does not create an equal file.")
with open(gpf) as f:
fl = f.readlines()
with open('out.gpf') as f:
fs = f.readlines()
# Check that the header is the same
for i in range(3):
assert fl[i] == fs[i]
truth_arr = np.genfromtxt(gpf, skip_header=3)
test_arr = np.genfromtxt('out.gpf', skip_header=3)
np.testing.assert_array_almost_equal(truth_arr, test_arr)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment