.NETでPythonを試してみる 第1回

前回は下準備でした。 Introduction今回の目的は、WPFからPythonスクリプト、つまり .py ファイルを呼び出します。また、WPFなので、MVVMを使います。MVVMフレームワークは MVVM Light Toolkit ですが、そのあたりは自由に適宜選択してください。ソースは下記になります ...

.NETでPythonを試してみる 第0回

Introduction仕事でPythonを使う機会が再び訪れ、そのPythonをGUIから使えたらいいなぁ、って感じで調べたらIronPythonがあることを思い出して、実際に試してみようと思ったのがきっかけ。IronPythonについてはWikipediaで調べてください。 ja.wikipedia.orgI...

開発メモ その30 LoggerServiceを実装する

Problem世の中にロギングライブラリはたくさんあります。有名どころでは log4net, NLog とかです。 単純にこれらのロギングライブラリをアプリにリンクすると、万が一ロギングライブラリに問題が生じたり、ログの出力先をWebServiceに投げたい、とかなったらログ出力を記述している個所を全部書き換える...

.NETで画像処理を試してみる OpenCVSharp編 第5回

前回は3.Xへの更新について説明を行いました。 Introduction現状の.NETのUIといえば、UWPがメインに据えられ(Microsoft的な意味で)、WPFが微妙な立ち位置になり、WinFormsがレガシーとなっていますが、UI以外の面では System.Drawing 名前空間は、GDIという太古か...

WPF メモ その3 VisualStateManagerとBehaviorの位置関係に注意

What does it mean?MVVMの場合、コードビハインドにロジックを書くことを厭い、Behaviorを使って、UIとロジックの分離を試みることも多いでしょう。Behaviorの場合、System.Windows.Interactivity.Behavior を継承し、型パラメータは System.Wi...

開発メモ その29 'PropertyArrayStart' のタグは、テンプレート セクションでサポートされていません。

Problemタイトルが意味不明ですが、現象としては、DataTemplateで2次元配列の依存関係プロパティにBindingしてビルドしたら発生したエラー。どうもこのエラー、2017年1月現在、日本語圏で誰一人として遭遇している人がいない模様。PropertyArrayStart というワードを日本語検索しても...

WPF メモ その2 グリッドを自前で描画する

Why?カスタムコントロールの練習のためです。ちょっと開発中のアプリで自前で可変サイズのグリッドが必要になったのですが、XamlでGridをゴリゴリ用意するなら、カスタムコントロールのがパフォーマンスは良いだろう、という判断です。 WinFormsの時は、OnPaint を駆使して、ListView, TextB...

開発メモ その28 カスタムコントロール (WPF) を追加できない

Problem既存のクラスライブラリにカスタムコントロール (WPF) テンプレートを追加しようと思ったのですが、そもそもテンプレートが表示されない問題に遭遇。 SolutionStackoverflowで同じ問題に遭遇した人がいました。 プロジェクトファイルを編集しろ、ということでした。プロジェクトファイ...

.NETで画像処理を試してみる OpenCVSharp編 第4回

前回はカメラの説明を行いました。 Introduction相当久しぶりですが… 今回は、OpenCVSharp 2.X から 3.1 に変更した話です。 OpenCV は2017年1月現在 2.4 と 3.1 が存在しています。それに伴い OpenCVSharp も2つのバージョンが存在します。 ところがメジャ...

開発メモ その26 特定の色相を選択して抜き出す

HSVを使って特定の色だけ残す前回、RGBと違ってRGBは色相によって同じような色を選択できることを説明しました。 これを用いて、実際に画像から特定の色だけを残してみます。処理としては単純で、入力画像の各画素をRGBからHSVに変換し、指定した条件に合致していたら、その画素を残し、それ以外なら任意の色で塗りつぶし...