Vissim4.3之API/SDK编程;Vissim编程;
你看到的这个文章来自于http://www.cnblogs.com/ayanmw
vissim4.3 是德国PTV公司的一款微观交通模拟软件.
其可以模拟道路车辆,红绿灯运行,可以模拟3D的景象.我这里直说2D
在2D的一段道路上,有车在运动,如何获取车子的坐标信息呢??
根据Vissim文档,可以通过Vissim的COM编程接口进行编程,COM接口可以使用VB(s)/VC/Python/等所有支持COM的语言编程.
其步骤是:1 安装vissim软件,4.3很特殊,有个破解的license,但是要修改时间为2008年,具体可以到 智能交通 论坛下载.
2.安装VB,如果使用VBS可直接开始编程.我使用了VB6进行编程.(没办法,虽然老,但是无法替代啊.)
3.新建立VB工程,默认的exe就可以.
然后在工程->引用 ->浏览 添加 C:\PTV_Vision\VISSIM430\Exe\vissim.exe 这个vissim的可执行文件(其也是COM Server的组件)
然后 整一个按钮,双击开始添加代码
Dim vis As vissim Dim SIM As Simulation Dim vehins As VehicleInputs Dim vehin As VehicleInput Dim vehicles As vehicles Dim vehicle As vehicle Set vis = CreateObject("VISSIM.Vissim") 'NEW Vissim vis.LoadNet "C:\PTV_Vision\VB COM for VISSIM\Demo_VISSIM_CrossTraffic_INP\crossTraffic.inp" Set vehins = vis.Net.VehicleInputs Set vehicles = vis.Net.vehicles Set SIM = vis.Simulation For i = 1 To vehins.Count If True Then Set vehin = vehins(i) 'or vehins.Item(i) msgbox "VeHins.Count=(" & vehins.Count & ");i =" & i msgbox "VeHin.name=" & vehin.Name & vbCrLf _ & "VeHin.ID=" & vehin.ID & vbCrLf _ & "VeHin.AttValue(TIMEFROM)=" & vehin.AttValue("TIMEFROM") & vbCrLf _ & "VeHin.AttValue(TIMEUNTIL)=" & vehin.AttValue("TIMEUNTIL") & vbCrLf _ & "VeHin.AttValue(VOLUME)=" & vehin.AttValue("VOLUME") & vbCrLf & "==============================" & vbCrLf End If Next 'i For i = 0 To 1000 SIM.RunSingleStep If vehicles.Count > 0 Then Call ShowAllVehicles End If vis.DoEvents Next SIM.Stop MsgBox "End() Success" Sub showAllvehicles Dim j For j = 1 To vehicles.Count Set vehicle = vehicles(j) 'or vehicles.Item(i) msgbox "Vehicles.count=(" & vehicles.Count & ");j=" & j msgbox "vehicle.name=" & vehicle.Name msgbox "vehicle.ID=" & vehicle.ID msgbox "vehicle.AttValue(POINT).X=" & vehicle.AttValue("POINT").X msgbox "vehicle.AttValue(POINT).Y=" & vehicle.AttValue("POINT").Y msgbox "vehicle.AttValue(POINT).Z=" & vehicle.AttValue("POINT").Z Set vehicle = Nothing Next End Sub
大约就是这个样子.循环是相当的多的....
仅限于做少量的测试.
转载请注明出处:http://www.cnblogs.com/ayanmw 我会很高兴的!
------------------------------------------------------------------------------------------------
一定要专业!本博客定位于 ,C语言,C++语言,Java语言,Android开发和少量的Web开发,之前是做Web开发的,其实就是ASP维护,发现EasyASP这个好框架,对前端后端数据库 都很感觉亲切啊。. linux,总之后台开发多一点。以后也愿意学习 cocos2d-x 游戏客户端的开发。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!