ぬの部屋(仮)
nu-no-he-ya
  •     123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30      
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
       1234
    567891011
    12131415161718
    19202122232425
    26272829   
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728     
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
     123456
    78910111213
    14151617181920
    21222324252627
    28      
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
    1234567
    891011121314
    15161718192021
    22232425262728
           
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30      
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
         12
    3456789
    10111213141516
    17181920212223
    242526272829 
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30      
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
        123
    45678910
    11121314151617
    18192021222324
    25262728   
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    15161718192021
    293031    
           
         12
    3456789
    10111213141516
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30      
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728     
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
          1
    2345678
    9101112131415
    16171819202122
    232425262728 
           
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
  • ドクター・フー S1 #2 / 地球最後の日

    改めてみるとローズってかなりクレイジーなキャラクタだと思う。なんかドクターとテンションが近い。

    そして第二話にして五十億年後 地球最後の日。こういう、普通の作品なら長編とか劇場版とかに使いそうなショッキングなイベントを何の躊躇もなくシーズン1第二話に持ってくる。

    金持ちが地球最後の日を眺めて楽しむというくそったれ優雅なイベントということで、この作品の未来観がわかる。資本主義続くんだね、あと50億年。ちなみに、資本主義の終焉についてはシーズン10第五話で言及している。イギリスの価値観の変化だろうか。

    フェイスオブボー。初期の頃は本当に伏線の入れ方が良かった。最近のシリーズはそんな狡猾さが失われている気がする。

    太陽がオレンジ色に光ってるのは演出でもおかしいと思ったらサンフィルタがかかってた。なるほどね。でもローズ、いくら直接当たらなくても見ただけで絶対に失明すると思うんだが・・・

    あらためて見ると青い宇宙人も死んでいたらしい。救いたい対象が殆ど全滅することもあるからまだ犠牲は少ない方なんだよな。そうそう平和には終わらない。総じてドクターの中では失敗したケースの方が多い計算になってるんじゃないだろうか。

     

    最後、ドクターは自分の星は焼けてしまったと言うけど、未だによくわからない。結局ギャリフレイはタイムロックされたのか、焼けたのか。実際ずっと「みんな死んでしまった」っていってたのに正確には「事実上死んだも同じ」だったわけだし。「ドクターの日」の兵器の説明も全てを滅ぼすみたいな漠然とした説明しかされて無いし、わかりづらい。

    ストーリー展開上最後のタイムロードにした方が色々都合が良かったけど、人気出たから続けたい→12人の制約が→タイムロード復活以外に回避策がない

    みたいな都合で復活したんだと思う。

     

     

    PPM P3 ファイル書き込み

    プログラムが極めて楽で、ファイルを目視できるPPMテキストを書き出すプログラムを書いた。

     

    //! @brief PPM(RGB各1byte,カラー,テキスト)を書き込む
    //! @param [in] fname ファイル名
    //! @param [in] vmax 全てのRGBの中の最大値
    //! @param [in] width 画像の幅
    //! @param [in] height 画像の高さ
    //! @param [in] p 画像のメモリへのアドレス
    //! @details RGBRGBRGB....のメモリを渡すと、RGBテキストでファイル名fnameで書き込む
    void pnmP3_Write(const TCHAR* const fname, const int vmax, const int width, const int height, const unsigned char* const p) { // PPM ASCII
    
      FILE* fp = _tfopen(fname, _T("wb"));
      fprintf(fp, "P3\n%d %d\n%d\n", width, height, vmax);
    
      size_t k = 0;
      for (size_t i = 0; i < (size_t)height; i++) {
        for (size_t j = 0; j < (size_t)width; j++) {
          fprintf(fp, "%d %d %d ", p[k * 3 + 0], p[k * 3 + 1], p[k * 3 + 2]);
          k++;
        }
        fprintf(fp, "\n");
      }
    
      fclose(fp);
    }
    

    PPM P6 ファイル読み込み

    恐らく最も何も考えなくても使え、少なくとも結果確認には最良の選択のPNM形式のうち、カラーが扱えるPPMの、吐き出すのが比較的楽そうなP6について、読み込みコードを書いた。

     

    //! @brief PPM(RGB各1byte,カラー,バイナリ)を読み込む
    //! @param [in] fname ファイル名
    //! @param [out] vmax 全てのRGBの中の最大値
    //! @param [out] width 画像の幅
    //! @param [out] height 画像の高さ
    //! @param [in] 画像を読み込んだメモリアドレスを返すためのポインタへのポインタ
    //! @retval true 成功
    //! @retval false 失敗
    //! @warning RGBが各1byteでないと動作しない
    //! @details ファイルを読み込み、width*height*3のメモリを確保したうえでRGBをそこへ格納する
    bool pnmP6_Read(TCHAR* fname, int* vmax, int *width, int *height, unsigned char** p) { // PPM BINARY
      *width = -1;
      *height = -1;
      *vmax = -1;
    
      FILE* fp;
      fp = _tfopen(fname, _T("rb"));
      char tmp[2048];
    
      char c;
      while ( c=fgetc(fp)) {
        if (isspace(c))
          continue;
    
        if (c == 'P') { //フォーマットを特定する
          c = fgetc(fp) - '0';
          if (c != 6) {
            fclose(fp);
            return false;
          }
          continue;
        }
    
        if (c == '#') { //コメントを読み飛ばす
          while (c != '\r' && c != '\n')
            c = fgetc(fp);
          continue;
        }
        if (*width < 0) {
          int s = 0;
          while(1) {
            if (isdigit(c)) {
              tmp[s++] = c;
              c = fgetc(fp);
            }
            else {
              tmp[s] = '\0';
              *width = atoi(tmp);
              break;
            }
          }
          continue;
        }
        if (*height < 0) {
          int s = 0;
          while (1) {
            if (isdigit(c)) {
              tmp[s++] = c;
              c = fgetc(fp);
            }
            else {
              tmp[s] = '\0';
              *height = atoi(tmp);
              break;
            }
          }
          continue;
        }
    
        if (*vmax < 0) {
          int s = 0;
          while (1) {
            if (isdigit(c)) {
              tmp[s++] = c;
              c = fgetc(fp);
            }
            else {
              tmp[s] = '\0';
              *vmax = atoi(tmp);
              break;
            }
          }
          break;
        }
        else {
          break;
        }
      }
    
      if (*width < 0 || *height < 0 || *vmax < 0) {
        return false;
      }
    
      const size_t maxsize = *width* *height;
      unsigned char r, g, b;
    
      *p = new unsigned char[maxsize * 3];
      for (size_t i = 0; i < maxsize; i++) {
        fread(&r, 1, 1, fp);
        fread(&g, 1, 1, fp);
        fread(&b, 1, 1, fp);
    
        (*p)[i * 3 + 0] = r;
        (*p)[i * 3 + 1] = g;
        (*p)[i * 3 + 2] = b;
      }
    
      fclose(fp);
    
      return true;
    }
    

     

     

     

     

    ドクター・フー S1 #1 / マネキンウォーズ

    Doctor Who (新シリーズ)
    シーズン1 第一話

     

    なぜか気になって見直しを始めた。

     

    新シリーズの開始が2005年。

    第一話。この話は敵がマネキンで、ラスボスがちょっと液体的なのが最後に出るだけ。
    2005年といえばスター・ウォーズ エピソード3の頃。映画のCGも既にかなりこなれている時代。
    しかしドクターフーは旧シリーズ(~1989)があったとはいえ世代も変わり新ドラマ扱いしてもいい。
    既にドル箱となってしまった2018年現在とは全く違う雰囲気を感じる。
    (この作品は定期的に雰囲気を変えることで長寿化を実現しているので当たり前なんだが・・・)

    それにしても、ローズは美人なのに、いつ見てもローズのママはブスだ。。。女手一つで娘育ててるから苦労してるんだろうけど。
    この作品、シリーズ通して母を悪く書いてるなとふと思う。あ、エイミーは違うか。美人だし。

    そしてこの頃のドクターは過激。
    ビルの屋上にあるプラスティックの遠隔装置を爆弾で吹っ飛ばす。全くじゃないけど、爆発物つかうのは珍しい展開。頭使えよ、賢いんだから。屋上の装置壊すには火薬多すぎるし。
    でもシーズン4「運命の左折」ではやり過ぎて死んでたし、やっぱり”暴走を止める誰か”がいないとだめなんだろう。

    コンパニオン候補が道で暢気に歩きながらドクターに質問する。このシーンもなんとなく珍しい。マーサとは月で、ドナはテレポーテーションして、エイミーは12後のカウントダウンで、クララは・・・ごめんどれが最初なんだ。とにかくいつも余裕がない。

    ドクターを探すシーン。いまは懐かしいCRTディスプレイがつながったパソコンでDoctorを検索。
    Doctor
    Doctor Living Plastic
    Doctor Blue Box
    やっと見つかったがなんと9代目ドクターの写真が貼ってある。少なくとも13人いる中のよくその顔で写真を撮られたな。

    そしてミッキーが入れ替わって、ドクターが解説し、ローズが謎を解き、ドクターがドジって、ローズが助けて・・・、とドクター・フーっぽくなっていく。

    そして最後、ローズはドクターとの動向を一度断り、「タイムトラベルもできるけど?」と再度誘われてコンパニオンに。
    そりゃやっとの思いで断ったんだから、二回目は無理だよね。

    総評。懐かしい。そして作品自体が初々しい。まだ方向性が定まってない感じがして新鮮。