当前位置: 首页 > news >正文

Vissim4.3之API/SDK编程;Vissim编程;

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 vehicleSet vis = CreateObject("VISSIM.Vissim")                                     'NEW Vissimvis.LoadNet "C:\PTV_Vision\VB COM for VISSIM\Demo_VISSIM_CrossTraffic_INP\crossTraffic.inp"Set vehins = vis.Net.VehicleInputsSet vehicles = vis.Net.vehiclesSet SIM = vis.SimulationFor i = 1 To vehins.CountIf True ThenSet vehin = vehins(i)                                               'or vehins.Item(i)msgbox "VeHins.Count=(" & vehins.Count & ");i =" & imsgbox "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 & "==============================" & vbCrLfEnd IfNext                                                                        'iFor i = 0 To 1000SIM.RunSingleStepIf vehicles.Count > 0 ThenCall ShowAllVehiclesEnd Ifvis.DoEventsNextSIM.StopMsgBox "End() Success"Sub showAllvehiclesDim jFor j = 1 To vehicles.CountSet vehicle = vehicles(j)                                               'or vehicles.Item(i)msgbox "Vehicles.count=(" & vehicles.Count & ");j=" & jmsgbox "vehicle.name=" & vehicle.Namemsgbox "vehicle.ID=" & vehicle.IDmsgbox "vehicle.AttValue(POINT).X=" & vehicle.AttValue("POINT").Xmsgbox "vehicle.AttValue(POINT).Y=" & vehicle.AttValue("POINT").Ymsgbox "vehicle.AttValue(POINT).Z=" & vehicle.AttValue("POINT").ZSet vehicle = NothingNext          
End Sub

大约就是这个样子.循环是相当的多的....

仅限于做少量的测试.

转载于:https://www.cnblogs.com/ayanmw/archive/2012/04/13/2446251.html

http://www.xdnf.cn/news/851239.html

相关文章:

  • 软件测试(接口测试、性能测试、自动化测试)详解
  • ultraedit
  • 插件界的全家桶,对接华为云能力就用它了
  • yolov5核心代码: anchor匹配策略,compute_loss和build_targets理解
  • 第二阶段学习测试
  • 如何冥想?2500年的智慧——荒岛十日记
  • pointer(指针)- 重置版
  • c#做外挂 step by step(更新至step3:注入)
  • AUS GLOBAL 正式成为西甲球队皇家贝蒂斯官方全球合作伙伴
  • Bootstrap 导航条
  • 电脑电源故障的识别与处理方法
  • 未来宝宝长相预测准吗?快跟我来探索一下
  • VMware WorkStation 8序列号
  • 中山大学人工智能神经网络学习文本情感分类训练
  • 迈克尔·杰克逊Michael Jackson,仅此记念
  • 技术分享——反病毒技术介绍与发展
  • 一文详解:渠道分销管理系统以及5家国产软件盘点
  • 绿毒 GreenPoisOn RC5 完美越狱 iOS 4.2.1
  • 【Ajax】Ajax学习笔记(基础用法)
  • 牛客网面试必刷:CD12 换钱的最少货币数
  • Mysql数据库第三方使用工具SQLyog出现:错误号码2003
  • c语言中两个数最大公约数怎么求,C语言求两个数中最大公约数
  • 大学物理实验报告 -- 用拉伸法测量杨氏模量
  • 成为一名黑客(网络安全),需要掌握哪些黑客技能?
  • 免费网络管理软件大全
  • canvas中清除path的方案
  • 全志A10平板电脑安装ubuntu 10.04LTS(与Android构建双系统)
  • Greenpois0n绿毒越狱越狱教程(Iphone4版本)
  • WinXP下搭建适合Nokia开发的J2ME环境
  • 制作一个简单的HTML个人网页