版块导航
正在加载中...
客户端APP下载
论文辅导
调剂小程序
登录
注册
帖子
帖子
用户
本版
应《网络安全法》要求,自2017年10月1日起,未进行实名认证将不得使用互联网跟帖服务。为保障您的帐号能够正常使用,请尽快对帐号进行手机号验证,感谢您的理解与支持!
24小时热门版块排行榜
>
论坛更新日志
(542)
>
导师招生
(66)
>
考研
(60)
>
虫友互识
(54)
>
基金申请
(12)
>
论文投稿
(7)
>
博后之家
(4)
>
考博
(4)
>
论文道贺祈福
(3)
>
硕博家园
(2)
>
找工作
(2)
>
公派出国
(2)
>
休闲灌水
(2)
>
海外博后
(1)
>
晶体
(1)
>
教师之家
(1)
小木虫论坛-学术科研互动平台
»
专业学科区
»
地学
»
3S技术
»
Vb.net+ArcEngine生成点状图层的速度太慢了该怎么办?
5
1/1
返回列表
查看: 1934 | 回复: 10
只看楼主
@他人
存档
新回复提醒
(忽略)
收藏
在APP中查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖
zzahkj
木虫
(著名写手)
应助: 42
(小学生)
金币: 1931.7
帖子: 1522
在线: 465.8小时
虫号: 964751
[交流]
Vb.net+ArcEngine生成点状图层的速度太慢了该怎么办?
Vb.net+ArcEngine生成点状图层的速度太慢了该怎么办?由于我做的是预警预报系统,速度尽可能短,现在生成全部点要好几天,这也太慢了,根本就不适用,请问有什么好的办法解决吗?我的代码如下:
CODE:
Public Sub dianshengcheng()
Dim filePath As String = My.Computer.FileSystem.CurrentDirectory & "\ResultsFileName"
If System.IO.File.Exists(filePath & "\点.shp") Then
MessageBox.Show("点文件已存在")
Main.AxMapControl1.AddShapeFile(filePath, "点")
Else
Dim pShpWksFact As IWorkspaceFactory = New ShapefileWorkspaceFactory()
Dim pFeatWks As IFeatureWorkspace
pFeatWks = CType(pShpWksFact.OpenFromFile(filePath, 0), IFeatureWorkspace)
Const strShapeFieldName As String = "shape"
Dim pFields1 As IFields
Dim pFieldsEdit1 As IFieldsEdit
pFields1 = New FieldsClass()
pFieldsEdit1 = CType(pFields1, IFieldsEdit)
Dim pField1 As IField = New FieldClass()
Dim pFieldEdit1 As IFieldEdit = New FieldClass()
pFieldEdit1.Name_2 = strShapeFieldName
pFieldEdit1.Type_2 = esriFieldType.esriFieldTypeGeometry
pField1 = CType(pFieldEdit1, IField)
Dim pGeomDef1 As IGeometryDef = New GeometryDefClass()
Dim pGeomDefEdit1 As IGeometryDefEdit = New GeometryDefClass()
pGeomDefEdit1 = CType(pGeomDef1, IGeometryDefEdit)
pGeomDefEdit1.GeometryType_2 = esriGeometryType.esriGeometryPoint
pGeomDefEdit1.SpatialReference_2 = Main.AxMapControl1.Map.SpatialReference
'pGeomDefEdit1.HasZ_2 = True
pFieldEdit1.GeometryDef_2 = pGeomDef1
pFieldsEdit1.AddField(pField1)
pFields1 = CType(pFieldsEdit1, IFields)
pField1 = New Field
pFieldEdit1 = pField1
With pFieldEdit1
pFieldEdit1.Length_2 = 10
pFieldEdit1.Name_2 = "温度"
pFieldEdit1.Type_2 = esriFieldType.esriFieldTypeDouble
End With
pFieldsEdit1.AddField(pField1)
pField1 = New Field
pFieldEdit1 = pField1
With pFieldEdit1
pFieldEdit1.Length_2 = 10
pFieldEdit1.Name_2 = "盐度"
pFieldEdit1.Type_2 = esriFieldType.esriFieldTypeDouble
End With
pFieldsEdit1.AddField(pField1)
pField1 = New Field
pFieldEdit1 = pField1
With pFieldEdit1
pFieldEdit1.Length_2 = 10
pFieldEdit1.Name_2 = "水质指标"
pFieldEdit1.Type_2 = esriFieldType.esriFieldTypeDouble
End With
pFieldsEdit1.AddField(pField1)
Dim pFeatureClass1 As IFeatureClass
pFeatureClass1 = pFeatWks.CreateFeatureClass("点", pFields1, Nothing, Nothing, esriFeatureType.esriFTSimple, strShapeFieldName, "")
Dim pPointCol As IPointCollection = New MultipointClass()
Dim sr As StreamReader = New StreamReader(My.Computer.FileSystem.CurrentDirectory & "\shu\dianceng.txt")
Dim str As String = sr.ReadLine()
While str IsNot Nothing
Dim strs() As String = Regex.Split(str, " ")
Dim x As Double = Convert.ToDouble(strs(0))
Dim y As Double = Convert.ToDouble(strs(1))
Dim t As Double = Convert.ToDouble(strs(2))
Dim s As Double = Convert.ToDouble(strs(3))
Dim c As Double = Convert.ToDouble(strs(4))
Dim pPoint As IPoint = New PointClass()
pPoint.X = x
pPoint.Y = y
Dim missing As Object = Type.Missing
pPointCol.AddPoint(pPoint, missing, missing)
str = sr.ReadLine()
Dim i As Integer
For i = 0 To pPointCol.PointCount - 1 Step 1
Dim newFeature As IFeature = pFeatureClass1.CreateFeature
newFeature.Shape = pPointCol.Point(i)
newFeature.Value(newFeature.Fields.FindField("温度")) = t
newFeature.Value(newFeature.Fields.FindField("盐度")) = s
newFeature.Value(newFeature.Fields.FindField("水质指标")) = c
newFeature.Store()
Next
End While
Main.AxMapControl1.Refresh()
Main.AxMapControl1.AddShapeFile(filePath, "点")
MessageBox.Show("文件创建成功")
End If
End Sub
[
Last edited by zzahkj on 2011-5-6 at 15:36
]
回复此楼
» 猜你喜欢
招聘博士研究生
已经有45人回复
地球物理学和空间物理学论文润色/翻译怎么收费?
已经有108人回复
高级回复
» 本主题相关价值贴推荐,对您同样有帮助:
昆虫科学怎么这么慢?
已经有3人回复
为什么羧酸盐和醇可以生成酯?
已经有12人回复
急,刚投稿之后回复生成的PDF有问题,请教~~~
已经有5人回复
大家帮忙看看应该怎么办?
已经有7人回复
现在Elsevier旗下的期刊处理速度慢,是不是科学家抵制的结果?
已经有28人回复
Electrochimica Acta现在处理速度貌似很慢???
已经有19人回复
RAW264.7细胞长得很慢吗?
已经有12人回复
(高悬赏求教)SDS-PAGE时间过长,速度慢
已经有5人回复
Vb.net+ArcEngine生成的点状图层不显示?
已经有10人回复
SCI如何写撤稿信,杂志审稿太慢,我要撤稿重新投
已经有4人回复
【求助】求助裸鼠移植瘤生长慢
已经有3人回复
» 抢金币啦!回帖就可以得到:
查看全部散金贴
祈福中标
+
1
/254
深圳技术大学集成电路与光电芯片学院郝俊杰课题组诚聘博士后、研究助理、访问学生
+
2
/120
南京医科大学生殖医学与子代健康国重实验室-董飞宏课题组-学术硕士招生
+
1
/95
坐标广州,男征女,双向奔赴
+
1
/66
湘潭大学化工学院国家级人才团队2026年博士研究生招生
+
1
/62
0854电子信息调剂,闽南师大光电芯片研发实验室,柯少颖教授课题组,集成电路
+
1
/36
刚刚工作不久的孤独感
+
1
/35
招硕士调剂生
+
2
/24
上海交通大学机械与动力工程学院博士后招聘
+
3
/23
中山大学院士团队微纳器件、脑机接口方向博士招生、博后招聘
+
1
/19
浙江中医药大学副校长团队招聘药学/生物信息学等方向高校教师7名,报名通道已开启
+
1
/19
武汉纺织大学纺织纤维及制品教育部重点实验室招收博士研究生
+
1
/14
南京医科大学-膜蛋白结构与功能课题组-招收2026级博士研究生
+
1
/10
多伦多大学 & Synetic Labs 招博士后/研究员
+
1
/9
【博士招生】武汉科技大学招收材料、化工、环境、冶金类2026年“申请-考核”制博士生
+
1
/7
福州大学国家级人才汤育欣教授课题组2026年招收”申请考核制“储能电池方向博士研究生
+
1
/6
中国科学院过程工程研究所助理研究员(正式职工)和博士后招聘启事
+
1
/4
东北林业大学(211,双一流)宋老师课题组招收高分子、化学、复合材料等方向研究生
+
1
/4
博后即将出站,求稳定的教职
+
1
/3
北京高校副校长团队招收机械类,环境类学硕和专硕
+
1
/2
1楼
2011-05-06 15:34:28
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
zzahkj
木虫
(著名写手)
应助: 42
(小学生)
金币: 1931.7
帖子: 1522
在线: 465.8小时
虫号: 964751
引用回帖:
Originally posted by
efeng522
at 2011-05-06 16:07:05:
这个要看你数据量的大小,如果数据量不大,那么这个效率肯定是不正常的;如果数据量确实有这么大,你就要考虑是否有必要一次性生成这么多数据,或者在这么大的空间范围内生成数据。
VB不熟,所以代码没细看,只是 ...
数据量还是非常大的,必须得一次性生成这么多数据!我也觉得这个效率不正常,可没有很好的办法解决?
赞
一下
回复此楼
高级回复
3楼
2011-05-06 16:25:22
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
查看全部 11 个回答
efeng522
木虫
(初入文坛)
应助: 0
(幼儿园)
金币: 2234.8
帖子: 38
在线: 58.3小时
虫号: 1082724
★
小木虫(金币
+0.5
):给个红包,谢谢回帖
这个要看你数据量的大小,如果数据量不大,那么这个效率肯定是不正常的;如果数据量确实有这么大,你就要考虑是否有必要一次性生成这么多数据,或者在这么大的空间范围内生成数据。
VB不熟,所以代码没细看,只是泛泛而谈,抛砖引玉
赞
一下
(1人)
回复此楼
2楼
2011-05-06 16:07:05
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
xiangling1
金虫
(正式写手)
应助: 2
(幼儿园)
金币: 709.2
帖子: 339
在线: 80.9小时
虫号: 1234309
★
小木虫(金币
+0.5
):给个红包,谢谢回帖
zzahkj(金币+10): 2011-05-07 15:43:13
后面的循环可以优化,你把For循环提出来
你把三个属性封装一下,循环一次,把三个属性赋进去值
你这样做出来的点的属性值是不对的
你多写几个函数,把这段代码分解开一定不要循环里面再有循环
速度会增加的
赞
一下
(1人)
回复此楼
4楼
2011-05-06 21:31:46
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
zzahkj
木虫
(著名写手)
应助: 42
(小学生)
金币: 1931.7
帖子: 1522
在线: 465.8小时
虫号: 964751
引用回帖:
Originally posted by
xiangling1
at 2011-05-06 21:31:46:
后面的循环可以优化,你把For循环提出来
你把三个属性封装一下,循环一次,把三个属性赋进去值
你这样做出来的点的属性值是不对的
你多写几个函数,把这段代码分解开一定不要循环里面再有循环
速度会 ...
谢谢你啊!我去掉了里面一个循环,6000多个点生成要二十几分钟,这个速度是不是还慢呢?我听说一秒钟就可以生成上万个点才是正常的?
赞
一下
回复此楼
5楼
2011-05-07 10:15:32
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
查看全部 11 个回答
如果回帖内容含有宣传信息,请如实选中。否则帐号将被全论坛禁言
普通表情
龙
兔
虎
猫
高级回复
(可上传附件)
百度网盘
|
360云盘
|
千易网盘
|
华为网盘
在新窗口页面中打开自己喜欢的网盘网站,将文件上传后,然后将下载链接复制到帖子内容中就可以了。
最具人气热帖推荐
[查看全部]
作者
回/看
最后发表
[
考研
]
085700资源与环境308求调剂
+6
墨墨漠
2026-03-18
6/300
2026-03-20 00:02
by
23Postgrad
[
考研
]
0703化学调剂
+10
妮妮ninicgb
2026-03-15
14/700
2026-03-19 22:59
by
学员8dgXkO
[
考研
]
材料专硕274一志愿陕西师范大学求调剂
+8
薛云鹏
2026-03-13
8/400
2026-03-19 15:36
by
haoshis
[
考研
]
一志愿西安交通大学材料工程专业 282分求调剂
+5
枫桥ZL
2026-03-18
7/350
2026-03-19 14:52
by
功夫疯狂
[
考研
]
304求调剂
+3
曼殊2266
2026-03-18
3/150
2026-03-19 14:42
by
peike
[
考研
]
一志愿华中科技大学,080502,354分求调剂
+4
守候夕阳CF
2026-03-18
4/200
2026-03-18 22:16
by
li123456789.
[
考研
]
328求调剂,英语六级551,有科研经历
+3
生物工程调剂
2026-03-17
7/350
2026-03-18 20:41
by
Wangjingyue
[
考研
]
302求调剂
+10
呼呼呼。。。。
2026-03-17
10/500
2026-03-18 12:45
by
Linda Hu
[
考研
]
304求调剂
+12
小熊joy
2026-03-14
13/650
2026-03-18 12:34
by
Linda Hu
[
基金申请
]
被我言中:新模板不强调格式了,假专家开始管格式了
+4
beefly
2026-03-14
4/200
2026-03-17 22:04
by
黄鸟于飞Chao
[
考研
]
材料工程专硕274一志愿211求调剂
+6
薛云鹏
2026-03-15
6/300
2026-03-17 11:05
by
学员h26Tkc
[
考研
]
283求调剂
+3
听风就是雨;
2026-03-16
3/150
2026-03-17 07:41
by
热情沙漠
[
考研
]
0854控制工程 359求调剂 可跨专业
+3
626776879
2026-03-14
9/450
2026-03-16 17:42
by
626776879
[
考研
]
070303 总分349求调剂
+3
LJY9966
2026-03-15
5/250
2026-03-16 14:24
by
xwxstudy
[
考研
]
求老师收留调剂
+4
jiang姜66
2026-03-14
5/250
2026-03-15 20:11
by
Winj1e
[
考研
]
中科大材料专硕319求调剂
+3
孟鑫材料
2026-03-13
3/150
2026-03-14 18:10
by
houyaoxu
[
考研
]
328求调剂
+3
5201314Lsy!
2026-03-13
6/300
2026-03-14 15:31
by
hyswxzs
[
考研
]
297求调剂
+4
学海漂泊
2026-03-13
4/200
2026-03-14 11:51
by
热情沙漠
[
考研
]
266求调剂
+4
学员97LZgn
2026-03-13
4/200
2026-03-14 08:37
by
zhukairuo
[
考研
]
290求调剂
+3
ADT
2026-03-13
3/150
2026-03-13 10:19
by
peike
信息提示
关闭
请填处理意见
关闭
确定