C#ScriptingForGrasshopper(一)——脚本电池介绍

脚本电池介绍

在6.5版本中,脚本电池在Maths的Script中,分别有C#、VB和Python语言的。除了使用软件自带的电池连接生成理想的模型外,也可以由脚本实现电池连接的简化或者一些更加方便、不同的功能。
在这里插入图片描述
以C#Script电池为例,将脚本电池拖入画布中,可以看到电池长这个样子,大概可以分为4个部分,如图
在这里插入图片描述
其中

一、三 输入输出
  1. x、y表示输入电池的rhino的对象或者参数。在放大电池后,可以通过小的“+”和“-”号对参数的数量进行控制,A表示电池输出的结果,out为消息输出,后面再说
  2. 以输入为例右键参数名,打开右键菜单,可进行此参数的设置。分为4个部分。输出则只有1和4两个部分(out部分不算)
    在这里插入图片描述
    ① 常规设置中常用的主要设置参数的名字和Reverse(反转数据)、Flatten(扁平化数据)、Graft(转化为树型数据)、Simplify(简化)四个功能,这里将x改名成input,并看看这是个功能分别有什么用【现在设置这个脚本的功能为输出等于输入】
    这是Reverse,输出的顺序与输入相反
    在这里插入图片描述
    这是Flatten,可以把树型的数据变为列表(小树丫子电子就是把数据转换为树型)
    在这里插入图片描述
    这是Graft,可以把列表类型的数据转为树型的数据在这里插入图片描述
    这是Simplify,可以为每一个数据创建单独一个路径,形成树结构。消除共享所有的分支,达到简化树的作用(Range电池是在一定范围D内间隔相等创建N个数)
    在这里插入图片描述
    ②参数设置可以设置输入参数的值,一个值,或一组值,或其他的。一般不通过这样的方式进行值的设置,无视这里
    ③数据结构和类型。Extract paramater可以导出参数连接到X电池,没啥用。主要是其中涉及的数据结构有三种,分别对应的C#类型和说明如下
    在这里插入图片描述
    其电池示例如下,其中脚本的功能为输出输入值的2倍
    这是input为Item Access结构处理列表数据的结果
    在这里插入图片描述
    这是input为List Access结构处理列表数据的结果
    在这里插入图片描述
    这是input为List Access结构处理树型数据的结果
    在这里插入图片描述
    这是input为Tree Access结构处理树型数据的结果
    在这里插入图片描述
    最后关于Type hint,可以设置参数的类型,对应在代码中也会为设置的类型,如下
    在这里插入图片描述
    ④帮助不说了
二 图标
  1. 双击能打开脚本编辑器,之后再说
  2. 右键菜单其他感觉没啥用,如下
    在这里插入图片描述
    其中Edit Source…也可以打开脚本编辑器,Manage Assemblies…可以添加和管理脚本中需要访问的外部动态链接库
    在这里插入图片描述
四 消息气泡

作用就是当鼠标指到消息时,会显示出当前的错误或警告,如果脚本代码没有问题,则不会出现消息气泡
在这里插入图片描述
基本介绍到此,下次开始看脚本编辑器

  • 7
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的C#自动化测试脚本的示例,使用了Selenium WebDriver来进行Web应用程序的自动化测试: ```csharp using System; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; public class AutomationTest { static void Main() { // 设置ChromeDriver路径 var chromeDriverPath = @"C:\path\to\chromedriver.exe"; // 创建ChromeDriver实例 var options = new ChromeOptions(); options.AddArgument("--headless"); // 可选,无头模式,不显示浏览器窗口 var driver = new ChromeDriver(chromeDriverPath, options); try { // 打开网页 driver.Navigate().GoToUrl("https://www.example.com"); // 执行测试操作 var pageTitle = driver.Title; Console.WriteLine("Page Title: " + pageTitle); // 断言 if (pageTitle.Contains("Example Domain")) { Console.WriteLine("测试通过!"); } else { Console.WriteLine("测试失败!"); } } catch (Exception ex) { Console.WriteLine("发生异常:" + ex.Message); } finally { // 关闭浏览器窗口和WebDriver实例 driver.Quit(); } } } ``` 在运行此脚本之前,您需要确保已经下载并配置了ChromeDriver,并将`chromeDriverPath`变量设置为ChromeDriver的路径。 此示例使用了Selenium WebDriver,打开一个网页并获取页面标题。然后,根据页面标题进行断言,如果标题包含"Example Domain",则测试通过;否则,测试失败。 您可以根据需要扩展和修改此示例,以适应您的自动化测试需求。这只是一个简单的起点。 请确保在使用自动化测试时遵循相关的法律、政策和规定,并且只在您有权限的环境进行测试。 希望对您有所帮助!如果您还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值