唯杰地图 logo唯杰地图
VJMAP
EN

background

vjcad/references/view/background.md 1.9 KB40 行
原文

本文回答:背景色用 Engine.setBgc(grayValue),参数是灰度 0-255(0=深色主题默认色 #212830(不是纯黑),255=#FFFFFF=浅色主题默认,其他 n = rgb(n,n,n))。背景影响实体颜色显示效果,调整后通常自动重绘。

一、最小用法

Engine.setBgc(0);     // 深色主题默认 #212830(不是纯黑;要纯黑可用 setBgc(1) ≈ rgb(1,1,1))
Engine.setBgc(255);   // 纯白(浅色主题默认)
Engine.setBgc(33);    // 深灰
Engine.setBgc(128);   // 中灰

MCP 参考:vjcad/example/view/06background.js;取值:0=深色,255=浅色。

灰度值 含义
0 特例:Engine.DARK_BG_COLOR = #212830(深色主题默认,源码 Engine.setBgc(isDarkTheme ? 0 : 255))
33 深灰
128 中灰
200 浅灰
255 特例:Engine.LIGHT_BG_COLOR = #FFFFFF(浅色主题默认,适合打印预览)

二、与主题的关系

  • setBgc 只控制画布背景;主题色板读写走 Engine.getThemeColors() / Engine.setThemeColors(partial)(另有 isDarkTheme()),详见 ui/theme-statusbar。

三、setBgc(hexString)?

上游文档某处示例出现过 hex 字符串写法,但 setBgc(grayValue: number) 只接受 0-255 整数灰度(源码签名明确;内部 grayValue <= 127 判定深/浅)。不要传 hex 字符串——会得到非预期结果。

反例

  • 设置纯白背景 + 大量浅色实体:可读性差。
  • 在不同时机连续调用 setBgc:等同于背景闪屏。
  • 想 "保存背景到 DWG":vjcad 的背景一般是渲染选项,不是文档持久化数据——建议在用户 settings 里保存,不要依赖文件保留。

参考(官方文档 MCP)

  • 文档:vjcad/doc/view/index.md
  • 示例:vjcad/example/view/06background.js