操作指南
这一章面向具体任务。与核心概念讲「是什么」、 教程讲「怎么上手」不同, 这里讲的是在实际项目中把某件事接进来该怎么做。
- 配置 ——
init配置与日志(loglevel)的使用 - 自定义影像加载器 —— 接入自有的 PACS 或影像来源
- 自定义元数据提供者 —— 补充库所需的非像素元数据
- 自定义工具 —— 基于
BaseTool/AnnotationTool写新工具 - 自定义体数据加载顺序 —— 重排或交错影像请求
配置
Cornerstone Core 通过 init 函数接受配置。本文重点讲日志:Cornerstone 与 dcmjs 共用 loglevel 的同一个日志根,因此用 loglevel 接口而非 init 配置来控制;文中说明日志级别、logger 命名结构、如何按前缀批量设级别,以及如何把日志转发到别处。
自定义影像加载器
实现自定义影像加载器的分步指南。示例用 XMLHttpRequest 取回像素数据并返回包含 Promise 的影像加载对象,随后说明如何保证元数据同样可用、如何按 URL scheme 注册加载器,以及如何在视口中使用。
自定义元数据提供者
创建并注册自定义元数据提供者的分步指南。示例实现一个存放 PET 影像缩放因子的提供者,说明为何应以 imageURI 而不是 imageId 作为缓存键、如何编写 get 提供者函数、如何按优先级注册,以及如何取用。
自定义工具
自定义工具就是实现或继承 BaseTool、AnnotationTool 抽象类的类。本文说明这两个基类各自的定位与适用场景,并列出它们各自的内置工具示例。
自定义体数据加载顺序
自定义体数据切片加载顺序的教程。示例把两份体数据的加载请求交错起来,让它们同步逐层加载而不是一份接一份,涵盖 getImageLoadRequests 取请求、用 lodash 交错排序,以及把请求重新加回 imageLoadPoolManager。