整体结构总览
注:所有x、y坐标都为有符号整数,实际处理时需要除以1000变回小数
说明 |
位数 |
备注 |
图像宽度 width |
16 |
实际位数+11记为W |
图像高度 height |
16 |
实际位数+11记为H |
elements列表长度 |
16 |
标记了该图像上的所有元素原型 |
> 元素种类 type |
4 |
|
> 元素信息 data |
|
详见elements |
map列表长度 |
16 |
标记了该图像上所有元素原型在图像中的信息 |
> 元素id element |
16 |
|
> 坐标 position |
0 |
|
>> x坐标 |
W |
|
>> y坐标 |
H |
|
> 所处层数 level |
16 |
从0x00FF开始递增,置入底层操作直接移到当前最下 |
> 附加信息 attached 列表长度 |
8 |
详见map-attached |
iterate列表长度 |
16 |
标记该图像中应用迭代函数系统的信息 |
> 是否为元素组 element-group |
1 |
若为1,则在elements中寻找组的原始map信息 |
> 原始元素mapId target |
16 |
|
> 迭代次数 times |
32 |
|
> 单次迭代孩子 children 列表长度 |
8 |
其中每个operations列表代表一个孩子 |
>> 迭代操作 operations 列表长度 |
8 |
详见iterate-operations |
elements
type
id |
说明 |
备注 |
0 |
路径 path |
起点为(0,0) |
1 |
多边形 polygon |
起点为(0,0) |
2 |
圆形 round |
圆心为(0,0) |
3 |
元素组 group |
|
data
path
说明 |
位数 |
备注 |
路径操作 operations 列表长度 |
16 |
|
> 操作种类 type |
4 |
|
> 操作信息 data |
|
详见path-operations |
path-operations
type
id |
说明 |
备注 |
0 |
直线 line |
|
1 |
三次贝塞尔曲线 curve |
非列表头时,默认使用平滑曲线 |
2 |
平滑三次贝塞尔曲线 curve-smooth |
|
3 |
二次贝塞尔曲线 quadratic |
非列表头时,默认使用平滑曲线 |
4 |
平滑二次贝塞尔曲线 quadratic-smooth |
|
5 |
圆弧 arc |
|
6 |
封闭图形 zeal |
用直线连接当前点与起点,封闭该图形,必须为列表尾 |
line
说明 |
位数 |
备注 |
目标坐标 target |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
curve
说明 |
位数 |
备注 |
目标坐标 target |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
控制点 control |
0 |
|
> 起点控制点 start |
0 |
|
>> x坐标 |
W |
|
>> y坐标 |
H |
|
> 终点控制点 end |
0 |
|
>> x坐标 |
W |
|
>> y坐标 |
H |
|
curve-smooth
说明 |
位数 |
备注 |
目标坐标 target |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
控制点 control |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
quadratic
说明 |
位数 |
备注 |
目标坐标 target |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
控制点 control |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
quadratic-smooth
说明 |
位数 |
备注 |
目标坐标 target |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
arc
circle = true
说明 |
位数 |
备注 |
是否为正圆 circle |
1 |
否则为椭圆 |
圆心坐标 center |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
半径 radius |
max(W,H) |
用无符号整数存小数,结果除100 |
取线角度 angle |
17 |
用17位有符号整数存小数,结果除100 |
circle = false
说明 |
位数 |
备注 |
是否为正圆 circle |
1 |
否则为椭圆 |
圆心坐标 center |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
轴长 axis-length |
0 |
用无符号整数存小数,结果除100 |
> x轴 |
max(W,H) |
|
> y轴 |
max(W,H) |
|
取线角度 angle |
17 |
用17位有符号整数存小数,结果除100 |
polygon
说明 |
位数 |
备注 |
点坐标 points 列表长度 |
16 |
逆时针排列 |
> x坐标 |
W |
|
> y坐标 |
H |
|
round
circle = true
说明 |
位数 |
备注 |
是否为正圆 circle |
1 |
否则为椭圆 |
半径 radius |
max(W,H) |
用无符号整数存小数,结果除100 |
取线角度 angle |
17 |
用17位有符号整数存小数,结果除100 |
circle = false
说明 |
位数 |
备注 |
是否为正圆 circle |
1 |
否则为椭圆 |
轴长 axis-length |
0 |
用无符号整数存小数,结果除100 |
> x轴 |
max(W,H) |
|
> y轴 |
max(W,H) |
|
取线角度 angle |
17 |
用17位有符号整数存小数,结果除100 |
group
说明 |
位数 |
备注 |
组成员 members 列表长度 |
16 |
|
> 是否是map中元素 of-map |
1 |
否则为iterate中元素 |
> 元素id id |
16 |
|
map-attached
type
id |
说明 |
备注 |
0 |
旋转 rotate |
|
1 |
缩放 zoom |
|
2 |
翻转 flip |
无data |
3 |
阴影 shadow |
未实现 |
4 |
边框 border |
未实现 |
data
rotate
说明 |
位数 |
备注 |
旋转角度 angle |
17 |
用17位有符号整数存小数,结果除100 |
zoom
说明 |
位数 |
备注 |
缩放比例 zoom |
32 |
单精度浮点数 |
iterate-operations
type
id |
说明 |
备注 |
0 |
移动 move |
|
1 |
旋转 rotate |
|
2 |
缩放 zoom |
|
3 |
翻转 flip |
无data |
data
move
说明 |
位数 |
备注 |
x轴增量dx |
W |
|
y轴增量dy |
H |
|
rotate
说明 |
位数 |
备注 |
旋转中心坐标 center |
0 |
|
> x坐标 |
W |
|
> y坐标 |
H |
|
旋转角度 angle |
17 |
用17位有符号整数存小数,结果除100 |
zoom
说明 |
位数 |
备注 |
缩放比例 zoom |
32 |
单精度浮点数 |