问题标签 [revitpythonshell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
revit-api - Revit API - 如何在调用 PostCommand 后返回“正常代码”
我一直在寻找答案,但没有找到任何可以解决的问题。
我有一个调用 PostCommand 的线程,我注意到了几件事:无论我将 PostCommand 放在哪里,它都会在我的线程中最后出现,即使它在单独的事务中也是如此。
有没有办法按顺序调用它,然后返回我的 Revit API 代码继续执行?
我找到了这个线程,但我希望他们的错误是因为他们在 dynamo 中运行,而不是在 Visual Studio 中使用 c#
revit-api - Revit API C# - ViewSheet 的 ShowElements、选择 ViewPort、Activate Viewport 在 Debug Step through 但不实时工作
我正在尝试使用工作表上的Jeremy's Keys激活视口,并且我可以在执行 Debug Step-Through 时执行此操作,但由于某种原因,它在实时时不起作用。
我尝试了以下方法:
1)使用while循环等待活动视图成为视口的视图,但它似乎没有触发。
2)将其放在单独的事务中
3)尝试使用System.Threading.Thread.Sleep(2000);
4)开始研究异步,等待但是我还没有那么熟练。
有没有其他人遇到过这个问题并找到了解决方案?
我当前的 Sudo 代码类似于问题的标题。
draw a temporary line across viewport
doc.showElements(temporaryline)
delete temporary line
Select viewport
Press.Keys("AV")
(AV是我选择视口时激活视图的快捷方式)
如果需要,我可以上传实际代码
/////////////////////puts///////////////////// 这是Culprit
python - 如何使用 python 在 revit API 中复制对象
有没有办法可以复制过滤器元素收集器对象?例如,原始对象指向 0x000000000000156B,我希望复制的对象指向不同的位置,这样我就可以在不更改原始对象的情况下继续进行修改。
这是一些代码来说明我的想法:
我知道 FilteredElementCollector 类中没有这样的方法,但应该有办法做到这一点,对吧?我还阅读了有关 deepcopy 的信息,但无法在 Revit 上使用它。
任何帮助将不胜感激,谢谢!
python - 读取excel文件时如何在Revit Python Shell中将“字符串”转换为“BuiltInCategory”
我正在尝试将数据从 Excel 导入 Revit Python Shell,以验证 Revit 文件中是否存在用于选定对象类别的某些参数。但是我在第一个“for”循环中遇到了一些问题(查看 excel 表的第一列并获取类别)。实现我想要的第一步是获取我想要分析的类别的所有元素。我已经尝试了很多东西,但我总是以图片中显示的这个错误告终(得到字符串而不是内置类别)。我搜索了一种将字符串转换为内置类别的方法,但我没有找到任何东西。
有谁知道如何处理它?有没有办法将字符串转换为内置类别,或者是否有另一种解决方案?
谢谢! 图片 - 截图
django - 将 Django 模型数据保存到派生类的数据库中
我有以下型号
我能够创建学生对象。我尝试添加 StudentDetail 如下
最后一条语句给出了错误。如何将 StudentDetail 保存在数据库中。
c# - Google.Apis.Auth 1.46.0.0 已安装,但随后被要求提供多个版本
我可以自己通过winforms访问Firestore,并且可以正常工作。但是,如果我尝试通过外部命令访问 Firestore,则会收到错误消息:
System.IO.FileNotFoundException:'无法加载文件或程序集'Google.Apis.Auth,Version=1.44.1.0,Culture=neutral,PublicKeyToken=XXXXXXXXXX'或其依赖项之一。该系统找不到指定的文件。'
奇怪的部分是我有Google.Apis.Auth, Version=1.46.0.0
作为参考。
如果我将参考版本更改为1.44.1.0
,那么它会要求我将参考版本更改为1.21.0.0
我怎样才能使这项工作?
这是我的代码:
应用程序.cs
命令.cs
Form1.cs
应用程序配置
堆栈跟踪
日志
python - 通过 pyRevit 注册的 IUpdater 引发的 NameError
我正在尝试将动态模型更新器作为 pyRevit 扩展的一部分来实现。但是,我无法从更新程序的Execute
方法中实例化类、调用函数或引用常量。
作为一个例子,让我们假设制作一个执行此脚本的按钮:
如果我移动一堵墙(当然是在单击按钮注册更新程序之后),则会引发异常并将其存储在墙的 comments 属性中:NameError: name 'do_thing' is not defined
. TaskDialog.Show
当我尝试调用最初未在 Python 中定义的函数时,也会引发类似的异常。
但是,如果我在 RevitPythonShell 中注册相同的更新程序,它会按预期工作:
允许更新程序在 RevitPythonShell 但不能在 pyRevit 中工作的两种环境之间有什么区别?
Revit 2019、pyRevit 4.7.4、IronPython 2.7.7
python-2.7 - Revit Python Shell - 遍历每个元素,查找视图名称并按图纸编号分组
我想按关联的图纸编号、视图名称和位置中心创建所有视口的列表。像这样:
这样用户就可以在 WPF 中的列表框(此处未显示)中将多个视口相互对齐。我有以下内容:
这让我将所有工作表上的所有视口作为列表对象。但我现在想按上述方式格式化此列表。我尝试了以下方法:
我相信我没有遍历整个列表列表。更不用说我是python的新手了。任何帮助都将不胜感激。谢谢!
python - 在 for 循环期间创建嵌套字典
我在 for 循环期间创建了一个列表,效果很好,但我想创建一个字典。
输出如下:
哪个结构是完美的,但我希望它抓住一切,因为它在执行 for 循环时似乎停止在第一个循环上。这是为什么?我怎样才能让它保持循环?
我尝试了各种方法,例如创建另一个名为“Keys”的键列表和名为“viewPortList”的值列表,例如:
但是我总是遇到同样的问题,我无法遍历所有元素。为了全面披露,当我创建一个列表时,我是成功的。这就是它的样子。
哪个工作正常并打印以下内容(只是长列表的一部分)
但我想要一本字典。任何帮助,将不胜感激。谢谢!