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

cambio 色のレイヤー, da rgb aci (基本色!)

  • Thread starter Thread starter MauroTC
  • Start date Start date

MauroTC

Guest
全てに
rgb色に関連した層を生成するいくつかのsw3dでエクスポートから得られるdwgの図面は少し多様であり、最終的な顧客は、割り当てられた色が8本(から1〜8)のみであるという要求が要求されます。
自分をよりよく説明するために、左に付随する画像は、顧客が望まない輸出後に持っているテーブルレイヤーの結果です。ただし、これらの組み合わせによると、あなたが望むように、必要に応じて、RGB.png255,0,0 = 1 (赤)
255,255,0 = 2 (黄色)
0.255.0 = 3 (緑)
0.255,255 = 4 (ライトブルー)
128,255,255 = 4 (ライトブルー)
0.0.255 = 5 (ダークブルー)
255,0,255 = 6 (マゼンタ)
255,255,255 = 7 (白)
128,128,128 = 8 (グレー)

「古典的」 rgb2aci から始まるさまざまなソリューションはインターネットの周りは非常にシンプルで、その周りに物事を lisp すると仮定しますが、それはおそらくマップの数値値と少しのバラードの組み合わせのいくつかのケースでは、それ自体が欺くことができるので、それは正確に何をすべきではありません(例 128,255,255)。

誰かが組み合わせのカップルでもリスペスを設定することができた場合、私は非常に感謝します、そして、私はラインを複製することによって自分自身を完了します、そして、いくつかのリスペスの残りを減少させます...

現時点では、私は別の方法で(「ragiona」)実行したマクロコマンドで会い、さまざまなベースカラーに特定のレイヤーを割り当てる)、それはまたオートキャドルトの下に回転する良いですが、ユーザーはカスタムボタンをロードし、リスペスをオンにすることを好むので、オシコを見つけます。
(私のマクロ:^c^c -layer c 2 am_1 c 1 am_0 c 3 am_3 c 3 am_3n c 4 am_4 c 4 am_5; など)

お問い合わせ
 
Last edited by a moderator:
作品を見る
Code:
(defun c:pippo)
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color x (vla-get-color x)))))
)
)
 
作品を見る
Code:
(defun c:pippo)
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color x (vla-get-color x)))))
)
)
お問い合わせ 興味をありがとう、私は明日それをしようとします。 私の無視の底から、私はそれがどのように動作するか疑問に思います。 私は必要な色を処理し、コードで編集するために、そこに何かが何であるかを理解していないと信じていません...?
 
試してみると、説明します。
お問い合わせ
古典的で歴史的な rgb2aci が何をしているかと言うのですが、それははるかに長いスクリプトです!
しかし、同じ "limit" を持っています。つまり、rgb 128,255,255 で "cart" に移動します。代わりに 4 (cian) に変換すると、それは 131 になります(私は理由を知らない)... そして、それは他の色合いでそれを行うことができます。 . . .128.PNGあなたができるならば、私には9つのターゲティングされた変換は良いでしょう。 実際には、私が言ったように、例のカップルは十分でしょう、そして、スクリプトはコードの行を複製するのを完了することができるはずです。 お問い合わせ

私はまた、テストdwgを訓練します...

空室状況を改めてお詫び申し上げます。
 

Attachments

vla-get-color 関数は aci 色を返します。つまり、truecolor の場合、対応する同様の aci です。
例えば、色255,255,0は2(黄色)、色128,255,255は131)を返します。
lisp その後 各層に独自の色を割り当てる、しかしaciとして示される。
下記のアップデートでは、最初の8色に滞在しなければならないので、131のケースは4に変換されます(私はエスケープしました)。
あなたのイメージで示した色ですべての作品は、他の「フレア」はありますか?
Code:
(defun c:xx)
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color x (vla-get-color x) の場合)
)
)
完了したいなら . . .
Code:
(defun c:y )
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-get-name x) "am_0") (vla-put-color x 1))
(= (vla-get-name x) "am_1") (vla-put-color x 2))
(= (vla-get-name x) "am_3") (vla-put-color x 3))
(= (vla-get-name x) "am_4") (vla-put-color x 4))
)
)
 
vla-get-color 関数は aci 色を返します。つまり、truecolor の場合、対応する同様の aci です。
例えば、色255,255,0は2(黄色)、色128,255,255は131)を返します。
lisp その後 各層に独自の色を割り当てる、しかしaciとして示される。
下記のアップデートでは、最初の8色に滞在しなければならないので、131のケースは4に変換されます(私はエスケープしました)。
あなたのイメージで示した色ですべての作品は、他の「フレア」はありますか?
Code:
(defun c:xx)
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color x (vla-get-color x) の場合)
)
)
完了したいなら . . .
Code:
(defun c:y )
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-get-name x) "am_0") (vla-put-color x 1))
(= (vla-get-name x) "am_1") (vla-put-color x 2))
(= (vla-get-name x) "am_3") (vla-put-color x 3))
(= (vla-get-name x) "am_4") (vla-put-color x 4))
)
)
おかげで、2つのソリューション、テスト両方、完璧な!

例外やノベルティの場合には、オートノムースであること:
最初はこんな行を追加するべきだと仮定していますか?
(defun c:xx)
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color x の場合 (vla-get-color x)) 4 (vla-get-color x))))(vla-put-color x (if = 151 (vla-get-color x))))))))
)

スルセカンド、i già executo カルコサ。 . . :

(defun c:y )
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-get-name x) "am_0") (vla-put-color x 1))
(= (vla-get-name x) "am_1") (vla-put-color x 2))
(vla-get-name x) "am_2") (vla-put-color x 7)
(= (vla-get-name x) "am_3") (vla-put-color x 3))
(vla-get-name x) "am_3n") (vla-put-color x 3))
(= (vla-get-name x) "am_4") (vla-put-color x 4))
(vla-get-name x) "am_bor") (vla-put-color x 3))
)
)

ログイン (イ)
 
私はまた、ボタンに割り当てられたマクロコマンドを置くことに興味があるかもしれないそれらの完全性のために、同じ結果を得ることができます(この場合、いくつかの層で管理可能...)、簡単な説明:

C 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

-layer 起動レイヤーコマンド
c コールカラーオプション
1 割り当てる色を選ぶ
am_0 は色を割り当てるレイヤーです。

その後、再び色オプションのc
2 割り当てられる色
am_1 レイヤーを割り当てる

お問い合わせ
 
私は何かを置くことができるとすぐに、最初は良いではありません
 
あなたがこれを使うことができる最初の lisp を取り替えるために、処理したい各特定の色のためのラインを加えて下さい
Code:
(defun c:zz)
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color×)
(コンド)
(=131(vla-get-color x)) 4) 4) 4) 4)
(= 151 (vla-get-color x)) 6)6)
(t) (vla-get-color x) ;--> 示した色がそのaci色を割り当てていない場合
)
)
)
)
このバージョンをコンドで使用することもできます。特に関心のないレイヤーに同じ色を割り当てることができるということです。
Code:
(defun c:hhh) は、
(vlax-for x (vla-get-layers (vla-get-activedocument)))))
(vla-put-color×)
(コンド)
(= (vla-get-name x) "am_0") 1) 1
(= (vla-get-name x) "am_1") 2) 2
(= (vla-get-name x) "am_3") 3) 3)
(= (vla-get-name x) "am_4") 4) 4) 4) 4)
(t 7) ; --> se il 層 nonè tra quelli 表示 assegna il colore 7
)
)
)
)
 
Code:
(defun fnridcolor (r g b / rosso verde blu indice lcolor))
(setq lcolor (リスト8 1 3 2 5 6 4 7))
(= r 128 の場合) (setq r 127)
(= g 128 の場合) (setq g 127)
(= b 128 の場合) (setq b 127)
(setq ロッソ (lsh r -7))
(setq verde (lsh g -7)) )
(setq blu (lsh b -7)))
(setq indice (+ rosso (* verde 2) (* blu 4))))))))
(nth indiceのlcolor)
)
この関数は rgb 値 0÷255 を 0÷1 に変換します。 lsh 関数は、実際には 16 百万から 8. まで写真の色を減らすようなものです。
条件(=R 128)は、解釈的エラーを回避し、128 1と0を考慮して、rgb値128 255 255は、特定のケースで7ではなく4になった。

楽しい
 
lshは私が使用したことがないそれらの機能の1つであり、私はそれを使用して想像できませんでした、少なくとも私はそれが無駄に発明されていないことを知っています... :
 
「機械 linguaggio per msx」を勉強することによって学んだ数字のシフト, 私は自由だった間、ラグサブックケースでチャンスによって見つけた本, 私は軍のcomisoを作った, 年 1989.
関数を使うのは初めてだし、「クレイジーなrhobes」と言った。
 
おはようございますが、私は同じ状況にいるので、私はこの投稿を服用しますが、私はリスペスで新しく、私はそれらを正しく使用して困難を持っています。

autocad 2024 を使用しますが、 rpor66 で示されているコードは "index" の代わりに最後の行に "index" を持たずに "index" のコマンドは不明です。 問題解決方法は? この場合、私は400の図面でこれを行うバッチプロセスが必要になります, 私はあなたがファイルフォルダ上で動作することを可能にするフリーマックwscriptをダウンロードした理由です, あなたはそれを使用する方法を知っている場合を除き、
 

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