如何使用NS2中的tcl脚本获取红色节点

如何使用NS2中的tcl脚本获取红色节点,tcl,nodes,ns2,Tcl,Nodes,Ns2,我想知道哪些节点是红色的,所以我有一个不执行的脚本 for {set i 0} { $i < $14 } {incr i } { if {$ns at 0.0 "$n($i) color red"}{ return $n($i) } } 对于{set i 0}{$i

我想知道哪些节点是红色的,所以我有一个不执行的脚本

for {set i 0} { $i < $14  } {incr i } {
if {$ns at 0.0 "$n($i) color red"}{
     return $n($i) 
    }
}
对于{set i 0}{$i<$14}{incr i}{
如果{$ns在0.0“$n($i)为红色”}{
返回$n($i)
}
}
我得到这个错误:

错误:缺少close blace:执行时注释中可能存在不平衡的大括号


如何解决问题?

这一行有两个语法问题,一个是导致当前问题的原因,另一个是在解决问题后会出现的问题。在右大括号后需要一个空格,以便将表达式单词与正文单词分开-Tcl关心在关键位置有空格-如果需要将条件括在方括号中,则调用
中的命令

if {$ns at 0.0 "$n($i) color red"}{
可能有效的最小修复方法是:

if {[$ns at 0.0 "$n($i) color red"]} {

我怀疑这是行不通的,因为该命令没有给出布尔值,但在添加括号和空格之前,它肯定行不通。

在ns-2.35/tcl/ex/wpan/wpan_demo5.tcl中有很多颜色设置要尝试

查找示例:
cd[folderwithexamples.tcl]&&grep-n“color red”*

带有红色节点的AODV示例:{aodv10ms.tcl,aodv10nodes.tcl,SoniaLamba-AODV.tcl}→ .... aodv10nodes.tcl代码段:

# Provide initial location of mobile nodes
$node_(0) set X_ 50.0
$node_(0) set Y_ 1.0
$node_(0) set Z_ 0.0
$node_(0) shape box
$node_(0) color red
$ns_ at 0.0 "$node_(0) shape box"
$ns_ at 0.0 "$node_(0) color red"
$ns_ at 0.5 "$node_(0) setdest 50.0 499.0 10.0"

所有~2000个示例都是

您的代码:在~2000个已知模拟中没有类似的内容。请这样做:
cd ns-2.35/tcl/ex/&&grep-Rn color*
。。。观看如何添加颜色。。。一个简单的例子是
simple dyn.tcl
:两种颜色。在
ex/*/
中还有大约40个示例,谢谢你的帮助。但是我没有得到红色节点,你有什么建议可以帮助我吗。谢谢,但我需要选择红色节点,以后再使用它们,它必须是一个控制结构。@takwa-mekni:»»我需要选择红色节点,以后再使用它们««:这就是wpan示例所做的。在模拟/动画期间添加颜色。