如何在Python中使用SIEMENS NX的“NXOpen”API?

问题描述 投票:0回答:1

我想运行的Python代码是:

import nxopen as nx
import os

def get_mass_properties(file_path):

    if not os.path.exists(file_path):
        raise ValueError(f"File not found: {file_path}")
    if not os.access(file_path, os.R_OK):
        raise PermissionError(f"Insufficient permissions to access file: {file_path}")

    with nx.Session() as session:
        workpart = session.parts.open(file_path)

        bodies = workpart.bodies
        if len(bodies) != 1:
            raise RuntimeError("Unsupported file format: multiple solids found")
        solid_body = bodies[0]
        
        mass = solid_body.GetMass()

        massprop = [mass]

        workpart.close()
        session.close()

    return massprop

massproperties = get_mass_properties("D:/NX Files/model1.prt")

如何使用访问 NX CAD API 的 NXOpen Python 库?我尝试使用 pip 安装“NXOpen”库,当我运行代码时,出现此错误:

Traceback (most recent call last):
  File "d:\Coding\NXOpen\basic 2.py", line 1, in <module>
    import nxopen as nx
  File "C:\Users\johan\AppData\Local\Programs\Python\Python311\Lib\site-packages\nxopen\__init__.py", line 1, in <module>
    from . import cad
  File "C:\Users\johan\AppData\Local\Programs\Python\Python311\Lib\site-packages\nxopen\cad\__init__.py", line 1, in <module>
    from .code import *
  File "C:\Users\johan\AppData\Local\Programs\Python\Python311\Lib\site-packages\nxopen\cad\code.py", line 3, in <module>
    import NXOpen
ModuleNotFoundError: No module named 'NXOpen'

请帮我解决这个问题!

python cad siemens-nx
1个回答
0
投票

NXOpen Library 已与 NX 一起安装在 NX 的安装目录中。看来您是从代码编辑器运行代码的。如果是这样那为什么?您应该从 NX 软件内部运行代码。如果您使用 VSCode 并且需要 itellisense,请查看此链接 - https://community.sw.siemens.com/s/feed/0D54O00007oICmdSAG

但请记住,代码应该由 NX 软件本身而不是代码编辑器运行。

© www.soinside.com 2019 - 2024. All rights reserved.