结构注解

结构注解

NeoStructureMapper 是一个允许你预览、注释和导出多方块结构的模组。

工具

免责声明:本项目完全由我使用 ChatGPT 以“氛围编码”方式完成。 虽然提供的功能不太可能引起问题,但在大型模组包/服务器中使用前请三思。

介绍 NeoStructureMapper

NeoStructureMapper 是一个模组,允许你预览、注释和导出多方块结构。你可以使用选择魔杖创建一个选区。创建后,一个结构图可以放置在它上面,你可以用它来预览、注释和导出该结构。 结构图的 GUI

预览

在 GUI 中央是选区的 3D 模型,你可以旋转、缩放和平移。此外,你可以按 "-""=" 来剥离最外层,这让你可以查看内层。外层的透明度是可配置的。在少数情况下,该功能可能无法按你期望的方式显示内部方块(例如被空气包围的内部方块),或者你只想要不同的视图,可以随时点击左上角的按钮切换到分层模式。 结构图的分层模式 你可以使用 "-""=" 高亮不同层。层之间的距离是可配置的。在 GUI 左侧是一个工具栏。第一个按钮允许你在 3D 模型中创建一个子选区,有 16 种颜色可用(两个颜色相同的相邻子选区在 3D 预览中会合并,因此如果你不希望它们合并,最好使用不同的颜色)。第二个按钮允许你删除子选区。第三个按钮用于导出,将在后面介绍,最后一个按钮用于重置 3D 模型。

注释

右键点击一个方块将打开一个面板,允许你添加注释。 结构图的注释面板 你可以输入文字或使用 16 种颜色进行绘制。你还可以预览该方块所属的子选区的 3D 模型。主选区和子选区都可以通过右键点击来重命名。当你将鼠标悬停在一个方块上时,它会显示其注释文本和物品栏。 显示一个桶的物品栏示例 (这是介绍最简短的主要功能,哈哈)

导出

便携图 & .ess 文件

一个选区可以导出为便携图以便于使用。导出后,便携图不再与原始选区关联,并且可以单独编辑。你也可以将一个选区导出为 .ess 文件。当手持结构图时,按潜行 + 右键可以导入 .ess 文件并创建一个便携图,这允许跨世界共享。

PNG 文件

一个选区也可以导出为图片。此功能是高度(也许)可配置的。你可以在两种 3D 视图模式下导出。有 3 种导出模式:不透明、标注和洋葱皮。不透明模式只导出一个实心 3D 模型。标注模式让所有方块透明,只保留标注过的方块。洋葱皮模式让模型逐层显示。 洋葱皮模式下的 PNG 导出 你还可以配置模型的旋转角度:"fixed" 表示等距视图,"custom" 在导出时使用你当前的旋转角度。注释、绘图和物品栏将显示在 3D 模型旁边。你可以根据需要关闭此功能。

配置

客户端

[diagram]
	#悬浮预览中显示的最大注释字符数。
	# 默认值: 25
	# 范围: 1 ~ 512
	notePreviewCharacters = 25
	#悬浮预览中显示的最大物品栏物品种类数。
	# 默认值: 5
	# 范围: 1 ~ 64
	contentPreviewItems = 5
	#PNG 注释中显示的最大物品栏物品种类数。
	# 默认值: 64
	# 范围: 1 ~ 256
	pngContentItems = 64
	#PNG 注释框是否包含捕获方块物品栏的内容。
	showPngBlockContents = true
	#分层蓝图模式中 Y 层之间的额外垂直方块间距。
	# 默认值: 1.0
	# 范围: 0.0 ~ 16.0
	layerModeGap = 1.0
	#应用于聚焦 Y 层上方和下方图层的额外垂直方块偏移。
	# 默认值: 1.0
	# 范围: 0.0 ~ 16.0
	layerModeFocusShift = 1.0
	#用于剥离层和透明模型层的透明度。
	# 默认值: 0.35
	# 范围: 0.05 ~ 0.95
	peeledLayerTransparency = 0.35
	#PNG 导出渲染模式。
	#允许值: OPAQUE, NOTED, ONION
	pngMode = "ONION"
	#PNG 导出相机模式。FIXED 使用等距视图;CUSTOM 使用当前 GUI 旋转。
	#允许值: FIXED, CUSTOM
	pngViewMode = "FIXED"
	#PNG 导出是否绘制注释框和引出线。
	showPngAnnotations = true

服务端 (1.0.1+)

[server]
	#客户端是否可列出和导入存储在服务器 expstrsch 文件夹中的 .ess 文件。
	allowClientServerEssImport = true
	#是否只有操作员才可以使用选择魔杖创建或删除主选区。
	requireAdminSelectionWand = true
	#是否只有操作员才可以打开已放置的结构注释。
	requireAdminStructureDiagramOpen = true
	#是否完全启用 ESS 导入。禁用此选项将阻止客户端本地和服务端文件夹的 ESS 导入。
	enableEssImport = false