通过视锥旋转乌龟

2023-12-28

我想写到我有视野的地方锥角对于乌龟。

我通过视锥旋转乌龟。

因此,首先它朝向视锥的起点,并以 0.05 度的增量变化,直到到达视锥的终点

  let max-head heading + (cone-angle / 2)
  set heading subtract-headings heading (zero-dash / 2)

  while[(subtract-headings heading max-head ) < 0]
  [
  set heading heading + .05
  ;wait 0.1
  ]

我写的上面的代码不正确。但我找不到错误。


我认为您的部分困难在于使用减法标题。这会找到两个标题之间的最短角度的大小,但这不是您想要的视锥(可能很宽)。由于您的代码是顺时针旋转的,因此我假设您想从最逆时针的点开始并旋转。唯一的困难是,如果航向经过 360 度,那么您需要将圆锥扫描计数器和实际航向分开,并使用 mod 算术从计数器进行转换。

globals
[ cone-angle]

to setup
  clear-all
  create-turtles 1
  set cone-angle 25
end

to go
  ask turtles
  [ let max-head heading + (cone-angle / 2)
    let fake-head heading - (cone-angle / 2)

    while [fake-head < max-head]
    [ print fake-head
      set fake-head fake-head + 1
      set heading fake-head mod 360
      wait 0.1
    ]
  ]
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过视锥旋转乌龟 的相关文章

  • NETLOGO:使用上一个刻度的变量

    是否有一些原语可以使用前一个刻度的变量值 我尝试计算一个代理的 价格 变量 我的意思是使用包含其他代理的 价格 变量但来自上一个刻度的公式 不 NetLogo 中没有内置方法可以执行此操作 您最好的选择可能是创建一个名为以下内 容的变量va
  • Netlogo 发芽的海龟间隔不到一处

    我想将海龟放置在每个黑色斑块上 下图 这样海龟之间就没有间隙 我现在使用的代码 ask patches with pcolor black sprout dead turtles wall agents set color red 这给出了
  • Netlogo的执行顺序是怎样的?

    请问我这句话正确吗 如果我写 ask turtles go forward go backward 随机一只乌龟向前移动然后向后移动 然后第二只随机乌龟会做同样的事情 依此类推 这是否正确 相对于 ask turtles go forwar
  • 尝试在集群上无头运行 NetLogo 时出现 Java 错误

    我正在尝试使用 Linux 无头运行 Netlogo 以便将作业发送到集群 我以前从未使用过 Linux 但我正在尝试按照此处的说明进行操作 http netlogo users 18673 x6 nabble com Running Ne
  • 如何在大空间范围内加速最小成本路径模型

    继从如何提高最低成本路径模型的模拟速度 https stackoverflow com questions 21839462 how can i increase speed up simulation of my least cost p
  • 如何在 netlogo 上创建计时器?

    对于我的迷宫项目 我想创建一个监视器按钮来跟踪海龟从开始到结束所需的时间 我该如何为计时器编写代码 查看reset timer and timer并在文档中 在迷宫设置期间 执行reset timer 在迷宫运行过程中 您可以使用以下命令检
  • Netlogo:运行时创建小世界网络

    我正在尝试生成一个小世界类型的网络 https en wikipedia org wiki Small world network https en wikipedia org wiki Small world network 在我创建的
  • netlogo GIS 扩展异常:第 5 行的单元格大小无效

    我怎样才能解决像这样的netlogo错误 Extension exception invalid cell size on line 5 当我尝试使用以下命令加载 AsciiGrid asc 栅格时 set slope gis load d
  • Netlogo:带有两个列表的“foreach”命令

    我有一个完整的有向图 每个链接都有自己的权重 我已经成功地选择了每只海龟的最大输出链接 但是 有时两只乌龟的最大输出链接彼此相反 导致两个彼此相反的链接被选择 如果发生这种情况 我希望具有较低值的链接消失 我用这个创建了两个列表 set m
  • Netlogo HPC CPU 使用百分比增加

    我通过以下方式使用无头 NetLogo 将作业提交到 HPC 服务器code bin bash N r20p q all q pe mpi 24 home abhishekb netlogo netlogo 5 1 0 netlogo he
  • 将 NetLogo 数据导出到带有节点和边的图形

    我在 NetLogo 中创建了代理 海龟 之间的一些链接 该链接将在每个时间步发生变化 我的目标是将这些数据 即海龟和它们之间的链接 导出到带有顶点 海龟 边缘 链接 的图形 这些数据可以作为 Gephi 的输入 是否可以看到图中netlo
  • 如何使用轮盘赌选择最多数量的海龟

    在我的模型中 海龟有两种性别 雄性有两种潜在的策略 雌性会计算一定半径内雄性的数量 我希望雌性根据两种雄性策略的相对频率来权衡从雄性组中选择的概率 无需替换 我已经有了从男性中选择概率的代码 matingPoolProbAnad and m
  • 用乌龟画一个超椭圆

    显然 任何可以通过其他方式绘制的形状都可以由海龟绘制 圆形和正方形很容易 rt 1 fd 0 and if ticks mod 100 0 rt 90 fd 1 超级椭圆没那么多 规则的省略号也不是微不足道的 维基百科关于超椭圆的文章 ht
  • 路径未到达我的 A* 算法中的结束节点

    继从如何在大空间范围内加速最小成本路径模型 https stackoverflow com questions 23202199 how to speed up least cost path model at large spatial
  • 从 RNetLogo 加载带有扩展的 Netlogo 模型

    我正在尝试使用 RNetLogo 在无头模式下加载 Netlogo 模型 该模型使用 rnd 扩展 该扩展通过以下方式添加到模型中extensions rnd 如果我尝试加载模型NLLoad model path 我收到此错误 NLLoad
  • 如何解析 Netlogo 中的字符串?

    Context 对于我的模型 我希望有一个输入 用户可以在其中输入一系列值 E g 我希望从上面显示的输入中得到一个由五个数字组成的列表 例如 0 5 0 2 0 0 2 0 5 这样我就可以使用他们输入的数字进行一些计算 问题 不幸的是
  • 来自 links-own 的参数值

    我需要帮助 所以我想将代理拥有的参数指定为链接拥有的参数值的平均值 frienships own strength household own influence factor to create influence if friendsh
  • NetLogo:如何对列表执行多项操作(查找、获取、替换、删除、搜索列表中的元素,......)

    我是 NetLogo 的新手 我想知道是否有对列表进行操作的完整参考 除了 Netlogo 字典之外 我还阅读了这里的大部分帖子 但例如 如果我需要一个数字对列表 例如 1 2 2 2 2 3 当我搜索时 member 3 thislist
  • 在 Netlogo 中将函数作为参数传递

    在许多其他编程语言中 您可以将一个函数作为参数传递给另一个函数并从该函数内调用它 无论如何 在 Netlogo 中可以做到这一点吗 比如下面这样 x y z are all ints to report f x y z report x y
  • set patch-size 在我的代码中的放置是否正确,并且 set 是否是正确的命令?

    编译后 我收到一条错误消息 指出在补丁大小 10 之前 set 是错误的命令 我应该使用什么命令来代替 为什么 globals road to setup clear all ask patches set pcolor green end

随机推荐