问题标签 [grasshopper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
udp - 在 Grasshopper 中动态创建块
我有什么:当我的设备移动时,点数据通过 UDP 发送到蚱蜢。
我想要什么:根据传入点可视化 rhino/grasshopper 中的路径。
是否可以动态创建点/块?
非常感谢您!
c# - 使用 SocketIoClientDotNet 接收消息后重新连接到 socket.io 服务器需要很长时间
我正在为 Grasshopper for Rhino 开发一个插件,它使用带有 C# 的 .NET 框架,但在重新连接到 socket.io 1.4.5 服务器时出现问题。我正在使用SocketIoClientDotNet 0.9.13连接到服务器,如果我只想连接/断开与服务器的连接,它可以正常工作,但是在我收到使用事件的消息后重新连接到服务器时遇到问题需要很多时间重新连接。
取决于我在连接期间通过事件收到的消息数量,在我关闭并建立新连接后,新连接需要超过一分钟(如果收到很多消息,有时会超过 10 分钟)。
有人能告诉我出了什么问题吗?
代码编写如下:
c# - 从坐标索引节点
我正在使用 C# 在 Rhino/Grasshopper 中进行 FEA(有限元分析)程序。我有线(FD)和网格三角形面(NFD)作为输入,每个都有它们的节点坐标。我正在尝试获取这些坐标并将它们恢复到列表中以索引每个节点。
由于线和网格面可以共享相同的节点,我做了以下尝试避免重复信息:
但是,当我构建项目时,我仍然会收到重复的信息。网格面重复消失了,但代码复制了线条的索引。(例如,一个 9 个节点的问题给了我 13 个节点,有时是 14 或 15 个。查看网格索引,所有内容都低于 9,但在行中不是 [介于 9 和 13 之间])。
我该如何解决?
谢谢,
马尔西奥
python - python缩短Grasshopper中的多个嵌套循环
如果不使用多个嵌套循环,我还找不到解决此问题的方法。问题是我正在使用 Rhinoceros 的几何方法对两个列表进行比较。基本上有一个行列表,一组起点和终点(嵌套列表)。所有的起点和终点都接触线。该脚本将最接近开头的行的索引与最接近结尾的行的索引进行比较,如果它们匹配,则返回True
.
这是我当前的代码:
我认为它可能适用于生成器表达式,但我被卡住了,因为看起来我实际上必须在相互比较之前临时存储 pullSt 和 pullEnd 值。我知道我可能会超载我的记忆,必须有更快的方法来做到这一点,但我只是不确定如何。
True
注意:如果直线和点之间的距离小于 0.0001 的容差,则返回 rc.Geometry.Curve.ClosestPoint ,这意味着该点在线上。
c# - 如何从 Grasshopper ghe 中引用 Rhino rhp
在用 C# 编写 Grasshopper 扩展时,我想访问在我的 Rhino 插件中定义的符号。
一个常见的例子是我的插件可能将自定义 UserData 类附加到对象,我希望稍后能够在 Grasshopper 中访问该数据的成员。
在我的具体示例中,我有一个 MirrorData 类,它被添加到一组 Breps 中。我可以从我的 rhino 插件中设置和获取它。
问题是,为了让我的 Grasshopper 扩展了解 MirrorData,我需要从 Grasshopper 扩展中引用 rhino 插件,但这是不允许的,因为 rhino 插件输出不能用作有效参考的 .rhp。
我通过从 Grasshopper 扩展引用插件的 obj 文件夹中的临时 MirrorPlugin.dll 找到了一种解决方法。但这似乎不是“正确”的方法。
有任何想法吗?
python - 更新类实例
我是 Python 的初学者,在 Rhino3D Grasshopper 中运行 python 模块时遇到了麻烦。Python模块中的代码如下所示。单独的 Agent 实例运行良好,但是当我尝试dla.update()
在下Timer
一个 python 模块(它只是正在执行dla.update()
)中使用时,我收到消息说self.pos = rs.EvaluateCurve(cirCrv, rndNum)
and中有问题self.curAgent = Agent(self.cirCrv, self.cenPt, self.walkDist)
。
有没有办法让它工作?
c# - C#拆分列表简化代码
早上好,
我来自 Python 环境并转向 C#。
我将更宽的列表拆分为具有规定长度的更窄的列表。
有没有办法简化下面的代码?我的猜测是它有点慢,并且没有正确遵循 c# 通用编码规则。
我发现了这个有用的方法
但它确实引发了以下错误:
我正在研究 McNeel 的 Rhinoceros 软件的 Grasshopper 界面。
提前致谢!
c# - 在一个条件下从列表中复制项目
我正在尝试在一种情况下将项目从列表复制到另一个列表。我有三个清单。第一个列表包含例如 10 个点列表,第二个列表包含每个列表的总距离(成本或适应度)(10 个列表 -> 10 个总距离)。
这是一张图片:第一个列表包含 10 个列表(每个列表包含点)-第二个列表“健身” 第三个列表是空的,应该在一个条件下填充项目。首先,我将第二个列表中的所有值加起来。上面的数字示例:totalFitness = 4847 + 5153 + 5577 + 5324...
将第一个列表中的点列表添加到第三个列表的条件是:例如 ----------> (Fitness[0] / totalFitness) <= ratio。
但它不起作用,在这里你可以看到我尝试过的代码:
第三个列表仍然是空的。如果我将条件更改为:if(selected <= ratio)
那么第一个列表中的整个点列表将被复制到第三个列表中。但是我要复制的是:具有“最佳”适应度的点列表。
我做错了什么?我完全不知道,我已经尝试了一些更改,但它仍然无法正常工作。如果您能认为我是初学者,我将不胜感激。
c# - 替代允许重复的字典
我需要字典的替代品,因为需要重复。原因是:我需要寻找最佳路线。为此,我正在创建一个有 20 个人的群体。每个人都有自己的路线,并且每条路线都计算出适合度。为了能够按适合度对路线进行排序,我正在创建一个字典。现在我正在迭代几代人,同时对字典进行排序并在每次迭代中添加新的路由。但是字典正在删除重复项,不应该这样做,因为代码可能会多次抛出最佳路线。
我已经阅读了有关查找和链接列表的内容,但并不真正了解它。或者可能是一个元组?有谁更了解什么可能会有所帮助?
这是我的代码:好吧,它不是仅仅显示字典以避免误解的漏洞代码。