問題タブ [autocad-plugin]
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# - AutoCAD の Editor クラスを使用してコマンドを実行する
押されたときに図面の位置をマークするボタンを作成しようとしています。現在、メソッドは次のようになっています。
ただし、メソッドを実行しようとすると、下の図のエラーが発生し、その理由を特定できません。
************** 例外テキスト ************** Autodesk.AutoCAD.Runtime.Exception: eInvalidInput at Autodesk.AutoCAD.EditorInput.Editor.Command( c:\Users\nickg\Documents\All Code\autocad-adapter\IOAutoCADHandler\myCommands.cs:186 行目 Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorker(MethodInfo) の AutoCAD_Adapter.MyCommands.MarkPosition() の Object[] パラメータ) Autodesk.AutoCAD.Runtime.PerDocumentCommandClass.Invoke(MethodInfo mi, Boolean bLispFunction) の Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorkerWithExceptionFilter(MethodInfo mi, Object commandObject, Boolean bLispFunction) の mi, Object commandObject, Boolean bLispFunction)。 Runtime.CommandClass.CommandThunk.Invoke()
c# - C# オブジェクトを AutoCAD エンティティの XRecord に格納する
C# クラスを AutoCAD エンティティに XRecord として格納する方法を見つけようとしています。たとえば、次のクラスがあります。
そして、そのインスタンスを作成します:
それを AutoCAD エンティティ (図面の線など) の XRecord に保存して、次のようなことができるようにする最善の方法は何ですか?
GetXRecordFromEntity(Entity e) は、エンティティ e を受け取り、以前に保存したオブジェクトの XRecord を取得して返すヘルパー メソッドです。
XRecord がどのように機能するか、および XRecord が AutoCAD の名前付きオブジェクト ディクショナリ (NOD) とどのように関連するかについて、私はあまりよく理解していません。XRecord に格納されるオブジェクトがバイナリ フォーマッタでシリアル化され、シリアル化されたデータがエンティティの XRecord に格納される実装を見てきましたが、より良い方法を探しています。
c# - タイプ 'System.Windows.Input.ICommand' を読み込めませんでした
Object ARX 2015 と .Net Framework を使用して AutoCad の拡張機能を作成しています。私のコンピューターでは、すべてがうまく機能します。しかし、他のコンピューターで.dllを使用しようとすると. 次のエラーが表示されます。
例外テキスト
System.TypeLoadException: アセンブリ 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' から型 'System.Windows.Input.ICommand' を読み込めませんでした。Extension.MyCommands.KeelRibbon() で Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorker(MethodInfo mi, Object commandObject, Boolean bLispFunction) で Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorkerWithExceptionFilter(MethodInfo mi, Object commandObject, Boolean bLispFunction) で Autodesk で.AutoCAD.Runtime.PerDocumentCommandClass.Invoke(MethodInfo mi, Boolean bLispFunction) at Autodesk.AutoCAD.Runtime.CommandClass.CommandThunk.Invoke()
c# - 複数の DXF ファイルをインポートするときにエンティティが間違っている
BlockTableRecord
更新したいが 3 つあります。各ブロック定義のエンティティを含む外部 .dxf ファイルをロードしています。古いエンティティを削除して新しいエンティティをロードすると、完全に正常に動作しますが、2 番目 (3 番目など) のエンティティの更新を開始するとすぐに、最初のエンティティがBlockTableRecord
再び使用されます。図面全体を保存して再ロードした後でも発生します。
GetPositionBlock()
BlockTableRecord
XData に基づいて更新する を取得します。更新する正しいブロックを取得するため、このメソッドにはエラーはありません。
すべての値を再確認しました。同じGUID、名前、またはそのようなものを使用することはありません。問題は のどこかにあるようblockId
です_dataBase.Insert(...)
。最初の使用時に一部の値が上書きまたは設定され、その後は何もリセットされないようです。この問題を引き起こす可能性のあるアイデアはありますか? ヒントやヘルプをいただければ幸いです。
c# - ブロック定義を AutoCAD にインポートする AC# メソッド
.NET プラグインがそれらのブロックのインスタンスを図面に配置できるように、プログラムでブロックを図面にインポートする方法を作成しようとしています。現在、私の方法は次のようになっています。
そして、私が望むのは、ファイルパスが文字列配列 filesToTryToImport にあるすべてのブロックが、ブロックを挿入するときにオプションとして表示されることです
したがって、たとえば、One-Inch-Block が最初はリストに含まれていなかったが、そのファイル パスがこのメソッドに渡された配列内の文字列として渡された場合、それはオプションになります。
vb.net - winform vb.netにAutodesk Viewerを埋め込む方法
AutoDesk Viewer が Winform に埋め込まれている古いプロジェクトを完成させる必要があります。このプロジェクトは、私が古いバージョンの Autodesk と想定していたものを使用して数年前に行われました。リファレンスを見ると、AxACCTRLLib.AxAcCtrl.dll があることがわかります。autodesk design review 2013 をダウンロードしました。私の質問は、埋め込みビューの .dll ライブラリに別の名前がありますか?. 上記と同じ名前のライブラリが見つからないためです。このプロジェクトは別のコンピューターにあったため、新しいautocadなどをインストールする必要がありました..
以下は、autodesk ビューア コントロールを示すプロジェクトのスクリーンショットです。何か助けてください私はしばらくの間研究を続けてきましたが、成功していません