やっとコンテが終わりました・・・(2001.10.05)
妙に手こずってしまった
風邪ひいたし
同時多発テロはあったし(関係ないか)
今回の絵コンテを書きながら、ずっと作ろうと思っていた
「絵コンテの時間合計の計算を支援するプログラム」を作成しました。
今回は GUI なしで、CUI のプログラムです。
例によって、Tcl スクリプトです
ターミナルになれない人にはちょっと使いづらいかも・・
データの保存は、プレーンテキストなので印刷や変更等は
お好きなテキストエディタで行えます。
ダウンロードはこちら。
Ctotal.lzh (約 9 KB LHA書庫)
Ctotal.tgz (約 8 KB TAR玉ZIP書庫)
** 実行には、Tcl 7 以降の実行環境が必要です。
説明
*** 同じ説明が、ダウンロードしたアーカイブにも含まれています ***
Ctotal.tcl
絵コンテ尺数合計支援プログラム
●書式
Ctotal [-h|-help|-?] [-c] [-r<RATE>] [<FILE-NAME>]
●概略
絵コンテの総尺を、合計する際に計算を支援します。
プログラムを起動すると編集ID・ページ・コンテの段数・カット
番号・現在の登録時間と入力プロンプトが表示されます。
数字を入力するとカット尺であると解釈して記録します。
アルファベットで始まる入力はコマンドとして解釈します。
使用できるコマンドは後述。
順次カットの時間を打ち込んで行くことで尺の合計を自動的に行
います。
ひとつのカットに時間が打ち込まれるとカット番号は自動で更新
されます。
絵コンテのページに合わせて、時間が空になっているカットは空
のままにしておいてください。
後で、確認する際に絵コンテと同じ配置になっていないと確認ミ
スが出やすくなります。
●起動オプション・引き数
[-h|-help|-?] 簡易ヘルプを表示します。
[-c<COUNT>] 絵コンテの一枚の段数を変更します。デフォ ル ト
は5段
[-r<RATE>] フレームレートを変更します。デフォルトは 24fps
[<FILE-NAME>] 起 動時に読み込むファイル名を指定します。デ
フォルトはカレントディレクトリの total.txt
●コマンド
h 簡易ヘルプを表示します。
q プログラムを終了します。自動保存は、しません。
v 現在の編集状態を表示します。
j<ID> 編集ポイントのジャンプを行います。カット番号で は な
く、IDで、指定してください。
b[NUMBER] 編 集点の後退をします。数値を指定しなかった場合
は1段戻ります
a 編集点を最後尾へ移動します。
c<NAME> 現在の編集点のカット番号を変更します。AB分割・欠番
などの際に使用してください。
p<NAME> 現在の編集ページの名前を変更します。やはりAB分割・
欠番などの際に使用します。
w[FILE-NAME] 指定ファイルに保存します。名前が指定されな い
場合は、現在のファイルに保存します。
r[FILE-NAME] 指定ファイルを読み込みます。名前が指定されな
い場合は、現在のファイルを再読込します。
\<COMMAND> バックスラッシュでエスケープしてシェルにコマ ン
ドを引き渡せます。パイプ・リダイレクトも行われますが、表示
はダムです。
●使い方
こちらのプログラムは、絵コンテの時間を合計する作業を支援するために作られました。
起動すると下の様なプロンプトを表示して入力待ちになります。
例:
=================P 1
0 p1-1 c#1 () -->
意味は左から
第一カラム (0) データ管理ID
第二カラム (p1-1) 第一ページめで第一段
第三カラム (c#1) カット番号は「1」
第四カラム (()) 現在の秒数データ
第五カラム (-->) この後ろに入力してください
の様になっております。
ここで数値を入力すると c#1 に 秒数を指定する事ができます。
例:
=================P 1
0 p1-1 c#1 () --> 3+12
:3+12
1 p1-2 c#2 () -->
数値を 秒 + コマ の形で入力すると
自動的に1ページめの二段めに進み次の入力プロンプトが表示されます。
絵コンテのコマが二段以上に渡っている場合は、なにも入力せずに
「 Enter 」のみを押してください。
その場合、カット番号は変わらずに絵コンテの段数のみが進みます。
必要なだけ、段を進めてから時間を入力します。
例:(カット 1 が 四段のコマに渡って書かれている場合)
=================P 1
0 p1-1 c#1 () -->
:
1 p1-2 c#1 () -->
:
2 p1-3 c#1 () -->
:
3 p1-4 c#1 () --> 3+12
:3+12
4 p1-5 c#2 () -->
キーボードの配置によっては、時間を入力する時の「+ 」キーが押しにくい場合も
あります。このプログラムでは、秒数とコマ数の区切りに以下のキーが使用できます。
+ (プラス)
. (ドット)
, (カンマ)
- (マイナス)
: (コロン)
; (セミコロン)
この六つのキーは、どれを押しても秒数とコマ数の区切りとして認識されます。
例:(どれを押しても大丈夫)
=================P 1
0 p1-1 c#1 () --> 3,12
:3+12
1 p1-2 c#2 () --> 3.18
:3+18
2 p1-3 c#3 () --> 4+6
:4+6
3 p1-4 c#4 () -->
区切りの無い場合は秒数として認識します。
カット秒数が 1 秒以下の場合は、最初の 0 を省略できます。(入力しても良い)
コマ数が、一秒分をオーバーした場合は、秒数に換算します。
例:(こんな入力もOK)
=================P 1
0 p1-1 c#1 () --> 12
:12+0
1 p1-2 c#2 () --> +18
:0+18
2 p1-3 c#3 () --> 1+45
:2+21
3 p1-4 c#4 () -->
間違えて、後戻りをしたい場合は、「b (back)」キーで 一段戻ります。
二段以上戻る場合は、「b 」キーに続けて数字で指定してください。
例:(三段前に戻る)
=================P 2
5 p2-1 c#4 () --> 2+12
:2+12
6 p2-2 c#5 () --> 5+6
:5+6
7 p2-3 c#6 () --> 1+18
:1+18
8 p2-4 c#7 () --> b3
=================P 2
5 p2-1 c#4 (2+12) -->
この例では、すでに一度入力しているので 4列 めの括弧の中に秒数が
表示されています。修正する値を入れて次へ進めます。
例:(修正後)
=================P 2
5 p2-1 c#4 () --> 2+12
:2+12
6 p2-2 c#5 () --> 5+6
:5+6
7 p2-3 c#6 () --> 1+18
:1+18
8 p2-4 c#7 () --> b3
=================P 2
5 p2-1 c#4 (2+12) --> 2+18
:2+18
6 p2-2 c#5 (5+6) -->
:5+6
7 p2-3 c#6 (1+18) -->
なにも入力せずに、「Enter 」 キーだけを押すと以前の値のまま次へ進みます。
データの任意の位置にジャンプする事ができます。
「j (jump)」キーに続けてデータのIDを入力してください。
カット番号ではなく、表示されている一番左の端の数値です。
この数値が管理番号になっていますので、この番号を使って指定します。
ゼロから始まっています。
データの数よりも多い数値を入力すると一番後ろにジャンプします。
また、一番後ろへジャンプするだけなら「a (append)」キーを入力する事で
データの一番後ろへ移動する事もできます。
AB分割や、欠番などでカット番号を修正するときは、「c (cut)」キーに続けて
修正するカット番号を入力してください。この場合は、段の移動は行われません。
例:(カット 12 を 12-A にする)
11 p3-2 c#12 () --> c12-A
11 p3-2 c#12-A () -->
ページ番号のAB分割や欠番ページ等の場合は同様に「p (page)」キーに続けて
修正するページ番号を入力すると修正ができます。
この場合も、段やページの移動はありません。
例:( 3 ページ目を 4 ページ目にする)
11 p3-2 c#12-A () --> p4
11 p4-2 c#12-A () -->
現在の全ての記録を表示するには、「v (view)」キーを入力します。
下の例の様にページ合計と全体の合計が表示されます。
例:(途中で、全表示)
15 p4-1 c#12 () --> v
000 1-1 C#1 (1+0)
001 1-2 C#2 (2+0)
002 1-3 C#3 (3+0)
003 1-4 C#4 (4+0)
004 1-5 C#5 (5+0)
00:00:15+00
005 2-1 C#6 (6+0)
006 2-2 C#7 (7+0)
007 2-3 C#8 ()
008 2-4 C#8 (2+0)
009 2-5 C#9 (12+0)
00:00:27+00
010 3-1 C#10 ()
011 3-2 C#10 ()
012 3-3 C#10 ()
013 3-4 C#10 (3+0)
014 3-5 C#11 (4+0)
00:00:07+00
*015 4-1 C#12 ()
00:00:00+00
TOTAL 00:00:49+00
=================P 4
15 p4-1 c#12 () -->
データを保存するときは、「w (write)」キーを入力します。
「w」に続けて、保存するファイル名を指定してもかまいません。
指定が無い場合はデフォルトの「total.txt」を現在のパスに保存します。
確認のメッセージが出ますので、指示にしたがって、記録・中断又はファイル名の
変更を行って下さい。
例:(保存確認メッセージ)
=================P 4
15 p4-1 c#12 () --> w
total.txt に保存します
よろしければ y/Y キャンセルするなら n/N
または新しいファイル名を入力してください
[y/n/filename] -->
y 又は Y で 保存
n 又は N で 中断
ファイルネームを入力するとそのファイル名で保存をします。
ファイルを書き込むときに同時に画面にもデータが表示されます。
データの読み込みを行うには、、「r (read)」キーを入力します。
「r」に続けて、読み込むファイル名を指定してもかまいません。
指定が無い場合はデフォルトの「total.txt」を読み込みます。
確認のメッセージが出ますので、指示にしたがって、読み込み・中断又はファイル名の
変更を行って下さい。
読み込む際に、以前の合計数値は読みとばします。
テキストエディタなどでファイルの変更を行った場合は、再度読み込んでから
もう一度記録し直す事で、新しい合計数値を計算する事ができます。
以上のコマンドは、「h (help)」キーを、入力して概略を画面上で読むことができます。
●起動オプションについて
このプログラムは、一般的なフィルム作品を想定してあるため、規定値として
絵コンテの一ページは 5 段
一秒は 24 コマ
となっています。
これらは、プログラムを起動する際に起動オプションで、変更することができます。
一枚6段の絵コンテに対して計算をするときは -c6 オプションを使用します。
例:
C:\> tclsh84.exe Ctotal.tcl -c6
一秒30コマ(ビデオ)で使用するには -r30 オプションを使用します。
例:
C:\> tclsh84.exe Ctotal.tcl -r30
二つのオプションを同時に使用してもかまいません。
また、起動時に読み込むファイルを指定する事もできます。
●ご注意
Tclスクリプトです、実行にはTcl実行系が必要です。
●バグ
*** 注意、データファイル以外のものを読み込まない様に注意してください。
読み込み前のデータの検証をしていないので、エラーが出て止まってしうかも
しれません。データ検証するのを忘れてた・・・(とほほ)
●オマケ
記録したファイルは、タブ区切りのテキストファイルなので、EXEL等の
表計算ソフトで読み込む事もできます。
その際は、いったんデータを並べかえて合計行を削除する必要があるかもしれません。
csv形式の保存も考えましたが、今回は実装していません。
・・・そのうち気が向いたら手をつけるかもしれません。
●連絡先
2001.10.13
|