投稿

6月, 2022の投稿を表示しています

ブログの説明

学校に通わないで学んだことを記しています。間違っているところが何かありましたらご指摘下さると幸いです。コメントに対する返信が遅れる可能性があります。その場合は申し訳ありません。

このブログではサイドバーに広告を表示しています。このブログ内の投稿記事を検索するには右上の拡大鏡のアイコンを、アーカイブやラベル付けから投稿記事を閲覧するには左上の三重線のアイコンをクリックして下さい。

数式の表示にはMathJaxを利用させていただいています。数式の表示のためにJavaScriptが有効である必要があります。そうでない場合、訳の分からないLatexのコードが表示されます。幾何学図形やチャートの表示にはHTML5 CanvasやGoogle Chartを使用しています。その表示のためにもJavaScriptが有効である必要があります。

LibreOffice Basic ユーザーが定義するデータ型(構造体)

ユーザー定義のデータ型(構造体) この投稿ではLibreOfficeかApache OpenOfficeのマクロ言語であるBasicにおいてユーザー定義のデータ型を宣言する2種類の方法について記す。 ユーザー定義のデータ型はカスタム・データ型と呼ばれていることもある。それは型の違いに関わらず1つ以上の変数をまとめて1つのデータ型とし、そのデータ型に名前を付けたもの。その要素となる変数はメンバーと呼ばれている。 ユーザー定義のデータ型はC言語で言うところの構造体、Pascalで言うところのレコードによく似ている。Pythonの辞書にも似ているが、辞書はハッシュ・テーブルの一種であると解釈されるものかもしれない。 構造体やレコードとクラスとの違いは、構造体やレコードがデータ・プロパティだけを持ち、コード・プロパティを持たないこと。データ・プロパティとは単にプロパティと呼ばれていたりメンバー変数と呼ばれていたりするもの。コード・プロパティとはメソッドと呼ばれていたりメンバー函数と呼ばれていたりするもの。 LibreOffice BasicまたはApache OpenOffice Basicでは、ユーザー定義のデー型(構造体)を次のような2種類の方法で定義することができる。 Type宣言を用いる方法。 UNO(Universal Network Objects)を利用する方法。 Type宣言を用いて構造体を定義 モジュール内のサブルーチンの外にType宣言を記述することによって構造体を定義することができる。 Type宣言はサブルーチンの外側に置く必要があり、Typeというキーワードによって始まり、End Typeというキーワードによって終わる。 次の例では出版物の属性をひとまとまりにしたBooksという構造体を定義している。 REM ***** 構造体を定義 ***** 'VBA拡張 Option Compatible 'Typeを用いた構造体宣言 Type Books BookTitle As String Subtitle As String Author As String Translator As String Publisher As String PublicationDate As D

HTML5 Canvasで矢印を描いてみた(三角関数を利用)

この投稿ではHTML5 Canvasの2次元コンテキストのAPIを利用して矢印を描くJavaScriptのコードを書いてみた。 ここで描く図は次のようなもの。 このウェブブラウザはHTML5 CanvasかJavaScriptに対応していません。 たったこれだけ。にもかかわらずコードのほうはオブジェクト指向の体裁になるように汎用性を多少持たせてやや大げさに設計してみた。これを更に発展させれば低次元のベクトル空間を描けるものになるかもしれない。 HTMLのcanvas要素 矢印を描くためにHTML5 Canvasの2次元コンテキストのAPIを利用するので、HTML文書のbody要素内にcanvas要素を記述しておく必要があった。それは例えば次のようになる。 <canvas id="arrow" width="250" height="250"> このブラウザはHTML5 CanvasかJavaScritが有効ではありません。 </canvas> canvasタグのid属性にはこのcanvas要素を一意に特定するための名前を指定する。ここではarrowとした。 widthはキャンバスの幅。heightはキャンバスの高さ。 HTML5 Canvasが有効でないときにはcanvasタグに挟まれた部分の文字列が表示される。 JavaScriptのコード JavaScriptのコードはscriptタグで挟んだscript要素内に記述する。script要素はHTML文章のbody要素の後に置くことが望ましい。少なくともcanvas要素の後である必要がある。 </body> <script> // JavaScriptのコード </script> </html> そうでなければ、例えばcanvas.jsと名付けた別のファイルに保存し、HTML文書内から次のように呼び出すこともできる。 <script type="text/javascript" src="arrow.js"></script> 矢印オブジェクトを返すファクトリ函数 まず矢印オブジェク