[zmemo.netトップページ▲] [ZMemo分館トップページ▲] [始祖鳥生息地]
プロジェクトZ(始祖鳥生息地別館)
最終更新日:2004年5月7日

ここはZMemoスクリプト開発支援ソフト『Z-Fabricator』の紹介・ダウンロードのページです。

Z-Fabricatorについて

  Z-Fabricatorは、θ言語の標準画像形式である .GAOファイルの作成を支援するツールです。

  GAO画像ファイルには、標準の表示位置を示すオフセット座標が埋めこまれています。
  このオフセット座標の確認・変更作業を補助するために開発したツールが、この『Z-Fabricator』です。

Z-Fabricatorの機能

(01)ファイルドロップ対応
 作業対象の画像ファイルをフォームにドロップするだけで、画像のオフセット座標を画面上で確認&修正することができます。
 読みこませることができる画像フォーマットは、GAO, GIF, BMP, PNG, HPG, JPGです。

(02)画像のオフセット座標をGUIで設定
 マウスドラッグ・カーソルキー操作で、複数画像の重ね合わせの相対位置を画面上でプレビューしながら確認&修正することができます。
 オフセット座標をキーボードから直接数値入力することも可能です。

(03)座標計算式生成機能
 また、『Z-Fabricator』は、『Z-Pointer』の座標計算式生成機能も搭載していますので、画面のクリックによってθ言語(ZMemoスクリプト言語)向けの領域条件式をつくることができます。
(注:下記のサンプルはθ言語(ZMemoスクリプト)の表記です。)

Z-Fabricatorの座標計算機能は、下記の青い部分を生成します。

action MouseUpL@( 0 )
{	//標準アクション(左クリックされた場合に起動)

// GetCursorX()は左クリック位置X座標を取得する標準関数
// GetCursorY()は左クリック位置Y座標を取得する標準関数

int m_x;	// 左クリックX座標を一時的に保存する変数を定義
int m_y;	// 左クリックY座標を一時的に保存する変数を定義

	m_x = GetCursorX();
	m_y = GetCursorY();

	if
	//領域名(領域1) x= 164 y= 66
	(( m_y * 100 > -641 * m_x  +  20680 )
	 && ( m_y * 100 <  2 * m_x  +  9755 )
	 && ( m_y * 100 < -248 * m_x  +  61935 )
	 && ( m_y * 100 >  126 * m_x  -  22447 )
	 && ( m_y * 100 > -14 * m_x  +  3752 ))
	{
	// 領域1がクリックされた場合の処理
		Talk( "\eわかりました、マイケル" );
	}
	else if
	//領域名(領域2) x= 100 y= 136
	(( m_y * 100 <  183 * m_x  +  2750 )
	 && ( m_y * 100 < -118 * m_x  +  28922 )
	 && ( m_y * 100 >  36 * m_x  +  9353 ))
	{
	// 領域2がクリックされた場合の処理
		Talk( "\eごきげんですね、マイケル" );
	}
	else {
	// それ以外がクリックされた場合の処理
		Talk( "\eおはようございます、マイケル" );
	}


// 領域の条件式を増やす場合は『else if〜』で条件を追加してください

}



Z-Fabricatorの実行イメージ

Z-Fabricator実行中の画面
Z-Fabricator実行中の画面

実行にあたって必要なもの

(01)gaoconv.exe
 zfab.exeと同じディレクトリにgaoconv.exeを置いてください。gaoconv.exeはDDK(Dame Script Development Kit) に入っています。
http://zmemo.define.jp/

(02)zmemo.spi
 Z-Fabricatorは、GAO/HPGの表示にZMemo添付のプラグイン『zmemo.spi』を使用しています。ZMemoがインストールされている場合は別途用意する必要はありません。(zmemo.spiはZMemoのパッケージに含まれています。)

※もしZMemoをインストールせずにZ-Fabricatorのみを使いたい場合は、zmemo.spiを別途取得し、zfab.exeと同じディレクトリに置くことでZ-Fabricatorを使用することができます。

Z-Fabricatorのダウンロード

 下のリンクをクリックすることでダウンロードできます。

Z-Fabricator Ver.0.55
LHA圧縮ファイル
zfab.lzhダウンロード
84.2 KB (86,233 バイト)
2004年5月7日、21:28:21

開発の道のり

Ver.0.55 (27-Dec-2001)
(01)自動透明化ファイル指定でbmp以外のファイルの場合に起こる不具合に対応
(02)暫定アイコンを装備

Ver.0.54 (23-Dec-2001)
(01)自動透明化指定機能追加(ただしアンドキュメンテッド)

Ver.0.53 (5-Dec-2001)
(01)透明化・表示非表示チェックボックスを変更した場合の描画処理を高速化
(02)埋め込み座標一括置換処理を搭載
(03)変換実行時にダイアログを表示するよう変更

Ver.0.52 (5-Dec-2001)
(01)描画処理を高速化

Ver.0.51 (20-Nov-2001)
(01)最大件数以上をドロップした場合にエラーで終了するバグを修正
(02)アイコンにドロップして起動した場合にエラーとなるバグを修正
(03)その他細かい修正

Ver.0.50 (19-Nov-2001)
(01)一度ソースファイルを消去したため、残滓より復元
機能には基本的には変化はないはず

Ver.0.25 (25-Aug-2001)
(01)レイヤー選択ウインドウを修正
(02)左下を透明化するかどうかを選択できるように修正

Ver.0.24 (21-Aug-2001)
(01)処理実行時に座標変更ボタンをロックするように修正
(02)メッセージボックスの代わりにテキストウインドウを表示するように修正
(03)最大画像数を従来の20件から50件へ拡大

Ver.0.23 (5-Aug-2001)
(01)GAOファイル作成時に座標が原点(0,0)になるバグを修正

Ver.0.22 (27-Jul-2001)
(01)領域計算式の生成で、Y座標の入れ替え処理にあったバグを修正
(02)レイヤーを除外した際、表示・非表示のチェックボックスの内容に
不整合がでるバグを修正
(03)起動時に gaoconv.exe のバージョンチェックを行うよう変更
(04)出力メッセージを変更

Ver.0.21 (18-Jun-2001)
(01)gaoconv.exe呼び出しまわりの潜在バグを修正
(02)20件を超えてレイヤーを登録した場合のフェイルセーフ処理を実装

Ver.0.20 (13-Jun-2001)
(01)GAOファイルの出力機能を実装
(02)GAOファイルの座標変更機能を実装
(03)画面レイアウトを変更
(04)座標変更の時と領域計算式生成のときで
フレームを切り替えるように変更
(05)ファイルオープンダイアログにGAOを指定可能とした
(06)終了処理の実装
(07)再描画ボタンと終了ボタンを画面の伸張にともない移動する用に修正
(08)ミューテックス『TZFWndMutex』を作成するように変更

Ver.0.10 (4-Jun-2001)
(01)追加ボタンで追加したときにプレビューされなかったバグを修正
(02)埋め込み座標を持たないスクリプトについても処理できるように修正
これによりGIF,PNG,BMP,GAOなどが読めるようになる
(03)iniファイルを作り、現在のウインドウの座標を保存する処理を追加

Prototype Mk.IIa (2-Jun-2001)
(01)プレビューウインドウに当たる画面をメインウインドウに変更
(02)領域計算式生成モードを実装
(03)レイヤーの最背面、背面、前面、最前面への移動を実装
(04)プレビューウィンドウでアローキーによる移動に対応
(05)座標入力ボックス内での上下キーによる値の増減に対応
(06)ウィンドウリサイズを行うと、除外画像が表示されるバグを修正
(07)一部の環境下でダイアログのフォントが正しく表示されないバグの修正
(08)プレビュー画面でマウスクリックフラグが設定されたままになるバグを修正
(09)レイヤー単位のリストからの削除を実装
(10)ファイル入出力のフェイル・セーフを強化
(11)現在の座標を表示できるように修正

Prototype Mk.II
(01)レイヤーの最背面、背面、前面、最前面への移動を実装
(02)プレビューウィンドウでアローキーによる移動に対応
(03)座標入力ボックス内での上下キーによる値の増減に対応
(04)プレビューウィンドウのリサイズを行うと、除外していた画像が表示されるバグを修正
(05)一部の環境下でファイルを開くダイアログのフォントが正しく表示されないバグの修正
(06)プレビュー画面でマウスクリックフラグが設定されたままになるバグを修正
(07)レイヤー単位のリストからの削除を実装
(08)ファイル入出力のフェイル・セーフを強化

Prototype Mk.I
(01)実験的に作成


This document is written by Shisochou(Archaeopteryx).
始祖鳥生息地本館バナー