Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Update unit.rst #734

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 27 additions & 20 deletions source/basis/unit.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,33 +12,18 @@ GMT 中的单位有两类:长度单位和距离单位。

GMT 中的长度量(如宽度、偏移量、符号大小等)可以使用厘米(**c**\ m)、
英寸(**i**\ nch)或点(**p**\ oint)为单位,
它们之间的关系为 :math:`1 inch = 2.54 cm = 72 point`
它们之间的关系为 1 inch = 2.54 cm = 72 point。

厘米、英寸和点,在 GMT 中分别用 **c**、**i** 和 **p** 表示。例如 **5c**
表示 5 厘米,**3i** 表示 3 英寸,**2p** 表示 2 点。

GMT 有两种方式可以指定长度量的单位,即显式指定单位和隐式指定单位。

显式指定单位
在长度量后直接加上单位以显式地指定当前长度量的单位。
比如 **-X4c** 意味着传给 **-X** 选项的长度量是 4 厘米

隐式指定单位
若长度量后没有给定长度单位,则 GMT 会根据参数 :term:`PROJ_LENGTH_UNIT`
所指定的默认长度单位对该长度量进行解释。
比如 **-X4** 中的长度量 4 会根据 :term:`PROJ_LENGTH_UNIT`
取值的不同而被解释为 4 厘米、4 英寸或 4 点。

.. tip::

使用长度单位时,建议遵循如下几条:

- 始终显式指定长度量的单位,不依赖于 :term:`PROJ_LENGTH_UNIT` 的值,
以免导致同一脚本在不同机器上由于 GMT 参数配置的差异而导致结果不同
- 长度单位 **p** 用于指定较小的长度量,比如线宽、文字大小等
- 长度单位 **c** 和 **i** 用于指定较大的长度量,比如底图宽度、圆圈大小等
- 尽量使用 SI 单位制(**c**)而不用 US 单位制(**i**),
因为国人对于 1 厘米要比 1 英寸更有概念
- 长度单位 **c** 和 **i** 用于指定较大的长度量,比如底图宽度、符号大小等
- 使用 SI 单位制(**c**)而不用 US 单位制(**i**)

距离单位
--------
Expand All @@ -49,7 +34,7 @@ GMT 有两种方式可以指定长度量的单位,即显式指定单位和隐
- **m**:弧分(**m**\ inute of arc)
- **s**:弧秒(**s**\ econd of arc)
- **k**:千米(**k**\ ilometer)
- **e**:米(m\ **e**\ ter) ** 默认单位 **
- **e**:米(m\ **e**\ ter)[**默认单位**]

还有几个不常用的单位:

Expand All @@ -58,11 +43,33 @@ GMT 有两种方式可以指定长度量的单位,即显式指定单位和隐
- **n**:Nautical mile
- **u**:US Survey foot

对于一个距离量而言,若不指定单位,则默认其单位为 **e** (即 “米”)。
对于一个距离量而言,若不指定单位,则默认其单位为 **e**(即 “米”)。
当然还是建议为每个距离量显式指定其单位,使得命令更加清晰。
比如在地球上以某点为中心画一个特定半径的圆,半径取 30 等效于 **30e** 表示 30 米,
半径取 **30k** 则表示 30 千米。

指定单位
--------

GMT 有两种方式可以指定长度量的单位,即显式指定单位和隐式指定单位。

显式指定单位
在长度量后直接加上单位以显式地指定当前长度量的单位。
比如 **-X4c** 意味着传给 **-X** 选项的长度量是 4 厘米

隐式指定单位
若长度量后没有给定长度单位,则 GMT 会根据参数 :term:`PROJ_LENGTH_UNIT`
所指定的默认长度单位对该长度量进行解释。
比如 **-X4** 中的长度量 4 会根据 :term:`PROJ_LENGTH_UNIT`
取值的不同而被解释为 4 厘米、4 英寸或 4 点。


.. tips::

建议始终显式指定长度量的单位,不依赖于 :term:`PROJ_LENGTH_UNIT` 的值,
以免导致同一脚本在不同机器上由于 GMT 参数配置的差异而导致结果不同


小练习
------

Expand Down