问题标签 [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.
python - 迭代“LineCurve”类型的非序列?
使用以下代码,我收到以下错误消息,我无法使用文档解决。
x
是一个integer
ln
是一个Line
degrees
是一个float
这是代码
我收到以下消息错误:
运行时错误 (TypeErrorException): 迭代 LineCurve` 类型的非序列
追溯:
c# - 有没有办法查看 Rhino 插件 Grasshopper 3D 的输入和输出类型?
我正在尝试做的一个例子如下。由于 Java 是一种静态类型语言,因此了解type
输入和输出是至关重要的。然而,我被要求重写的一个应用程序是用一种名为 Grasshopper 3D 的图形编程语言编写的,它是 Rhino 的一个插件,一种建筑软件。由于我将重写组件,因此我有兴趣了解type
输入和输出。输入通常很容易定义,因为 C# 脚本组件允许您设置 input type
,但是输出通常是未知的。网上有没有SDK或者源码可以揭示Grasshopper 3D的输入输出type
?
c# - 在 Grasshopper 3D 中使用 C# 组件处理数组/列表
Grasshopper 3D 的新用户在这里,我需要一些 C# 语法帮助来在 Grasshopper 3D 中进行编码。例如,我有一个脚本,粘贴在下面:
上面的静态方法对数组的所有值求和。
根据我对 Grasshopper 中 C# 脚本组件的理解,您不能创建静态方法,因为一切都是不返回的 void 方法。您将变量(输出)分配为伪返回,对吗?
知道这一点 - 例如,我如何将上述脚本实现到 C# 组件?
我没有“返回”,而是简单地分配了一个变量,例如 A 作为总和。但是我在那里遇到了一些问题,例如,一些 C# 方法(如 .Length)不起作用。
Grasshopper 3D 的 C# 组件中方法的格式如下:
python - Grasshopper的python脚本不接受附加文件
我有以下 python 脚本,它导入 .json 文件并通过 rhino/grasshopper 绘制它们。当我也链接文件路径时,它似乎工作正常,直到我点击 17 个文件,一旦我尝试输入第 18 个及以后的文件,我收到以下消息“1。解决方案异常:list.index(item):item not in list”
有人有想法么?在编码等方面我真的很迷茫......谢谢!
c# - 调整位图对象的物理尺寸
我有一个脚本,它返回基于List
颜色对象的热图(它们是从名为 Grasshopper 的图形“编码”软件中的渐变组件派生的 RGB 值),如下所示:
下面是我的 C# heatmap-drawing 方法的摘录,它返回一个Bitmap
.
我用来保存图像的方法是这样的:
_heatmap
是一个实例变量,声明如下:private Bitmap _heatmap;
,我Bitmap
使用方法存储对象的位置DrawHeatmap()
。
我在 Grasshopper 的“画布”上显示图像的方式依赖于一些 Grasshopper 特定的方法,具体来说,这个片段
但是,当我保存Bitmap
对象时,我得到的结果是我在画布上拥有的稍高的版本,如下所示:
看起来不是很漂亮吗?
我的问题是 - 在调用该saveBMP()
方法时,有没有一种方法可以操作Bitmap
来调整尺寸,使其看起来很像我在画布上的东西?
c# - “参数必须为正且<高度。参数名称:y”错误
我正在为 Grasshopper 3D 开发一个组件,它是一个 Rhino(架构)插件。
使用该Render()
方法,这会将热图图像绘制到画布上。隔离我的其他方法和构造函数,我非常相信这种方法会导致我的问题。
当我尝试将事物渲染到画布上时收到的错误是:
根据我的研究,当您遇到数组溢出时,它似乎发生得最多。
我的研究链接:
然而,上面的例子主要适用于多维数组,而我是一维的。
我想知道是否有其他人以前遇到过这个问题,可以给我一些指示和指导吗?
谢谢。
c# - 在 C# 图形位图中放置文本坐标的位置
我编写了一个 C# Render 方法,将热图渲染到 Grasshopper 画布上。Grasshopper 是一个 Rhino 插件,它允许一个简单的 GUI 编程界面。
目前,这个渲染方法在画布上绘制这样的图像:
话虽如此,我想在顶部放置一些标题文本,并为 X 和 Y 轴添加标签,就像标准的热图图一样。但是,我对graphics
组件的了解太有限,还望各位大神帮忙。
我做了一些研究,似乎该drawText()
方法可以做我想做的事:c# write text on bitmap
但我不确定在哪里指定坐标,同时在显示的图形顶部留一些空间来放置标题文本。
c# - 渲染位图的问题
我目前正在研究将位图渲染到 Grasshopper 画布上的直方图渲染器。一共有两个位图,下面分别解释
private readonly Bitmap _image;
和:
private readonly Bitmap _overlayedImage;
具有名称的Bitmap
实例_image
如下所示:
_位图 http://puu.sh/6mUk4/20b879710a.png
虽然Bitmap
具有名称的实例_overlayedImage
如下所示:
基本上,_overlayedImage
是使用位图创建的_image
位图,顾名思义,它覆盖了文本(您可以在我发布的图像中看到)并为其添加黑色背景。这是它的分配方式
_overlayedImage = overlayBitmap(_image, width * 3, height * 3, times, dates, colors);
(* 3
用于调整图像大小)。
我目前遇到的一个问题是多方面的。
使用这种方法,我可以渲染_image
到画布上。
代码是这样的:
根据是什么comp.CachedHeatmaps;
:
但是,每当我尝试在 上使用Render()
时_overlayedImage
,我都无法这样做。
我已将问题与Render()
方法隔离开来,似乎这条线
Rectangle mapBounds = new Rectangle(x, y, maps[i].Width, maps[i].Height);
是主要问题,asmaps[i].Width
和maps[i].Height
return1
分别100
是图例的尺寸,垂直 100 像素,水平 1 像素。
对于这个相当长的问题,我深表歉意,但我认为我无法以任何其他方式解释它。
python - 相交多边形处理
我正在处理曲线的交点。我一开始尝试了toxiclibs 和 hemesh 库。但是在经历了很多错误之后,我尝试在蚱蜢中使用 python 编写一个简单的脚本。结果,我注意到数据树存在问题,由于我的编程技能,我无法通过处理或简单解决。
长话短说,我有一组多边形。当它们相交时,它们的角向下旋转 90 度。
在处理中编写脚本简单但广泛。现在我在蚱蜢中有相当快的脚本。主要组件计算曲线之间的交点,并返回数据树中的对角线。当我尝试玩运动和物理时,我发现我需要在处理中实现我的想法。结果,我想重写处理中的脚本......
这是我正在处理的对角线(紫色)->对角线
交叉线
获取交叉对角线的交叉函数是用python编写的:
该脚本返回数据树中相交曲线的对角线。通过数据树,我的意思是图片中有 15 个多边形。并且脚本返回输出,说明第一条曲线有 2 个对象作为线,第二条曲线有 3 个对象作为线,第三条曲线有 1 个对象作为线,依此类推。每个多边形都与交叉对角线相关联。
你能帮我在处理过程中重写这个python脚本吗?如果没有,也许您在使用任何相关库进行处理时有类似脚本的参考?
提前谢谢你,佩特拉斯。