Gimp2.6で使える関数
- ベクター -

 一覧にある関数はとりあえず、使えそうな関数です。
 現在のところ、確認は、2.6.10で行っています。


 ベクターは、固定の長さの配列で、先頭を 0 とする位置指定で読み書きできるものです。

ベクター
定数 #( [ member ]* )
ベクターの定数

ベクターの定数は、#( で始まり、メンバーを並べ、最後に ) で終わります。

vector? ( vector? expr )boolean
ベクターか?

expr がベクターならば #t、そうでなければ #f を返します。

make-vector ( make-vector sizeinteger [ v ] )vector
ベクター生成

size 個の大きさのベクターを生成して返します。v が指定されていれば、すべてのメンバーを v で初期化します。

>(make-vector 5)
#( () () () () () )
>(make-vector 5 "st")
#( "st" "st" "st" "st" "st" )
vector ( vector [ v ] )vector/td>
ベクター生成

v をメンバーとするベクターを生成して返します。

>(vector)
#( )
>(vector "山田太郎" 18 "東京")
#( "山田太郎" 18 "東京" )
vector-length ( vector-length vec)integer
ベクターの大きさ

ベクターの大きさを返します。

(vector-length #())
0
(vector-length #( 1 2 3 ))
3
vector-ref ( vector-ref vecvector posinteger )
メンバー読み出し

ベクター v の pos 番目のメンバーを読み出して返します。
位置は先頭を 0 として数えます。

>(vector-ref #(1 2 3) 0)
1
vector-set! ( vector-set! vecvector posinteger v)
メンバー書き込み

ベクター v の pos 番目のメンバーを v に置き換えます。(変更されたベクター v を返すようです。)
位置は先頭を 0 として数えます。
ベクターが直接書き換えられる点に注意してください。

>(vector-set! #(1 2 3) 2 4)
#( 1 2 4 )
>(define a #("山田太郎" 18 "東京都"))
a
>(define b a)
b
>(vector-set! a 2 "大阪府")
#( "山田太郎" 18 "大阪府" )
>a
#( "山田太郎" 18 "大阪府" )
>b
#( "山田太郎" 18 "大阪府" )
vector->list ( vector->list vecvector )list
ベクターをリストに変換

ベクター vec をリストに変換して返します。

list->vector ( list->vector lstlist )vector
リストをベクターに変換

リスト lst をベクターに変換して返します。

vector-fill! ( vector-fill! vecvector v )
埋め尽くす

ベクター vec のメンバーすべてを v で置き換えます。

>(define v #(1 2 3 4))
v
>(vector-fill! v 4)
#( 4 4 4 4 )
>v
#( 4 4 4 4 )

アルゴ算法堂へ戻る