执行python脚本

Navigation:  IX. 工具箱 > 数据端口 >

执行python脚本

Previous pageReturn to chapter overviewNext page

工具箱>数据端口

执行python脚本

 

本工具当前图层中的数据写入指定的资源文件,并以其作为输入,执行用户指定的Python脚本,并将Python脚本执行的结果矩阵传入输出图层的附加数据中。

 

clip0821

属性类型:请选择参与计算的属性类型。

散点坐标标量:选中此项后,系统将尝试以标量形式将图层中的散点坐标数据写入资源文件,数列名称分别为ef坐标X,ef坐标Y,ef坐标Z。

散点坐标矢量:选中此项后,系统将尝试以三维矢量形式将图层中的散点坐标数据写入资源文件,数列名称为ef坐标。

资源文件名:请指定保存当前图层数据的资源文件名称(*.npz)以及保存目录。资源文件遵循numpy中的npz文件格式,在python环境中可以按照npz文件规范进行读写。

脚本文件名:请选择即将执行的Python脚本文件名以及保存目录。用户应自行确认本脚本可以在Python3.8版本中正常读取efs资源文件,且算法能够正常运行。efs资源文件中包含了多个numpy数组,用户可以使用下列代码中所示的方法对这些数组进行读取:

 >>>import numpy as np

 >>>efsProj = np.load("D:/EDF/EnviFusion/Examples/test.npz")

 >>>xCoord = efsProj["ef坐标X"]

 >>>delr = efsProj["delR"]

 >>>zbot = efsProj["zBot"]

 >>>计算逻辑省略...

返回表格:若用户需要将Python脚本运行生成的数据结果返回至图层的附加数据,请在此处输入数列名称。用户在自定义脚本中应确保为资源文件添加了此数列,且数据类型为双精度(double)。本端口最高支持三维数列,系统在找不到指定数列或者指定数列维度大于3时将报错。用户可以使用下列代码中所示的方法将计算结果写入资源文件。

 >>>test = [1.0,2.0,3.0]

 >>>np.savez("D:/EDF/EnviFusion/Examples/test.npz",ReturnVal=test)

这时,test数组将以“ReturnVal”为名称保存在"D:/EnviFusion/Examples/062_ADBCreation/test.npz"文件中,而输出图层将尝试从此文件中读取此数组,并放置在图层的附加数据当中。

clip0822