opnet的複合屬性可真是複雜啊,今天為了更改opnet的傳輸機的輸出功率,發現一些問題。
要改輸出功率power,發現,它是無線節點傳輸機rt的channel下的一個屬性,如果簡單的是rt的一個屬性也到罷了,但是牽扯到了它的複合屬性,很扯淡。
首先,使用如下代碼;
tx_id = op_id_from_name(op_topo_parent(op_id_self()),OPC_OBJTYPE_RATX,"rt_0");
ch_id = op_topo_child(tx_id,OPC_OBJTYPE_COMP,0);
op_ima_obj_attr_set(ch_id,"power",trans_power);
報錯說power不是channel的屬性,函數op_ima_obj_attr_set出錯,然後将代碼換成如下内容,
ch_id = op_id_from_name(tx_id,OPC_OBJTYPE_COMP,"channel");
op_ima_obj_attr_set(ch_id,"power",trans_power);
發現結果是一樣的,使用odb調試發現,rt的channel的id是12,但是通過第二句獲得的id卻是11,很郁悶,不知道是那裡的原因;最後嘗試加入了代碼