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

ラインタイプをスケールアップ

  • Thread starter Thread starter Betoniera
  • Start date Start date

Betoniera

Guest
dwgの設計の量が起こるとき、時々、私の設計および差別化に適さないスケールが付いているタイプ ラインを持つため。
たとえば、同じ設計では、いくつかの行(ポイントラインタイプ)が異なる。
目的は、すべての行をタイプライン = 1 スケールにプログラムのリスペスで持って来ることです。
個別にプロパティを使用して簡単です。
しかし、私は全体の設計のための自動化手順が好きです:ラインタイプスケール = 1にすべての行を報告します
ltscale 変数は、単一のスケーリングを維持するすべての行を比例してスケールするので、良いではありません。
すべての行を行を行型スケール = 1 に報告する変数がわからない
どんな提案がありますか?
お問い合わせ
 
しかし、彼らはラインだけであるならば、なぜすべての選択と1にスケールタイプラインの価値を課したプロパティのパレットで...?
 
ltscaleは、dwgの一般的なタイプのスケールです
個々のエンティティティティの線形スケールは異なり、エンティティティティティティティティティティティティティティティティファクターは、エンティティティティティファクターの型要素によって多岐に渡ります。
この値(もし1)と異なる場合、すべてのエンティティティのグループ48で報告されます(この点では2020のヘルプは非常に欠けています)
 
ご寄付ありがとうございました
バイビー
私はその手順を実行しようとする理由は、私は他の人からインポートされたファイルの「正規化」の lisp 手順を実現していることです。
この正規化では、引用語句、スケール、レイヤーなどを変更してスタイルに合わせて変更します。
ラインの正規化を追加したい。 です。

グループコード48で実験しよう
こんにちは。
 
クリスタル
スケールファクター1とスケールファクター3で2つのトラクトポイントラインを1つ入れてみた
何か好奇心が起こる: スケールファクター3でラインデータを調べると、グループコード48をファクター3で見つけます。
もし、代わりに、スケールファクター1で行データを調べてみると、グループコード48は書いておらず、スケールファクターを抽出するコマンド "assoc 48"は間違っています。
それは正常ですか? お問い合わせ
こんにちは。
 
"この値 (1)とは異なる場合 団体のグループ48で報告されます。
変更する前に、プレゼンスをチェックしてください。(/=(cdr(assoc 48 entity) nil) なら、サブストに進みます。
 
rpor 良い朝
昨日 結果なしで、グループ48のコードに結合することで、一般的なSsgetをフィルタリングしようとしました。 しかし、私はちょうどそこを取得していないと思います。
ヒントはありますか?
(ssget "x"((48 . "*")) ) ) を書いていますが、エラーコードを返します。
 
@cristalloさんのツイート (sget "x" (cons 0 "line") '(-4 . "/=") (cons 48 1)) によるテスト

しかし、ビートンの目的を与えられた、私は、任意の種類のエンティティティをフィルタリングすることなく、すべてのタイプライン= 1を運ぶだろう
Code:
(setq a (sget "_x" ))))
(repeat (setq n (sslength a))))))
(setpropertyvalue (ssname a (setq n (1- n)))) "linetypescale" 1) 1
)
 
お問い合わせ
プログラムを実施しました
- 選択ポイント 1
- 選択ポイント2
- 1 (setq ss1 (sget "_c" p1 p2 ' (0 . "line") (-4 . "/=") (48 . 1)) とコード 48 の行を選択します。
- グループコード、再生などを変更するための各団体のサイクル

gp は 3 ラインおよび仕事を書きます。
私は何を言う? お問い合わせ
皆と感謝のgpへの良いイースター。
お問い合わせ
 
gp は 3 ラインおよび仕事を書きます。
私は何を言う? お問い合わせ
どういう意味ですか? lee mac からの賛辞を抱いた人の答えにカプセル化されています。
❖gp. それとは別に、私はその方法(私はそれを読んで、まだ私の目をひねる)sgetでフィルタリストを構築できるとは思いませんでしたが、深刻な問題は、グループ48がすべてのエンティティティに共通しているので、私はラインを取ることではありません。
私はフィルタリングリストでワイルドカードを使用するようにしました(あなたができることを言う助け)が、それはいつも私に間違いを犯します。 .
 
・・・ 私はちょうどラインを取ることはありません...
ssget を使って 1 と異なる scalatypelinea でオブジェクトを選択(setq a (sget "_x" (list '(0 . "*line") '(-4 . "/=") '(48 . 1))))))))
選択する ライン、多ライン、lwpolyライン, スプライン(setq a (sget "_x" (list '(-4 . "/=") '(48 . 1)))))))))))
選択する すべて オブジェクト(setq a (ssget "_x") (list '(0 )). "line,arc,circle,text,lwpolyline,spline,ellipse") '(-4 . "/=") '(48 . 1))
選択する リストされているオブジェクト

: : :
 
お問い合わせ
私の知識は、私は何か興味深い私はノートを取る何かを見ると、彼らがリスペスのグルスを書いたフォーラムでさまざまから来ます。
フォローアップ セクション: : :
(sget "_+.:s:e:l" '(0 . "line"))))フィルター説明:
Code:
:sは選択を一度だけ可能にします
+. 以前インサート:s は 'point' モードのままに ' ssget' を強制します。
車を 0 に選びます
基本的にはPickboxで選択し、選択窓を開けない
:and オブジェクトを pane 経由で一度にキャプチャします。
選択(pickbox)とウィンドウを経由しない
:l ブロックされたレイヤーを除く
_the 最後の "visible" オブジェクトがデータベースに追加
_ 「アンダースコア」がローカライズされたバージョンから英語でコマンドを起動
wp :s ではなく x cp i l p :e で必要
_a all(all) を "x" とするが、 "freeze" フィルターで
霜を取り除くレイヤーのすべてのオブジェクトを選択できます。
_b ボックス - 2つのポイントで指定された長方形の内側または交差するすべてのオブジェクトを選択します。
右から左にポイントを指定した場合、ボックスは「交差」と等価です。そうでなければ「ウィンドウ」に
:d 重複、それ以外の重複は無視されます
:無視された層ブロック
:p 無視ビューポート
x 高度な検索 (完全な検索データベース), ssget フィルターがすべて選択されていない場合
データベースのエンティティティティ, 凍結層のエンティティティティを含む、可視画面外.
また、コマンドプロンプトで「オブジェクトの選択」を追加、削除、キャンセルできます。
混合型キャプチャ(sget "_x" (list '(8 . "pippo") '(0 . "line") (cons 62 5))))
(sget "x"(0 . "text,mtext,line,arc")(8 . "lines")))
ライン層の赤と黄色のオブジェクト:
(sget "_x"(8 . "lines")) . . "<or") "or="" (-4="" (62="" .="" 1)="" 2)="">ツイート
</or")>2つのレイヤーでオブジェクトを選択変数値を選ぶ(setq lay1 "pippo")
(setq lay2 "pluto")
(setq 塩 (sget "_x" (list (cons 8 (strcat lay1 "," lay2)))))) (cons 0 "circle"))))))レイヤーの名前を知る(setq a (ssget "_x") (list '(8 . "pippo,pluto") (cons 0 "circle")))
aとbから始まるテキスト(sget "_x" ((0 . "text,mtext")(1 . "a*,b*"))))))
ポリリン・コン・アーキ(sget "_:l" '(0 . "lwpolyline") (-4 . "<>") (42 . 0.0)))
アーチなしのポリライン (sget "_x" '(0 . "lwpolyline") (-4 . "<not")(-4 "<="" .="">(42). 0.0)(-4 . "not>")
</not")(-4>ポイントでオブジェクトを選択(ウィジェットpt)
許容値(0.001)で「pt」ポイントを通過するオブジェクトを選択します。(sget "_c" (mapcar ' pt '1e-3 1e-3))
クローズドポリラインを選択 (ssget '(0 . "*polyline") (-4 . "&") (70 . 1)))))
...1000の他の組み合わせ;)
 
マニュアルを見逃す!
マニュアルが非常に欠けているリストフィルタにあります。 できるということをお伝えしますが、スクラッチ例を挙げて閉じます。
既に (-4 . ) の使用は説明されていません, 複数の条件では、それは欠けています.
実体グループ(0 . "line,block")または_o でコンマの使用を初めて確認します。
使用する (-4 . "<>) : どういう意味ですか?
あなたがそれらをネストしました -4 開いて閉じていない (そして、ここに私は理解しています) しかし (-4 . "<>") (42 . 0.0) それは何ですか? ?
お問い合わせ

バージョン12のマニュアル(ペーパー!!)で lisp を学習しました(2012年ではありません)。 12 の適切な)。
私は、2010年は、2020年の単純に基本的な12のそれと比較して、リズス減力剤の助けを見つける。 私は、回帰を意味します。
 
dxf 42 は lwpolyline の湾曲を参照します。entget を見ると、頂点ごとに値があることがわかります。0.0 に値すると、セグメントがまっすぐになります( < > 0.0)
理論では、そうでなければできない(-4 . "=") (42 . 0.0)

私はそれを良い言うためにそれを取る SALUTO.gif
 
ご寄付ありがとうございました
他の人が書いた gp と dwg のコードでテストすることで、調査したくなかったエラーが生成されることがあります。
私は持っている, しかしながら, 私はGPの代替として利用できる次の代替プログラムを終了.
お問い合わせ

;すべての行をスケール要因1に変えて下さい
(setq ss1 (ssget "x" ((0 . "line"))))))))))))。すべての行を選択
カウント 0 ;azzera カウンター
emax (sslength s1) ;number
)
(ただし、< カウント emax) ; 各機関のサイクル
(setq en (ssname s1 カウント) ;prileva entita
と (entget en) ;プライベートデータ
el (assoc 48 e);Preleva la scala linea コード 48
el1 (cons 48 1);新しいスケールの定義 (48 . 1)
そして(subst el1 el ed);新しいスケールを取り替えて下さい
)
(entmod ed)
(setqの計算(1+の計算)
;;;
 
ビトニエラシアーノ
あなたのコードは、最初の視力で、すでに行の scale=1 のグループ 48 が存在していないので、エラーを与える必要があります。(setq el) は nil を与え、サブストが間違っています
 
しかし、彼はそれを与えません。
そのため、コード48をフィルタリングしませんでした。
疑いの場合には、追加のフィルタを追加することができます。
こんにちは。
 

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