本帖最后由 elitefish 于 2013-12-6 01:04 编辑
伪源程序
思路
1.将外框分割为 nxn 行列网格
2.将所有框内直线 点 坐标对齐到 网格中
3.根据PAT规则 逐条写入各元素
难点:
1.分割网格要保证精度的同时不至于过多分割
2.直线的空白长度 不是 外框对角线长度-直线长度
而是看直线占据了多少格 比如 i * k格,那空白长度为 i * k外框的对角线长度 L-直线长度
3.相邻直线的位置 不是左边一个外框
这里用了穷举法 找出 i*k个外框内离直线平行距离最近的一个外框
以该外框内直线 作为第二线段 起始位置
希望高手用数学的方法解决最近平行直线定位
注意:由于图案线段角度精度的问题,故填充时请选择将原点设置在填充框内,
否则距离世界坐标原点很远的地方填充变形,差之毫厘谬以千里啊。 |