sanitize_scale
函数源码
sanitized_scale: Scale = sanitize_scale(
scale: float | Mapping[str, Any],
offset_x: float | None = None,
offset_y: float | None = None,
)
针对标记图片的比例尺参数、进行清理。
数据清理将会确保:
- 将会返回一个至少包含了缩放比例的字典。
- 可以设置可选的偏移量。
- 清理后的数据会附加一个时间戳。该时间戳能确保即使该设置不变的情况下,也能总是触发缩放事件。
别名
该函数可以按以下方式之一获取
import dash_picture_annotation as dpa
dpa.sanitize_scale
dpa.utilities.sanitize_scale
参数
输入
参数 | 类型 | 必选 | |
---|---|---|---|
scale | float | Mapping[str, Any] | 缩放比例值(float )或一个完整的配置字典。 | |
offset_x | float | None | 沿 X 轴的相对偏移量。该值当且仅当参数scale 未提供"offset_x" 属性时,才会合并到结果中。 | |
offset_y | float | None | 沿 Y 轴的相对偏移量。该值当且仅当参数scale 未提供"offset_y" 属性时,才会合并到结果中。 |
输出
参数 | 类型 | |
---|---|---|
sanitized_scale | Scale | 清理后的比例尺设置,其中包含一个新配置的时间戳。 |
范例
清理一个比例尺
- 代码
- 结果
sanitize_scale.py
import pprint
import dash_picture_annotation as dpa
pprint.pprint(dpa.sanitize_scale(1.0))
pprint.pprint(dpa.sanitize_scale(1.0, offset_x=0.1, offset_y=0.9))
pprint.pprint(dpa.sanitize_scale({"scale": 0.8, "offset_x": 0.1}, offset_y=0.9))
pprint.pprint(dpa.sanitize_scale({"scale": 0.8, "offset_x": 0.1}, offset_x=0.3, offset_y=0.9))
{'scale': 1.0, 'timestamp': 1741041589211}
{'offset_x': 0.1, 'offset_y': 0.9, 'scale': 1.0, 'timestamp': 1741041589211}
{'offset_x': 0.1, 'offset_y': 0.9, 'scale': 0.8, 'timestamp': 1741041589211}
{'offset_x': 0.1, 'offset_y': 0.9, 'scale': 0.8, 'timestamp': 1741041589212}