Frank Warmerdam wrote:
Could you perhaps provide the gdalinfo report on one of the files?

Sure; see below.


The main problem with using BSB files in MapServer is that GDAL treats
> them as lat/long with a set of four (or so) ground control points.
> This georeferencing model is not supported by MapServer.

Ah, so GDAL supports them but Mapserver does not? Fair enough.

I did try gdal_translate to make TIFFs, but it wasn't writing georeferencing info into the header. In fact, the gdalinfo from the TIFFs was identical to that of the PAKs, and gdaltindex wouldn't touch them because they weren't georefed.




Driver: BSB/Maptech BSB Nautical Charts
Size is 12105, 9247
Coordinate System is `'
GCP Projection = GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG",7030]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG",6326]],PRIMEM["Greenwich",0,AUTHORITY["EPSG",8901]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG",9108]],AXIS["Lat",NORTH],AXIS["Long",EAST],AUTHORITY["EPSG",4326]]
GCP[  0]: Id=GCP_1, Info=
          (2415,834) -> (-79,35,0)
GCP[  1]: Id=GCP_2, Info=
          (11102,8183) -> (-68,27,0)
GCP[  2]: Id=GCP_3, Info=
          (11103,834) -> (-68,35,0)
GCP[  3]: Id=GCP_4, Info=
          (2417,8180) -> (-79,27,0)
GCP[  4]: Id=GCP_5, Info=
          (3208,834) -> (-78,35,0)
GCP[  5]: Id=GCP_6, Info=
          (3997,832) -> (-77,35,0)
GCP[  6]: Id=GCP_7, Info=
          (4789,832) -> (-76,35,0)
GCP[  7]: Id=GCP_8, Info=
          (2415,1786) -> (-79,34,0)
GCP[  8]: Id=GCP_9, Info=
          (3208,1785) -> (-78,34,0)
GCP[  9]: Id=GCP_10, Info=
          (4787,1785) -> (-76,34,0)
GCP[ 10]: Id=GCP_11, Info=
          (5577,1784) -> (-75,34,0)
GCP[ 11]: Id=GCP_12, Info=
          (7158,1787) -> (-73,34,0)
GCP[ 12]: Id=GCP_13, Info=
          (7941,1788) -> (-72,34,0)
GCP[ 13]: Id=GCP_14, Info=
          (8733,1787) -> (-71,34,0)
GCP[ 14]: Id=GCP_15, Info=
          (9524,1788) -> (-70,34,0)
GCP[ 15]: Id=GCP_16, Info=
          (10313,1787) -> (-69,34,0)
GCP[ 16]: Id=GCP_17, Info=
          (11105,1787) -> (-68,34,0)
GCP[ 17]: Id=GCP_18, Info=
          (2414,2729) -> (-79,33,0)
GCP[ 18]: Id=GCP_19, Info=
          (3207,2727) -> (-78,33,0)
GCP[ 19]: Id=GCP_20, Info=
          (3997,2727) -> (-77,33,0)
GCP[ 20]: Id=GCP_21, Info=
          (4787,2727) -> (-76,33,0)
GCP[ 21]: Id=GCP_22, Info=
          (6367,2728) -> (-74,33,0)
GCP[ 22]: Id=GCP_23, Info=
          (7159,2731) -> (-73,33,0)
GCP[ 23]: Id=GCP_24, Info=
          (7942,2731) -> (-72,33,0)
GCP[ 24]: Id=GCP_25, Info=
          (8733,2732) -> (-71,33,0)
GCP[ 25]: Id=GCP_26, Info=
          (9524,2732) -> (-70,33,0)
GCP[ 26]: Id=GCP_27, Info=
          (10313,2731) -> (-69,33,0)
GCP[ 27]: Id=GCP_28, Info=
          (11104,2731) -> (-68,33,0)
GCP[ 28]: Id=GCP_29, Info=
          (7944,3664) -> (-72,32,0)
GCP[ 29]: Id=GCP_30, Info=
          (2417,4584) -> (-79,31,0)
GCP[ 30]: Id=GCP_31, Info=
          (3207,4585) -> (-78,31,0)
GCP[ 31]: Id=GCP_32, Info=
          (3997,4584) -> (-77,31,0)
GCP[ 32]: Id=GCP_33, Info=
          (4786,4584) -> (-76,31,0)
GCP[ 33]: Id=GCP_34, Info=
          (5577,4583) -> (-75,31,0)
GCP[ 34]: Id=GCP_35, Info=
          (6366,4582) -> (-74,31,0)
GCP[ 35]: Id=GCP_36, Info=
          (7943,4585) -> (-72,31,0)
GCP[ 36]: Id=GCP_37, Info=
          (8733,4585) -> (-71,31,0)
GCP[ 37]: Id=GCP_38, Info=
          (9524,4586) -> (-70,31,0)
GCP[ 38]: Id=GCP_39, Info=
          (10312,4586) -> (-69,31,0)
GCP[ 39]: Id=GCP_40, Info=
          (11104,4586) -> (-68,31,0)
GCP[ 40]: Id=GCP_41, Info=
          (2416,6404) -> (-79,29,0)
GCP[ 41]: Id=GCP_42, Info=
          (3996,6403) -> (-77,29,0)
GCP[ 42]: Id=GCP_43, Info=
          (4787,6402) -> (-76,29,0)
GCP[ 43]: Id=GCP_44, Info=
          (5577,6402) -> (-75,29,0)
GCP[ 44]: Id=GCP_45, Info=
          (6367,6403) -> (-74,29,0)
GCP[ 45]: Id=GCP_46, Info=
          (7157,6404) -> (-73,29,0)
GCP[ 46]: Id=GCP_47, Info=
          (7942,6405) -> (-72,29,0)
GCP[ 47]: Id=GCP_48, Info=
          (8734,6405) -> (-71,29,0)
GCP[ 48]: Id=GCP_49, Info=
          (9524,6404) -> (-70,29,0)
GCP[ 49]: Id=GCP_50, Info=
          (10312,6405) -> (-69,29,0)
GCP[ 50]: Id=GCP_51, Info=
          (11103,6405) -> (-68,29,0)
GCP[ 51]: Id=GCP_52, Info=
          (2416,7292) -> (-79,28,0)
GCP[ 52]: Id=GCP_53, Info=
          (3207,7293) -> (-78,28,0)
GCP[ 53]: Id=GCP_54, Info=
          (3997,7293) -> (-77,28,0)
GCP[ 54]: Id=GCP_55, Info=
          (4787,7293) -> (-76,28,0)
GCP[ 55]: Id=GCP_56, Info=
          (5577,7293) -> (-75,28,0)
GCP[ 56]: Id=GCP_57, Info=
          (6366,7294) -> (-74,28,0)
GCP[ 57]: Id=GCP_58, Info=
          (7158,7294) -> (-73,28,0)
GCP[ 58]: Id=GCP_59, Info=
          (7943,7294) -> (-72,28,0)
GCP[ 59]: Id=GCP_60, Info=
          (8733,7294) -> (-71,28,0)
GCP[ 60]: Id=GCP_61, Info=
          (9523,7294) -> (-70,28,0)
GCP[ 61]: Id=GCP_62, Info=
          (10313,7296) -> (-69,28,0)
GCP[ 62]: Id=GCP_63, Info=
          (11101,7297) -> (-68,28,0)
GCP[ 63]: Id=GCP_64, Info=
          (3206,8181) -> (-78,27,0)
GCP[ 64]: Id=GCP_65, Info=
          (835,6401) -> (-81,29,0)
GCP[ 65]: Id=GCP_66, Info=
          (836,5496) -> (-81,30,0)
GCP[ 66]: Id=GCP_67, Info=
          (838,4583) -> (-81,31,0)
GCP[ 67]: Id=GCP_68, Info=
          (1628,3664) -> (-80,32,0)
GCP[ 68]: Id=GCP_69, Info=
          (1629,4585) -> (-80,31,0)
GCP[ 69]: Id=GCP_70, Info=
          (1627,5496) -> (-80,30,0)
GCP[ 70]: Id=GCP_71, Info=
          (1628,6402) -> (-80,29,0)
GCP[ 71]: Id=GCP_72, Info=
          (1626,7292) -> (-80,28,0)
GCP[ 72]: Id=GCP_73, Info=
          (308,8734) -> (-81.6666666667,26.3666666667,0)
GCP[ 73]: Id=GCP_74, Info=
          (836,8734) -> (-81,26.3666666667,0)
GCP[ 74]: Id=GCP_75, Info=
          (2416,8734) -> (-79,26.3666666667,0)
GCP[ 75]: Id=GCP_76, Info=
          (3999,8733) -> (-77,26.3666666667,0)
GCP[ 76]: Id=GCP_77, Info=
          (5577,8729) -> (-75,26.3666666667,0)
GCP[ 77]: Id=GCP_78, Info=
          (7154,8732) -> (-73,26.3666666667,0)
GCP[ 78]: Id=GCP_79, Info=
          (8731,8732) -> (-71,26.3666666667,0)
GCP[ 79]: Id=GCP_80, Info=
          (10312,8734) -> (-69,26.3666666667,0)
GCP[ 80]: Id=GCP_81, Info=
          (11760,8734) -> (-67.1666666667,26.3666666667,0)
GCP[ 81]: Id=GCP_82, Info=
          (11762,7298) -> (-67.1666666667,28,0)
GCP[ 82]: Id=GCP_83, Info=
          (11761,5499) -> (-67.1666666667,30,0)
GCP[ 83]: Id=GCP_84, Info=
          (11760,3665) -> (-67.1666666667,32,0)
GCP[ 84]: Id=GCP_85, Info=
          (11760,1787) -> (-67.1666666667,34,0)
GCP[ 85]: Id=GCP_86, Info=
          (11761,512) -> (-67.1666666667,35.3333333333,0)
GCP[ 86]: Id=GCP_87, Info=
          (10312,512) -> (-69,35.3333333333,0)
GCP[ 87]: Id=GCP_88, Info=
          (8734,513) -> (-71,35.3333333333,0)
GCP[ 88]: Id=GCP_89, Info=
          (7156,514) -> (-73,35.3333333333,0)
GCP[ 89]: Id=GCP_90, Info=
          (5579,514) -> (-75,35.3333333333,0)
GCP[ 90]: Id=GCP_91, Info=
          (3997,513) -> (-77,35.3333333333,0)
GCP[ 91]: Id=GCP_92, Info=
          (2414,513) -> (-79,35.3333333333,0)
GCP[ 92]: Id=GCP_93, Info=
          (307,512) -> (-81.6666666667,35.3333333333,0)
GCP[ 93]: Id=GCP_94, Info=
          (311,1785) -> (-81.6666666667,34,0)
GCP[ 94]: Id=GCP_95, Info=
          (312,3662) -> (-81.6666666667,32,0)
GCP[ 95]: Id=GCP_96, Info=
          (309,5496) -> (-81.6666666667,30,0)
GCP[ 96]: Id=GCP_97, Info=
          (307,7291) -> (-81.6666666667,28,0)
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0, 9247.0)
Upper Right (12105.0,    0.0)
Lower Right (12105.0, 9247.0)
Center      ( 6052.5, 4623.5)
Band 1 Block=12105x1 Type=Byte, ColorInterp=Palette
  Color Table (RGB with 11 entries)
    0: 0,0,0,255
    1: 255,255,255,255
    2: 209,221,239,255
    3: 244,232,193,255
    4: 214,219,201,255
    5: 0,178,178,255
    6: 114,114,114,255
    7: 188,188,188,255
    8: 150,175,155,255
    9: 94,153,193,255
   10: 219,73,150,255

Reply via email to