• このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

メニュー項目にインサートされたオートリスプシーケンスを繰り返す

  • Thread starter Thread starter Gio_S
  • Start date Start date

Gio_S

Guest
夕方は、最後に実行したコマンドだけでなく、オートリスプでショートシーケンスで作ったメニューアイテムも、繰り返して右クリックする機会があるかどうか疑問に思います。
私は継続的に行動したいので、私は問題の生まれます, 繰り返しショットで, cadaunaユニットを選択, 単に実行されたメニュー項目をリコール.
残念ながら、カスタムメニュー項目に入力したファイルコードを実行するだけで、正しいマウスボタンをクリックすると、最後に実行された最後のコマンドを再プロポーズしますが、通常のオートカドコマンドを参照します。 autolisp で書いた "custom" は "remember" ではありません。
クリアだったらわからない...
お問い合わせ
お問い合わせ
 
k で動作するかどうかはわかりませんが、メニュー項目に * を適用すると、メニュー項目コード/コマンドで ctrl-c を入力するまで繰り返します。

代わりはコマンド(c:...) ie を定義できます。
Code:
[voce di menu]^c(defun c:mio_comando ( ) ... . . . )(c:mio_comando)
送信することで繰り返します。
 
ヒントのおかげで、メニューにアスタリスクを置くべき場所は? 音声です。[Block positive X scale]^c^c^p(setq spex(entget(car(entsel))))(setq ox(assoc 41 spex))+ (prompt (strcat は肯定的な x を書きます) (setq nx (* -1 (cdr ox))))) + (setq spex(subst(cons 41 nx)(assoc 41 spex)))))+ (entmod spex)(setq ox (assoc 41 spex))(princ)) ) (princ) )私は試した lisp の c コマンドで、それは繰り返し動作しますが、私はあまりにも多くの機能を defunct の sololisp 編集に置くために使用します。 . そう, それははい動作します, しかし、それは私にファイルリスペスのすべての私のコマンドの間の選択を与えます.
私は自分自身でこの機能を壊す必要がありますが、私は私の拡張子を破壊するのに嫌われています。
とにかく、私はちょうど通常の選択でコマンドを入力するので、私はループに送信されたブロックで動作し、これはとにかく私をスピードアップ...そしてそれがブロックが見つからない場合、それはエラーを回避する方法によって(彼らはブロックではない別のエンティティティを選択した場合、メニューから私に起こります)。

しかし、私はアスタリスクについて好奇心です... 私は様々なポジションを試してみましたが、いくつかは認識されていないコマンドエラーを与えます。他の人は考慮に入れず、コマンドは何もしません。 私はアスタリスクを置く場所をよく理解しなかった
お問い合わせ
 
ありがとうございます! 今のテスト, 何も, 私のintellicadは、エラーを与えませんが、それを無視します, 繰り返しは、以前のコマンドを使用します, 私は疑問を取り除き、ありがとう, そして最後に、私は、私の一般的な使用拡張にインサートされたリスペスブロックの手段によって、編集を強固にしました.
メニューから「ショート」のコードには多くの欠点があり、ブロックでないとエラーが発生し、オブジェクトを強調せず、特にxの記号を交換します。この場合、それは既に正当に負になります。 おそらく誰にも利益をもたらすが、正しい最終コードを置く。
私は私がstlのための私のアーカイブの非常に多くの私のモデルで奇妙な出来事を発見したので、私はフラリとして働いています。 多くの場合、ハーフカーなど、全モデルのミラーを使用して、すべてのミラー化されたブロックは、x の記号がネガティブに変わった。
彼らは対称ブロックであるので、設計キャドのための結果なし, 軸の鏡面 ... しかし、各ブロックの顔は、頂点を想定した反対の順序の内側/外側に交換しているため、stlですべての問題. スレートの災害について
私は実際に鏡の後に顔を固定するルーチンをしましたが、明らかに私に「逆」ブロックを残しました。 一度exploded (アーカイブでは、私は確かに爆発したブロックを保持しない) stlに全体を転送するには、各顔が間違っていた(変換1,2,3は3,2になりました)

Code:
(defun の陽性グリッド()(setq memblock 0)
(prompt "\nrendeポジティブラスケーラXネボカセレスティーティ <point cro="" las="" pre="" win="">.")
(setq の ssget))))
(もし(/= selez nil))
(プログ)
(modalite)(setq l (sslength selez) (setq l (1-l))) (setq a 0))
(ただし、<= a l)
(プログ)
(setq ename(ssname selez a))))(setq alist(entget ename))))))
(例: "insert"(cdr(assoc 0 alist))))))
(プログ)
(setq ename(ssname selez a)))))))
(setq spex(エントリ名))))
(setq ox (assoc 41 spex))) (setq ox (assoc 41 spex) (setq ox))) (setq ox (assoc 41 spex) (setq ox))) (setq ox (assoc 41 spex)))) (setq ox (setq ox (assoc 41 spex)))) (setq ox (setq ox (assoc 41 spex))) (setq ) (setq ox (setq ox (assoc 41 spex)) (setq )) (setq (setq (setq (setq ) )) ) ) )
(もし(<(cdr ox) 0))
(プログ)
(prompt (strcat "\nwriting x sign"))))
(setq nx (* -1(cdr ox)))))))))
(setq spex(サブスト(cons 41 nx)))
(アスコット41スプックス)
(entmodのspex)
(setq ox (assoc 41 spex))) (setq ox (assoc 41 spex) (setq ox))) (setq ox (assoc 41 spex) (setq ox))) (setq ox (assoc 41 spex)))) (setq ox (setq ox (assoc 41 spex)))) (setq ox (setq ox (assoc 41 spex))) (setq ) (setq ox (setq ox (assoc 41 spex)) (setq )) (setq (setq (setq (setq ) )) ) ) )
(setq memblock 1)
)
)
)
)
)
(setq a(1+ a)))
)
(if(/=memblock 0))
(prompt "\nxの成功.")
(prompt "\nno ブロックを選択) ツイート
)
(リプリストン)
)
)
)</point>
 

Forum statistics

Threads
46,674
Messages
380,976
Members
2
Latest member
loop80
このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

Members online

No members online now.
Back
Top