主页重构

This commit is contained in:
2026-09-23 23:22:11 +08:00
parent c897e23397
commit 7548d2d913
39 changed files with 4312 additions and 167 deletions
@@ -0,0 +1,362 @@
# 黑龙江大学 Robomaster 校内赛 参赛手册(预览版,非最终效果)
## 比赛介绍
黑龙江大学 RoboMaster 机甲大师校内赛(下文简称 RMIC)是一项面向黑龙江大学全体本科同学、要求参赛选手设计、制造可发射水弹的智能机器人的比赛。比赛要求参赛队完成机器人机械组装、电路设计、程序调试,在赛场中激烈对抗、按照规则决出胜负。
本比赛由 602 实验室 / Simba 战队提供技术支持并成立赛务组委员会(下文简称组委会),负责比赛环境搭建、规则解释、技术支持。
## 参赛要求
### 参赛资格
- 所有选手应为黑龙江大学本科生
- 以团队形式参赛,每队人数严格限制为 3 人
- 每人限参加一支队伍
- 每队 50 元报名费
鼓励各位同学跨学院、跨专业组队,以实现技术互补。
### 赛事时间
2026 年 09 月 23 日至 11 月 01 日
## 赛事流程
1. 09 月 23 日:报名开启
2. 10 月 09 日:报名关闭
3. 10 月 10 日:规则测评
4. 10 月 24 日:完整形态考察、开源审查
5. 10 月 25 日:适应性训练、裁判系统开放借用
6. 11 月 01 日:机器人射击对抗赛
以下是对赛事各流程的详细解释。
## 前期准备
### 报名
本比赛自 9 月 23 日开启报名,至 10 月 9 日止。请扫码加入赛事官方 QQ 群,并联系队友填写报名链接。后续相关通知将第一时间在群内发布。
### 规则测评
规则测评采用线上题库形式发布,于 10 月 10 日开始可进入答题,10 月 23 日停止,考察参赛队对本参赛手册熟悉程度。
各参赛队使用报名后分配的账号进入答题,不限答题次数,答到满分视为通过。未通过参赛队不得参与赛事后续流程。
### 完整形态考察
在本项开始前,各参赛队应参考附录![机器人制作规范],完成考察内容中的功能。10 月 24 日,参赛队需携带机器人参与完整形态考察,目的为检验各参赛队的机器人制作情况。评分规则如下:
|部分|考察内容|具体要求 |分值|
|----|--------|-------- |----|
|底盘|直线移动|不偏离指定宽度道路行进5米 |15|
|底盘|原地旋转|不偏离指定半径圆周在10秒内旋转720° |15|
|底盘|全向移动|可以在不旋转的前提下相对地面前后左右平移 |15|
|云台|枪口俯仰|使用任意方法使水弹发射机构相对于与地面平行某一轴转动超过30°|15|
|云台|发射水弹|可以不大于1秒的间隔连续发射水弹10秒,不卡弹 |15|
|云台|定点击打|发射水弹,30秒内能够命中1米外 $100cm^2$ 大小固定靶 5 次以上|15|
|其他|内容不限|其他有助于对战的功能 |10|
由考察现场赛务工作人员评分,按照规则排名。排名前 16 队伍获得比赛/裁判系统借用资格。
剩余队伍中,排名前 4 的队伍可获得三等奖,其余队伍失去参赛资格。
若达到基本参赛要求的队伍超过 16 组,组委会将视情况调整本条,增加比赛资格名额。
### 开源审查
**组委会严禁直接购买成品方案或代做参与比赛,此类做法严重违反比赛精神。**
所有参赛队伍需在完整形态考察前向组委会通过特定渠道提交作品报告,应包括以下内容:
1. 整机开发使用到的关键的软件/硬件
2. 整机方案的设计思路
3. 使用的开源设计(如有)的来源
4. 在开源设计(如有)基础上所作的创新性改动
5. 机器人宣传照、队伍形象照(可能需要公开展示,建议认真拍摄)
在完整形态考察当天,各队需要在完整形态考察通过后现场接受作品的实物审查。
接收实物审查的队伍,有义务在接收质询时向组委会展示以下内容:
1. 机械设计图纸(如有)
2. 电路设计图纸(如有)
3. 机器人源代码
4. 对相关技术提问做出现场答辩
组委会有权记录、保存参赛队伍的机器人相关构型信息。根据开源审查结果,将作品归为以下几类:
#### A类 充分再设计
指能够领悟开源设计的设计意图,并能够在机械构型、电控软硬件方案上优化、创新的一类。
例如:
- 轮组:麦克纳姆轮/全向轮/阿克曼底盘/舵轮等驱动框架方式的更换
- 电机:直流有刷/直流无刷、步进电机/减速电机等电机的更换
- 传动:直接驱动/齿轮传动/同步带传动/连杆传动等传动方式的更换
- 云台:增加/减少云台的俯仰/偏航/滚转自由度等云台构型的更换
- 硬件:更换不同框架的主控板,如 ESP32/STM32/STC51/NUC/RK 等主控的更换
- 软件:更换软件开发框架,如裸机代码修改/FreeRTOS/Zephyr/Linux/Windows 等内置软件框架的更换
- 其他:创新性设计,如实现小陀螺、增加自瞄系统等
#### B类 非充分再设计
指能够基本理解开源设计,但仅对原设计某一模块尺寸/参数进行调整,不能体现原创设计意图的一类。
- 轮组:轮径、轮宽等参数改变
- 联轴器:夹紧式/顶紧式/刚性/柔性等联轴器类型更换
- 材料:能够提升性能的更换,如打印件替换为亚克力板/亚克力板替换为玻纤/碳板等
- 其他:有创新性但对比赛帮助不大的设计,如杜邦线更换空中端子接线等
#### C类 无效再设计
指对开源设计照搬照抄/直接购买产品,不能理解开源设计的一类。
- 简单型号替换:同规格元件替换,如使用同一型号,区别仅在生产厂商不同的电机/核心板等
- 劣化替换:导致性能受损且未能带来造价收益的替换,如使用性价比更差的同控制方式电机/只换一块更大更重的电池等
- 换壳:仅改变外观的替换,如抹去厂商标记/喷涂涂装等
- 其他:对比赛无帮助的设计,如在车体上加装奶龙玩偶等
作品评定类别满足一条即能够被认定为该类,按最高分类,优先级为 $A>B>C$(例如,满足 A 类 1 条,B 类 2 条,被认定为 A 类)。各类作品获奖限制如下:
- A 类作品:最高可获得一等奖
- B 类作品:最高可获得二等奖
- C 类作品:最高可获得三等奖
## 正式比赛
### 机器人射击对抗赛
各个通过考核的队伍将在本比赛中决出最终胜负。
每局比赛形式为:
1. 每局比赛前,通过检录验证机器人是否符合机器人制作规范(见附录)、安装裁判系统(见附录)。
2. 检录通过后,双方将机器人放入赛场,开始三分钟准备,确认裁判系统与操作位图传客户端连接、遥控设备连接是否正常。
3. 进入操作位,操作机器人与对方战斗,通过水弹攻击对方装甲板,裁判系统同步扣除对应方血量。
4. 血量先减为 0 一方落败,另一方胜出;或 3 分钟时间耗尽,血量较多一方胜出。
赛程安排如下所示。
#### 适应性训练
10 月 25 日,将开放场地及裁判系统借用,各通过考核的参赛队抽签在场地中按次序进行单局比赛,为参赛队提供调试环境。
#### 决赛
11 月 01 日举行决赛。具体时间为:上午 9:00 - 11:00 下午 14:00 - 18:00。
比赛采取如下图所示的流程。请注意以下的名词解释:
- BO5:五局三胜 (Best Of 5)
- BO3:三局两胜 (Best Of 3)
- BO1:单局定胜负 (Best Of 1)
```mermaid
flowchart TD
Note["比赛顺序说明:<br/>• 第一场前16队抽签编号1~16<br/>• 同一组内按编号从小到大依次两两比赛<br/>• 不同组按前文顺序进行<br/>• 每场编号小为红方,编号大为蓝方"]
subgraph P1["第一阶段:16进8(双败淘汰,BO3)"]
R1["首轮 16进8<br/>16队 / 8场 BO3<br/>按编号:1v2, 3v4, ..., 15v16"]
W1["16进8胜者组<br/>8队 / 4场 BO3"]
L1_1["16进8败者组第一轮<br/>8队 / 4场 BO3"]
L1_2["16进8败者组第二轮<br/>8队 / 4场 BO3"]
end
subgraph P2["第二阶段:8进4(双败淘汰,BO3)"]
W2["8进4胜者组<br/>4队 / 2场 BO3"]
L2_1["8进4败者组第一轮<br/>4队 / 2场 BO3"]
L2_2["8进4败者组第二轮<br/>4队 / 2场 BO3"]
end
subgraph P3["第三阶段:总决赛(单败淘汰,BO5)"]
SF["半决赛<br/>4队 / 2场 BO5"]
Bronze["季军争夺战<br/>1场 BO5"]
Final["冠军争夺战<br/>1场 BO5"]
Champion["冠军"]
RunnerUp["亚军"]
Third["季军"]
Fourth["殿军"]
end
E1["淘汰"]
E2["淘汰"]
E3["淘汰"]
E4["淘汰"]
Note -.-> R1
R1 -->|"胜者 8队"| W1
R1 -->|"败者 8队"| L1_1
W1 -->|"胜者 4队"| W2
W1 -->|"败者 4队"| L1_2
L1_1 -->|"胜者 4队"| L1_2
L1_1 -->|"败者"| E1
L1_2 -->|"胜者 4队"| L2_1
L1_2 -->|"败者"| E2
W2 -->|"胜者 2队"| SF
W2 -->|"败者 2队"| L2_2
L2_1 -->|"胜者 2队"| L2_2
L2_1 -->|"败者"| E3
L2_2 -->|"胜者 2队"| SF
L2_2 -->|"败者"| E4
SF -->|"胜者 2队"| Final
SF -->|"败者 2队"| Bronze
Bronze -->|"胜者"| Third
Bronze -->|"败者"| Fourth
Final -->|"胜者"| Champion
Final -->|"败者"| RunnerUp
classDef stage fill:#e3f2fd,stroke:#1565c0,color:#000;
classDef finalStage fill:#fff8e1,stroke:#f9a825,color:#000;
classDef win fill:#e8f5e9,stroke:#2e7d32,color:#000;
classDef lose fill:#ffebee,stroke:#c62828,color:#000;
classDef note fill:#f5f5f5,stroke:#999,color:#000;
class R1,W1,L1_1,L1_2,W2,L2_1,L2_2 stage;
class SF,Bronze,Final finalStage;
class Champion,RunnerUp,Third,Fourth win;
class E1,E2,E3,E4 lose;
class Note note;
```
#### 奖项评定
比赛设置:一等奖/二等奖/三等奖/人气奖
一、二、三等奖按照排名指标依次发放,人气奖独立发放给人气投票最高的队伍。
排名规则:
1. 主要指标:$冠军>亚军>季军>殿军>8强>16强$
2. 次要指标:队伍总造成伤害数
开源审查限制分配奖项者,若获得超过限制的奖项,排名顺延至对应奖项位次。
例:评定为非充分再设计队伍,获冠军,则名次被调整至二等奖第一名位置,原二等奖第一名进入一等奖名单内。
#### 奖励
1. 冠、亚、季军奖杯
2. 一/二/三等奖对应档奖金
2. 校级竞赛一/二/三等奖证书(加盖黑大公章),可申请学分/综测加分
3. 八强队伍获得 Simba 战队直通面试机会 / 明信片套装 / 3D 打印 NFC 钥匙扣
### 别样的碰碰车大赛(附加赛事)
## 附录
### 机器人制作规范
本节描述参与本比赛需要满足的机器人技术规格。未满足本规范的机器人将无法通过完整性考察或检录。
基础要求如下:
1. 能够通过遥控装置/裁判系统控制运动
2. 带有且仅带有 1 个水弹发射器
3. 初始尺寸(包覆盒)小于 $350\times350\times350(mm)$
4. 伸展尺寸小于 $400\times400\times400(mm)$
5. 能够按照规范安装 4 个裁判系统装甲板与 1 个图传模块
初始尺寸限制指机器人具有一个状态小于该尺寸,伸展尺寸指机器人无论何种状态下必须小于该尺寸。除上述要求外,还需满足下列补充要求内容:
#### 能源
1. 机器人仅可使用电池供能、储能,且仅可使用锂电池/干电池。需保证所用电池极耳不外露且具有一定的防撞保护措施。
2. 机器人电池电压对地绝对值应小于 30V。
2. 机器人仅可出现电能与机械能两种形式的能量传递。
例:机器人不可使用液压、气缸、压缩气体罐、燃油等供能形式。
#### 控制通信
1. 机器人可通过以下方式控制:
- 裁判系统下发键盘鼠标指令
- 自行配备遥控器
- 自制通信与控制方式
2. 需要配备官方下发/自制图传并能够向裁判系统客户端发送画面。选手不可目视操控机器人,仅能通过计算机屏幕画面陈宗座机器人。
#### 光学
1. 除裁判系统外,机器人不可安装明显可见光/不可见光发射设备,如大功率 LED 灯、激光指示器/紫外灯等设备。主控板状态指示灯/红外传感器等设备不算明显的发光设备。
2. 机器人不可安装能够对人员/摄像机设备造成损害的激光产品。仅可使用一类 (Class I) 激光产品,如大部分线性扫描/立体扫描激光雷达。
#### 识别特征
裁判系统装甲模块两侧有明显灯光效果,以辅助自动瞄准算法开发。每块装甲模块的灯光颜色、亮度、形状、大小及相对位置被视为装甲模块的视觉特征。
1. 不得用任何手段模仿装甲模块视觉特征
2. 不得用任何手段遮挡/改变装甲模块视觉特征
#### 外观
1. 机器人上所出现的线缆应整齐且不外露。无法避免的外露线材需使用束线管、理线器等材料进行保护。
2. 机器人的外观设计应避免出现明显影响美观的材料,如塑料袋、床单、快递气垫膜等。
3. 禁止在机器人上刻意设计/使用尖锐结构,避免破坏场地/伤害参赛人员。
4. 禁止出现面积大于 $30\times30mm^2$ 的接近纯红色/纯蓝色外观涂装。
5. 禁止出现其他违背赛事精神的外观设计。
#### 发射机构
1. 能够使水弹(泡发的聚丙烯酸钠交联共聚物,通称吸水树脂,有弹性,泡发前大小 1~2mm,泡发后大小 7~9mm)以固定路径、初速度离开机器人,且能够连续发射水弹 10s。
2. 仅可使用电机驱动的弹簧发射装置(通称波箱)发射水弹。严格禁止使用预充压缩气体/液压装置发射水弹。
#### 装甲模块
机器人上需要按规范留有安装组委会提供裁判系统四块装甲板的安装位。装甲板安装规范如下:
首先定义机器人机体坐标系,机器人机体坐标系是**标准 $X,Y,Z$ 笛卡尔坐标系**,设原点为机器人质量中心,机器人使用底盘构型最大效率方向为机器人 $X$ 轴(若存在多个最大效率方向,可任选一个方向作为 $X$ 轴),$Z$ 轴指向地心。
1. 装甲模块和装甲支撑架需稳固连接,装甲支撑架底部链接面需与 $XY$ 平面平行,使得装甲模块受力面所在平面的法向量所在直线与 $Z$ 轴负方向所在直线的锐角夹角为 $75°$。装甲模块不含侧灯的两条边与 $XY$ 平面夹角小于 $5°$。定义安装好的装甲模块受击打面的法向量(与 $Z$ 轴负方向夹角为锐角)在 $XY$ 平面上的投影为该装甲模块的方向向量。4 块装甲模块的方向向量需分别与机器人机体坐标系的正 $X$ 轴、负 $X$ 轴、正 $Y$ 轴、负 $Y$ 轴一一对应,方向向量和对应坐标轴之间的角度误差不能超过 $5°$。
2. 机器人本身的运动学方程也需建立在上述机体坐标系下。装甲模块的安装方式需与机器人本身的结构特性或者运动学特性共享同一个参考坐标系。$X$ 轴上安装的装甲模块几何中心点连线与 $Y$ 轴上安装的装甲模块几何中心点连线要互相垂直。装甲模块相对于机器人的几何中心的偏移量在 $X$ 轴或 $Y$ 轴上的分量不得超过 $30mm$。
3. 装甲支撑架可以选择官方装甲支撑架或自制,且安装好的装甲模块和装甲支撑架需与底盘刚性连接。比赛过程中,装甲模块与底盘不可发生相对移动。刚性连接定义如下图所示,向装甲模块下边缘中点施加一个竖直向上的 $20N$ 的力,装甲模块受击打面角度 $\alpha$ 变化不得大于 $5°$。
4. 定义在 90% 的时间仅有两轮接触地面的底盘构型为**平衡车构型**,该种构型机器人只需要安装正 $X$ 轴与负 $X$ 轴上的装甲板模块。
#### 变形约束
1. 若因机器人结构设计导致机器人具有可变形特性,其装甲模块的运动需满足:任何一块装甲模块不可相对于机器人底盘发生连续、往复的快速移动。快速移动定义为移动速度超过 $0.5m/s$。
2. 机器人任意两块装甲板模块下边缘高度差不可超过 $50mm$。
3. 机器人任意装甲板下边缘距离地面高度,在比赛中必须保持在 $[30,200]mm$ 范围内。
4. 设计装甲板支撑架安装孔位时应考虑避免装甲板受到撞击。装甲板破损的机器人检录将不予通过。
### 裁判系统
各队伍制作的机器人均需安装裁判系统,由组委会统一设计并提供,通过完整形态考察的队伍均可借用。
单套裁判系统包含以下物品:
1. 四块装甲板(击打检测)模块,用于检测对手攻击
2. 图传模块,用于发送整车状态与图像画面到裁判系统客户端,为选手提供操作视野
各队伍不可修改裁判系统的任意软硬件,正式比赛需要烧录比赛的专用固件。自制裁判系统将无法通过检录。裁判系统借用应遵循如下规则:
- 提前借用裁判系统(在正式比赛前借用)需缴纳 100 元押金
- 比赛现场裁判系统损坏,可临时缴付押金再借一套
- 完赛后,归还裁判系统后返还押金
- 赛中/赛前若裁判系统发生损坏,依损坏程度从所属队伍押金中扣除维修费
#### 装甲板模块
装甲板模块用于实时检测水弹击打/物理碰撞。尺寸规格与安装孔位如下:
- 构成:每车由 2 或 4 块装甲板组成,包含 1 块主装甲板与 3 块从装甲板。
- 检测机制:以 100ms 为检测周期,当任意一块装甲板触发击打信号后,全车四块装甲板将进入 100ms 静默期。
- 供电:需要使用杜邦线提供 5V±1V 供电。
- 数据交互:可与一路 UART 串口通信,可用于从裁判系统向主控发送键盘/鼠标控制指令。
#### 图传
该模块负责将机器人第一人称视角画面回传至裁判系统客户端屏幕。安装方式由队伍自行决定。尺寸如下:
- 可以使用两种方式供电。外部 3.3V 端子供电或内部电池供电。
- 本模块价格较贵,电压输入错误导致烧毁可能需要赔偿约 55 元,严禁使用 5V 输入供电。谨慎上电。
+140
View File
@@ -0,0 +1,140 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="2048"
height="2048"
viewBox="0 0 541.86665 541.86667"
version="1.1"
id="svg1"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
sodipodi:docname="elct.svg"
inkscape:export-filename="elct.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#898989"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.37228755"
inkscape:cx="1187.2543"
inkscape:cy="975.05275"
inkscape:window-width="2560"
inkscape:window-height="1476"
inkscape:window-x="-12"
inkscape:window-y="-12"
inkscape:window-maximized="1"
inkscape:current-layer="layer2"
inkscape:export-bgcolor="#ffffff00" />
<defs
id="defs1">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="350.77157 : 37.755664 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="541.86665 : 270.93333 : 1"
inkscape:persp3d-origin="270.93332 : 180.62222 : 1"
id="perspective17" />
</defs>
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="图层 2">
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:62.2721;paint-order:stroke fill markers"
id="rect24-2"
width="276.86584"
height="38.621483"
x="122.90835"
y="60.258648"
ry="19.310741"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:62.2721;paint-order:stroke fill markers"
id="rect24-2-7"
width="276.86584"
height="38.621483"
x="137.63817"
y="441.27118"
ry="19.310741"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:34.5592;paint-order:stroke fill markers"
id="rect24-2-1-3"
width="85.272728"
height="38.621483"
x="152.65076"
y="246.33792"
ry="19.310741"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:34.5592;paint-order:stroke fill markers"
id="rect24-2-1-3-0"
width="85.272728"
height="38.621483"
x="307.33496"
y="240.1703"
ry="19.310741"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:54.2087;paint-order:stroke fill markers"
id="rect24-2-1-3-0-51"
width="209.80824"
height="38.621483"
x="-329.23318"
y="351.79126"
ry="19.310741"
inkscape:label="rect24-2"
transform="rotate(-58.829906)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:54.2087;paint-order:stroke fill markers"
id="rect24-2-1-3-0-51-5"
width="209.80824"
height="38.621483"
x="128.64281"
y="-87.033646"
ry="19.310741"
inkscape:label="rect24-2"
transform="rotate(54.072315)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:34.5592;paint-order:stroke fill markers"
id="rect24-2-1-3-0-8"
width="85.272728"
height="38.621483"
x="408.78622"
y="-75.485344"
ry="19.310741"
inkscape:label="rect24-2"
transform="rotate(52.750208)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:34.5592;paint-order:stroke fill markers"
id="rect24-2-1-3-0-5"
width="85.272728"
height="38.621483"
x="-57.858704"
y="347.0705"
ry="19.310741"
inkscape:label="rect24-2"
transform="rotate(-60.208964)" />
<circle
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:58.6838;paint-order:stroke fill markers"
id="path25-4"
cx="273.87122"
cy="261.35474"
r="21.633722" />
</g>
<g
inkscape:label="图层 1"
inkscape:groupmode="layer"
id="layer1" />
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

+54
View File
@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="1024"
height="1024"
viewBox="0 0 270.93333 270.93333"
version="1.1"
id="svg1"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
sodipodi:docname="logo.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#000000"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.5"
inkscape:cx="354"
inkscape:cy="766"
inkscape:window-width="2560"
inkscape:window-height="1476"
inkscape:window-x="-12"
inkscape:window-y="-12"
inkscape:window-maximized="1"
inkscape:current-layer="layer1" />
<defs
id="defs1" />
<g
inkscape:label="图层 1"
inkscape:groupmode="layer"
id="layer1">
<path
d="m 120.18387,65.065937 -8.00358,13.862771 h 27.77765 l 0.0541,0.09409 30.76276,53.283672 -35.41234,61.33599 -0.008,0.0143 -7.99546,13.84855 -0.008,0.0143 h 16.00718 44.01701 l -5.80572,10.05592 h -66.94744 l -0.007,0.0105 h -6.48395 l 5.81384,-10.07013 8.00358,-13.86278 28.83631,-49.94524 8.0036,-13.86276 H 142.78056 114.57375 107.01421 83.392663 67.385498 l -8.004262,13.86276 -42.562363,73.72043 -8.0035837,13.86278 H 24.822458 84.211033 l -0.0914,0.15771 h 16.007157 11.36098 l 0.007,-0.0105 h 62.07111 16.00784 l 0.0105,-0.0175 h 41.16526 15.05748 16.00718 l -8.00358,-13.86278 -5.81181,-10.06608 -8.00358,-13.86276 h -16.00718 -12.5848 -16.00784 l -0.0156,0.0278 h -1.6347 -0.80551 -12.33705 l 27.39928,-47.45699 8.00358,-13.86276 -5.11392,-8.85783 -11.76441,-20.37651 h 31.64205 l 5.06519,-8.773893 2.9384,-5.088885 h -15.13465 -48.55152 l 8.00358,13.862778 h 0.0297 l 16.87765,29.23434 -35.40286,61.31975 h -13.23258 l 27.41688,-47.48812 8.00358,-13.8621 -8.00358,-13.86276 -22.75918,-39.420912 h 60.26447 l -8.00332,-13.862894 h -32.42792 v -0.09409 z M 75.389113,143.70806 h 23.62222 7.558857 28.2075 l -28.83633,49.94523 -8.003587,13.86278 -5.11257,8.85512 -5.1119,-8.85512 -8.00427,-13.86278 H 63.701872 46.553462 l 8.574205,-14.85103 8.003585,-13.86277 z"
style="fill:#ffffff;stroke-width:0.904925;paint-order:stroke fill markers"
id="path24" />
<path
d="m 134.72691,41.313757 -8.00358,13.862771 h 62.89352 16.00718 31.56419 l -8.00358,-13.862771 h -31.5642 -16.00717 z"
style="fill:#ffffff;stroke-width:1.17159;paint-order:stroke fill markers"
id="path26" />
<path
d="M 243.26673,60.098895 A 11.644196,11.644196 0 0 0 231.62281,71.742811 11.644196,11.644196 0 0 0 243.26673,83.386727 11.644196,11.644196 0 0 0 254.91131,71.742811 11.644196,11.644196 0 0 0 243.26673,60.098895 Z"
style="fill:#ff0000;stroke-width:0.513476;paint-order:stroke fill markers"
id="path25" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

+142
View File
@@ -0,0 +1,142 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="2048"
height="2048"
viewBox="0 0 541.86665 541.86667"
version="1.1"
id="svg1"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
sodipodi:docname="mest.svg"
inkscape:export-filename="mest.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#676767"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.37228755"
inkscape:cx="1042.2051"
inkscape:cy="1001.9137"
inkscape:window-width="2560"
inkscape:window-height="1476"
inkscape:window-x="-12"
inkscape:window-y="-12"
inkscape:window-maximized="1"
inkscape:current-layer="layer2"
inkscape:export-bgcolor="#ffffff00" />
<defs
id="defs1">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="350.77157 : 37.755664 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="541.86665 : 270.93333 : 1"
inkscape:persp3d-origin="270.93332 : 180.62222 : 1"
id="perspective17" />
</defs>
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="图层 2">
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:55.088;paint-order:stroke fill markers"
id="rect24-0-6"
width="259.53775"
height="39.780712"
x="-473.22629"
y="344.45895"
ry="18.020948"
transform="matrix(0.00547438,-0.99998502,0.99997722,0.00674979,0,0)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:33.0899;paint-order:stroke fill markers"
id="rect24-0-6-2"
width="93.660255"
height="39.774117"
x="-344.75415"
y="168.24052"
ry="19.887058"
transform="matrix(0.01595554,-0.9998727,0.99988014,0.01548263,0,0)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:30.2625;paint-order:stroke fill markers"
id="rect24-0-6-4"
width="78.331512"
height="39.777271"
x="-164.25279"
y="167.72025"
ry="18.01939"
transform="matrix(0.00998966,-0.9999501,0.99923215,0.03918037,0,0)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:62.7916;paint-order:stroke fill markers"
id="rect24-8"
width="252.23463"
height="43.103386"
x="132.42055"
y="-124.85639"
ry="21.551693"
transform="rotate(90.772252)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:62.7916;paint-order:stroke fill markers"
id="rect24-0"
width="252.23463"
height="43.103386"
x="-403.56503"
y="-89.651611"
ry="21.551693"
transform="rotate(-144.92024)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:62.7916;paint-order:stroke fill markers"
id="rect24-0-3"
width="252.23463"
height="43.103386"
x="-451.36176"
y="-7.3307266"
ry="21.551693"
transform="rotate(-144.92024)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:59.0011;paint-order:stroke fill markers"
id="rect24-2"
width="222.70087"
height="43.103386"
x="126.99184"
y="-466.11526"
ry="21.551693"
inkscape:label="rect24-2"
transform="rotate(90.492944)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:32.9333;paint-order:stroke fill markers"
id="rect24-2-5"
width="69.385933"
height="43.103386"
x="-126.52614"
y="-405.46277"
ry="21.551693"
inkscape:label="rect24-2"
transform="rotate(146.49364)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:41.9676;paint-order:stroke fill markers"
id="rect24-2-6"
width="112.67484"
height="43.103386"
x="-315.0018"
y="-384.82864"
ry="21.551693"
inkscape:label="rect24-2"
transform="rotate(147.78975)" />
</g>
<g
inkscape:label="图层 1"
inkscape:groupmode="layer"
id="layer1" />
</svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

+124
View File
@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="2048"
height="2048"
viewBox="0 0 541.86665 541.86667"
version="1.1"
id="svg1"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
sodipodi:docname="pram.svg"
inkscape:export-filename="视觉组.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#6f6f6f"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.37228755"
inkscape:cx="1185.9113"
inkscape:cy="1007.2859"
inkscape:window-width="2560"
inkscape:window-height="1476"
inkscape:window-x="-12"
inkscape:window-y="-12"
inkscape:window-maximized="1"
inkscape:current-layer="layer2"
inkscape:export-bgcolor="#ffffff00" />
<defs
id="defs1">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="350.77157 : 37.755664 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="541.86665 : 270.93333 : 1"
inkscape:persp3d-origin="270.93332 : 180.62222 : 1"
id="perspective17" />
</defs>
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="图层 2">
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:39.1466;paint-order:stroke fill markers"
id="rect24-2-8-2"
width="93.155296"
height="45.361958"
x="-220.72711"
y="-303.12158"
ry="22.680979"
inkscape:label="rect24-2"
transform="scale(-1)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:76.7449;paint-order:stroke fill markers"
id="rect24-2-3"
width="358.02725"
height="45.361958"
x="53.464916"
y="-283.27863"
ry="22.680979"
inkscape:label="rect24-2"
transform="rotate(90)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:58.1812;paint-order:stroke fill markers"
id="rect24-2-3-2"
width="205.77037"
height="45.361958"
x="279.46265"
y="72.406097"
ry="22.680979"
inkscape:label="rect24-2"
transform="rotate(45)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:48.736;paint-order:stroke fill markers"
id="rect24-2-3-2-3"
width="144.38264"
height="45.361958"
x="314.13998"
y="136.99962"
ry="22.680979"
inkscape:label="rect24-2"
transform="rotate(45)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:55.8508;paint-order:stroke fill markers"
id="rect24-2-3-2-7"
width="189.61572"
height="45.361958"
x="293.71179"
y="256.72598"
ry="22.680979"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:73.3815;paint-order:stroke fill markers"
id="rect24-2-3-3"
width="327.33337"
height="45.361958"
x="223.14133"
y="-154.22691"
ry="22.680979"
inkscape:label="rect24-2"
transform="rotate(45)" />
<circle
style="fill:#ffffff;stroke-width:22.5736"
id="path2"
cx="-319.43564"
cy="315.97281"
r="27.272919"
transform="rotate(-60)" />
</g>
<g
inkscape:label="图层 1"
inkscape:groupmode="layer"
id="layer1" />
</svg>

After

Width:  |  Height:  |  Size: 3.8 KiB

+151
View File
@@ -0,0 +1,151 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="2048"
height="2048"
viewBox="0 0 541.86665 541.86667"
version="1.1"
id="svg1"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
sodipodi:docname="vsag.svg"
inkscape:export-filename="vsag.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#6f6f6f"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.37228755"
inkscape:cx="1187.2543"
inkscape:cy="972.36666"
inkscape:window-width="2560"
inkscape:window-height="1476"
inkscape:window-x="-12"
inkscape:window-y="-12"
inkscape:window-maximized="1"
inkscape:current-layer="layer2"
inkscape:export-bgcolor="#ffffff00" />
<defs
id="defs1">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="350.77157 : 37.755664 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="541.86665 : 270.93333 : 1"
inkscape:persp3d-origin="270.93332 : 180.62222 : 1"
id="perspective17" />
</defs>
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="图层 2">
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:65.0718;paint-order:stroke fill markers"
id="rect24-2"
width="303.92642"
height="38.417358"
x="127.39825"
y="144.34558"
ry="19.208679"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:65.0718;paint-order:stroke fill markers"
id="rect24-2-4"
width="303.92642"
height="38.417358"
x="-224.04987"
y="427.96866"
ry="19.208679"
inkscape:label="rect24-2"
transform="rotate(-42.542196)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:27.6616;paint-order:stroke fill markers"
id="rect24-2-6"
width="54.920631"
height="38.417358"
x="377.71967"
y="271.74625"
ry="19.208679"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:38.1123;paint-order:stroke fill markers"
id="rect24-2-0"
width="104.25922"
height="38.417358"
x="363.99918"
y="-62.756981"
ry="19.208679"
inkscape:label="rect24-2"
transform="rotate(45.326055)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:38.1123;paint-order:stroke fill markers"
id="rect24-2-0-8"
width="104.25922"
height="38.417358"
x="135.49654"
y="-75.742485"
ry="19.208679"
inkscape:label="rect24-2"
transform="rotate(45.794903)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:53.5775;paint-order:stroke fill markers"
id="rect24-2-0-9"
width="206.01707"
height="38.42112"
x="-146.36043"
y="483.11652"
ry="19.21056"
inkscape:label="rect24-2"
transform="matrix(0.7320329,-0.68126928,0.69005182,0.72375997,0,0)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:47.5193;paint-order:stroke fill markers"
id="rect24-2-7"
width="162.0779"
height="38.417358"
x="126.63191"
y="270.48404"
ry="19.208679"
inkscape:label="rect24-2" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:47.754;paint-order:stroke fill markers"
id="rect24-2-7-0"
width="163.61017"
height="38.434441"
x="-295.35056"
y="396.00247"
ry="19.21722"
inkscape:label="rect24-2"
transform="matrix(0.00610504,-0.99998136,0.99945473,0.03301873,0,0)" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:47.0652;paint-order:stroke fill markers"
id="rect24-2-7-0-2"
width="158.9939"
height="38.417511"
x="143.18936"
y="-165.49301"
ry="19.208755"
inkscape:label="rect24-2"
transform="matrix(-0.00747234,0.99997208,-0.99996452,-0.00842409,0,0)" />
<circle
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:58.3737;paint-order:stroke fill markers"
id="path25-4"
cx="265.22861"
cy="208.69762"
r="21.519382" />
</g>
<g
inkscape:label="图层 1"
inkscape:groupmode="layer"
id="layer1" />
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB