@ chestnutlabs/ gcode- 颜色
不可知论者 每块颜色模型 联 合 国 栗子实验室 G 代码预览 工具路径堆栈(DD-014 D3).
这个包是工具路的单家 颜色子系统页:1 ColorMode 工会和工会
诚实、能力强的绘图 ToolpathIR 段到一个 RGB 3个 两个三.j
渲染器(@chestnutlabs/gcode-renderer-three)和低资源 2D 渲染器
(单位:千美元)@chestnutlabs/gcode-renderer-2d)依赖于它,所以色彩和动人的语义 永远不会漂移
他们之间.
这只取决于 @chestnutlabs/toolpath-core —— 说 没有 three,没有画布,没有框架。 。 。 .
颜色模式
| 模式 | 频道 | 诚实的后退 |
|---|---|---|
single | —— 说 | 无效( 一个颜色) |
tool | segments.tool | fallback 无调色板时 |
feature | segments.feature (0=不详) | fallback 未知/ 没有调色板 |
colorChange | colorChanges[] 交换槽( M600, # 147) | fallback 当没有更改/ 没有调色板时 |
feedrate | segments.feedrate (mm/min; NaN = 未知, # 177) (中文(简体) ) | fallback 纳恩 |
object | segments.object (基于 1; 0 = 无, # 178) | fallback 无/无only |
每一种模式都退化成 fallback 对于未知的频道值, 它从不编织
角色/速度/对象颜色。 读取可选通道的模式( E)feature, (中文(简体) ), object, (中文(简体) ), feedrate必须
为: 由呼叫者指定的能力 在使用前使用.
使用量
import { createSegmentColorer } from '@chestnutlabs/gcode-colors';
// Build a colorer once (feedrate auto-range is resolved here), then O(1) per segment.
const colorOf = createSegmentColorer(ir, { mode: 'feedrate', ramp: [[0, 0, 1], [1, 0, 0]], fallback: [0.7, 0.7, 0.7] });
for (let i = 0; i < ir.segments.count; i++) {
const [r, g, b] = colorOf(i);
// …map onto your surface (WebGL vertex buffer, Canvas 2D strokeStyle, …)
}
许可证
麻省理工学院栗子实验室. 见 仓库 来源和全力支持政策.