Windows Phone Icons Maker v1.0

Windows Phone アプリをビルドし Makrketplace に登録するには、アイコンとして以下のような4種類のサイズの正方形の PNG ファイルを5つ作成する必要があります。Windows Phone Icons Maker v1.0 はこのアイコン ファイル作成を簡単に行うためのツールです。Codeplex で公開しているのでダウンロードしてお試しください。 Marketplace用 200x200:AppName200.png 173x173:AppName173.png 99x99:AppName99.png アプリ用アイコン 173x173:Background.png 62x62:ApplicationIcon.png 使い方は、①画像を読み込み、②矩形で囲み、③[アイコン保存]ボタンを押す、だけです。これで画像と同じフォルダーに「プロジェクト名 Icons」フォルダーが作成され、上記の5つのサイズの画像ファイルが作成できます。 画像は、①[画像を開く]ボタンでダイアログ ボックスから選択、②ドラッグ&ドロップ、③コピー&貼り付け、の3種類で読み込むことができます。コピー&貼り付けに対応しているため、プリント スクリーン キーや Snapping Tool などを使ってスクリーン画像を切り取れば、画像を保存せずにそのまま貼り付けることができて便利です。コピー&貼り付けの場合は、デスクトップにアイコン用フォルダーが作られます。 このツールは WPF で作成されているので、動作には .NET Framework 3.5 以上が必要です。 バグ報告やフィードバックはこのブログにコメントしてください。

0

WPF 用の Bing Map コントロール

Bing Map Control for WPF (Beta)  がリリースされました。 詳細は Bing Map Blog を参照してください。

0

CodePlex:Kinect Audio Positioning

昨日の「Kinect for Window SDK をつかおう!」セミナーで紹介した Kinect マイクロフォンアレイを使った音源位置検出(正確には角度検出)の WPF サンプルを KinectAudionPosition.CodePlex にアップロードしました。 ビームフォーミング技術を使って角度を検出しているそうです。上図の緑の線がビームです。音源がどのビーム(青色)にいるかと、ビーム間のどのあたりかも予測値(オレンジ色)として分かるようになっています。 InotifyPropertyChanged を継承した KinectMicArray クラスを作成しました。このクラスでは BackgroundWorker でオーディオをサンプリングして(実際にはオーディオストリームは使いませんが)、KinectAudioSource.SoundSourcePosition プロパティ(音源予測角度)と、BeamChanged イベント ハンドラーで得たMicArrayBeamAngle を取得します。取得したことを Progress Report として UI スレッドに報告して、UI スレッドで PropertyChanged イベントを発生させています。これは BackgroundWorker(別スレッド)では PropertyChanged イベントを発生させることができないためです。 メインウィンドウでは、(WPF アプリらしく)直線の角度とこれらの角度をバインディングして、自動的にアニメーションができるようにしました。このサンプルではコード(C#)で書きましたが、XAML でも書けるはずです。

0

WPF の マルチスレッド UI アーキテクチャ HostVisual

先日 Silverlight 5 の新しいスレッド アーキテクチャ Composition Thread を紹介しました。 WPF には全く同じスレッド アーキテクチャはありませんが、アニメーションなどがインタラクションを邪魔しないためのマルチスレッド UI アーキテクチャ HostVisual を以前から持っています。2007年に Dwayne Need のブログで紹介されています。 しかし、HostVisual の使い方は CompositionThread ほど容易ではありません。それは以下の2つの理由のためです。 HostVisual は、UIElement ではなく Visual から派生されているので、そのままでは既存のパネルに配置できない レイアウト イベントやロード イベントが発生しない Dwayne Need は、前者のために VisualWrapper クラス(FrameworkElement を継承)を作成し、後者のために VisualTargetPresentationSournce クラス(PresentationSource を継承)を作成しています。サンプルコードもDwayne Need のブログにあるので、参照してください。 当然ですが、バックグラウンド スレッドで動作する HostVisual ではユーザーとの対話操作はできません。ストーリーボードやメディアの再生のような用途に向いています。

0

CodePlex:KinectEarthMove サンプル アプリ

先日の Channel 9 Kinect for Windows SDK Beta ラウンチ イベントで紹介された、地球を両手で操作する Kinect の WPF サンプル アプリケーション KinectEarthMove を CodePlex に公開しました。 やっていることは、 Kinect のスケルトンデータから両手の位置を取得し、その間に地球を配置 両手間の向き(片方の手からもう一方の手へのベクトル)から軸と角度を取得し、地球を回転 両手間の幅を肩幅と比較し、広げたら地球のスケールを拡大 Kinect の画像(ビデオ)データを背景にして、AR 的な効果 いろいろ試してみたのですが、ユーザーの操作(メンタルモデル)と地球の動きを一致させるのが難しくて、結局 AR 的に合成して初めてうまくいきました。ユーザーのふるまいを理解することの重要性を理解しました。Bill Buxton曰く「NUI は決してナチュラルではない。」 このサンプル アプリを動作させるには Kinect と Kinect for Windows SDK Beta が必要です。 【2011/07/08 追記】窓の杜でも紹介されました。

0

CLR プロファイラー V4

CLRプロファイラー V4 がリリースされました。以下のような新機能を持っています。 .NET2.0, 3.0, 3.5, 4.0 をサポート、ただし.NET 4.0のインストールが必要 Silverlight 4 をターゲットにできる ライブ プロセスからのアッタチとデタッチが可能、ただし .NET 4.0 のみ、SilverlightではNG プロセス内サイド バイ サイド CLR インスタンス(つまりプロセス内で別バージョンのCLRコンポーネントを使っているアプリ)でも使える

0

WPF と UX ~ WPF に移行すべきもう 1 つの理由~

「Windows フォームからWPFへの移行の難しさ」にコメントいただいたみなさん、ありがとうございました。さまざまな問題点のご指摘、改善案の提案など参考にさせていただきます。 私自身は、WPF/Silverlight には XAML や Blend などの問題はありつつも、より高い UX を実現するために WPF/Silverlight への移行が必要だと考えています。Windows フォームではユーザーのニーズ・ゴール・使いやすさに対応するだけの柔軟性がないからです。そうしないと Windows アプリケーションは(つまり Windows 自身も)ユーザーに使ってもらえなくなります。先日「WPFとUI ~WPFに移行すべきもう1つの理由~」という短いビデオを作りました。解決というより問題提起でしかないかもしれませんが、よろしければご覧ください。 それ以外にも UX については以下のことも課題と理解しています。 Windows フォームが最もよく使われる業務アプリに UX が必要か? ソフトウェア開発におけるユーザー エクスペリエンス戦略(TechEd2008 川西) Windows フォーム開発者に捧ぐ! WPF への移行(TechEd 2008 ジニアス) WPF/Silverlight を使うことは UX の必要条件であって、十分条件ではない UXデザインワークショップ UX に必要なコストはだれが払うのか? ROI

0

チルトシフトスタジオ(Windows 7 アプリ投稿キャンペーン)

Windows 7 アプリ投稿キャンペーン に「チルトシフトスタジオ」が投稿されました。このアプリは動画・画像ファイルに遠近感のぼかしエフェクトを幅や角度を変えて適用するアプリです。これを適用するとミニチュア模型の動画・画像のように見えます(このような効果をチルトシフトと呼ぶそうです)。 内部的に MediaFoundation や Direct2D を使い、シェル UI に WPF という本格的なアプリケーションです。 さっそく同僚が試した画像を Flickr で公開しています(適用前と適用後)。 なお、Windows 7 アプリ投稿キャンペーンは12月17日(金)までだそうです。

0

教えてください:Windows Forms 開発者が WPF / Silverlight に移行するには何がたいへんですか?

今月、Windows Forms Developers: Tell me about your applications という記事があって、16のコメントが書かれていました。「MDI がないため」という理由が多かったのが意外でした。ここにコメントした一人は Why people don’t switch from WinForms to WPF という記事を書き、以下の理由を述べています。 ビジネス コントロールがない デザイン システムが複雑 WinFormの開発者としての経験が生かせない ほとんどの WPF アプリ はいけてない 私のブログを読んでいる人に Windows Forms 開発者はあまりいないと思いますが、Windows Forms 開発者にの方に WPF / Silverlight に移行していただくには、MSDN などでどういう情報を公開すればよいのか検討しているので、開発者として(ビジネス上の理由は別にして)Windows Forms から  WPF / Silverlight への移行が困難な理由をコメントとして残していただけると幸いです。 【追記】移行(Migration)には3つの意味があるので、それを明確にしたほうがよいですね。基本的には新しい(完全にではなくても既存のアプリの一部でも)プロジェクトに WPF を使ってほしいけど何が問題かを知りたいので、①と②かな… 技術者のスキルの移行 Windows Forms と WPF との相互運用性 Windows…

7

書籍:.NET 開発テクノロジー入門 VS2010対応版

昨年出版された「.NET 開発テクノロジ入門」の .NET 4 バージョン「.NET 開発テクノロジー入門 VS2010対応版」が出版されました。今回私は第6章「並列プログラミング」を担当し、TPL(タスク並列ライブラリー)と同時実行ランタイム(スレッドプール)について解説しました。 第1章:.NET Framework 4 による最新のアプリケーション開発(はじめに) 第2章:Web アプリケーションの開発(ASP.NET) 第3章:リッチクライアントアプリケーション開発(WPF/Silverlight) 第4章:サービス開発 / 分散テクノロジー(WCF) 第5章:データアクセス技術(ASP.NET / LINQ) 第6章:並列プログラミング

3