関数型⾔語?まずは気にせず始めてみよう/関数型言語としてのAutoLISP/LISPとしてのAutoLISP/AutoLISPで通る道
Visual LISP で AutoLISP プログラミング。最初の一歩!
ファイル拡張子/名前空間/拡張AutoLISP関数/AutoCADにアクセスする三つの方法
作ったプログラムは、AutoCADでいつでも直ぐに使えるようにしたい。プログラムの自動ロードの方法は?
再帰関数は聞き慣れないと難しそうなものに思えますが、いったいどういったものでしょうか?
プログラムを書いて、一度の訂正もなく完成することはまずありません。Visual LISP 上での有効なデバッグの手順を整理します。
プログラムを構成する関数は複数のファイルに分割して保存していきます。Visual LISP のプロジェクト機能は、複数のファイルを簡単に管理できる機能です。
自作の関数が一つ二つと増えてくると、これらの関数を他のプロジェクトでも使いたいと思うのは自然な発想です。再利用可能な関数について考えます。
再利用可能な関数は、プロジェクトとは別の所にライブラリとして蓄積していきます。このライブラリから適切に関数をロードしてくる仕組みを考えます。
Visual LISP のプロジェクト機能と独自の関数ライブラリ機能を使って作ったプログラムから独自の名前空間 VLX アプリケーションを作成します。
AutoCAD 2021 から AutoLISP の開発環境の主役が Visual Studio Code に移ることになりました。ここでは Visual LISP を使ってきた方むけに変化した点を説明します。
LISP プログラミングをはじめて、犯しやすいプログラミングミスを、個人的な体験から挙げておきます。
関数型言語は、手続き型言語といったい何が違うのでしょうか。AutoLISP で使える関数型言語スタイルを紹介します。
関数型言語の特徴である関数の合成についてとりあげます。小さな関数を組み合わせる便利な手法です。
関数型言語では再帰関数と匿名の関数は重要です。しかし二つ合わせた匿名の関数の再帰関数は普通のやり方では書けません。どうしたらよいのでしょうか?
関数の合成は便利な手法ですが引数の数など制約があります。ここでは部分適用という手法を使って複数の引数を持つ関数を合成可能にする方法を紹介します。
AutoLISP でも Common LISP の構造体を使えるようにします。構造体はデータ構造を抽象化する手法です。
AutoLISP のリストは速度の面で避けがたい問題にあたることがあります。そういった場合に使えるのが、配列です。
AutoLISP 標準の文字列用の関数は SHIFT_JIS には対応していません。SHIFT_JIS に対応した文字列関数を作成してみます。そして AutoCAD 2021 からの UNICODE への変更も説明します。
AutoLISP でオブジェクト指向プログラミングが可能となる枠組みを作成します。ここではデータであるプロパティと手続きであるメソッドを組み合わせたクラス定義を行います。
AutoLISP でオブジェクト指向プログラミングが可能となる枠組みを作成します。ここでは多重継承をサポートしたインスタンスの生成とメソッド呼び出しの仕組みを作成します。
VisualLISPの使い方
Visual LISPはAutoLISPプログラミングにおける統合開発環境です。
LISP独特の言葉遣いなどから、すこし取っつきににくいかもしれませんが、必要十分な機能を備えています。
AutoLISPプログラミングは、Visual LISPを使いこなすことからはじめましょう。
AutoLISP は AutoCAD のコマンドを拡張するのに主に使われますが、LISPをベースにした強力なプログラミング言語です。
ここではコマンド作成から一歩離れて、AutoLISP という言語に入門してみましょう。AutoLISP を深いレベルで理解すると、新しいAutoCADの可能性が見えてきます。
AutoLISP を使って AutoCAD のカスタムコマンドを作成してみましょう。
ここではコマンドの内容はシンプルなものを扱いますが、堅牢で使い勝手の良いコマンドとなるように、インターフェースの作り方を本格的に取り上げます。
AutoLISP から ActiveX を使う方法を採り上げます。これはオブジェクト指向に慣れているならば、自然と理解できるアプローチとなっています。
さらに、ここでは ActiveX オートメーションについても取り上げます。AutoLISP から Word や Excel といった外部アプリケーションにアクセスすることで AutoLISP で可能となるプログラミングの世界が大きく広がります。
AutoCAD の図形操作に必要な幾何的な問題を取り上げます。
ここでは主に AutoCAD の座標系について説明します。これは AutoLISP で図形を操作する上で必要な事項であり、理解することで自在に三次元空間上で図形を扱うことができます。
また、AutoLISP 備え付けの幾何関数と線状の図形を解析するカーブ関数を取り上げます。
AutoCAD の世界では、例え小さなものでもアドオンのコマンドやプログラムのことを「アプリケーション」と呼びます。
作成したアプリケーションを広く使ってもらうには、分かりやすく使いやすいこと、どの環境でも安定して動作することが必要です。ここでは、整ったアプリケーションを制作する際に必要となる話題を取り上げます。
Common LISP の標準関数を AutoLISP で使えるように独自に作成したライブラリです。ANSI であるCommon LISP の標準関数は洗練されており有用なもので、あなたのプログラミング作業を軽減し、コードを明快に組み立てて行くことが出来るでしょう。
- Mental ray - Autodesk Library Sample Book - AutoCAD 2011 -
AutoCADやRevitなどに付いてくる3DCD用マテリアルであるAutodeskライブラリを実際にレンダリングしてみたサンプルブックです。
227MB 無料PDF - Free PDF Content.
タイトルをクリックすると、Google Driveにアクセスします。そこでは(巨大PDFのため)プレビューが出来ない旨が表示されます。そこからDownloadボタンで進んでいただくと、次はウィルスチェックをが出来ない旨が表示されます。(ここは信用していただいて、)もう一度Downloadボタンを押してください。
有料コンテンツ Paywall
とある一級建築士・インテリアデザイナー(インテリアプランナー/インテリアコーディネーター)、長年のAutoCADユーザー。第1種情報処理技術者で趣味でプログラムを組んでいます。
I am a Architect. A User of AutoCAD for many years, and Hobby Programmer.
お気づきの点があれば、下記メールアドレスまでご連絡ください。すべてには返信しかねますので、ご了承ください。
If you want to contact me,Please e-mail to under address. But please understand I can't replay `ALL' contacts.
e-mail : manualchairjp@gmail.com...