-g 选项
在处理多段数据时,GMT提供了三种机制来决定文件中数据的分段情况:
使用数据段头记录来标记一段数据的开始,详见 ASCII 表
若输入数据中,某个记录的某个关键列的值为NaN,则也可以用于将该记录作为数据段的开始标识
当 IO_NAN_RECORDS 为 skip 时,这些包含NaN值的记录会被自动跳过
当 IO_NAN_RECORDS 为 pass 时,这些包含NaN值的记录会被当做数据段的开始标识
也可以使用 -g 选项,通过判断两个相邻的数据点是否符合某个准则来决定数据分段
-g 选项的完整语法为:
-gx|y|z|d|X|Y|Dgap[u][+a][+ccol][+n|p]
该选项可重复多次,以指定多个分段准则。一次使用 x|y|z|d|X|Y|D 中的其中一个指定一个准则。 有些模块可以进行地图投影计算投影坐标(例如 mapproject)。大写字母表示的准则会应用到计算出的投影坐标中。
x|X 表示相邻两点间的X坐标跳变超过 gap 则定义为一个分段
y|Y 表示相邻两点间的Y坐标跳变超过 gap 则定义为一个分段
z 表示相邻两点间的Z值跳变超过 gap 则定义为一个分段。默认数据中的第三列为Z值,用户可以使用 +ccol 自行规定哪一列为Z值(默认 col 为2即第三列)。
d|D 表示相邻两点间的距离超过 gap 则分段
用户可以设置 u 用于指定 gap 的单位:
对于地理坐标 (x|y|d),u 可以取 d(egree), m(inute), s(econd), 或 (m)e(ter), f(eet), k(ilometer), M(iles), 或 n(autical miles) [默认为(m)e(ter)]
对于投影坐标 (X|Y|D),u 可以取 i(nch), c(entimeter), p(oint) [默认值由 PROJ_LENGTH_UNIT控制]
对于 x|y|z,若输入是时间数据,则单位由 TIME_UNIT 控制
默认情况下,只要符合任意一个准则就对数据进行分段。用户可以使用 +a 表示所有准则都满足时才进行分段。
默认使用两点间的X坐标、Y坐标或距离差的绝对值作为 gap ,进行分段。
+n 表示用前一数据减去当前数据作为 gap
+p 表示用当前数据减去前一数据作为 gap