命令 0xae: 获取人员变量#
| ubyte | string |
|---|---|
| 变量名 | 人员ID |
请求获取指定人员某个变量的值。返回的值是上一个仿真步长内所请求变量/值的状态。如果人员已加载但位于路网之外(由于尚未插入路网或在当前时间步内进行瞬移),则返回默认的“错误”值。
以下变量值可以被获取和订阅。返回值的类型也在表中显示。无法订阅拆分出租车预约(split taxi reservation),这在技术上更像是一种变更函数,但因为需要返回值而被实现为检索函数。
| 变量 | 值类型 | 描述 | Python 方法 |
|---|---|---|---|
| id list (0x00) | stringList | 返回当前场景中所有运行人员的ID列表(忽略给定的人员ID) | getIDList |
| count (0x01) | int | 返回当前场景中运行人员的数量(忽略给定的人员ID) | getIDCount |
| speed (0x40) | double | 返回指定人员在上一步中的速度 [m/s];错误值: -2^30 | getSpeed |
| position (0x42) | position | 返回指定人员在上一步中的位置(两个double) [m,m];错误值: [-2^30, -2^30] | getPosition |
| position 3D (0x39) | position | 返回指定车辆在上一步中的3D位置(三个double,前保险杠中心) [m,m,m];错误值: [-2^30, -2^30, -2^30] | getPosition3D |
| angle (0x43) | double | 返回指定人员在上一步中的角度 [°];错误值: -2^30 | getAngle |
| slope (0x36) | double | 检索当前人员位置处的坡度(以度为单位) | getSlope |
| road id (0x50) | string | 返回指定人员在上一步所在的边(edge)ID;错误值: "" | getRoadID |
| type id (0x4f) | string | 返回指定人员的类型ID | getTypeID |
| color (0x45) | ubyte,ubyte,ubyte,ubyte | 返回人员的颜色 (RGBA)。 | getColor |
| edge position (0x56) | double | 人员沿边(edge)的位置(单位 [m]);错误值: -2^30 | getLanePosition |
| length (0x44) | double | 返回人员的长度 [m] | getLength |
| minGap (0x4c) | double | 返回此人员的偏移量(停止时与前方人员的间距) [m] | getMinGap |
| width (0x4d) | double | 返回此人员的宽度 [m] | getWidth |
| waiting time (0x7a) | double | 返回等待时间 [s] | getWaitingTime |
| next edge (0xc1) | string | 返回人员行走时路线上的下一条边。如果没有更多边或人员处于其他阶段,则返回空字符串。 | getNextEdge |
| remaining stages (0xc2) | int | 返回给定人员剩余的阶段数,包括当前阶段。 | getRemainingStages |
| vehicle (0xc3) | string | 如果人员处于驾驶阶段并已进入车辆,则返回车辆的ID。 | getVehicle |
| taxi reservations (0xc6) | list(Reservation) (见下文) | 返回所有预约。如果 onlyNew 为 1,则每个预约只返回一次。 | getTaxiReservations |
| split taxi reservations (0xc7) | string | 将人员从给定的预约中拆分,并为他们创建一个新的预约。返回新的预约ID。 | splitTaxiReservation |
响应 0xb4: 人员变量#
| ubyte | string | ubyte | <return_type> |
|---|---|---|---|
| 变量名 | 人员ID | 变量的返回类型 | <VARIABLE_VALUE> |
对 “命令获取人员变量” 的响应。
响应 0xc6: 出租车预约#
返回所有预约。如果 onlyNew 为 1,则每个预约只返回一次。
| string | string | string | string | string | double | double | double | double |
|---|---|---|---|---|---|---|---|---|
| id | persons | group | fromEdge | toEdge | departPos | arrivalPos | depart | reservationTime |
扩展检索消息#
某些进一步的消息需要额外的参数。
| 变量 | 请求值类型 | 响应值类型 | 描述 | Python 方法 |
|---|---|---|---|---|
| stage (0xc0) | 下一阶段索引 (int) | TraCIStage | 返回描述第 n 个下一阶段的复合对象。索引 0 检索当前阶段的值。给定的索引必须小于 '剩余阶段' 的值。 | getStage |
| edges (0x54) | 下一阶段索引 (int) | stringList | 返回第 n 个下一阶段的边。索引 0 检索当前阶段的值。给定的索引必须小于 '剩余阶段' 的值。对于驾驶阶段,仅返回起点和终点边。 | getEdges |
