------------------------------------------------------------------- VISIO用タイミング・チャートメ〜カ〜 (Ver.0.4.x) Releace Notes 2003-2005 (C) Mizo. Allright reserved. mailto:mizo@post.email.ne.jp URL:http://www.asahi-net.or.jp/~ai2h-ykmz/ ------------------------------------------------------------------- 【機能概要】 VISIO用タイミング・チャートメ〜カ〜(TimeChart)は、複数のディジタ ル信号の時系列変化を図式化するお助けツールです。 この手のツールですと、タイミング・チャート清書ツール(Tchart)が有名で すが、EPS形式なので環境が整わないと固定的になってしまいます。 (http://www.mech.tohoku-gakuin.ac.jp/rde/) Word等に貼付て、簡単に伸び縮みができ、後からいろいろなコメントや補助 の線を追加できる図ができないかと考え、思いついたのが、このVISIOで作る タイミング・チャートです。 <入力データサンプルと出力イメージ:テキスト版> 信号1:00001111000011110000 ↓ 信号1 ___/~~~\___/~~~\____ 01234567890123456789 尚、この手のツールを一番使う人は回路設計を行う人なのでしょうが、私は 回路設計ではなく制御のタイミング設計に使いますので、用語的に違うかも しれません(例えばHigh/LowではなくOn/Offとか)。 ------------------------------------------------------------------- 【動作環境】 TimeChartは,以下の環境で動作確認しています。 ・Microsoft Windows2000 SP3 ・Microsoft VISIO2000 Pro ・Microsoft Visual Basic 6.0J TimeChartが動作するためには,VB6.0のランタイム環境が必須となります。 《TimeChartで使用・参照しているコントロール・ライブラリ一覧》 ・Visio 2000 Type Library ・Microsoft Common Dialog Control 6.0(SP3) ・Microsoft Rich Textbox Control 6.0(SP4) ------------------------------------------------------------------- 【インストールとアンインストール】 レジストリ等は使用していません。 適当なフォルダに解凍して、TimeChart.exeを実行してください。 アンインストールは、フォルダごと削除してください。 ------------------------------------------------------------------- 【使用方法】 タイミング・チャート作成時は、必ずVISIOを立ち上げて、新規のページを アクティブにしておいてください(単なる手抜きです)。 1行毎に信号のデータを入力します。 入力行のフォーマットは、以下のようになります。 信号名:00001111000011110110101 信号は、1 or ~(ON/High)、0 or _(OFF/Low)で記述します。 信号名に「:」を使用することはできません。 全ての信号を入力し、作成ボタンをクリックすることで、VISIO上にチャート が作成されます。 回路設計で使用するハイ・インピーダンス等の状態が必要であれば、要望を あげてもらえれば考えます(なにせ自分では使わないので...)。 ------------------------------------------------------------------- 【プロファイルのフォーマット】 プロファイル(デフォルトはTimmingChart.ini)に、徐々に設定できる項目を 追加しています。 《設定可能な項目》 ・塗潰パターン ・背景色(0-23まで確認) ・境界線 ・個別のデータへの接続コネクタの追加 [BASE] BGPATTERN= ;背景パターン(透明=0,*塗潰し=1) BGCOLOR= ;背景色(黒:0,*白:1,-23,etc) GFRAME=1 ;グラフの枠線表示フラグ(*非表示:0,表示:1) CONNECTS=1 ;データへの接続コネクタ追加フラグ(*追加せず:0,追加:1) FONTSIZE=0 ;ラベルのフォントサイズ(*自動:0,サイズ指定:n(>0)pt) ※設定値の説明では、「*」が付いている値がデフォルト値 《設定予定》 ・時系列のラベル(いい案が浮かばない...) ・線の太さ、線の種類 ・各種サイズ ・補助線の設定 ------------------------------------------------------------------- 【パラメータ行について】 プロファイルでの設定とは別に、Ver.0.3.0以降、タイミング・チャート清書ツール (Tchart)で使用されているタイミングチャート作成言語(TCML)に準拠すべく、鋭意 開発中です(あくまで願望)。 その一環として、パラメータ行による設定を導入しました。 パラメータ行は@で始まる行で、以下の構成になります。 @パラメータ名 設定値 TCMLでのパラメータ行はどこに書いてもチャート全体に反映されますが、本アプリ では、原則としてその行以降の処理に対して反映されます。 《パラメータ一覧》 step 単位時間の長さ(比) lineheight 信号の高さ(比) signalline 信号線のスタイル borderline 外枠線のスタイル dividingline 区切り線のスタイル capwidth ラベル幅(基準幅に対する倍率:初期値2.0) slant 角度(方形波(0)、それ以外(0.3:初期値)) capfont ラベルのFONTスタイル strfont 行内ラベルのFONTスタイル 《線の設定値》 線(信号線、外枠線、区切り線)のスタイルは、以下の設定値を取ります。 数値(0-255) 数値(0-255) 数値(0-255) setrgbcolor 数値 setlinewidth [数値 setlinepattern] 前半3個の数値はそれぞれ赤、緑、青を示し、「0 0 0」が黒、「255 255 255」が 白、「255 0 0」が赤になります。線幅(setlinewidth)はポイントを指定します。 ラインパターンはTCMLにはない独自の拡張で、VISIOのラインパターンを指定します。 ラインパターンは省略可能です。 《FONTスタイルの設定値》 FONT(ラベル、行内ラベル)のスタイルは、以下の設定値を取ります。 [FONT名 setfonttype] [R G B setrgbcolor] [SIZE setfontsize] [italic] [bold] どの項目も省略可能ですが、指定する順番は守る必要があります。 FONT名はFONTの名前(EX.MS 明朝)あるいはVisioのFont番号(ID)で指定します。 指定されたFONT名に問題がある場合はデフォルトのFONTが使用されます。 R,G,Bは線の色指定の数値と同じ、0〜255で指定します。 SIZEはFONTのサイズを指定します。SIZE=0はサイズの自動調整を行います。 italicおよびboldを指定すると、文字のスタイルに斜体および強調を加えます。 ※尚、上記仕様は、あくまで現行の仕様です。諸般の事情により仕様が変更される  ことがあります(プログラミング能力の向上等)。ご留意ください。 ------------------------------------------------------------------- 【留意事項】 ・(整理中) ------------------------------------------------------------------- 【現在判明している不具合等】 バグ・不具合報告には真剣に対応し、新機能などのアイデアなどは、前向き に検討させて頂きます。 《現在判明しているバグ・不具合リスト》 ・X,=の組合せ等で、ズレが生じることがあるようなのですが、症例が乏しいため、  もし不思議なチャートが描かれた場合はデータをメールしてもらえれば助かります。 ・(整理中) 《機能拡張要望(Wish List)》 ・波形の上下間隔の隙間を設定可能にする。 ・ラベルの属性を設定可能にする。 ・TCML互換にして欲しい。 以下は、それなりに対応した項目です。 ・波形の信号遷移時の角度を統一する(変化点とX点)。 ・空行に対応する。 ・直角のオプションを検討していただけると言う事でうれしいです。 ・外部ファイルのデータ読込/保存 ・タスクバーにアプリ名を出して欲しい ・信号名をVisio上でも編集できる様にして欲しい ・プロファイルを編集するダイアログが欲しい ------------------------------------------------------------------- 【更新履歴】 2005/10/02:0.4.2 FONTパラメータで、FONT名を指定しない色・サイズの変更を可能にした。 Fontサイズの自動調節機能のバグ修正。最小サイズを3ptとしました。 オプション設定をメニューに追加し、これまでiniでしか設定できなかった 項目も、メニューで設定できるようにしました。 ラベルの幅の倍率を設定可能にしました。 2004/09/26:0.4.1 暫定的に、以下のパラメータを追加しました。 行ラベルのFONT指定(capfont)、行内ラベルのFONT指定(strfont) ツールとしてFONTサイズの再調整機能を付加しました。図形の大きさを変更 後に実行すると、FONTサイズ自動と同じロジックでFONTを再調整します。 (Activeなページ上の全てのシェイプに行います) 2004/09/23:0.4.0 表示ロジック全体に手を入れました。想定外データ時の動作がまだ不安? (多少、これまでと波形が変わってます。特に0.3.0でレベル記号を付加した  際の勘違い等の修正が大きいです。ご意見受付中) Fontサイズの自動調節機能を強化しました。かなりまともに動いています。 角度(slant)パラメータの仕様を変更しました。 @slant 0 ---鉛直,@slant 0.3 ---初期値,<なだらかな立上り (ただし、一定角度以上は鉛直になります) 本来は1で45度傾斜の予定でしたが、波形のマージンや長さ比の設定 の関係から、それ以下の角度でも設定オーバーで鉛直になります。 以下のパラメータを追加しました。 単位時間の長さ比(step),信号の高さ比(lineheight) (画面上で指定している倍率と同じ意味です) 暫定的な仕様として、波形内にテキストを記述できるようにしました。 Label:"1"==X"2"==X"3"===X"4"==== この機能を利用する場合、以下に注意してください。 ・テキストは必ず「"」で括ること。 ・Fontサイズが自動で無い場合、接続点の位置が破綻することがあります。 ・High/Lowの波形では使えません。 ・使いたいパターンが表示できない場合、ご相談ください。 2004/09/13:0.3.0 レベル記号に「~」「_」「-」を追加しました。それぞれ、[1][0][x]と 同等になります。 インピーダンス(=-xX)の表示ロジックに大幅に手を入れました。 TCMLのパラメータ行の仕組みを導入しました。とりあえず以下のパラメータが 設定可能です。 信号線(signalline)、外枠線(borderline)、区切り線(dividingline)、 ラベル幅(capwidth) 角度(slant) 2004/09/02:0.2.2 空行に対応しました。その代わり、最終行で空行を複数入れるとそれにも 反応してしまいます... コメント行(行頭文字:#@'%)に対応しました。 波形の振れ幅の空白の割合を設定できるようにしました。 設定ファイルでフォントサイズを自動の設定にして、描画時にフォントを 指定する設定で書くとフォントが表示されないため、設定ファイルでサイズ を自動に設定すると画面で変更できなくしています。 2004/08/28:0.2.1 描画中は作成ボタンを押せなくしました。 設定ファイルをメニューからメモ帳で表示できるようにしました。 0.2.0公開時に設定ファイルを入れ忘れてました。初めてダウンロード した人には申し訳ない。 2004/08/09:0.2.0 方形波に対応してみました。 信号の記述に(x,=)を追加。xは中間値、=は0と1両方とも。 アイコン作ってみました...才能の無さを再確認。 Windowのスタイルを変えてみました。最小化もできます。 フォントサイズの指定(固定)をできるようにしました。 上記にあわせてプロファイル編集用Excelシートも修正しています。 [グループ図形のみ選択]のチェックボックス追加(初期値はチェック)。 チェックを外すことで、テキストの修正等が可能です(ただし、個別の 位置の変更等もできてしまいます)。0.1.2で部分的な選択を禁止して しまいましたが、弊害が大きいようなので選択にしました。 2004/03/16:0.1.* プロファイル編集用に、Excelシート&マクロ(iniMaker_TimeChart.xls) を公開。 2003/06/05:0.1.2 メニューを付加 プロファイルで以下の設定値変更を可能にした。 (背景色、背景パタン、境界線、個別データへのコネクタポイント追加) FORM上のセルの基本比率の説明を削除(不要のため) グループのロックと部分的な選択禁止 2003/05/30:0.1.1 新規公開 -------------------------------------------------------------------