問題タブ [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.

0 投票する
3 に答える
5160 参照

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()

0 投票する
2 に答える
2110 参照

c# - C# オブジェクトを AutoCAD エンティティの XRecord に格納する

C# クラスを AutoCAD エンティティに XRecord として格納する方法を見つけようとしています。たとえば、次のクラスがあります。

そして、そのインスタンスを作成します:

それを AutoCAD エンティティ (図面の線など) の XRecord に保存して、次のようなことができるようにする最善の方法は何ですか?

GetXRecordFromEntity(Entity e) は、エンティティ e を受け取り、以前に保存したオブジェクトの XRecord を取得して返すヘルパー メソッドです。

XRecord がどのように機能するか、および XRecord が AutoCAD の名前付きオブジェクト ディクショナリ (NOD) とどのように関連するかについて、私はあまりよく理解していません。XRecord に格納されるオブジェクトがバイナリ フォーマッタでシリアル化され、シリアル化されたデータがエンティティの XRecord に格納される実装を見てきましたが、より良い方法を探しています。

0 投票する
2 に答える
2058 参照

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()

0 投票する
1 に答える
107 参照

c# - 複数の DXF ファイルをインポートするときにエンティティが間違っている

BlockTableRecord更新したいが 3 つあります。各ブロック定義のエンティティを含む外部 .dxf ファイルをロードしています。古いエンティティを削除して新しいエンティティをロードすると、完全に正常に動作しますが、2 番目 (3 番目など) のエンティティの更新を開始するとすぐに、最初のエンティティがBlockTableRecord再び使用されます。図面全体を保存して再ロードした後でも発生します。

GetPositionBlock()BlockTableRecordXData に基づいて更新する を取得します。更新する正しいブロックを取得するため、このメソッドにはエラーはありません。

すべての値を再確認しました。同じGUID、名前、またはそのようなものを使用することはありません。問題は のどこかにあるようblockIdです_dataBase.Insert(...)。最初の使用時に一部の値が上書きまたは設定され、その後は何もリセットされないようです。この問題を引き起こす可能性のあるアイデアはありますか? ヒントやヘルプをいただければ幸いです。

0 投票する
0 に答える
111 参照

c# - ブロック定義を AutoCAD にインポートする AC# メソッド

.NET プラグインがそれらのブロックのインスタンスを図面に配置できるように、プログラムでブロックを図面にインポートする方法を作成しようとしています。現在、私の方法は次のようになっています。

そして、私が望むのは、ファイルパスが文字列配列 filesToTryToImport にあるすべてのブロックが、ブロックを挿入するときにオプションとして表示されることです

ここに画像の説明を入力

したがって、たとえば、One-Inch-Block が最初はリストに含まれていなかったが、そのファイル パスがこのメソッドに渡された配列内の文字列として渡された場合、それはオプションになります。

0 投票する
1 に答える
1977 参照

vb.net - winform vb.netにAutodesk Viewerを埋め込む方法

AutoDesk Viewer が Winform に埋め込まれている古いプロジェクトを完成させる必要があります。このプロジェクトは、私が古いバージョンの Autodesk と想定していたものを使用して数年前に行われました。リファレンスを見ると、AxACCTRLLib.AxAcCtrl.dll があることがわかります。autodesk design review 2013 をダウンロードしました。私の質問は、埋め込みビューの .dll ライブラリに別の名前がありますか?. 上記と同じ名前のライブラリが見つからないためです。このプロジェクトは別のコンピューターにあったため、新しいautocadなどをインストールする必要がありました..

以下は、autodesk ビューア コントロールを示すプロジェクトのスクリーンショットです。何か助けてください私はしばらくの間研究を続けてきましたが、成功していません

Winform AutoDeskVwr 組み込み