問題タブ [autolisp]

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 投票する
2 に答える
2437 参照

visual-c++ - LISP を使用した .arx ファイルのロードとアンロード

AutoCAD 用の .arx アプリケーションはほとんどありません。これらのアプリケーションでは、メニュー ベースのものはほとんどなく、その他はコマンド ラインです。今、私がやろうとしていることは、

  1. .arx アプリをロードし、
  2. それを実行してから
  3. .arx アプリケーションが LISP コマンドを実行したら、アンロードします。提供されたタブをユーザーがクリックすると、.arx アプリケーションが実行されます。.arx アプリケーションは VC++ で記述されています。

これで、ユーザーが AutoCAD を起動するとロードされる Lisp ファイルができました。Lisp ファイルで、さまざまな .arx アプリケーションに対してこれらの関数を宣言しました。

(defun c:XYZ_program() (コマンド) (コマンド) (arxload "C:/ABC/XYZ.arx") (コマンド "XYZ_program") (arxunload "XYZ.arx") )

メニューベースのフォームからの入力データが必要なプログラムでは問題なく動作しますが、コマンドライン入力が必要なプログラムでは xyz.arx のアンロード中にエラーが発生します。

LISP に、arxunload "XYZ.arx" が 1 回だけ実行されるようにするコマンド (コマンド "XYZ_program") が実行されるかどうか疑問に思っていました。

この問題にアプローチする方法がわかりません。同じことで助けていただければ幸いです。

私が現在使用しているコードはこれです;

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

lisp - LISP で複数のコマンドを順番に実行する

AutoCAD で .arx アプリケーションを実行しています。AutoCAD のカスタマイズされたタブをクリックすると、AutoCAD のコマンドラインでプログラムが実行されます。実行する LISP 関数は次のとおりです。

実行する必要があるプロセスは、「.arx をロードする」->「完全に実行する」->「.arx をアンロードする」です。

メニュー ベースの入力駆動型 .arx に対してこれを実行すると正常に動作しますが、一部のプログラムで AutoCAD のコマンド ラインからの入力が必要な場合、「アンロードに失敗しました」というエラーが表示されます。

ここで行われているプロセスは、「arx の読み込み」->「コマンド ラインからの実行」->「arx が完全に実行される前に実行され、エラーが発生する」であると思います。

これに関する任意の助けをいただければ幸いです。

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

compilation - AutoCAD Lisp ファイルのビルドの自動化

私は巨大なLISPプロジェクトを持っています。このプロジェクトを単一のファイルにコンパイルするprvことを許可するファイルを作成しました(ファイルもコンパイルします)。問題は、autocad の外部またはコマンド プロンプトからプロジェクトをコンパイルできないため、スクリプトを使用してビルドを自動化できないことです。VLIDEvlxfasvlx

問題は、これを行う方法はありますか? fas-vlxautocad の外部からコンパイルできますか? または、autocad をコンパイルして autocad を閉じるスクリプトを指定して autocad を起動できprvますか?

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

autocad - AutoLISP のドラッグ アンド ドロップ コマンド

私はautocadのLispを書いていますが、それを作成する最終段階にいます。テキスト ファイルを図面にドラッグ アンド ドロップするのと同じコマンドを記述したいと考えています (これにより、テキスト ファイルのコンテンツを含むマルチ テキストが図面に作成されます)。コマンドを知っている人はいますか?

ありがとうございました。

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

c# - AutoLISP のレガシー コードを C# に変換する最も効率的な方法は何ですか?

主に AutoCAD を使用して、屋根トラスなどのプレハブ建築コンポーネントを設計および製造するプロジェクトに取り組んでいます。私たちの目標の 1 つは、LISP で作成された屋根トラスの設計に機能するプログラムを再設計することです。LISP コードを C# で書き直して、彼らがセットアップした現在のライブラリに段階的に実装する予定です。

私の問題は、初歩的な LISP から C# へのコンバーターを作成する任務を負っていることです。いくつかの調査の後 (Google の結果は、そのようなものはすぐに手元に存在しないことを示しているため)、このレガシー コードを変換する方法がより効率的であるという問題に行き着きました。LISP コードのチャンクを分析して C# で書き直したほうがよいでしょうか、それとも AutoLISP コードの初歩的なコンバーターの開発を続けるべきでしょうか?

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

autocad - 極座標を使用して AutoLISP でスタックする

ええと、私はちょっと立ち往生していて、何をすべきかわかりません。AutoLisp を使用して五芒星を描画するプログラムを作成する必要があります。私は AutoLisp プログラミングの知識はありませんが、なんとかこれを書きました。私には正しいように思えますが、AutoCAD は何も描画しません。多分誰かが助けることができますか?(長い数字はラジアン単位の角度です) コード: