easypower
发表于 2004-8-27 07:56:00
这个转换在网上是有一些工具的.
fisherman
发表于 2004-8-27 09:07:00
找了半天,没找到.明经里有么?
easypower
发表于 2004-8-27 09:15:00
搜索shx2shp
fisherman
发表于 2004-8-27 13:45:00
*61914,210,0<BR>7,1,8,(24,116),1,9,(9,-9),(2,-7),(0,0),2,8,(-26,-16),1,9,(34,6),(1,4),(-14,<BR>-21),(-11,-14),(-9,-10),(-5,-3),(0,0),2,8,(25,24),1,9,(0,-67),(-1,9),(1,10),(0,<BR>0),2,8,(17,52),1,9,(-13,-12),(-3,3),(11,-11),(2,-5),(-3,5),(0,0),2,8,(14,33),1,<BR>9,(56,8),(0,0),2,8,(-33,30),1,9,(4,-5),(-2,2),(1,-62),(-2,6),(2,8),(0,0),2,8,<BR>(-24,41),1,9,(7,-9),(3,-4),(0,-5),(-2,8),(0,0),2,8,(36,13),1,9,(-13,-21),(0,0),<BR>2,8,(-12,-9),1,9,(-10,-15),(-11,-13),(-5,-5),(0,0),2,8,(34,34),1,9,(21,-27),<BR>(16,0),(-17,2),(-4,5),(0,0),2,8,(-54,-28),1,9,(73,11),(-4,0),(-10,-3),(0,0),2,<BR>8,(-30,6),1,9,(-5,-13),(-7,-13),(15,-5),(18,-7),(7,-4),(6,-8),(-12,11),(0,0),2,<BR>8,(0,31),1,9,(-7,-14),(-1,-2),(-7,-8),(-9,-8),(-9,-5),(-12,-5),(-10,-2),(0,0),<BR>7,2,0
fisherman
发表于 2004-8-27 13:50:00
*BIGFONT 8009,3,161,163,166,166,176,247<BR>*0,4,HZ 1/6/92<BR>127,0,2,0
这是头文件吧,看了一些技术资料,没看懂,还是请高手指教.上面发的,我想是一个字,以及字的画法吧,7,1,8,9等是一些控制符,具体是什么意思还是不懂.
fisherman
发表于 2004-8-27 15:26:00
我查了ASCII码,知道7--响铃,1--文件头的开始,8--后退,9--水平跳格,但是,组合到一起,就看不懂了,还请<A name=45769><FONT color=#000066><B>easypower</B></FONT></A>大侠指点迷津.谢了.
easypower
发表于 2004-8-27 16:02:00
shp文件格式是公开的,随便网上搜索一下就能搜到结果的,
我这也有shp的代码,vb的和c++的.
fisherman
发表于 2004-8-27 16:16:00
那可否把c++的代码发给我呢.e_mail:alix_zhao@163.com
easypower
发表于 2004-8-28 09:06:00
sorry
gxss
发表于 2004-8-28 17:33:00
给你提供一本参考书,其中有shx文件格式分析及shx2shp源程序。
郭朝勇。AutoCAD R14(中文版)二次开发技术。北京:清华大学出版社,1999
而且,我发现该程序存在两个问题:
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">(1) 遍历换码范围表写起始码和终止码时,程序会因起始码和终止码数值较大而出现越界。具体是,语句“fprintf(SHP, ",%03x,%03x", bn, en);”中的“%03x”只能处理0~4095之间的无符号十六进制整数,改成“fprintf(SHP, ",%05x,%05x", bn, en);”即可。
(2) 遍历散列表读写形定义数据时,没有处理字符高度和宽度的定义值。当散列表的形编号为0时,该项的第三个域不是表示形定义数据指针,而是字符宽度和高度的定义值。这样,处理形定义数据之前需进行判断,若形编号为0,则处理字符宽度和高度的定义值。
编译程序时注意!