吕雪松大虾,各位直接做 gis(不用别人控件)的大虾请进!(100分)

Z

zrj

Unregistered / Unconfirmed
GUEST, unregistred user!
提几个关于自己做gis经常遇到的问题吧,如果涉及公司技术机密的只提供思路就可以了
:),当然给出参考资料或者网站的网址是最好的拉。

1,文字实时显示的问题:

就是在Canvas上在当前光标位置写字.具体要求和在RichEdit中一样,可以删除,换行,
支持上下标,这种功能的思路是如何的?

2,复杂线型的画法:

最典型的就是火车道了,在拐角的地方如何处理好啊??有思路或者部分代码提供最好了。
这个可是老问题了啊,总是不见有完美答案的。


3,文字的算法:

我在放大,缩小的时候,现在是通过设置字体的高度比如放大2倍设置Canvas.font.height:=
canvas.font.height*2;
计算文字的MBR我用的是Canvas.textHeight(s);然后把该宽度换算为
世界坐标,不过我发现在字体小的时候计算出来的直在放大以后错的很远,比如以前的mBR框
包含3个字,放大后这个框足以包含5个字了!这说明这个MBR算法不正确啊·
font.height有正负之分,与这个因素有关?

4,发展方向问题?

我做Cad/Gis也有一段时间了,不想搞别的比如数据库,多媒体,毕竟精力有限啊,可是我弄不请
做图形图象的方向,其实可能很多,模式识别,opengl,directx,对了,opengl,directx对做图形处理
(不说3D)这些东西有用处嘛?

5,关于矢量化扫描图象,有资料或者网站提供嘛?

呵呵,关于这些问题提供一个或者几个答案的另给分数了! 谢谢
 
呵,这些问题都比较典型
我已经回复你的邮件了。

另补充如下:
1,可以参考PhotoShop的文字层的组织方式;
2,或者换一个思路:用相对坐标(整形)按点阵方式在Canvas上处理(矢量加点阵),可能效果要好于用矢量
线型方式(我越来越觉得MapInfo的线型库是采用此方式);
3,略;
4,GIS的发展有两个层次,一个是底层(计算机技术等的最新发展);第二个是GIS的高端理论体系的发展,如
目前国外的诸如“GIS与人类性格的关系”等的怪异发展,呵,快与哲学相结合了。
 
借宝地问问大家:-)

gis现在有没有或者有哪些标准或者协议?
能一一列出么?
 
to wolfsong:
GIS的标准和协议去www.opengis.org淘吧。不过很多厂家都有自己的标准和协议,像文件格式等

你最好还是另开一帖,不然太不礼貌
 
不好意思,我回头就开一贴。
 
to 吕雪松:
谢谢指导:
1,我还想问一点:"上下标也没有问题,用RichEdit里的SelText来控制就可以了"?
举个小例子如何?多行绘制文本我做了,就是计算位置画字符。
2,我看过一个gis软件,他有线型库,火车到就是两个短线在中间,两个长线在两边
如此重复来画的啊。
4,从做gis/cad角度应用软件来讲Opengl实用,还是Dx实用?有三维gis吧?

5,告诉每个人的都是 www.opengis.org,不过这个宝库不是一般人可发掘的啊
东西多,还是英文(中文啥意思我可能都理解不了,呵呵)

补充问一句:
yysun那本书是 高死-克吕格投影到 x,y这个(x,y)指啥意思,它的(0,0)点在那儿?
我的问题是 知道图幅四个点的大地坐标(80系),画经纬网填充这个图幅,应该 这之间
有公式吧,比如19带我是6度带就是19*6-3=111东经,可是后边的分,秒如何弄出来啊,
还有纬度啊, 画经纬线,不是直线啊,,用画弧线的函数??arc函数参数有限制的好象
还是其它函数啊??PolyLine,那一个屏幕取几个采样点呢?
谢谢·

to wolfsong:无所谓,这个帖子反正内容不多,你来丰富一下嘛:)



 
吕大侠,请将您的解答也发一个给我的邮箱
boycott444@163.com
 
我来说说:
“我看过一个gis软件,他有线型库,火车到就是两个短线在中间,两个长线在两边
如此重复来画的啊。”
--- 的确是如此呀,所以做上线型后刷新明显比以前慢,至少我还没有找到更快的方法
操作GDI就是这样了,除非你直接写屏幕。。 哈哈
“从做gis/cad角度应用软件来讲Opengl实用,还是Dx实用?有三维gis吧?”
--- 从做GIS的角度来讲OpenGL的确是不实用,如果你不是做3D,还是不要用OpenGL,
在操作和绘制大量地物的时候,速度会很慢(从理论上如此,实际上我还没有用OpenGL操作过大量数据)

高斯-克吕格投影到 x,y 是指高斯平面坐标,原点是有的,我现在忘了,你去查查啊
 
to giswang:
谢谢关注这个问题:画火车道这种算法本人不复杂,难就难在拐角的地方,
那个软件能处理的很平滑啊,我只能像直线的dda算法一样,一段一段重复,碰道
有拐角的地方就很难看了呀,再说了,不是一条线段长度恰巧可以n等分,你重复n
次就搞定,往往最后一段长度小于重复段的长,这应该如何处理?准确是第一重要的,
其次是提高系统速度。不准确用户一定不接受的,当然,速度很慢用户一样不接受,
不知道 算出重复区域,然后用点阵填色如何??

这办法够笨吧·呵呵

另外看来大哥是做过,至少是用过三维Gis,从技术角度考虑,我应该有那些技术储备
才能把我目前的二维gis变成3维呢?


 
吕大虾,把您的解答也给我一份可以吗?
 
这里有好东东请自已看吧:http://lui2008.8u8.com
 
http://gimis.8800.org
有线型画法,有兴趣可以讨论讨论.
 
to proman:
你说的地址没有看到线型画法的讨论啊,难道我看错了,载那儿啊?
 
你下载平台啊,里面有线型画法,然后在这儿讨论啊。那个线型库是可以扩展的啊。
 
分数少,不好意思啊
 
吕大侠,有没有.bna格式的地图,给我一份,最简单的都好。
或者,有介绍的网站。
 
顶部