鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 帅昊昊昊

[已解决]求助一下,有没有大神写过关于revit的python脚本之类的东西

[复制链接]
发表于 2023-12-25 15:51:10 | 显示全部楼层
帅昊昊昊 发表于 2023-12-25 15:50
用代码的形式展示吧,这样看起来有点乱

非常抱歉给你带来了困扰。以下是修复后的代码,以更清晰的方式展示:import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
from Autodesk.Revit.DB.IFC import *

# 定义Revit项目文件路径列表
file_paths = # 你需要填入Revit项目文件的路径列表

# 打开Revit软件并加载
app = __revit__.Application
doc = app.NewProjectDocument(UnitSystem.Metric)

try:
    for file_path in file_paths:
        try:
            doc.Close(False)  # 关闭当前打开的项目文件

            # 打开新的项目文件
            open_options = OpenOptions()
            new_doc = app.OpenDocumentFile(file_path, open_options)

            collector = FilteredElementCollector(new_doc)
            views = collector.OfClass(ViewSchedule).ToElements()

            for view in views:
                export_options = IFCExportOptions()  # 使用IFCExportOptions导出选项

                folder_path = "C:/Users/Administrator/Desktop/text"  # 导出的文件夹路径
                export_file_name = view.Name + '.csv'
                export_full_path = folder_path + "\\" + export_file_name  # 完整的导出路径和文件名

                model_path = ModelPathUtils.ConvertUserVisiblePathToModelPath(export_full_path)  # 将字符串转换为ModelPath对象
                export_options.SetFilePath(model_path)

                exporter = IFCExporter.Create(new_doc, export_options)  # 创建IFCExporter对象

                # 导出明细表视图为CSV文件
                result = exporter.Export(view.Id)

                if result == ExporterIFCResults.Success:
                    print('成功导出明细表:' + export_full_path)
                else:
                    print('导出失败:' + result)

            new_doc.Close(False)  # 关闭新的项目文件

        except Exception as e:
            print('导出失败:' + str(e))

except Exception as e:
    print('打开项目文件失败:' + str(e))

请确保将`"C:/Users/Administrator/Desktop/text"`替换为你要导出文件的实际文件夹路径。如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-12-25 15:57:00 | 显示全部楼层
FishC 发表于 2023-12-25 15:51
非常抱歉给你带来了困扰。以下是修复后的代码,以更清晰的方式展示:import clr
clr.AddReference('Revit ...

谢谢你的帮助,虽然问题还是没有解决,我想再试试别的方式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-7-8 11:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表