如何利用C#+MapX编程实现添加符号图元并修改其样式等属性?

如何利用C#+MapX编程实现添加符号图元并修改其样式等属性?,第1张

这是vc的,我每句都加了注释,你可以参考下

CMapXFeature ft//创建图元对象

ft.CreateDispatch( ft.GetClsid( ) )

ft.Attach( m_ctrlMapX.GetDispatch( FALSE ) )//以上两句牵扯到组件知识,大概就是新建一个mapx对象就需要这样注册下

ft.SetType( miFeatureTypeLine )//图元样子,这里是线形

ft.GetStyle( ).SetLineColor( 0xFF0000 )//颜色

ft.GetStyle( ).SetLineStyle( 1 )//线的形状

ft.GetStyle( ).SetLineWidth( 1 )//线宽

ft.GetParts( ).Add( pts )//既然是线性,需要至少两点来确定画线位置,这里的pts是CMapXPoints对象,在前面的程序里已经定义好了

看了你的代码,c#不是很懂,但是注意到像你设置了feature的style,但是style是要加到feature上的。vc里面会这样写

feature.SetStyle(style.m_lpDispatch)看看C#中feature对象的SetStyle方法

dim pt as new mapxlib.point

dim ft as new mapxlib.feature

pt.set 104,31

set ft=map1.featurefactory.creatsymbol(pt)

map1.layers.item(1).addfeature ft

大概就是这样,没有vb环境,可能有拼写错误。这方面网上资料很多的。搜索下有源码。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11683995.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存