AutoLISP入門 関数紹介

条件分岐の相棒!AutoLISPの論理演算を解説

※当サイトではアフィリエイトおよびGoogle Adsenseの広告を掲載しています。

こんにちは!はこです。
AutoLISPを独学で覚えて、5年以上業務で使用しています。

今回の記事ではAutoLISPの論理演算について解説してきます。

論理演算と聞いて難しいそうと感じる方もいらっしゃると思いますが、やっていること自体は単純ですのでご安心ください。

条件分岐の関数と組み合わせれば、AutoCADの作業を効率化してくれますのでぜひご覧ください。
関連記事:動作の流れを操る者!AutoLISPの条件分岐を解説

条件分岐の相棒!AutoLISPの論理演算を解説

論理演算とは

論理演算とは簡単にいうと、ある入力値に対して「1(真)」または「0(偽)」のどちらかを返す計算のことです。

また、入力値も「1(真)」または「0(偽)」のどちらかです。

はこ
はこ

もっとざっくりいうと、白黒はっきりさせる計算です。

AutoLISPでは「1」の代わりに「T」、「0」の代わりに「nil」が使われます。

「1」か「0」が分かることで、「AならばBをする」といった分岐の判定ができます。

論理演算関数の書き方

論理演算関数は次のように書きます。

引数とする式は比較演算関数を使用する場合が多いです。

比較演算関数については下記の記事をご覧ください。
関連記事:数値の大小関係を判定!AutoLISPの比較演算を解説

論理演算関数の書き方
  • 論理積 (and 式1 式2 ・・・)
  • 論理和 (or 式1 式2 ・・・)
  • 否定  (not 式)

論理積 and

引数の式がすべて「T」を返す場合に「T」を返す関数です。

1つでも「nil」を返す式があると「nil」を返します。

andの例

(and (< 1 2) (= 3 3))
⇒ T

(and (> 2 3) (> 4 3))
⇒ nil

論理和 or

「T」を返す式が1つでもある場合に「T」を返す関数です。

すべての式が「nil」の場合は「nil」を返します。

orの例

(or (> 1 2) (= 3 3))
⇒ T

(or (> 2 3) (> 3 4))
⇒ nil

否定 not

引数の式が返す結果を反転する関数です。

式が「T」を返す場合は「nil」、「nil」を返す場合は「T」を返します。

notの例

(not (= 3 3))
⇒ nil

はこ
はこ

notで引数で指定できる式は1つだけです。

まとめ

今回の内容をまとめます。

今回のまとめ
  1. 論理演算とは
    • ある入力値に対して「1(真)」または「0(偽)」のどちらかを返す計算
  2. 論理積 (and 式1 式2 ・・・)
    • 引数の式がすべて「T」を返す場合に「T」を返す
  3. 論理和 (or 式1 式2 ・・・)
    • 「T」を返す式が1つでもある場合に「T」を返す
  4. 否定 (not 式)
    • 引数の式が返す結果を反転する

記事の内容やAutoLISPのことでよく分からないところがあるようでしたら、コメントやメールでお気軽にご連絡ください!

もっとプログラミングを勉強したい方にはオンラインプログラミングスクールがおすすめです。
こちらの記事ではおすすめのプログラミングスクールを紹介していますので、ぜひご覧ください!

学習目的別にご紹介!おすすめオンラインプログラミングスクール3選

無料体験もできるプログラミングスクールです!

AutoCADが楽になるツールを作成します AutoCADを効率化して面倒な作業から解放されましょう!

-AutoLISP入門, 関数紹介

AutoLISPのおすすめ書籍はコチラ