# BingZhuangTu **Repository Path**: manon-des-sources/bing-zhuang-tu ## Basic Information - **Project Name**: BingZhuangTu - **Description**: 这是一个饼图绘制工具,在 Trae CN 环境下让他的 AI(Builder)帮我开发的。 一开始自己写好需求书,提交给和他的 AI 工具(Builder),后续慢慢测试,慢慢让他增加、修复各种功能。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-10 - **Last Updated**: 2026-01-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 饼图绘制工具 ## 和 AI 交互的方式 - 先把需求发给 AI,让AI 复述一遍,看看 AI 是否理解了需求 - 不要一次性把所有需求都发给 AI,而是分步骤发送,分布实现整个需求 - 要求 AI 将它自己生成的临时测试文件都放到 test 文件夹里面去,例如 test_simple.py 这样的命名格式 - - - - ## 说明 - 使用 python 代码实现 - 代码模块化要做好 - 自动生成 .gitignore 文件,用于忽略非必要文件 - 标注为"(_不做_)"的部分, 该功能不实现 - 如果这个部分包含子项,子项功能也不实现 - 撤销、重做:最多20次 - [嵌入链接]支持链接类型有: - 网页链接: - 点击链接后,可以跳转到指定的网页 - Ctrl + 鼠标悬停在链接上时,显示一个悬浮窗,用于显示网页内容(_不做_) - 对象链接: - 可以链接到一个[对象] - 点击链接后,可以跳转到指定的[对象] - Ctrl + 鼠标悬停在链接上时,显示一个悬浮窗,用于显示[对象]的[对象说明文本] - - - ## 功能特点 - 初始状态 - 只有一个空白的画布界面 - 画布 - 工具栏 - 垂直方向:位于画布顶部 - 工具栏包含:[新建画布]、[新建饼图]、[打开]、[保存]、[另存为]、[导入数据]、[导出数据]、[帮助]、[滑动条] - [新建画布](_不做_) - 点击[新建画布],会创建一个空白的画布界面 - [新建饼图] - 点击[新建饼图],会弹出[饼图设置框] - [打开] - 点击[打开],会弹出[打开对话框] - 从[打开对话框]选择要打开的[画布文件]后,点击确定按钮,打开一个画布 - [画布文件]格式名称为:*.hb - [保存]、[另存为] - 点击[保存],会将当前画布上的所有数据保存当前[画布文件]中,若当前[画布文件]还未保存过,则弹出[保存对话框],提示用户输入文件名和文件路径 - 点击[另存为],会弹出[另存为对话框],要求输入文件名和文件路径,将当前画布上的所有数据保存到指定的[画布文件]中 - [导出数据] - 支持将生成的画布导出为CSV文件 - 支持将生成的画布导出为图片文件(可选PNG、JPEG等) - [帮助] - 弹出[帮助对话框],显示[help.txt]文档的内容 - [help.txt]存放在项目根目录下,若文件不存在,则自动创建[help.txt],内容为空 - [滑动条]: - 这是一个滑动条,用于放大和缩小画布 - 画布上可以绘制的[对象]有: - 饼图 - 一个饼图由多个扇形组成,所有扇形的圆心角总和为360° - 扇形 - 一个扇形由多个扇环组成,每条弧的圆心角和扇形的圆心角一样,扇环左右两端的边在扇形的两条边上 - 扇环 - 一个扇环可以被切割成多个小块,每个小块是一个更小的扇环,所有小块的圆心角总和为该扇环的圆心角 - 小块 - - 文本框 - - 搜索框 - 位于画布左侧 - 水平宽度固定为可输入20个字符 - 和工具栏在同一行 - 可以搜索所有文本框、饼图、扇形、扇环、小块的名称 - 可以搜索所有文本框、饼图、扇形、扇环、小块的文本信息 - 画布左侧有资源管理器 - 位于画布左侧 - 位于搜索框下方 - 水平宽度的初值与搜索框相同 - 显示所有文本框、饼图的名称 - 名称按照文件名顺序排列 - 文本框、饼图的名称可以在这里修改 - 饼图名称下,有一个树形结构,单击树形结构可以展开或折叠,展开后可以看到该饼图下所有扇形、扇环、小块 - 双击[对象]名称时,直接跳转到该[对象]所在位置 - 意思是该[对象]的中心是画布视角的中心位置 - 单击[对象]名称时,被点击的[对象]会高亮显示,用快捷键Delete删除该域 - 图层(_不做_) - 文本框可以在饼图、扇形、扇环、小块等图形[对象]的上一层 - 一张画布可以包含多个文本框、饼图,数量没有限制 - 新建[对象]的位置与已有[对象]重叠时,就重新将其放到已有[对象]的旁边,避免重叠 - 新建[对象]时的默认规则 - 新建[对象]时,新生成的[对象]会被放到鼠标点击的位置 - 新建[对象]时,新生成的[对象]会自动命名为:[对象类型] + 数字(例如:饼图1、扇形2、扇环3、小块4、文本框5等) - 新建[对象]时,新生成的[对象]会自动添加到资源管理器中 - 新建[对象]时,新生成的[对象]不能与其他[对象]重叠 - 如果新建的[对象]将要放置的位置与已有饼图重叠,系统会自动重新计算位置 - 计算方法为:每次往右移动一个被重叠饼图的直径,直到找到一个不重叠的位置为止 - 交互 - Ctrl + 鼠标滚轮:直接缩放整个画布,缩放时以鼠标所在位置为中心进行缩放 - shift + 鼠标滚轮:画布左右移动 - 鼠标滚轮:画布上下移动 - 鼠标停留在[对象]上时,该[对象]会高亮显示 - Ctrl + 鼠标停留在[对象]上时,显示一个悬浮窗,用于显示该[对象]的[对象说明文本] - 选中域:可以通过鼠标左键选中一个区域内的所有[对象](文本框、饼图、扇形、扇环、小块) - 选中后的[对象]会高亮显示 - 选中后,可以删除选中的[对象](快捷键Delete) - 拖动[对象]:选中一个或多个[对象]后,可以拖动[对象]到新的位置,[对象]会被移动到新的位置 - 调整大小: - 选中一个[对象]后,可以用鼠标拖动[对象]的边框,调整[对象]的大小,可以实时预览效果, - 如果这个[对象]是一个子域(扇形、扇环、小块),子域的大小修改之后,其他域的大小会自动调整 - 选中多个[对象]后,可以用鼠标调整多个[对象]的大小,所有[对象]的大小会同时调整,保持比例不变,实时预览效果 - 鼠标右键点击画布空白部分,弹出菜单,菜单中包含属性: - 创建:点击创建(快捷键Ctrl+N)后,弹出[饼图设置框] - 全选:有一个全选键,点击全选后,所有饼图会被选中(快捷键Ctrl+A) - 选中后,饼图会高亮显示 - 选中后,可以删除选中域(快捷键Delete) - 删除:点击删除后,所有选中的域会被删除(快捷键Delete) - 撤销:点击撤销后,最近一次操作会被撤销(快捷键Ctrl+Z) - 重做:点击重做后,最近一次撤销的操作会被重做(快捷键Ctrl+Y) - 饼图 - 在资源管理器上、右键点击饼图名称时,[饼图设置框],[饼图设置框]包含: - 格式:有一个选择框,用于选择饼图颜色 - 名称:有一个文本框,用于输入饼图的名称,可以设置这个名称的字体、字体大小、字体颜色等格式参数 - 名称显示在饼图的中心位置 - 说明:有一个文本框,用于输入饼图的[对象说明文本],可以设置这个说明的字体、字体大小、字体颜色等格式参数 - 说明显示在饼图的中心位置 - 文本内容支持[嵌入链接] - 切分:是一个输入框,可通过键盘在里面输入切分数n,默认n=4,也可以通过鼠标点击数值增减按钮来增减切分数n - 确认:是一个确认键,点击确认后: - 如果当前饼图不存在,则创建一个饼图(要遵守新建[对象]时的默认规则) - 当前饼图会根据切分数n,被切分为n个扇形,所有扇形的圆心角总和为360° - 格式、名称、说明会被应用到当前饼图上 - 取消:是一个取消键,点击取消后,设置框会关闭 - 扇形 - 鼠标双击扇形,会弹出这个扇形的[扇形设置框],[扇形设置框]包含: - 格式:有一个选择框,用于选择扇形颜色 - 名称:有一个文本框,用于输入扇形的名称,可以设置这个名称的字体、字体大小、字体颜色等格式参数 - 名称显示在扇形的中心位置 - 说明:有一个文本框,用于输入扇形的[对象说明文本],可以设置这个说明的字体、字体大小、字体颜色等格式参数 - 说明显示在扇形的中心位置 - 文本内容支持[嵌入链接] - 切分:是一个输入框,在里面输入切分数n,默认n=4 - 确认:是一个确认键,点击确认后: - 如果当前扇形不存在,则创建一个扇形(要遵守新建[对象]时的默认规则) - 当前扇形会根据切分数n,被切分为n-1个扇环和一个扇形 - 扇形被切割成n-1个扇环后,最里面会剩一个扇形 - 扇环左右两端的边在被拆分的扇形的两条边上 - 扇环的圆心角和扇形一样 - 例如,当原扇形是一个90度的扇形,切分数n=2时: - 会生成一个外侧扇环(90度圆心角,有宽度) - 最内侧会保留一个90度的扇形 - 两者共同组成了原90度扇形的区域 - 格式、名称、说明会被应用到当前扇形上 - 取消:是一个取消键,点击取消后,设置框会关闭 - 扇环 - 鼠标双击扇环,会弹出这个扇环的[扇环设置框],[扇环设置框]包含: - 格式:有一个选择框,用于选择扇环颜色 - 名称:有一个文本框,用于输入扇环的名称,可以设置这个名称的字体、字体大小、字体颜色等格式参数 - 名称显示在扇环的中心位置 - 说明:有一个文本框,用于输入扇环的[对象说明文本],可以设置这个说明的字体、字体大小、字体颜色等格式参数 - 说明显示在扇环的中心位置 - 文本内容支持[嵌入链接] - 切分:是一个输入框,在里面输入切分数n,默认n=4 - 确认:是一个确认键,点击确认后: - 如果当前扇环不存在,则创建一个扇环(要遵守新建[对象]时的默认规则) - 当前扇环会根据切分数n,被切分为n个小块,所有小块的圆心角总和为360° - 格式、名称、说明会被应用到当前扇环上 - 取消:是一个取消键,点击取消后,设置框会关闭 - 小块 - 鼠标双击小块,会弹出这个小块的[小块设置框],[小块设置框]包含: - 格式:有一个选择框,用于选择小块颜色 - 名称:有一个文本框,用于输入小块的名称,可以设置这个名称的字体、字体大小、字体颜色等格式参数 - 名称显示在小块的中心位置 - 说明:有一个文本框,用于输入小块的[对象说明文本],可以设置这个说明的字体、字体大小、字体颜色等格式参数 - 说明显示在小块的中心位置 - 文本内容支持[嵌入链接] - 确认: - 格式、名称、说明会被应用到当前小块上 - 取消:是一个取消键,点击取消后,设置框会关闭 - 文本框 - 可以在文本框输入文本 - 可以在文本框输入[嵌入链接] - 文本可以设置字体、字体大小、字体颜色等格式参数