概要
ALIBVectorは、アートロジック社が供給しているラスタベクタ変換ライブラリ(1999年にリリース)の簡易バージョンで、
2006年の8月にリリースされました。
フルセットのライブラリから頂点、辺の選択・削除・追加・移動といったベクタ編集に関連する機能は省かれていますが、
輪郭ベクタ変換、芯線ベクタ変換といった変換に関する機能は全て残されています。
ベクタ編集機能はありませんが、編集機能は自前のCAD編集ソフト等の上でまかなうユーザーにとっては不都合は全くあ
りません。変換機能は、従来のAPIと同等の機能をより簡潔なAPIで実現することができるように改良されています。
ALIBVectorでは以下の機能をサポートしています。
- 輪郭ベクタ変換機能
図形の輪郭をラスタベクタ変換します。紙型や金型のような面図形に対して、この機能を呼び出します。パラメータに
よって、頂点の数を制御することができます。頂点の数を少なくすると、データ量は減りますが変換精度は低くなります。
逆に頂点を多くすると変換精度は高くなります。2007年のバージョンアップによって精度が格段に向上しました。
- 芯線ベクタ変換機能
図形の芯線をラスタベクタ変換します。線図形に対して、この機能を呼び出します。パラメータによって、頂点の数を
制御することができます。
- 近接頂点の統合
近接する頂点をひとつに統合します。精度をあまり変えずに頂点数を減らす効果があります。
- 直線上の不要頂点の除去
直線上にある頂点を不要な頂点として削除します。精度をあまり変えずに頂点数を減らす効果があります。
- コーナー鮮鋭化
コーナーを先鋭化します。コーナー部分に近接した複数の頂点がある場合に、鋭いコーナーを形成するように頂点を再配置します。
- 正円補正
ほぼ円形に並んだ頂点集合を探し出し、正円上に再配置します。
- 交差点補正
十字路、T字路を補正して、ひとつの頂点で直線が交差するように整形します。
- スプライン変換
ポリゴンやポリラインをスプライン変換します。
- 円弧近似
ポリゴンやポリラインの辺を円弧近似します。近似する円弧は、最小半径と最大半径でコントロールします。
直線部分は、無限半径の円弧となりますが、最大半径があるため円弧近似されずに直線のままとなります。
円弧近似の結果は、辺の始終点と辺に対応する円弧の中心座標と半径で取得することができます。
- 座標アクセス
ポリゴン、ポリラインの頂点座標にアクセスすることができます。
辺単位のアクセスも可能です。円弧近似している場合、辺単位のアクセスによって、各辺に対応する円弧の中心と
半径の取得が可能です。
- dxfファイル保存
全てのポリゴンをdxfファイルとして保存します。POLYLINE、LINE、ARCエンティティを出力することができます。
SPLINEエンティティには対応していません。
スプライン変換したものは、スプライン曲線に沿った座標列をPOLYLINEエンティティとして出力します。
バージョン2
ALIBVectorライブラリは、2007年8月に大幅にバージョンアップして、大幅に変換精度をアップするとともに新しい機能
を追加しました。
従来よりも大幅に少ない頂点数で、より画像に忠実な高品質変換を5倍以上の速度で実行することができます。
- 新機能:破線変換機能
破線を、個別に分かれた短い線分ではなく、ひとつの破線オブジェクトとして認識可能。
→改良後
- 新機能:点変換機能
孤立点を点として認識する。
→改良後
- 速度向上:変換速度を従来の約5倍向上
A0超(25000×20000ピクセル)の等高線と地図記号を含んだ地形図で測定。従来は芯線変換に150秒を要していたものを
27秒と5倍に改善。A3程度の地積図は2~3秒で変換。
- 精度向上:連続線分上の不要頂点除去機能の強化
従来のアルゴリズムの強化とともに、「削除しても精度に影響が無いなら削除する」という新しいアルゴリズムを導入。
- 精度向上:T字路、十字路における変換精度の向上
→改良後
T字路、十字路付近での余分な頂点の発生が劇的に減少。
- 精度向上:座標精度の向上:座標が、線分の端点、折れ点、交差点のより中心に来るように精度向上
1画素単位での最適な位置への移動処理により、画像により忠実な変換を実現。
- 精度向上:近接して走る平行線の近似精度の向上
近接して走る平行線の強調処理と、平行線前後の交点の処理の改良によって、近接する平行線付近の変換精度が向上。
→改良後
- 従来の最高精度の変換を超える「輪郭あるいは芯線から最大1ピクセル以内の誤差での変換」という指定が可能となった。
上記の不要頂点の大幅減少と組み合わせて、総合的な変換精度の向上が図られた。
→改良後
バージョン2追加予定分(2008年1月11日時点では組み込まれていない)
バージョン2に以下の機能を追加する予定
- 文字図形、線図形、面図形分離機能(時期:自動トレースオプション前)
ラスタ編集ライブラリと同じ、文字図形、線図形、面図形の分離機能を追加する。
- 一部図形変換機能(自動トレースオプション後)
指定長方形にフックされる(枠+内部)図形か指定長方形の内部にある図形のみを変換対象とする機能を追加する。
- アンドゥ・リドゥサポート
現在のライブラリの状態をバッファに取得するAPIと、バッファの状態をライブラリに反映させるAPIを新設して、
アプリケーションのアンドゥ、リドゥのサポートをする。バッファ内容は、アドレス情報などが含まれないリロ
ケータブル形式になっているため、、ファイルを使ったアンドゥ・リドゥや固有形式でのファイル保存に利用し
ても問題はない。
自動トレースオプション
2008年第1四半期に自動トレース(追跡)機能がオプション機能として追加されました。
自動トレース変換は、ユーザーが指定した2点の座標に沿って、端点と交差点、交差点と交差点を自動的に結びつ
けたポリライン(線分が結合したもの)を生成する機能です。
自動トレースの動作をコントロールするパラメータは、輪郭ベクタ変換、芯線ベクタ変換と、ほぼ同じものを使います。
user's manual