1.python script节点使用第三方包
提示:这里可以添加本文要记录的大概内容:
我们系统安装python的路径:E:\Python311
那么pip安装的第三方包所在路径:E:\Python311\Lib\site-packages
Dynamo python script节点 不能自动定位第三方包
需要添加寻址操作:
import sys
# 第三方包寻址
sys.path.append("E:\Python311\Lib\site-packages")
import os
import chardet
import re
import shutil
import sqlite3
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
...
2.python依赖库安装设置国内源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xxx
3.dynamo通过自定义节点引用C#的文件选择对话框
C#类库中定义代码:
using System.Threading;
using System.Windows.Forms;
namespace Dynamo_ClassLibrary_Custom_Node
{
public class Class1
{
private Class1()
{
}
public static string SelectFile(string fext)
{
string filePath = "";
Thread t = new Thread((ThreadStart)(() =>
{
// 将出现这个异常的语句放到这里面
// 创建一个新的 OpenFileDialog 实例
OpenFileDialog openFileDialog = new OpenFileDialog();
// 设置对话框标题
openFileDialog.Title = "选择要打开的文件";
// 设置默认显示路径(可选)
openFileDialog.InitialDirectory = @"H:\repository\Dynamo\Releases\DynamoCoreRuntime_3.1.0.3742去ASMxxx.dll引用版本\标准库";
// 添加过滤器来限制只能选择特定类型的文件(可选)
openFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*";
// 如果用户点击了“确定”按钮并且没有取消操作
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
// 获取所选文件的完整路径
filePath = openFileDialog.FileName;
}
}));
// 需要设置单线程模式
t.SetApartmentState(ApartmentState.STA);
t.Start();
t.Join();
}
return filePath;
}
}
C#类库生成后,按照正常的步骤在Dynamo引用就行。