0

如何从 VISSIM 的 COM 接口获取探测器的状态?

4

2 回答 2

0

检测器,或者 Vissim 所说的,可以使用以下命令从 COM 获取数据收集测量:

Detector = Vissim.Net.DataCollectionMeasurements.ItemByKey(detector ID) 

然后,您可以使用以下命令检查所需的值(如果配备):

Speed = Detector.AttValue('Speed(Current,Avg,All)')

这将检索所有车道的当前平均速度。

于 2015-09-10T16:56:04.283 回答
0

我不知道 C#,但我知道如何从 VISSIM 的 COM 接口获取探测器的状态。

sim = CreateObject("VISSIM.Vissim.700")

Detector=sim.net.Detectors

Set deton = dets.itembykey(1)

如果你想知道,探测器是否是脉冲的

a=deton.attvalue("Impulse")

如果你想知道,这个检测器检测到的车辆的速度然后

b=detup1.attvalue("VehSpeed")

然后输出结果

guiSheet.Range("a1").Value = a
guiSheet.Range("b1").Value = b

请注意,你必须定义guiSheet如下

guiSheet = Worksheets("VISSIM")

然后您可以在 VISSIM 中获取探测器的状态。除了速度和脉冲状态之外,您还可以找到很多其他状态,例如占用。

我也是VISSIM COM-Interface的初学者,希望回答对你有帮助:)

于 2015-09-16T15:52:01.213 回答