C#

C#

【C#】n乗根の計算

n乗根の計算で、例えば8の3乗根( \(\sqrt { 8 } =2\) )を計算するにはMathクラスのPowメソッドを用いて Math.Pow(8.0, 1.0 / 3.0); と、すれば答え 2 が求められます。 しかし、負の値のn乗...
C#

【C#】アンチエイリアスの設定

アンチエイリアス(antialias)とは、特に斜めの線を描画した時にギザギザになるのをなめらかにする処理ですが、C#ではGraphicsクラスのSmoothingModeプロパティにSystem.Drawing.Drawing2D.Smo...
C#

【C#】寸法線の描画

GraphicsPathを使うことで、文字を任意角度で表示することが出来るのを知った元メカ屋な私。 これは寸法線の描画に使えそう! と思い、寸法線の描画部分をクラスにまとめたものを作成してみました。 実行画面 寸法線描画のクラス↓ publ...
C#

【C#】GraphicsPathの領域取得

GraphicsPathを囲む外接四角形の領域はGetBoundsメソッドで取得することができます。 private void Form1_Paint(object sender, PaintEventArgs e) { // パスの作成 ...
C#

【C#】GraphicsPathの描画

GraphicsPathの特長の一つでもあるアフィン変換を駆使した描画をしてみたいと思います。 パスの描画は、パスをnewしてAddLineなどのメソッドで図形を描画し、DrawPath(輪郭の描画)やFillPath(塗りつぶした描画)で...
C#

【C#】GraphicsPath

GraphicsPath(名前空間:System.Drawing.Drawing2D)ですが、線や丸を書くだけで、DrawXXX系のメソッドでも出来るしなんか面倒臭いやつ?! と、思っていたのですが、GraphicsPathに含まれているメ...
C#

【C#】Bitmap画像データの拡大縮小

Bitmap画像を拡大縮小するには、Bitmapクラスのコンストラクタで、 Bitmap bmpOrijinal = new Bitmap("sample.bmp"); int scale = 50; Bitmap bmpResize = ...
C#

【C#】画像の座標系

画像を描画するにはDrawImageメソッドを用いますが、DrawImageメソッドはいくつものオバーロードが定義されていますが、画像の拡大縮小を考慮すると、個人的には以下の定義をよく用います。 public void DrawImage(...
C#

【C#】SplitContainerのPanel固定方法

SplitContainerのパネルのサイズは、フォームのリサイズやスピリッター(仕切り線)をマウスで操作することで、サイズが変更されますが、このパネルを固定する方法です。 フォームのリサイズに合わせて、パネルのサイズが変わらないようにする...
C#

【C#.NET】マイクロソフト仕様のアフィン変換

.NETでは座標のアフィン変換用にMatrixクラス(名前空間:System.Drawing.Drawing2D)が用意されています。 しかしながら、やっかいな事に、私の思う普通のアフィン変換の行列の表現が行と列が逆(転置されている)だし、...
C#

【C#】ファイルを開くダイアログボックスの表示

C#でファイルを開くときに使うOpenFileDiaologクラス(名前空間:   System.Windows.Forms)の例です。(主に自分のコピペ用) 下記のファイルは画像ファイルを開く例です。 //ファイルを開くダイアログボックス...
C#

【OpenCvSharp】サンプルプログラムの公開

少し前に、とある記事向けに書いたOpenCvSharpのサンプルプログラム。 少しバージョンが古くなっていますが、眠らせておくのも、もったいないので公開しておきます。 ダウンロードはこちら↓ OpenCvSharp サンプルプログラム 注)...
C#

【C#】引数の値渡し、参照渡し(ref, out)

メソッドに値を引数で渡す場合、値渡しと参照渡しというものがあります。 メソッド内で処理した結果を処理後に必要な場合には参照渡しにする必要があるのですが、まずはコード例から。 static void Main(string[] args) {...
C#

【C#】NumericUpDownコントロール

パラメータの設定など、数値を入力するコントロールとして、これまでTextBoxを使うことが多かったのですが、TextBoxを使うと、TryParseを使い、文字列入力のエラー処理や、整数、小数の確認、最小値、最大値の確認などのエラー処理を行...
C#

【C#】ImageDataクラスライブラリ公開

画像処理プログラムの基本は画像の輝度値(画素値)を取得して、様々な処理をすることとなりますが、C#では輝度値を取得するメソッドにSetPixel/GetPixelのメソッドが用意されていますが、これは処理が遅いことで有名。 そこで、Open...
C#

【C#】Chartを使ったヒストグラム表示

Chartコントロールを使いたかった理由の一つに画像処理ではおなじみのヒストグラムをChartコントロールで表示したかったのですが、その簡単なプログラムです。 フォームにはChartコントロールを配置し、Chartの名前がchart1とした...