問題タブ [pyrevit]
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.
c# - Revit API - スローされる例外: RevitAPI.dll の「Autodesk.Revit.Exceptions.InternalException」 - ボタンを 2 回実行しようとすると
目的
こんにちは。新しいシートに単一のビューポートを追加し、ビューポートを空または単なる線ではなく、viewTitle を表示するように変更するボタンを Revit で作成する作業を行っています。
エラー
ボタンを初めて実行すると、ビュー タイトルの「線」が表示されているにもかかわらず、ビュー タイトルがロードされたファミリに設定されていないことを除いて、すべてが機能します。ボタンを 2 回目に実行すると、エラーが発生します。
ボタンをもう一度実行しようとすると、次のエラーが表示されます。
エラーは次の行で発生します。
探検
私が調査したところ、ボタンは既にアクセスされている要素にアクセスしようとしていますが、スケールを変更している場合は、ViewTitle を変更できるはずです。この質問の下部にある参照を参照してください
ここにトランザクションにある私のコードの一部があります
コードからこの行を削除すると、次のことがわかりました
。bool elementType = doc.GetElement(newViewPort.GetTypeId()).get_Parameter(BuiltInParameter.VIEWPORT_ATTR_LABEL_TAG).Set(viewTitleIdCommand);
それは機能し、新しいシートを作成し、ビューのタイトル行だけでビューポートを配置することができます。
ありとあらゆる助けをいただければ幸いです。 このリンクはこちらで、2 つの個別のトランザクション コミットで問題が解決したことを示していますが、試してみましたがうまくいきませんでした。これは似たようなものを示しています
python - Python を使用した Revit、ファミリでフィルタ (ファミリ シンボル)
Revit API を使い始めたばかりですが、質問が 1 つあります。Revit 要素をファミリ別にフィルタする方法を探していました。私の手順は次のとおりです。まず、フィルター処理された要素 Collector を実行して、すべてのファミリ シンボル ID を取得します。
これにより、ファミリ シンボル ID が取得されます。次に、この ID を使用してフィルター処理された要素コレクターを作成しようとします。
これにより、次のエラーが表示されますMicrosoft.Scripting.ArgumentTypeException: expected BuiltInParameter, got ElementId
。
要素IDを要求するBuiltInParameter
場合、なぜそれが期待されているのかわかりません。FamilySymbolFilters
とにかく、どんな助けでも大歓迎です。ありがとう!