ぺんちゃん日記

食と歴史と IT と。 Web の旅人ぺんじろうが好奇心赴くままに彷徨います 。

古典的かまどCross-draft kilnについて調べてみた。

泥んこ遊びと火遊びをするようです。

Primitive technology の新作が出てました。
今回はCross-draft kilnということでかまどを作るようです。

随分手慣れた作業で作って行きますが、使用している粘土の量はかなりのものです。
これをこねるだけでも相当な時間かかってるんじゃないですかね。

ほどなくかまどのシルエットがつかめるようになってきました。
屋根の曲線がなんとも独特な形ですね。
ダッシュなんとかで作っている反射炉にも似たような。
構造的にはかまどの中を空気が適度に通り抜けることで 炎を行き渡らせる仕組みになっているようです。

取り出すときに擦れた音を聞く限り、焼きあがった水瓶は硬そうです。
薄くても丈夫なので使いやすそう。
もちろん水を汲んでもこぼれません。

お前は今までにいくつのかまどを作ってきたのか?

手際の良さはもちろんですが、それ以上に多種多様なかまどの構造を知っていることに驚きです。
こんなかまどの知識をどこで仕入れてるんでしょ?
クロスドラフトでどういう意味なんでしょうね

Crossdraft kilnがどの地域のどの時代に使われたものなのか興味が湧いたので調べてないことにしました。

www.quora.com

ちょっと専門的な英語サイトなのでまるで手が出ない。
でも少しだけ読める部分があります。
東アジアで使われる技法で特に日本では穴窯と呼ばれるとのこと。

なんだってー! ?

これが日本が誇る穴窯だ(たった今知ったけど。

日本の伝統的技法なのに知らなくて海外のユーチューバーがきっかけで知ることになる。
これが外国人に日本の歴史を教えてもらう屈辱というやつ。
まーしかし日本のものなら日本語の情報はたくさんあるはずです。


touroji.com

まさにこれですね。
今回の動画で作られたものは。

天井ドーム型にすることで熱気が天井に当たって跳ね返り、熱源の裏にまでムラなく炎が行き渡るという理屈のようです。
煙突の手前で部屋が狭くなるのは、外に熱を逃がさないためだそうです。

地面の傾斜がありませんので若干効率が悪いのかもしれません。
木炭を使わずに薪を燃料にできるが登り窯よりも必要な量が増えると。
動画では焼成時間は4時間ほどそのようですが、何 kg くらいの薪を使ったんでしょうね。


www.sinyokohama.co.jp

陶芸で使う場合には焼き終わるまで結果が全く分からないことと自然な風合いで味のあるものが出来上がるということで今でも愛されている様ですね。

穴窯の仕組みというキーワードで画像検索して、それっぽい画像を含むサイトを閲覧しています。
touroji.com

随分詳しく書いてありますね。
それにしても奥が深い。
長い歴史に培われてきた証拠です。

YouTube で広がる意外な体験だった。

備前焼信楽焼伊賀焼などが有名なブランドのようです。

伊賀焼徳利 瀧本 湖久 作

伊賀焼徳利 瀧本 湖久 作

これが伊賀焼き。
なるほど、質素で無骨ですが良い風合いです。
お値段もいい具合です。
もっと作家性の高い芸術的な作品もありますが、値段を見てビビっています。
こんなところで紹介するのはおこがましい。

備前焼辣韮花入 伊勢崎 創 作

備前焼辣韮花入 伊勢崎 創 作

これは備前焼
1万5000円少々です。
商品説明には備前焼には穴窯焼成は少ないと書かれていますね。
商品の性質上、一点物となるでしょうから売れたら在庫切れになって画像が掲載されなくなっているかもしれません。

信楽焼の壺です。
素人でもわかるこの迫力。
存在感あるのにでしゃばらない不思議な魅力があります。

目の保養になりました。
部屋にこういうものがあれば自然と心も落ち着きそうですね。
知的好奇心を満喫させることができたので今日は良い日です。

勝手にスリープ解除されてしまうのでシステム時刻の同期を弄ってみる。

これまでの経緯。

前回、昼寝の間にスリープが勝手に解除されてロック画面になっているのでイベントビューアで犯人を探してみたのでした。
その結果、 PC のシステム時刻を補正するためにインターネットのタイムサーバーから正確な時刻を取得するためにスリープ解除してネット接続しているのではないかと予測をつけたのでした。
今回はシステム時刻の同期について調べながらスリープ解除を止める手立てを探ってみます。

システム時刻の同期を設定する。

システム時刻の同期はコントロールパネルから設定できます。
右クリックできる人はスタートボタンを右クリックしてコントロールパネルを開いてください。
私は右クリックできないので Windows + S のショートカットキーでアプリケーションの検索パネルを開いて、コントロールパネルと入力して見つけ出します。
と言いながらも、日本語入力が面倒なのでcontrollの順にアルファベットを入力して行くことで絞り込んでいます。

f:id:yasushiito:20190715095207p:plain



時計と地域をクリックします。

f:id:yasushiito:20190715094244p:plain



日付と時刻の設定をクリックします。

f:id:yasushiito:20190715094310p:plain



インターネット時刻タブをクリックします。

f:id:yasushiito:20190715094339p:plain



時刻を同期するためのサーバが表示されているはずです。
次回の同期を行う予定時間が表示されていますね。
設定の変更ボタンをクリックします。

f:id:yasushiito:20190715094503p:plain



今すぐ更新ボタンをクリックすると 同期した時刻が更新されるはずです(時々失敗するようですけど。
OK ボタンをクリックして、先ほどのインターネット時刻のタブに戻ると次回の同期の予定時刻は先延ばしにされているかと思います。

f:id:yasushiito:20190715094553p:plain



午前中にこの作業を行ったので、今日の昼食&昼寝の時間帯にはスリープ解除されないかと思われます。
逆に予定されている時刻には同期処理が行われるはずです。
今日のところはこれで様子を見ます。

スリープモードのWindows が昼寝中に勝手に起こされてしまう。

Windows 10あるあるの現象のようなのですが、スリープモードにしてあっても勝手に解除されてロック画面が表示されています。
時に昼寝中の間が顕著でほとんど毎日この現象が発生します。
最初は私を起こしてついでに介護の方が PC も起こしてくれているのだろうと思い込んでいましたが、明らかに期待しない瞬間にスリープ解除されてしまってます。
就寝中じゃあるまいし、長くても1時間程度なのでスリープ解除されても大迷惑ではないのですが、 PC が期待しない挙動を行うのが気持ち悪いです。
こんな時はイベントビューアを使ってスリープ解除している犯人を突き止めます。
イベントビューアはスタートメニューの Windows の管理の中にあります。
起動した画面はこんな感じです。

f:id:yasushiito:20190714150311p:plain

左のウィンドウの Windows ログのツリーの中からスリープ解除された時のイベントを探すのですが、こんなのどこにあるのかわかるわけないです。
そんな時はおとなしく検索してイベントビューアでスリープ解除のイベントの探し方を調べます。

edit-anything.com



右のウィンドウでカスタムビューを作成してスリープ解除関係のイベントだけを抽出すれば必要なログだけ確認できます。
f:id:yasushiito:20190714151411p:plain
次のようなダイアログが開くので、必要なイベント ID をカンマで区切って入力すれば良いようです。
f:id:yasushiito:20190714151433p:plain
必要なイベント ID がどれだかわからんので ID も検索します。

seyjoh.com



えられた情報によればスリープ解除のイベント ID は1のようです。
電源オンオフなどのイベントログは見なくても良いのでスリープ解除だけで抽出します。

次のように中央のウインドウにスリープ解除理科発生した時間と理由が表示されます。
時系列で並んでいるので、昼寝から起こされたであろう時間あたりを探してみます。
f:id:yasushiito:20190714152036p:plain

確かに昼寝中にスリープが解除されてしまっています。
近辺に発生しているイベントはシステム時刻の同期くらいなものですが……?



システム時刻の同期っていうのは PC の時計が狂わないようにインターネットから正確な時間を取ってくることを言います。
精一杯想像するならこんな感じです。
Windows が PC の時計を合わせるために一定時間ごとに時刻の同期をしようとする。
ちょうどお昼くらいに試みられる。
ところがスリープしているのでインターネット接続できない。
そこでスリープ解除してインターネットから正しい時間を取ってくる。
ロック画面でスリープモードにならないように設定してあるので PC が起きたままになる。

こんな感じのシナリオならありえそうですね。
システム時刻の同期に関して設定することでこの問題は回避できるかもしれません。
しかし今日のところはここまでにします。

マウスクリックでマウスポインタの座標をクリップボードに取得してみる【AutoHotkey】。

f:id:yasushiito:20190403184928p:plain

事の始まり。

最近になって画像探索などの画面系のスクリプトもいじるようになってきています。
千年戦争アイギスのアシストプレイするスクリプトなどが典型なのですが、マウスポインターが特定の領域に入るなど座標を使って何かを監視する場合はスクリーン上の絶対座標あるいはアクティブウィンドウからの相対座標を範囲指定しなければなりません。
その座標をAutoHotkey付属の Windows SPY を使って参照しても良いのですが、いくつもの座標を覚えきることができない。
はい頭悪いです。
普通の人なら Ctrl + C でコピーしてしまえば良いだけなのですが、私は Windows 上のすべての操作をマウスのみで行なっているので 、コピペしようにもマウスポインターがスクリーンキーボード上に移動してしまっています(涙。
私にとってのベストウェイがマウスクリックした座標を保存する形です。
そこでちょっと面倒ですが、マウスクリックを監視してクリックした座標をクリップボードに保存するスクリプトを作ってみました。

構想を練る。

マウスクリックを検出して何らかのアクションを行う処理を作成するには少しだけ工夫が必要です。
キーボードの入力を感知して特定のキーの組み合わせを入力されたら処理が走る、いわゆるホットキーであるならば AutoHotkey の最も得意とするところです。
しかしホットキーはキーボードの入力を監視するものですから、マウスクリックのイベントを監視することができません。
多分。
となると、左クリックされたら座標を調べるようにするためにはタイマーイベントなどで一定間隔でマウスの押下状態を監視するしかありません。
ループ処理を回してマウスの左ボタンが押下されるまで回り続けるようにすれば、タイマーイベントは使わずにすみませ。
そちらの方が簡単に実装できるのですが、一つの座標を取得するだけで終わってしまっては何度もスクリプトを起動しなければならず面倒です。
かといって、 ダイアログを開いて調べたい座標の数を事前に入力するというのも スクリプトは煩雑になってしまいます。
好みにもよりますが、私はタイマーイベントで監視した方が楽です。
win + i ホットキーでクリックによる座標調査開始です。
もう一度押すと座標調査終了です。
その後はホットキーを入力するごとに開始と終了を繰り返します。

取得した座標ですが、クリップボードに入れることにします。
クリップボードには追加で放り込みます。
つまり前回コピーした内容の後ろに取得した座標が追加されます。
Win+i でスイッチを押した瞬間にクリップボードの内容をクリアするので、利用の際にはクリップボードの状態にご注意ください。
取得した座標をメッセージボックスで通知してくれます。
クリックしても全く反応がないと不安なので PC 側から何らかの応答があった方が良いかなと考えました。
メッセージボックスの OK ボタンをクリックするのが面倒ですし、そこをクリックすると座標を取得されてしまうので一定時間でメッセージボックスを消すようにしてあります。
長時間使うタイプのスクリプトではないので Win + Z でアプリケーション終了できるようにしてあります。
肝心の座標ですが、スクリーン上の絶対座標とアクティブウィンドウ左上からの相対座標の両方を調査できるようになっています。
左から x,y の順番で括弧内は相対座標です。
相対座標はマイナス、つまりウインドウの範囲を超えた座標まで とりうるのですが、このスクリプトの場合はクリックした瞬間に他のウィンドウがアクティブになってしまうためにアクティブウィンドウの枠を超えて相対座標を取得することはできません。

出来上がったスクリプトはこちら。

今回のポイントその1。

マウスの押下状態を検出するには GetKeyState を使います。
次のようにすれば変数statにマウス左ボタンの状態が返されます。

    GetKeyState, stat, LButton, "p"

myahk/mousepos.ahk at master · yasushiito/myahk


押下状態の時は D、 何もしていない場合はUとなります。

今回のポイントその2。

マウスポインタの座標を取得するにはMouseGetPosを使いますが、絶対座標と相対座標を切り替えるにはCoordModeを使います。
screenで絶対座標、Relativeで相対座標となります。

        CoordMode,Mouse,Screen
        MouseGetPos, mx, my
        ;相対座標を括弧内で指定する。
        CoordMode,Mouse,Relative
        MouseGetPos, rx, ry

myahk/mousepos.ahk at master · yasushiito/myahk


各関数の詳しい内容はこちら。
ahkwiki.net


ahkwiki.net


使ってみる。

スクリプトを実行させて OS に常駐します。
座標を調査したいウィンドウをあらかじめアクティブにしておきます。
Win + I します。
マウス座標のためにクリックを監視する旨のメッセージボックスが一定時間表示されますので消えるまで待ちます。
アクティブウィンドウの適当な場所をクリックすると座標がクリップボードに転送されてメッセージボックスで一定時間通知します。
クリックするたびに座標が取得されて、改行区切りでクリップボードに追加されます。
必要な座標を全て調査したら win +iして座標調査を終了します。
2箇所クリックした結果はこんな感じです。

451,704(276,234)。
520,659(345,189)。
183,938(8,468)。

私の場合はスクリーンキーボードでキー入力しているので終了するための Windows キー押下の座標まで取得してしまっています。
最後の1行は差し引いて上の二つをチョイスします。


投票で確実に変わる一つの事。

今日は参議院選挙の期日前投票を済ませてきました。
私のような障害者は投票と言っても簡単ではありません。
投票用紙に字を書けないし投函もできません。
障害者施設で暮らす障害者の場合はどのように登場するのでしょうか?

施設に出張の投票所が作られて施設内で投票できるようになっています。
字を書けない人は代筆してくれます。

これで投票所までの移動手段は考えなくてよくなります。
在宅期間中は投票所まで赴くのが難儀だったんですよね。
特に冬場の選挙は震えながら車椅子を転がして向かったものでした。
障害があるために投票所へいけないのでは選挙権がないも同然ですからね。
かといって障害者施設の住民の全員投票所まで連れて行こうとするのは効率が悪すぎる。
当たり前っちゃ当たり前なんですけど、油断するとその当たり前が消えてなくなってしまいます。
「口も聞けないような奴に選挙の判断なんてできるわけないだろ」とかいう人もいますからね。
投票率が悪くても同じ。
「どうせ障害者は投票なんてしないんだから投票所用意するだけ金の無駄だからやめちまえ」
なんて意見だって出ます。
同じ建物内で行われているイベントに参加しないなんてもったいない限りです。
我々が当たり前を失わないために、できることはやるのです。
どの政党に入れてもいいんですよ。
誰を選んでいいかわからないから辞めるとかそういうのではないんです。
我々には選挙権があってそれを行使する。
それに関しては政治が変わろうが変わるまいが同じじゃないですか。
自分が入れた一票で社会の悪くなるなんて恐れなくてもいいですよ。
民主主義ってそういうもんです。

ところでタイトルです。
「どうせ選挙に言ったって何にも社会なんて変わらない」
なんていう人よくいるじゃないですか。
実は私もそんな中の一人だったんですね。
しかし、投票してみたら意外にも変わったことがあったんですよひとつだけ。
選挙に行かなかった人が投票することで絶対に変わるもの。
それは何でしょう?
それは自分の気持ちです。
私は選挙に参加したのだ!
という気持ちの変化だけは確実に変わります。
だって気持ちがなければ投票しないんですから。
そして投票したからには結果が少しだけ気になります。
自分が選択した候補者がどの程度頑張ってくれたか、ニュースに意識が傾きます。
たったそれだけでも世界の見え方って全く変わるんですよね。
何度か投票を経験すれば最初は分からなかった政治の話も少しずつわかるようになってきますし。
誰だって最初は上手に出来ないものですよ。
成人して選挙権が得られたからといって、すぐさまにエレガントな 候補者選びができるわけありません。
大人なんだから出来るのは当たり前なんてハードルあげなくていいです。
大人だからではなくやっと成人したのですよ。

副産物として「お前選挙に行かなかったの?俺は大人の義務として言ったけどね」という謎のマウントを取ることも出来るようになります。
動機なんてそんなもので十分です。
みんなもっと気軽に投票しようぜ。

アイギスのマウス操作をアシストするツールを改善してみた。

千年戦争アイギスのボタンクリック&ドラッグ 操作をアシストしてくれる Auto HOT Key スクリプトを用意したことでアクション性の高いミッションを遊べるようになりました。
なんだかんだでこのスクリプトを毎日使って遊んでいます。
そしていよいよゲーム内で最難関と言われる魔人ミッションのイベントがやってきました。
前回は頑張って剛炎のアモン LV 15打ちのめしたのでした。

yasushiito.hatenablog.com



今回は新規実装なので難易度が最高なのは間違いありません。
難しすぎて操作ミス一発でプレイの全てが台無しになってしまう現象が多発しました。

yasushiito.hatenablog.com


そこで操作ミスでイライラするよりも腰を据えて問題を修正した方がクリアが早いと判断して時間を使って修正することにしました。
問題点は意図しないタイミングでクリックが発動してで早くスキルを使用できないところです。
スキルを使うためにユニットをクリックするのですが、ここでクリック連打してしまう瞬間があってスキルボタンが消えてしまうのです。
もちろんクリック連打を防止する処理は埋め込まれています。
ある程度マウスの移動量がない限りはサイクリックしないようになっています。
この 「ある程度」の加減が難しい。
広すぎるとクリックして欲しい時にしてくれないからです。
そこで何とかならないかとソースコードをじろじろ眺めていましたら不具合を発見しました。
タイマー監視数回に1回の計算を間違えて2回クリックするようになってしまってました。
どうりで頻繁にスキルボタンを消されてしまうわけだ。
それでその処理を治してプレイしたところ大幅に改善されました。
とはいえやはり判定がデリケートなのは変わりません。
レベル10までは何とかなりましたが11以降は本当にシビアな操作を要求されるので無理です。

そこで抜本的な解決に挑みます。
クリックするたびに座標を記録しておき、前回クリックしたポイントの近くではクリックを行わない処理を追加します。
こうすることで一度クリックしてユニットを選択してスキルボタンを表示させたら、マウスポインターがぎゅぎゅっと大きく動かされない限りクリックしなくなります。
スキルボタンを押すためにマウスポインタを動かしたら前回クリックしたポイントから大きく離れるのでクリックは有効にあります。
つまりラッシュが始まる瞬間にユニットクリックからのスキルボタンクリック。
これの往復操作を安心して連続で行えるのです。

;通常のフィールドなのでスキル使用のためのクリック。
;ステータス表示のためのクリック。
;割り込み6回に1度に対してクリックするべきか判定する。
;移動中から停止した時は必ずクリックしないとフィールドをクリックしてステータス表示をキャンセルできない。
            if Mod(stay, 5) =0
            {
;ステータスとスキルボタンを消さないようにステータス表示中はクリックしない。
                ImageSearch, fx, fy, 900,480,945,520,*40 blue.bmp
                if ErrorLevel = 1
                {
                    MouseClick, Left
                    ;クリックしたので座標記録しておく。
                    bcx := mx
                    bcy := my
                }
                Else
                {
                    ;以前にクリックされているなら。
                    if bcx >= 0
                    {
                        ;前回クリック位置からある程度離れてなければ クリックしない。
                        if Abs(mx - bcx) > 7 and Abs(my - bcy) > 7
                        {
                            ;マウスポインターが大きく移動したので連打の心配はないのでクリック。
                            bcx := -100
                            MouseClick, Left
                            ;クリックした座標を記憶しておく。
                            bcx := mx
                            bcy := my
                           
                        }

                    }
                }

myahk/aigis.ahk at master · yasushiito/myahk


この処理を追加してみたら効果抜群でした。
なんで早くこの機能を入れこまなかったんだ。
まあ単純に管理する変数をクリアするのが面倒だったからなんですけどね。
結果的には修正したコード以上の見返りがありました。
マウス操作のアシストに関しては完成型だんじゃないかな。

yasushiito.hatenablog.com



でもこのツールが完璧になったわけではありません。
なぜだかわかりませんけど、ある瞬間に突然ウィンドウが非アクティブにされてしまうのです。
原因はまるでわかりませんが、プレイ中にこの問題が発生するとクリック操作をゲームに送れなくなります。
ゲーム画面をマウスクリックすれば元通りにゲームをアシストしてくれるものの、とっさにマウスクリックができないからツールにアシストしてもらっているのですから問題としては致命的です。
実はこの問題、ゲームだけで発生するのではなく、ブログ執筆中やプログラミング中でも発生します。
以前から、入力中に突然カーソルが消えてコピーペースト操作がどこかのウィンドウに吸い取られてしまう問題があったのです。
気持ち悪いなーと思いながらも原因を特定するのが難しそうなので目をつぶってました。
クリックすれば良い話なので。
でもゲーム攻略で致命的になるのなら対処を考えてみるかな。

魔神との戦い! いよいよ大詰め。

レベル11との戦いが思うように進まず、くだらない日記で更新を継続していた2日間。
もうこれはクリアできないまま混んミッションの2週間を終了するなと覚悟を決める頃合いです。
悔しいなあ。
一週間でひとつも進まないって初めてですわ。
あとほんのちょっとなのに抜けられない部分がある。

やることないしストレスも激しいのでヘビーアーマーのディナを金第二覚醒させました。
ルートはもちろんガーディアンです。
攻撃力は他のユニットでもサポートできますけど、劇を抱える役割をこなせるのは彼女だけ。
お姉ちゃんの方をお迎えする気満々でいたので少し心残りですが。
まあその気になれば二人目を育ててギガントハンマー すれば良いのです。

終盤に右から出てくる装甲車2台を処理する火力が間に合わない問題。
ずっとウェンディにこだわっていたのですが、彼女を撤退させて拠点前で打ちのめす作戦に変更しました。
本体の攻撃も右側の左下で受けることにしました。
シルセスの点火タイミングを間違えなければ左側から湧き出てくる雑魚はある程度処理できます。
そしてやっぱり金光聖母です。
左側の大型装甲車を攻撃しないあたりに配置して拠点前の敵に集中砲火させます。
拠点前まで敵を引きつけてしまえば攻撃が分散されることはないことに今更気づきます。
王子のサンダーも同じように拠点に集中させます。
これで苦戦していた左側の大型装甲車の誘爆を恐れなくて済みます。
なんで最初から気がつかんかったんや。

もう一つの問題。
右側の浮遊している青いバリアのダメージの与え加減が調節できない。
このタイミングを間違えるとキョンシーが変なタイミングで倒れてしまって時止めができない。
青いバリア自身をキョンシーで受けてしまうと倒した瞬間の誘爆で吹き飛んでしまう。
これはチャンプを差し込むことで解決しました。
そうだキャンプがいるじゃん。
彼女ならスキル中は敵の射撃を引き付けてくれるのだから御本尊の攻撃を恐れることなくじっくり配置できるんじゃなかろうか。
ずっとキョンシーの時間停止にこだわり続けてきたけどいなくてもいいじゃん。
と言うかキョンシーをお迎えしたばかりで意地でも使いたかったんだよ。

色々調整した結果落ち着いたのはこれ。

最後は本当に緊張しました。
マウスがて汗でびしょびしょになりました。
クリアした時の result で星三つ並んだ時の爽快感と言ったら。
こんなに気持ちよかったのは久しぶりです。
LV 11程度で大げさに思えるんですが一週間引っかかったミッションですからね。
これで木曜日のメンテナンスを迎えてもいいや。


まあでも火力は足りてそうだしエクストラミッション気分で LV 12の歌チャレンジするか。



はい動画はありません。
軽く様子を見るつもりでプレイしてみたら、さっくりクリアできてしまいました。

勢いを利用して LV 13にも挑戦です。

さすがに敵の攻撃力が激しくなって体力も増強されています。
途中で戦線が崩壊しちゃってますが工夫すればクリアできそうな気配がありますね。
ラストスパートは鍛冶屋をスキル発動させれば間に合うんじゃないかな。
それでもだめならハクノカミをラピスに変えてバフをかければまだいけるし。
右側のウェンディのスキルタイミングとサポートを試行錯誤すれば行けそうな気がします。
というかスキルをガンガン使って本気で攻撃していけば良いだけなので力を加減しなければいけなかった LV 11よりもずっとやりやすいようです。
今回はもう時間がないのでここで打ち止めですが、時間さえ許せば LV 14の星1くらいまではできる自信が出てきました。
思い返せば LV 5で投げ出しそうになった2週間前が懐かしいです。
あの時はここまでいけるとは思わなかったなあ。
とにかく悔しくて楽しい魔神ミッションでした。