目次 1. 研究の背景と目的 Kinect の概要 Kinect の仕組み Kinect の原理 Kinect for Windows と Xbox 360 Kinect Kinect の実用例...3

Size: px
Start display at page:

Download "目次 1. 研究の背景と目的 Kinect の概要 Kinect の仕組み Kinect の原理 Kinect for Windows と Xbox 360 Kinect Kinect の実用例...3"

Transcription

1 平成 25 年度卒業研究論文 拡張現実 (AR) を用いた 3D シミュレーションアプリの開発 - Kinect で実現するナチュラルユーザーインターフェース - 近畿大学工学部 情報システム工学科情報メディアコース 太田雄介 提出

2 目次 1. 研究の背景と目的 Kinect の概要 Kinect の仕組み Kinect の原理 Kinect for Windows と Xbox 360 Kinect Kinect の実用例 開発環境 Kinect for Windows SDK WPF アプリケーション GUI(.xaml) ロジック (.xaml.cs) KinectClosetSimulation システム外部設計 MainWindow.xaml MainWindow.xaml.cs KinectClosetSimulation システム内部設計 MainWindow.xaml MainWindow.xaml.cs MainWindow.xaml.cs >> MainWindow MainWindow.xaml.cs >> WindowLoaded MainWindow.xaml.cs >> WindowClosing MainWindow.xaml.cs >> ColorFrameReady MainWindow.xaml.cs >> SkeletonFrameReady MainWindow.xaml.cs >> ChangeImageSource 今後の課題 まとめ 謝辞 参考文献 付録

3 1. 研究の背景と目的 Natural User Interface(NUI) は, 人間の五感や, 人間が自然に行う動作によって機械を操作する方法である.NUI は Wii リモコンに始まり,2010 年に米 Microsoft 社の Kinect がゲーム機 X box 用のセンサーとして発売され 2013 年 11 月 25 日にはさらに機能が追加された Kinect v2 Developer Preview が世界中に公開された ( 一般発売は 2014 年予定 ) [1] また, 同年 7 月 22 日には米 LeapMotion 社が指先によるジェスチャー入力を可能にする Leap Motion Controller [2] を発売しており 今日のモーションセンサ技術の発展は, 従来は不可能であったユーザー インターフェース (User Interface : UI) を可能にしている. コンピュータを操作する際のデータ入力の操作は, よりユーザに優しいものに移り変わってきている. 元々は全ての操作をキーボードからのコマンド入力 (Character-based User Interface : CUI) によって行ってきたものが, ビジュアルな画面上でマウスなどのポインティングデバイスによって基礎的な操作を行う (Graphical User Interface : GUI) ことができるまでに進化した. そして Kinect のように直感的な人間の動作で操作できるインターフェースは,Natural User Interface (NUI) と呼ばれ, 次世代の UI として注目されている. 本研究では Kinect の特徴を活かした拡張現実 (AR) 空間を構築し, これまで実現できなかった効果を生み出す視覚的シミュレーションアプリを開発することを目的とする. ユーザ要求 本研究で用いる Kinect は, 何も持たず, 何にも触れずに体の動きや声でコンピュータと情報のやり取りを行う NUI を実現することができるので, あらゆる分野 ( 後述 1.2) に応用され今後も更なる発展が期待されるデバイスの 1 つである. 従って Kinect を利用したアプリケーションのユーザとしては, 直感的で思い通りに操作が可能であることだけではなく, これまでには実現できなかった効果を生み出し それらによって新鮮な感覚を体験することも自然な要求である. AR アプリケーションが広く普及するためには, 用途によって様々に異なるユーザの要求に対し最適な機能を備えている必要がある. 例えば, 仮想世界を眼前の光景に融合するアプリケーションのユーザとしては, いつでも AR を利用することができる環境が整っており, 手軽な操作で実行可能であることが自然な要求である. 言い換えれば 現段階の Kinect のシステムでは, ユーザが いつでも利用することができる 手軽な操作で実行可能な 機能を実現することは難しい. 従って本研究では, ユーザが実際に使用したい時や場所に然るべき機能を備えたシステムが常備してあることが理想であり, それを想定した上で開発する必要がある. 制作内容 服屋には服の種類だけでなく, それぞれのサイズや色など数多くのバリエーションの服が並べられている. これらの服の中から客が納得して購入するまで試着を繰り返すのは, 多くの手間や時間がかかるだけでなく商品である服自体が汚れたり傷んでしまう可能性がある. そこで Kinect を用いてバーチャル試着を行うことができれば, 手軽に何度も購入予定の服を着るシミュレーションをすることができる. また, 試着室に入る必要もなくなるので, 同行者や店員と話しながら試着を楽しむことが出来る. 1

4 1.1 Kinect の概要 Kinect( キネクト ) とは,Microsoft 社が発売している Xbox360 用の新デバイスのことであり, ユーザーは Kinect の前で物理コントローラーを使わずにゲーム操作を行うことが出来る. この操作をを可能にしているのは,Kinect 本体に搭載されている RGB カメラ 近赤外線プロジェクタ 近赤外線カメラ ( 深度センサー ) 4 つのマイクアレイ チルトモーターであり, カラー情報やプレイヤーの身長 骨格 三次元的位置を認識, 追跡しモーションキャプチャーを合成することが出来る. また, マイクを搭載しているため, 音源位置特定 音声認識をすることも出来るので, 声によるゲーム操作も可能にしている. [3] 図 -1 Kinect カメラ 現在 Microsoft 社は,Kinect を Windows 上で動作させるための Kinect for Windows SDK を一般公 開しており,Windows(Windows7 以降 ) 上で Kinect を用いたアプリケーションの開発が可能と なっている Kinect の仕組み [4] Kinect の内部には以下が搭載されている. 近赤外線プロジェクタ 近赤外線カメラ( 深度カメラ ) ( 解像度最大 ) RGB カメラ ( 解像度最大 ) マイクアレイ( 4) チルトモーター図 -2 Kinect の内部 [3] Kinect の下部にはマイクアレイがあり,4 本の個別マイクから構成される.1 本は近赤外線プロジェクターの左に, 他の 3 本はカラーカメラの右側に等間隔で配置されている. [3] Kinect の原理 レーザー光源の位置から水平方向にずれた位置でカメラにより観察を行うと, レーザー光が 照射されている被写体までの距離 ( 奥行き ) z が変わると, カメラ画像内で物体に照射された 光点の位置が水平方向に距離 x ずれる. この依存関係 z = f(x) を利用することで,x を計測して z を求めることができる ( 光切断法 ). カメラ画像内のすべて物体の奥行き z を同時に求めるため には 2 次元のランダムドットパターン ΣPij を照射して, そのカメラ画像と元々のランダム ドットパターンの一部 Pij との相互相関を計算して, そのピークを求めることで, カメラ画像 内で Pij が照射された位置を特定できる. これにより, カメラ画像内の部分毎に水平方向のずれ x が決まるので, カメラ画像の奥行き z を求めることができる. この手法は照射されたランダム ドットパターンを観測して, そのある部分の光源を特定できるので Light Coding 技術と呼ばれ ている Kinect 内部にマイクが 4 つある理由は, それぞれのマイクで収集した音声を分析することで音 の位相から音源の位置を割り出すためである. 音源位置は左右に ±50 の範囲で検出可能であり, 2

5 複数のプレイヤーが Kinect の前にいたとき誰が発声しているのかを判別できる.( 上限 7 人 ) ま た, マイクにはエコー キャンセラ機能があり, 発する声とソフトウェア内の音源は分離する Kinect for Windows と Xbox 360 Kinect [4] Kinect for Windows SDK からは,Kinect for Windows センサーだけでなく Xbox 360 Kinect センサーによって開発することも出来る. しかし,Xbox 360 Kinect センサーを使用する場合には以下の点に注意しなければならない. 開発目的であれば,Xbox 360 Kinect センサーでも利用可能だが, 商用利用することは出来ない. Xbox 360 Kinect センサーでは近接モード (Near Mode) はサポートしない. Kinect for Windows センサーと Xbox 360 Kinect センサーは完全互換ではない. 1.2 Kinect の実用例 Kinect は様々な分野で活躍できる可能性を秘めている. 医療現場 : 手術中の執刀医が患者の情報をコンピュータ上で閲覧する際, 従来は衛生状態を保つために自らの操作が不可能であるため, 情報の即時提示が困難なことや, 集中力低下のリスクがあったが,Kinect を用いて片手または声だけで容易に操作をすれば, 衛生状態を保ちながら執刀医が直感的に操作をすることができるようになる. [5] リハビリテーション : 患者が Kinect を用いたリハビリテーションを行えば, 直感的な操作で 比較的簡単にできる上, 患者自身のモチベーションの維持が期待できる. [6] 2. 開発環境 [4] [8] ハードウェア要件 OS: Microsoft Windows 7,8 または Microsoft Windows Embedded Standard 7 Kinect を動作させる Kinect for Windows SDK は Windows7 以前の OS には対応していない. 本研究では Windows7 を使用する. CPU: デュアルコア 2.66GHz 以上 ( 推奨 ) Kinect はハードウェアですべての処理を行うわけではなく,PC 側でも処理を行うのである程度の スペックを求められる. 今回の研究ではデュアルコア 3.30GHz のプロセッサを用いる. メモリ : 2GB 以上の RAM ( 推奨は 4GB 以上 ) USB 2.0 ポートに接続された Kinect センサー グラフィック ボード : DirectX 9.0 以上をサポート ソフトウェア要件 3

6 インストール Kinect for Windows SDK1.5( ソフトウェア開発キット ) 32bit にも 64bit にも対応しているが, 本研究ではプログラミングに Visual Studio C# 2010 Express を使用するため 32bit 版を利用する. Microsoft Visual C# 2010 Express (32bit) 既述の NUI ライブラリに命令を出すための統合開発環境.Microsoft Visual C# 2010 Express は 32bit のみである. 2.1 Kinect for Windows SDK [8] 図 -3(SDK の仕組み ) Microsoft 社は Windows 上で Kinect の開発ができる SDK として,Kinect for SDK の β 版を 2011 年 6 月にリリースした.Kinect for Windows SDK によって,Kinect の全ての機能を利用することが出来るようになった.2012 年 2 月に正式版がリリースされた.Kinect for Windows SDK を使用することで,WPF アプリケーション,WinForms アプリケーション,XNA アプリケーションでプログラミングすることが出来る. 本研究では,WPF アプリケーションを用いて開発する. 2.2 WPF アプリケーション [9] WPF(Windows Presentation Foundation) は,XAML 言語 (Extensible Application Markup Language) と C# を始めとする, ロジックを記述するプログラミング言語を用いて, 見た目 ( デザイン ) に関する部分は XAML 言語, ロジックは C# で記述するという, アプリケーションの見た目に関する部分をロジックと完全に切り離して考えることが出来る GUI 開発ライブラリのことである.XAML コードと, それに付随する C#(C++, Visual Basic) の分離コードは, ビルド時に 1 つのクラスに合成され, コンパイルされる. 4

7 ( 図 -4 画像参照元 : GUI(.xaml) XAML ファイルは, オブジェクトに対応づけるための XML 要素を記述する.NET Framework3.0 を基盤としたマークアップ言語であり, そこで定義されている表示要素をウィンドウに配置してレイアウトを指定する. また特定の入力要素の値を変数と結びつけたり ( データバインディング ), オブジェクトの相互関係を定義したり, イベント処理を設定することが出来る ロジック (.xaml.cs) XAML ファイルがオブジェクトに対応づけるための XML 要素を記述する為のファイルであるのに対し, ロジックを記述するファイルではクラスを作成することによってその指定した XML 要素に UI 要素を付け加えることが出来る. 3. KinectClosetSimulation システム外部設計 服画像を 3 種類用意し, 認識されたプレイヤーが右腕を, 肘を曲げずに高く上げると, プレイヤーの肩に合わせて服が描画され, 更にもう一度右腕を降ろした状態から肘を曲げずに高く上げると また違う服が描画される. 3.1 MainWindow.xaml XAML ファイルは, 開発するアプリケーションのレイアウトを主に担当するので, 各要素の配置, サイズを視覚的に確認しながら進めていくことが出来る. 図 -5 XAML ファイル 5

8 3.2 MainWindow.xaml.cs XAML ファイルでは出来ない細かい処理はロジック (.xaml.cs) ファイルで行う. 図 -6 実行結果 4. KinectClosetSimulation システム内部設計 4.1 MainWindow.xaml 既述のように,XAML ファイルは主にレイアウトを担当するが, Loaded="WindowLoaded" のようにイベント処理をするための準備もこのファイルで行う. <Window x:class="kinectclosetsimulation.mainwindow" xmlns=" xmlns:x=" Title="MainWindow" Height="350" Width="525" Loaded="WindowLoaded" Closing="WindowClosing" Left="0" Top="0"HorizontalAlignment="Left" IsManipulationEnabled="True" SizeToContent="WidthAndHeight" VerticalAlignment="Top"WindowStartupLocation="CenterScreen"> <Viewbox> <Grid> <Canvas Width="640" Height="480"> <Image Name="Image" Width="640" Height="480" /> <Image x:name="clothe" Source="Images\SpaceSuit2.png" RenderTransformOrigin="0.5, 0.5" Canvas.Left="100" Canvas.Top="100" Stretch="None"/> </Canvas> </Grid> </Viewbox> </Window> 表 1 MainWindow.xaml 6

9 4.2 MainWindow.xaml.cs MainWindow.xaml.cs >> MainWindow KinectSensor private KinectSensor kinectsensor ; public class Kinectsensor (Kinect for Windows v1.5 ~) Represents a Kinect sensor. (Kinect の機能にアクセスするためのクラスやイベントを保持する ) Public Propaties 1 AudioSource Gets the audio source. ( 音声関連処理を行うクラスのインスタンスを取得する.) 2 ColorStream Gets the color stream for the Kinect. (RGB カメラ関連処理を行うクラスのインスタンスを取得する.) 3 CoodinateMapper (v1.6~) 1 Gets a CoordinateMapper object, which is used to convert points from one coordinate space (color, depth, skeleton) to another. ((RGB, 深度, 骨格 ) のうち 1 つの座標を 他のカメラ座標に変換する CoodinateMapper オブジェクトを取得する.) 4 DepthStream Gets the depth stream. ( 距離カメラ関連処理を行うクラスのインスタンスを取得する.) 5 DeviceConnectionId Gets the USB connector ID. ( デバイスの接続 ID を取得する.) 6 ElevationAngle Gets or sets the elevation angle. ( チルトモータの角度を設定もしくは取得する.) 7 IsRunning (bool) Gets a value indicating whether the sensor is streaming data. ( センサーが動作中か (true) それ以外か (false) を取得する.) 8 KinectSensors (static) Gets a collection of Kinect sensors. (PC に接続されている Kinect センサーの一覧を取得する.) 9 MaxElevationAngle Gets the maximum elevation angle (in degrees). ( チルトモータの最大角度を取得する ) 10 MinElevationAngle Gets the minimum elevation angle (in degrees). ( チルトモータの最小角度を取得する.) 11 SkeletonStream Gets the skeleton stream. ( プレイヤー ( スケルトン ) 関連の処理を行うクラスのインスタンスを取得する.) 12 Status Gets the status of the sensor. (Kinect の接続状態を取得する.) 表 2 KinectSensor class Public properties 7

10 Public Method 1 MapDepthFrameToColorFra me 2 MapDepthToColorImagePoin t Obsolete starting with version 1.6; replaced by the CoodinateMapper.MapDepthFrameToColorFrame method. In versions prior to 1.6, this method maps a depth frame to a color frame. ((Kinect for Windows)v1.6 以降は旧式となり,CoodinateMapper クラスに移された.v1.6 以前は, 深度フレーム (X, Y) に対応するカラーフレーム (X, Y) の座標を取得するメソッド.) Obsolete starting with version 1.6; replaced by the CoodinateMapper.MapDepthPointToColorImagePoint method. In versions prior to 1.6, this method maps a depth coordinate with depth value to a color coordinate. ((Kinect for Windows)v1.6 以降は旧式となり,CoodinateMapper クラスに移された.v1.6 以前は 深度値 (Z 座標 ) を合わせた深度座標に対応する RGB カメラ座標を取得するメソッド.) 3 MapDepthToSkeletonPoint Obsolete starting with version 1.6; replaced by the CoodinateMapper.MapDepthPointToSkeletonPoint method. In versions prior to 1.6, this method maps a coordinate (depthx, depthy) and depth value to a skeleton point. ((Kinect for Windows)v1.6 以降は旧式となり,CoodinateMapper クラスに移された.v1.6 以前は, 深度値 (Z 座標 ) を合わせた深度座標に対応するスケルトン座標を取得するメソッド.) 4 MapSkeletonPointToColor Obsolete starting with version 1.6; replaced by the CoodinateMapper.MapSkeletonPointToColorPoint method. In versions prior to 1.6, this method maps a skeleton point to a color point. ((Kinect for Windows)v1.6 以降は旧式となり,CoodinateMapper クラスに移された,v1.6 以前は, スケルトン座標に対応する RGB カメラの座標に変換する.) 5 MapSkeletonPointToDepth Obsolete starting with version 1.6; replaced by the CoodinateMapper.MapSkeletonPointToDepth method. In versions prior to 1.6, this method maps a skeleton point to a depth point. ((Kinect for Windows)v1.6 以降は旧式となり,CoodinateMapper クラスに移された.v1.6 以前は, スケルトン座標に対応する RGB カメラの座標に変換する.) 6 Start Starts streaming data out of the sensor. (Kinect の処理を開始する.) 7 Stop Stops streaming data out of the sensor. (Kinect の処理を停止する.) 表 3 KinectSensor class Public method 1 CoodinateMapper は Kinect for Windows v1.6 以前は実装されていない. 8

11 Public Events 1 AllFramesReady Event that fires when new frames are available for each of the sensor's active streams. ( 全てのストリームで, フレームが更新された時に起動するイベント ) 2 ColorFrameReady Event that fires when a new color frame is available in the ColorStream. ( カラーストリームで カラーフレームが更新された時に起動するイベン ト ) 3 DepthFrameReady Event that fires when a new depth frame is available in the DepthStream. ( 深度ストリームで 深度フレームが更新された時に起動するイベント ) 4 SkeletonFrameReady Event that fires when a new skeleton frame is available in the SkeletonStream. ( スケルトンストリームで スケルトンフレームが更新された時に起動す るイベント ) 表 4 KinectSensor class Public Events MainWindow.xaml.cs >> WindowLoaded カラー 骨格ストリームの有効化, バッファの初期化, 新しいインスタンスの初期化, イベントの発生などの, 新しい服を描画するための準備を行う. WriteableBitmap 指定したパラメータを使用して,WriteableBitmapSource クラスの新しいインスタンスを初期化し, ターゲットに画像を書き込み 更新するための BitmapSource を提供する.WriteableBitmap オブジェクトは System.Windows.Media.Imaging 名前空間に含まれ, 画像のピクセルデータの頻繁な更新に対処するために作成されている.WriteableBitmap を作成するときは画像のプロパティ (RGB カメラの幅,RGB カメラの高さ,Bitmap の水平値,Bitmap の垂直値,Bitmap のピクセルフォーマット,Bitmap の Bitmap パレット ) を定義し,WriteableBitmap オブジェクトにメモリを一度割り当てれば, 後は必要に応じてピクセルデータが更新される. public partial class MainWindow : Window private KinectSensor kinectsensor ; private WriteableBitmap writeablebitmap ; // 新しいインスタンスを初期化 this.writeablebitmap = new WriteableBitmap(this.kinectSensor.ColorStream.FrameWidth, this.kinectsensor.colorstream.frameheight, 96.0, 96.0, pixelformats.bgr32, null); public class WriteableBitmap Provides a BitmapSource that can be written to and updated. ( 書き込み及び更新が可能な BitmapSource を提供する.) 9

12 Constructor 1 WriteableBitmap(BitmapSource) Initialize a new instance of the WriteableBitmap class using the given BitmapSource. ( 指定した BitmapSource を使用して,WriteableBitmap クラスの新しいインスタンスを初期化する.) BitmapSource 初期化に使用する BitmapSource 2 WriteableBitmap(Int32, Int32, Double, Double, pixelformat, BitmapPalette) Initialize a new instance of the WriteableBitmap class using the specified parameters. ( 指定したパラメータを使用して,WriteableBitmap クラスの新しいインスタンスを初期化する.) Int32 Bitmap の幅 Int32 Double Double pixelformat Bitmap の高さ Bitmap の水平ドット / インチ Bitmap の垂直ドット / インチ Bitmap の pixelformat BitmapPalette Bitmap の BitmapPalette 表 5 WriteableBitmap class WriteableBitmap Constuctors XAML ファイル内の Image オブジェクトの Source プロパティに, プロジェクトのソリューションエクスプローラ内にある images フォルダにまとめて入れておいた, ターゲット上に表示する画像ファイルへのパスを設定しておく. そして WriteableBitmap クラスの新しいインスタンスを初期化したら新たに画像を描画する. 10

13 MainWindow.xaml.cs this.writeablebitmap = new WriteableBitmap(this.kinectSensor.ColorStream.FrameWidth, this.kinectsensor.colorstream.frameheight, 96.0, 96.0, pixelformats.bgr32, null); //images フォルダ内の画像を描画 this.image.source = this.writeablebitmap; MainWindow.xaml <Image x:name="clothe" Source="Images\SpaceSuit2.png" RenderTransformOrigin="0.5, 0.5" Canvas.Left="100" Canvas.Top="100" Stretch="None"/> MainWindow.xaml.cs >> WindowClosing Kinect の処理を終了するためのイベント. this.kinectsensor.stop(); 表 6 WindowClosing MainWindow.xaml.cs >> ColorFrameReady RGB カメラでカラー画像を表示するためのイベント. ColorImageFrame using (ColorImageFrame colorimageframe = e.opencolorimageframe()) if (colorimageframe!= null) colorimageframe.copypixeldatato(this.colorpixels); this.writeablebitmap.writepixels(new Int32Rect(0, 0, this.writeablebitmap.pixelwidth, this.writeablebitmap.pixelheight),this.colorpixels, this.writeablebitmap.pixelwidth * sizeof(int), 0); public class ColorImageFrame It provides access to the dimensions, format and pixel data for a color frame. ( フレームごとの RGB カメラのピクセルデータとバイト長, フォーマットを取得する.) 11

14 Public Properties Format Gets the format for the color data, which includes the data type, frame rate, and the resolution. ( カラーフレームのフォーマット ( フレームレート 座標 ) を取得 設定 ) PixelDataLengt h Public Method CopyPixelDataTo ( byte[] ) Gets the total length of the pixel data buffer. ( ピクセルデータのバイト長を取得 ) 表 7 ColorImageFrame class ColorImageFrame Properties Copies a frame of color data to a pre-allocated array of bytes. The array size must be equal to the ColorImageFrame.PixelDataLength Property. ( フレームごとの RGB ピクセルデータを取得する.PixelDataLength Property で取得したバイト長分の長さが確保された byte の配列でなければならない.) 表 8 ColorImageFrame class ColorImageFrame Method ColorImageFrameReadyEventArgs private void ColorFrameReady(object sender, ColorImageFrameReadyEventArgs e) using (ColorImageFrame colorimageframe = e.opencolorimageframe()) public class ColorImageFrameReadyEventArgs The event arguments provided in a KinectSensor.ColorFrameReady event when a frame of color data is ready. (RGB カメラのフレーム更新を行う時の ColorImageFrame に渡される引数を提供する.) Public Method 2 OpenColorImageFrame() Gets the most recent frame of color data. ( 新しいフレームの RGB カメラの情報を取得する.) 表 9 ColorImageFrameReadyEventArgs class ColorImageFrameReadyEventArgs Method 2 このメソッドで取得した ColorImageFrame は using でくくるか,Dispose を明示的に呼び出す必要がある. 12

15 MainWindow.xaml.cs private void ColorFrameReady(object sender, ColorImageFrameReadyEventArgs e) // 新しい ColorImageFrame の RGB カメラの情報を取得する using (ColorImageFrame colorimageframe = e.opencolorimageframe()) if (colorimageframe!= null) // フレームごとの RGB ピクセルデータを取得する colorimageframe.copypixeldatato(this.colorpixels); する // 3 WriteableBitmap.WritePixels : ビットマップの指定した領域内のピクセルを更新 this.writeablebitmap.writepixels(new Int32Rect(0, 0, this.writeablebitmap.pixelwidth, this.writeablebitmap.pixelheight),this.colorpixels, this.writeablebitmap.pixelwidth * sizeof(int), 0); 3 WriteableBitmap.WritePixels Method WriteableBitmap.WritePixels( ); Int32Rect sourcerect, //1 Array Int32 Int32 pixels, //2 stride, //3 offset, //4 this.writeablebitmap.writepixels( new Int32Rect(0,0,this.writeableBitmap.PixelWidth, this.writeablebitmap.pixelheight), this.colorpixels, //private byte[] colorpixels; this.writeablebitmap.pixelwidth * sizeof(int), 0 ); 表 10 WriteableBitmap.WritePixels Method ビットマップの指定した領域内のピクセルを更新する.1 Int32Rect は 更新する WriteableBitmapSource の四角形であり, パラメータは,X 座標,Y 座標, 幅, 高さから成る. 座標は (0, 0), 幅と高さはビットマップの幅を取得する WriteableBitmap. PixelWidth, 及びビットマップの高さを取得する WriteableBitmap.PixelHeight から指定する.2 Array は ビットマップの更新に使用するピクセル配列であり, 表 11 のように KinectSensor から画像情報を受け取るために, 初期化されてフレームの PixelDataLength 分の長さが確保された byte 配列のバッファ colorpixels を指定する. 13

16 private KinectSensor kinectsensor; private byte[] colorpixels; if (null!= this.kinectsensor) // バッファの初期化 this.colorpixels = new byte[this.kinectsensor.colorstream.framepixeldatalength]; 表 12 colorpixels 3 stride は ピクセル 1 行分の byte 数 のことである.stride 値を求めるには, 画像の幅にピクセルあたりの byte 数を掛ける必要がある.4 offset は, 入力バッファの offset のことで, 基準点からの差 ( 距離 ) で表した値のことであるが, 本研究では画像のピクセル全てを置き換えるため, 常に 0 となる MainWindow.xaml.cs >> SkeletonFrameReady スケルトンフレームの更新イベントである.RGB カメラのフレーム更新イベントと同様に OpenSkeletonFrame() でフレームデータを取得し, 有効であればターゲットが指定された条件を満たし次第, 描画を行う. SkeletonFrame using (SkeletonFrame skeletonframe = e.openskeletonframe()) if (skeletonframe!= null) skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength]; skeletonframe.copyskeletondatato(skeletons); public class SkeletonFrame Contains a per-frame buffer for skeleton data streamed out of a sensor. Also provides access to the floor clipping plane and the number of skeletons tracked. (KinectSensor が放出したスケルトンデータのフレームごとのバッファ, クリッピング平面, トラッキングしているターゲットの数 ) 14

17 Public Properties Floor ClipPlane FrameNumber SkeletonArrayLength Gets or sets the clip plane of the floor in the form of a four-component vector: (x, y, z, w). (3DCG をレンダリングするクリッピング平面の情報を取得 設定する ) Gets or sets the frame number. ( フレーム番号を取得 設定する ) Gets the total length of the skeleton data buffer for this SkeletonFrame. ( スケルトン配列の長さを取得する ) 表 13 SkeletonFrame class Public Properties Public Method CopySkeletonDataTo( skeletondata ) Copies skeleton data to an array of Skeletons, where each Skeleton contains a collection of the joints. ( ターゲットのスケルトン座標のデータを取得する.) 表 14 SkeleletonFrame class Public Properties SkeletonFrameReadyEventArgs private void SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) Public class SkeletonFrameReadyEventArgs The event arguments provided in a KinectSensor.SkeletonFrameReady event when a frame of skeleton data is ready. ( スケルトンのフレーム更新を行う時の SkeletonFrameReady に渡される引数を提供する.) Public Method 3 OpenSkeletonFrame() Opens a SkeletonFrame object, which contains one frame of skeleton data. ( 新しいスケルトンフレームのスケルトンデータの情報を取得する.) 表 15 SkeleletonFrame class Public Method 3 このメソッドで取得した SkeletonFrame は using でくくるか,Dispose を明示的に呼び出す必要がある. 15

18 MainWindow.xaml.cs private void SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) Skeleton[] skeletons = new Skeleton[0]; using (SkeletonFrame skeletonframe = e.openskeletonframe()) if (skeletonframe!= null) skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength]; skeletonframe.copyskeletondatato(skeletons); if (skeletons.length!= 0) foreach (Skeleton skel in skeletons) if (skel.trackingstate == SkeletonTrackingState.Tracked) ColorImagePoint shoulderrightpoint = kinectsensor.mapskeletonpointtocolor(skel.joints[jointtype.shoulderright].position, ColorImageFormat.RgbResolution640x480Fps30); ColorImagePoint shoulderleftpoint = kinectsensor.mapskeletonpointtocolor(skel.joints[jointtype.shoulderleft].position, ColorImageFormat.RgbResolution640x480Fps30); float rightarmlift = skel.joints[jointtype.elbowright].position.y - skel.joints[jointtype.shoulderright].position.y; float leftarmlift = skel.joints[jointtype.elbowleft].position.y - skel.joints[jointtype.shoulderleft].position.y; if (weared) // 右腕が 下がって いる状態 if (rightarmlift < 0) CLOTHE.Visibility = Visibility.Visible; Canvas.SetLeft(CLOTHE, shoulderleftpoint.x ); Canvas.SetTop(CLOTHE, shoulderrightpoint.y ); isrightarmlifted = false; if (!isrightarmlifted) // 右腕が 上がって いる状態 if(rightarmlift > 0) ChangeImageSource(); // 服の画像 Source 変更 weared = true; isrightarmlifted = true; 16

19 スケルトンの座標を RGB カメラの座標に変換する if (skeletons.length!= 0) foreach (Skeleton skel in skeletons) if (skel.trackingstate == SkeletonTrackingState.Tracked) ColorImagePoint shoulderrightpoint = kinectsensor.mapskeletonpointtocolor(skel.joints[jointtype.shoulderright].position, ColorImageFormat.RgbResolution640x480Fps30); ColorImagePoint shoulderleftpoint = kinectsensor.mapskeletonpointtocolor(skel.joints[jointtype.shoulderleft].position, ColorImageFormat.RgbResolution640x480Fps30); 表 16 スケルトンの座標を RGB カメラの座標に変換する RGB カメラの解像度 フレームレート ColorImageFormat colorimageformat = ColorImageFormat.RgbResolution640x480Fps30; public enum ColorImageFormat (ColorImageFormat 列挙子 ) Image formats for a ColorImageFormat Each image format contains the data type, the resolution, and the frame rate. ( データタイプ ( 解像度 フレームレート ) を含む RGB カメラのフォーマット ) ColorImageFormat Members RawYuvResolution640x480Fps15 RgbResolution1280x960Fps12 RgbResolution640x480Fps30 YuvResolution640x480Fps15 Raw YUV data 1) whose resolution is 640 x 480 and frame rate is 15 frames per second. ( 解像度は 秒あたり 15 フレーム更新する YUV フォーマット ) RBG data whose resolution is 1280 x 960 and frame rate is 12 frames per second. ( 解像度は 秒あたり 12 フレーム更新する RGB フォーマット ) RBG data whose resolution is 640 x 480 and frame rate is 30 frames per second. ( 解像度は 秒あたり 30 フレーム更新する RGB フォーマット ) YUV data whose resolution is 640 x 480 and frame rate is 15 frames per second. ( 解像度は 秒あたり 15 フレーム更新する YUV フォーマット ) Undefined The format is not defined. ( フォーマットが未定義 ) 参照元 :( 17

20 float rightarmlift = skel.joints[jointtype.elbowright].position.y - skel.joints[jointtype.shoulderright].position.y; if (weared) // 右腕が 下がって いる状態 if (rightarmlift < 0) CLOTHE.Visibility = Visibility.Visible; Canvas.SetLeft(CLOTHE, shoulderleftpoint.x ); Canvas.SetTop(CLOTHE, shoulderrightpoint.y ); isrightarmlifted = false; if (!isrightarmlifted) // 右腕が 上がって いる状態 if(rightarmlift > 0) ChangeImageSource(); // 服の画像 Source 変更 weared = true; isrightarmlifted = true; 表 17 服が描画される為の条件 既述のように,Kinect が認識したプレイヤーが右手を, 肘を伸ばした状態で高く上げると服が描画 変更される仕組みになっている. 変数 float rightarmlift で ( 右肘の Y 座標 )-( 右肩の Y 座標 ) を指定し,0 より大きな値になるか小さな値になるか, つまり右腕が上がっている状態か下がっている状態かで異なる処理を行う.weard( 現在服が描画されている状態 ) で右腕が下がっていると, 右肩から左肩の間に服が描画され, 右腕が上がると ChangeImageSource イベントを呼び出し, 新たな服が描画される MainWindow.xaml.cs >> ChangeImageSource 描画する服の変更を行うイベント. private void ChangeImageSource() ++imageindex; imageindex = imageindex % N_images; BitmapImage bitmapimage = new BitmapImage(new Uri(imgUriString[imageIndex], CLOTHE.Source = bitmapimage; UriKind.Relative)); 18

21 public class Bitmap Provides a specialized BitmapSource that is optimizedfor loading images using Extensible Application markup Language. ( 特別な BitmapSource イメージを提供する.Extensible Application markup Language を使用してイメージの読み込みのために最適化される.) BitmapImage Constructor BitmapImage() BitmapImage(Uri,) BitmapImage(Uri, RequestCachePolicy) Initializes a new instance of the BitmapImage class. (Bitmap クラスの新しいインスタンスを初期化する.) Initialize a new instance of the BitmapImage class by using the supplied Uri ( 指定された Uri を使用して Bitmap クラスの新しいインスタンスを初期化する.) Initializes a new instance of the BitmapImage class with an image whose source is a Uri, and is cached according to the provided RequestCachePolicy. ( 指定された Uri を使用して Bitmap クラスの新しいインスタンスを,RequestCachePolicy に従って初期化する.) 表 18 Bitmap class BitmapImage Constructor private void ChangeImageSource() ++imageindex; imageindex = imageindex % N_images; BitmapImage bitmapimage = new BitmapImage(new Uri(imgUriString[imageIndex], CLOTHE.Source = bitmapimage; UriKind.Relative)); 認識されたプレーヤーの右腕が上がると ChangeImageSource イベントが呼び出される. イベントが呼び出されると,imageIndex の値が一つ大きくなり, プレイヤーに服が描画されている場合でも, されていない場合でも, 新しい服が指定され, 描画される. 19

22 5. 今後の課題 ユーザー インターフェースが不十分 当初は, 腕が上がったことを認識すると服が表示されるのではなく, デフォルトで表示された画像を, ジェスチャー認識のスワイプを行うことで別の服に入れ替える予定であったが, プログラムが複雑で学習に時間を要するため, 時間の都合上, 実現することが出来なかった. 当初はターゲットの身長や体格, カメラからの距離によって服画像が拡大 縮小する予定で あった. Kinect に搭載されている近赤外線センサーを使用すれば, 深度 骨格情報を得ることが出来るため, ターゲットに合わせて服画像のサイズを自動的に変更することができたが, 時間の都合上, 実現することが出来なかった. 使い方を知らないユーザへの配慮の不足 既述のように, このアプリケーションは実際に一般のユーザが使用することを想定した上で取り組んでいたものであるにもかかわらず, 操作方法の説明がなく, 次にユーザがとるべきジェスチャーの誘導がない. 一般のユーザ目線で, わかりやすく, 面白いと感じるシステムを開発することを意識して取り組むべきであった. 6. まとめ Kinect を用いたモーションキャプチャで拡張現実 (AR) 空間を構築し, 実装させることができた. このバーチャル試着は, 着替えの手間なく試着をすることが出来るという便利さだけではなく, 試着室に入らずに気軽に服を変更することが出来るため同行者とともに楽しみながら試着を行うことが出来るので, その可能性は大いにあり, 研究を行う意義は十分にあると考えられる. その一方で, 研究の進捗に関しては多くの課題を残す結果となった. 特に, 新しいユーザー インターフェース をコンセプトとして, アイディアとそれを実現するための計画を立てた上で研究に臨んだにも関わらず, 学習と技術力の不足のために実現することが出来なかった. 卒業研究に約一年間取り組み, 学習や研究の成果を論文に書き起こして発表するまでの期間には, 本論には載せられないほどの些細なミスの見落としがあったために何週間も悩まされたこと, 残り時間の都合から研究内容を大幅に変更するために開発環境を変更し, 一から勉強し直す必要がありミーティングにおける進捗状況の発表が遅れてしまったことがあったが, 卒業後も研究は引き続き継続し, 発表の機会があれば是非積極的に参加していきたいと考えている. 7. 謝辞 最後に, 研究をはじめ, 本論文の作成にあたりいつでも熱心なご指導 ご指摘を賜りました徐丙鉄教授, 開発環境の構築にあたり指導をして頂いた工学部情報システム工学科映像応用システム研究室の田中一基教授, 映像応用システム研究室学生の皆様, そして日々のミーティングを通じて多くの知識やアドバイスを得る機会をくださった情報物理研究室学生の皆様に深く感謝申し上げます. 20

23 8. 参考文献 [1] 新型 Kinect for Windows v2 Developer Preview プログラミング入門 [2]Leap Motion Mac & PC Motion Controller for Games, Design, & More [3]United States Patent RANGE MAPPING USING SPECKLE DECORRELATION [4]Jarret Webb / James Ashley 著 株式会社プロシステムエルオーシー訳初音玲監修 Kinect ソフトウェア開発講座 ( 翔泳社 ) [5] 手術室向け非接触型画像操作システム Opect( オペクト ) [6]Kinect の特徴を生かしたインタラクティブ リハビリシステム [7] これまでとは違う!AR を本気でビジネスに生かす [8] 中村薫, 斎藤俊太, 宮城英人 ( 株式会社ゲッシュ ) 著 Kinect for Windows SDK プログラミング C# 編 ( 秀和システム ) [9]Silverlight 入門 anticlimactically/fdotnet/chushin/introsl_02/introsl_02_01.html [10] 第 1 回いよいよ WPF の時代 WPF の習得を始めよう 21

24 9. 付録 ( ソースコード ) MainWindow.xaml <Window x:class="kinectclosetsimulation.mainwindow" xmlns=" xmlns:x=" Title="MainWindow" Height="350" Width="525" Loaded="WindowLoaded" Closing="WindowClosing" Left="0" Top="0" HorizontalAlignment="Left" IsManipulationEnabled="True" SizeToContent="WidthAndHeight" VerticalAlignment="Top" WindowStartupLocation="CenterScreen"> <Viewbox> <Grid> <Canvas Width="640" Height="480"> <Image Name="Image" Width="640" Height="480" /> <Image x:name="clothe" Source="Images\SpaceSuit2.png" RenderTransformOrigin="0.5, 0.5" Canvas.Left="100" Canvas.Top="100" Stretch="None"/> </Canvas> </Grid> </Viewbox> </Window> MainWindow.xaml.cs using System; using System.Globalization; using System.IO; using System.Windows; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Media.Imaging; using Microsoft.Kinect; namespace KinectClosetSimulation public partial class MainWindow : Window 22

25 Boolean isrightarmlifted = false; int N_images = 3; string[] imguristring = "../Images/SchoolUnifo.png", "../Images/SpaceSuit2.png", "../Images/RogerUnifo2.png"; int imageindex = 1; Boolean weared = false; private KinectSensor kinectsensor; private WriteableBitmap writeablebitmap; private byte[] colorpixels; public MainWindow() InitializeComponent(); CLOTHE.Visibility = Visibility.Collapsed; private void WindowLoaded(object sender, RoutedEventArgs e) foreach (var potentialsensor in KinectSensor.KinectSensors) if (potentialsensor.status == KinectStatus.Connected) this.kinectsensor = potentialsensor; break; if (null!= this.kinectsensor) this.kinectsensor.colorstream.enable(colorimageformat.rgbresolution640x480fps30); this.kinectsensor.skeletonstream.enable(); this.colorpixels = new byte[this.kinectsensor.colorstream.framepixeldatalength]; 23

26 this.writeablebitmap = new WriteableBitmap(this.kinectSensor.ColorStream.FrameWidth, this.kinectsensor.colorstream.frameheight, 96.0, 96.0, PixelFormats.Bgr32, null); this.image.source = this.writeablebitmap; this.kinectsensor.colorframeready += this.colorframeready; this.kinectsensor.skeletonframeready += this.skeletonframeready; try this.kinectsensor.start(); catch (IOException) this.kinectsensor = null; private void WindowClosing(object sender, System.ComponentModel.CancelEventArgs e) if (this.kinectsensor!= null) this.kinectsensor.stop(); private void ColorFrameReady(object sender, ColorImageFrameReadyEventArgs e) using (ColorImageFrame colorimageframe = e.opencolorimageframe()) 24

27 if (colorimageframe!= null) colorimageframe.copypixeldatato(this.colorpixels); this.writeablebitmap.writepixels(new Int32Rect(0, 0, this.writeablebitmap.pixelwidth, this.writeablebitmap.pixelheight), this.colorpixels, this.writeablebitmap.pixelwidth * sizeof(int), 0); private void SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) Skeleton[] skeletons = new Skeleton[0]; using (SkeletonFrame skeletonframe = e.openskeletonframe()) if (skeletonframe!= null) skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength]; skeletonframe.copyskeletondatato(skeletons); if (skeletons.length!= 0) foreach (Skeleton skel in skeletons) if (skel.trackingstate == SkeletonTrackingState.Tracked) ColorImagePoint shoulderrightpoint = kinectsensor.mapskeletonpointtocolor(skel.joints[jointtype.shoulderright].position, ColorImageFormat.RgbResolution640x480Fps30); ColorImagePoint shoulderleftpoint = 25

28 kinectsensor.mapskeletonpointtocolor(skel.joints[jointtype.shoulderleft].position, ColorImageFormat.RgbResolution640x480Fps30); float rightarmlift = skel.joints[jointtype.elbowright].position.y - skel.joints[jointtype.shoulderright].position.y; float leftarmlift = skel.joints[jointtype.elbowleft].position.y - skel.joints[jointtype.shoulderleft].position.y; if (weared) if (rightarmlift < 0) CLOTHE.Visibility = Visibility.Visible; Canvas.SetLeft(CLOTHE, shoulderleftpoint.x ); Canvas.SetTop(CLOTHE, shoulderrightpoint.y ); isrightarmlifted = false; if (!isrightarmlifted) if(rightarmlift > 0) ChangeImageSource(); weared = true; isrightarmlifted = true; 26

29 private void ChangeImageSource() ++imageindex; imageindex = imageindex % N_images; //messagetextbox.text = "imageindex=" + imageindex; BitmapImage bitmapimage = new BitmapImage(new Uri(imgUriString[imageIndex], UriKind.Relative)); CLOTHE.Source = bitmapimage; 27

Abstract Kinect for Windows RGB Kinect for Windows v Kinect for Windows v2

Abstract Kinect for Windows RGB Kinect for Windows v Kinect for Windows v2 Kinect 2014 9 19 IS Report No. 2014092901 Report Medical Information System Laboratory Abstract Kinect for Windows 2012 2 RGB Kinect for Windows v2 2014 7 Kinect for Windows v2 1............................

More information

XAML Do-It-Yourself 第 3 回ベントとトリガー XML Do-It-Yourself 第 3 回目は ベント処理とトリガーについて学習します Windows フォームゕプリケーションでは たとえば ボタンが押された というベントに対応する処理 ( ベントハンドラー ) を記述する

XAML Do-It-Yourself 第 3 回ベントとトリガー XML Do-It-Yourself 第 3 回目は ベント処理とトリガーについて学習します Windows フォームゕプリケーションでは たとえば ボタンが押された というベントに対応する処理 ( ベントハンドラー ) を記述する XAML Do-It-Yourself シリーズ 第 3 回ベントとトリガー -1- XAML Do-It-Yourself 第 3 回ベントとトリガー XML Do-It-Yourself 第 3 回目は ベント処理とトリガーについて学習します Windows フォームゕプリケーションでは たとえば ボタンが押された というベントに対応する処理 ( ベントハンドラー ) を記述することで ゕプリケーションのユーザーンターフェスを実現していました

More information

画像処理技術を利用した Kinectの応用

画像処理技術を利用した Kinectの応用 はじめての Kinect for Windows v2 2014/09/24,26 東京エレクトロンデバイス株式会社主催 Kinect for Windows v2 最新情報セミナー Natural Software 中村薫 自己紹介 中村薫 フリーランスで主にDepthセンサー系の仕事をしていますアプリケーション開発 講演 ハンズオンセミナー 執筆など Microsoft MVP for Kinect

More information

C#の基本

C#の基本 C# の基本 ~ 開発環境の使い方 ~ C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない

More information

Chart3D for WPF/Silverlight

Chart3D for WPF/Silverlight 2018.04.10 更新 グレープシティ株式会社 目次 製品の概要 2 ComponentOne for WPF/Silverlight のヘルプ 2 主な特長 3 クイックスタート 4 手順 1: プロジェクトへのコントロールの追加 4-5 手順 2: データの追加 5-6 手順 3: グラフの外観の変更 6-7 手順 4: 凡例の追加 7 手順 5: プロジェクトの実行 7 XAML クイックリファレンス

More information

平成 29 年度卒業研究 初心者のためのゲームプログラミング用 教材の開発 函館工業高等専門学校生産システム工学科情報コース 5 年 25 番細見政央指導教員東海林智也

平成 29 年度卒業研究 初心者のためのゲームプログラミング用 教材の開発 函館工業高等専門学校生産システム工学科情報コース 5 年 25 番細見政央指導教員東海林智也 平成 29 年度卒業研究 初心者のためのゲームプログラミング用 教材の開発 函館工業高等専門学校生産システム工学科情報コース 5 年 25 番細見政央指導教員東海林智也 目次 第 1 章英文アブストラクト第 2 章研究目的第 3 章研究背景第 4 章開発環境第 5 章開発した 2D ゲーム制作ライブラリの概要第 6 章ライブラリの使用方法第 7 章まとめと今後の課題参考文献 1 第 1 章英文アブストラクト

More information

基礎輪講2週目 Kinectの話

基礎輪講2週目  Kinectの話 基礎輪講 2 週目 Kinect の話 3D Computer Vision カメラから 3 次元の情報を取得 3 次元再構築 :2 次元の画像から 3 次元形状の復元 多視点画像群 3 次元再構築結果 3 次元の情報を持つ画像ってないの? 2 距離画像 Depth( 距離 ) の情報を持った画像 各画素の部分に距離の値が入る. 距離画像 距離画像を取得する機器が必要 3 距離画像センサ 実世界の距離情報を取得できる.

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 組込み系ソフトウェアで活用する KINECT センサー 日本マイクロソフト株式会社デベロッパー & プラットフォーム統括本部テクニカルエバンジェリスト太田寛 Twitter: Blog: @embedded_george http://blogs.msdn.com/hirosho 内容 KINECT for Windows 事例 KINECT for Windows SDK 組込み制御での Kinect

More information

XNA Framework

XNA Framework XNA Framework 2.0 M@STER SESSION 01 XNA Framework の技術的背景 システム基盤は.NET Framework マネージ環境で実行 クロスプラットフォーム Windows, Xbox360, Zune DirectX, MDX から独立している 開発 実行環境の構造 XNA Game Studio (Visual Studio 2005) XNA Framework

More information

スライド 1

スライド 1 C# の基本 ~ ファイル読み込み ~ 今回学ぶ事 今回はファイル読み書きに必要 BinaryReader クラスについて記載する ファイル参照ダイアログである OpenFileDialog クラスについても理解を深める また Bitmap クラスを用いた Bitmap ファイルの読み込み方法についても学ぶ フォーム作り まず label picturebox を配置する ツールボックスより左クリックで選択する

More information

WPF アプリケーションの 多言語切替

WPF アプリケーションの 多言語切替 WPF アプリケーションの 多言語切替 YK S o f t w a r e 2015 年 6 月 2 日 @twyujiro15 プロフィール 加藤裕次郎 本職は製造業の開発業務 - 2009 年 4 月に入社 1982.03.03 生まれ ( うお座 ) 左利き ( お箸は右 ) twitter : @twyujiro15 プログラミング経験 Excel VBA MATLAB MATX C VC++

More information

Android Layout SDK プログラミング マニュアル

Android Layout SDK プログラミング マニュアル プログラミングマニュアル Version 1.3.0 用 更新履歴 年月日 バージョン 履歴 2014.09.08 1.2.0.0 新規 (Layout Utilities ユーザーズ ガイド ) 2016.08.16 1.3.0.0 モバイル端末用レイアウトで直線部品と矩形部品に対応 モバイル端末用レイアウトファイルを CLFX から XML へ変更 Layout Print Engine から

More information

SharpShooter Reports.WPF 基本的な使い方 Last modified on: November 15, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されます

SharpShooter Reports.WPF 基本的な使い方 Last modified on: November 15, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されます SharpShooter Reports.WPF 基本的な使い方 Last modified on: November 15, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されます 目次 はじめに... 3 システムの必要条件... 3 ライセンス認証... 3 アクティベーション... 5 開発...

More information

VGB Kinect v2 VGB VGB Kinect v2 3 VGB VGB Discrete Continuous 2 Discrete : Jump, Sit, NicoNii AdaBoost (Confidence) Visual Studio 2013 or 2012 () Kine

VGB Kinect v2 VGB VGB Kinect v2 3 VGB VGB Discrete Continuous 2 Discrete : Jump, Sit, NicoNii AdaBoost (Confidence) Visual Studio 2013 or 2012 () Kine Kinect v2 Visual Gesture Builder Buu C87 2014.12.30 1 Kinect for Windows Leap Motion RealSense RGB 1 Kinect for Windows [1] 2010 Kinect for Xbox 360 2012 [2] [3] Kinect DanceEvolution ARCADE 2014 Kinect

More information

Microsoft PowerPoint - chap10_OOP.ppt

Microsoft PowerPoint - chap10_OOP.ppt プログラミング講義 Chapter 10: オブジェクト指向プログラミング (Object-Oriented Programming=OOP) の入り口の入り口の入り口 秋山英三 F1027 1 例 : 部屋のデータを扱う // Test.java の内容 public class Test { public static void main(string[] args) { double length1,

More information

de:code 2019 CM04 Azure Kinect DK 徹底解説 ~ 進化したテクノロジーとその実装 ~ 技術統括室 千葉慎二 Ph.D.

de:code 2019 CM04 Azure Kinect DK 徹底解説 ~ 進化したテクノロジーとその実装 ~ 技術統括室 千葉慎二 Ph.D. de:code 2019 CM04 Azure Kinect DK 徹底解説 ~ 進化したテクノロジーとその実装 ~ 技術統括室 千葉慎二 Ph.D. Mixed Reality の全体像 Kinect はただのカメラではない 3D 空間の認識 ( 深度 ) 人の全身の動きをとらえる Azure Kinect Development Environment Azure Kinect DK 開発環境

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double

More information

XAML Do-It-Yourself シリーズ 第 12 回 3D グラフィックス -1-

XAML Do-It-Yourself シリーズ 第 12 回 3D グラフィックス -1- XAML Do-It-Yourself シリーズ 第 12 回 3D グラフィックス -1- XAML Do-It-Yourself 第 12 回 3D グラフィックス XAML Do-It-Yourself 第 12 回は 3D グラフィックスについて学習します これまでアプリケーション で 3D グラフィックスを扱うには DirectX のコンポーネントを使用する必要がありましたが WPF (XAML)

More information

目次 目次... 1 はじめに... 3 概要... 4 サポート環境... 5 関数... 6 MEC_OpenDevice... 7 MECDevice_Release... 8 MECDevice_GetFirmVersion... 9 MECDevice_GetCoreTemperature

目次 目次... 1 はじめに... 3 概要... 4 サポート環境... 5 関数... 6 MEC_OpenDevice... 7 MECDevice_Release... 8 MECDevice_GetFirmVersion... 9 MECDevice_GetCoreTemperature MECodecAPI Reference Manual 2015 年 9 月 1 日 MEDIAEDGE 株式会社 目次 目次... 1 はじめに... 3 概要... 4 サポート環境... 5 関数... 6 MEC_OpenDevice... 7 MECDevice_Release... 8 MECDevice_GetFirmVersion... 9 MECDevice_GetCoreTemperature...

More information

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版  

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版   Copyright 2012 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. IM- 共通マスタの拡張について 2.1. 前提となる知識 2.1.1. Plugin Manager 2.2. 表記について 3. 汎用検索画面の拡張 3.1. 動作の概要 3.1.1. 汎用検索画面タブの動作概要 3.2. 実装の詳細 3.2.1. 汎用検索画面タブの実装

More information

24th Embarcadero Developer Camp

24th Embarcadero Developer Camp 17 Th Developer Camp B4 Delphi/C++Builder テクニカルワークショップ Delphi / C++Builder 旧バージョンアプリケーションの移行 エンバカデロ テクノロジーズサポートチーム with 高橋智宏 1 17 Th Developer Camp Delphi Q1 2 midas.dll Q. 別々のバージョンで作成したデータベースアプリケーションがあります

More information

sp2-2.indd

sp2-2.indd Windows Phone によるセンサプログラミング 基応専般 太田 寛 日本マイクロソフト ( 株 ) Windows Phone とセンサ Windows Mobile 5.x Windows Mobile 6.x Windows Phone Windows Mobile OS 2010 Windows Phone 7.0 Windows Phone 7.1 2011 9 Windows Mobile

More information

ICONファイルフォーマット

ICONファイルフォーマット グラフィックス 画像フォーマットエンコーダパラメータ 様々なフォーマットで画像を保存 Bitmap クラスを用いる事でビットマップ JPEG GIF PNG 等様々なフォーマットの画像を読み込み操作する事が出来る 更に Bitmap クラスや Graphics コンテナを用いて描画処理等を施したイメージをファイルに保存する事も出来る 此の時 読み込めるフォーマット同様に保存するフォーマットを選択する事が出来る

More information

Java - Visual Editor

Java - Visual Editor Visual Editor で Swing アプリケーションを作成 Swing プログラミングに慣れて居ても ソースコード上丈で思い通りの GUI を作成するのは 可成り骨の折れる作業で有る Visual Editor を使用すれば 試行錯誤し乍ら 非常に簡単に GUI アプリケーションを作成する事が出来る 此処では JFrame を拡張して 簡単なアプリケーションを作成して観る事にする Java

More information

intra-mart Accel Platform

intra-mart Accel Platform intra-mart Accel Platform IM- 共通マスタスマートフォン拡張プログラミングガイド 2012/10/01 初版 変更年月日 2012/10/01 初版 > 変更内容 目次 > 1 IM- 共通マスタの拡張について...2 1.1 前提となる知識...2 1.1.1 Plugin Manager...2 1.2 表記について...2 2 汎用検索画面の拡張...3

More information

MVP for VB が語る C# 入門

MVP for VB が語る C# 入門 MVP for VB が語る C# 入門 2008.08.09 初音玲 自己紹介 Z80 アセンブラ 6809 アセンブラ F-BASIC N88-BASIC FORTRAN 77 COBOL LISP Turbo Pascal Prolog KABA C 言語 M シリーズ アセンブラ PL/I VB3.0~ PL/SQL T-SQL VB2005/2008 index Microsoft Visual

More information

Raspberry Pi BF BF BF Raspberry Pi PC USB HDMI OS SD SD OS Raspberry Pi Model B MicroUSB MicroSD OS SD GPIO HDMI USB LAN Raspberry Pi MicroUSB MicroSD

Raspberry Pi BF BF BF Raspberry Pi PC USB HDMI OS SD SD OS Raspberry Pi Model B MicroUSB MicroSD OS SD GPIO HDMI USB LAN Raspberry Pi MicroUSB MicroSD Raspberry Pi Arduino Arduino Raspberry Pi Arduino URL Raspberry Pi HDMI USB SD https://www.raspberrypi.org/ Python, Scratch Arduino PC USB https://www.arduino.cc/ Arduino SDK Processing Kinect for Windows,

More information

ic3_cf_p1-70_1018.indd

ic3_cf_p1-70_1018.indd 章オペレーティングシステム()の基いソフトウェアで 基本ソフトウェア とも呼ばれます 第礎第 章 オペレーティングシステム () の基礎 - の役割と動作 ここでは コンピューターの基本的な構成やオペレーティングシステムの基本的な役割と操作を学習します -- コンピューターの基本構成 現代社会では さまざまな種類のコンピューター機器が各分野で利用されています 身近なものでは パソコン タブレット スマートフォンなどがありますが

More information

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問 Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問のメソッドを追加する public static void main(string[] args) {

More information

DEMO1 まずはやってみよう アクティビティをダブルクリック 作成 - プロジェクト C# => Workflow CodeActivity をぽとぺ シーケンシャルと ステートマシン それぞれのコ ンソールアプリ あとライブラリがある びっくりマークは足りていないあかし プロパティをみると判別で

DEMO1 まずはやってみよう アクティビティをダブルクリック 作成 - プロジェクト C# => Workflow CodeActivity をぽとぺ シーケンシャルと ステートマシン それぞれのコ ンソールアプリ あとライブラリがある びっくりマークは足りていないあかし プロパティをみると判別で DEMO1 まずはやってみよう アクティビティをダブルクリック 作成 - プロジェクト C# => Workflow CodeActivity をぽとぺ シーケンシャルと ステートマシン それぞれのコ ンソールアプリ あとライブラリがある びっくりマークは足りていないあかし プロパティをみると判別できます こんなコードを追加 string str = Console.ReadLine(); int

More information

Microsoft PowerPoint - ●SWIM_ _INET掲載用.pptx

Microsoft PowerPoint - ●SWIM_ _INET掲載用.pptx シーケンスに基づく検索モデルの検索精度について 東京工芸大学工学部コンピュータ応用学科宇田川佳久 (1/3) (2/3) 要員数 情報システム開発のイメージソースコード検索機能 他人が作ったプログラムを保守する必要がある 実務面での応用 1 バグあるいは脆弱なコードを探す ( 品質の高いシステムを開発する ) 2 プログラム理解を支援する ( 第 3 者が書いたコードを保守する ) 要件定義外部設計内部設計

More information

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です ACTIVE TOUCH 拡張部品取扱説明書 - 共有メモリアクセスコンポーネント - 1. はじめに 1 (1) 概要... 1 (2) INpMac のインストール... 1 2. Windows アプリケーションとの連携 2 (1) コントロール ( 部品 ) の登録... 2 (2) データの関連付け... 3 3. INtime アプリケーションとの連携 4 (1) 部品 ( コンポーネント

More information

GUIプログラムⅣ

GUIプログラムⅣ GUI プログラム Ⅳ 画像指定ウィンドウの生成 ファイル名 :awtimage.java import java.awt.*; import java.awt.event.*; public class awtimage extends Frame // コンポーネントクラスの宣言 Button btnbrowse; Label lblcaption7; TextField txtimage; //

More information

Prog2_12th

Prog2_12th 2018 年 12 月 13 日 ( 木 ) 実施クラスの継承オブジェクト指向プログラミングの基本的な属性として, 親クラスのメンバを再利用, 拡張, または変更する子クラスを定義することが出来る メンバの再利用を継承と呼び, 継承元となるクラスを基底クラスと呼ぶ また, 基底クラスのメンバを継承するクラスを, 派生クラスと呼ぶ なお, メンバの中でコンストラクタは継承されない C# 言語では,Java

More information

スライド 1

スライド 1 MiniConVer2.1 操作マニュアル KinectV2 センサー用 株式会社テレビ朝日クリエイト 動作条件 Kinect2 を動作させるためには Microsoft 社が推奨する以下のハードウェア環境で必要です http://www.microsoft.com/en-us/kinectforwindows/purchase/sensor_setup.aspx 対応 OS は以下になります Microsoft

More information

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター 平成 30 年度 プログラミング研修講座 岩手県立総合教育センター 目次第 1 章プログラミングについて 1 ソフトウェアの働き 1 2 プログラミング言語 1 3 主なプログラミング言語の歴史 2 第 2 章 Visual Basic について 1 Visual Basic とは 3 2.NET Framework の環境 3 3 Visual Basic と.NET Framework の関係

More information

Carousel for WPF/Silverlight

Carousel for WPF/Silverlight 2018.04.10 更新 グレープシティ株式会社 目次 製品の概要 2 ComponentOne for / のヘルプ 2 主な特長 3 クイックスタート 4 手順 1: アプリケーションの作成 4-5 手順 2: アプリケーションへのコンテンツの追加 5-8 手順 3: アプリケーションの実行 8 Carousel for / の使い方 9 C1CarouselPanel の使用 9-10 カルーセルのカスタマイズ

More information

目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い 10.Netフレームワーク 10 開発資料 10 第 2 章 Mono 11 Monoの歴史 1

目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い 10.Netフレームワーク 10 開発資料 10 第 2 章 Mono 11 Monoの歴史 1 ポリテクセンター埼玉セミナー資料 組込み技術者のための C# Monoを用いたマルチプラットフォームアプリケーション開発技術 第 1.2 版 2018 年 8 月 Microbrains Inc. 渋谷 目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い

More information

Q-SYS Designer Version 5.4 Release Note ソフトウェア要件 Q-SYS Designer は下記の OS での動作確認をしております Windows 7 Professional 32-bit / 64-bit Windows 8.1 Professional

Q-SYS Designer Version 5.4 Release Note ソフトウェア要件 Q-SYS Designer は下記の OS での動作確認をしております Windows 7 Professional 32-bit / 64-bit Windows 8.1 Professional Q-SYS Designer Version 5.4 Release Note ソフトウェア要件 Q-SYS Designer は下記の OS での動作確認をしております Windows 7 Professional 32-bit / 64-bit Windows 8.1 Professional 32-bit / 64-bit Windows 10 Pro 64bit Windows XP および

More information

Prog2_9th

Prog2_9th 2017 年 11 月 30 日 ( 木 ) 実施 Canvas による描画 Canvas とは Canvas は, 描画コールを保持するためのクラスである 描画には, 次の 4 つの要素が必要である (1) ビットマップピクセル ( 画素 ) を保持 (2) キャンバス描画コール ( ビットマップへの書き出し要請 ) に対応 (3) 描画プリミティブ描画領域, パス, テキスト, ビットマップ等

More information

KINECT for Windows入門

KINECT for Windows入門 KINECT for Windows v2 はじめてのKINECT みずほ 情 報 総 研 株 式 会 社 サイエンスソリューション 部 下 元 正 義 Kinect は 米 国 Microsoft Corporation 及 びまたはその 関 連 会 社 の 登 録 商 標 または 商 標 です その 他 の 会 社 名 システム 名 製 品 名 は 一 般 に 各 社 の 登 録 商 標 または

More information

C#の基本2 ~プログラムの制御構造~

C#の基本2 ~プログラムの制御構造~ C# の基本 2 ~ プログラムの制御構造 ~ 今回学ぶ事 プログラムの制御構造としての単岐選択処理 (If 文 ) 前判定繰り返し処理(for 文 ) について説明を行う また 整数型 (int 型 ) 等の組み込み型や配列型についても解説を行う 今回作るプログラム 入れた文字の平均 分散 標準偏差を表示するプログラム このプログラムでは calc ボタンを押すと計算を行う (value は整数に限る

More information

グラフィックトレーニング 概要.NET のグラフィック描画は どんなことができるのでしょうか? グラフィックオブジェクトやグラフィック環境 概念を理解するためには クラスを使って馴れることが近道です 本 書に記載されているコードをカットアンドペーストして 一つ一つの機能を体験してください 前提 グラ

グラフィックトレーニング 概要.NET のグラフィック描画は どんなことができるのでしょうか? グラフィックオブジェクトやグラフィック環境 概念を理解するためには クラスを使って馴れることが近道です 本 書に記載されているコードをカットアンドペーストして 一つ一つの機能を体験してください 前提 グラ C# & VB 1 グラフィックトレーニング 概要.NET のグラフィック描画は どんなことができるのでしょうか? グラフィックオブジェクトやグラフィック環境 概念を理解するためには クラスを使って馴れることが近道です 本 書に記載されているコードをカットアンドペーストして 一つ一つの機能を体験してください 前提 グラフィックを行うためには Visual Studio の基本操作や C# または VB

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java 第 3 版 13.1 アプレットの概要 13.2 最初の Java アプレット 13.3 アプレットのライフサイクル 13.4 Graphics クラス アプレットの概要 (1/3) Web ページの HTML ソースコードから参照されるプログラム Web サーバーからブラウザに動的にダウンロードされる ダウンロードされたアプレットはブラウザの環境で実行される アプレットビューアなどのツールで実行することもできる

More information

TestDesign for Web

TestDesign for Web 発行日 2012/6/21 発行元 株式会社アープ 本書は Web でのテスト自動化における Test Design の一連の操作方法まとめたものです Test Design のメニューの説明やより詳細な使い方については ユーザーズガイド を参照してください 目次 1. はじめに... 1 2. 環境構築... 2 2.1. Selenium のサイトについて... 2 2.2. Selenium

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 2016/03/11 NetBeans ではじめる Java 第二回 画像処理ソフトウェアの開発 ArkOak 代表 加納徹 Java 講習会の流れ 5. 画像の入出力 6. マウスによる画像情報の取得 7. 画像の上からお絵描き 8. 画像処理ソフトウェアの開発 2 5. 画像の入出力 新規プロジェクト ImageProcessing を作ろう 画像の入出力 1. 以下のようにラベルとボタンを配置

More information

1

1 DevPartner メモリ分析機能について DevPartner Studio ( 以降 DPS と記す ) のメモリ分析機能は Visual Studio 2005 2008 2010 2012 の VB.NET や C# などのマネージ言語で作成したシステムのメモリ使用状態を分析する機能です このドキュメントは メモリ分析 の代表的な使用方法を簡単に説明するものです ) 当資料は DPS11.1(

More information

pp2018-pp4base

pp2018-pp4base プログラミング入門 Processing プログラミング第 4 回 九州産業大学理工学部情報科学科神屋郁子 ( pp@is.kyusan-u.ac.jp ) 時限 クラス 水 1 機械 ( クラス 3) 水 2 機械 ( クラス 1) 水 4 電気 (B1 B2) 後ろ 5 列は着席禁止 3 人掛けの中央は着席禁止 第 4 回の内容 前回の質問への回答 マウスの操作と図形の描画 : メソッド 小テスト

More information

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java //

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java // HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java // 画像の表示 public class Sample5_1 extends Application //

More information

API 連携方式 外部 DLL の呼び出し宣言 外部 DLL の呼び出し宣言のサンプルコード (Microsoft Visual C#.NET の場合 ) プログラムコードの先頭で using System.Runtime.InteropServices; が必要 クラスの内部に以下のような外部 D

API 連携方式 外部 DLL の呼び出し宣言 外部 DLL の呼び出し宣言のサンプルコード (Microsoft Visual C#.NET の場合 ) プログラムコードの先頭で using System.Runtime.InteropServices; が必要 クラスの内部に以下のような外部 D GS1-128 の描画 DLL について (ver. 2.2) 動作環境など動作環境 WindowsXP Windows Vista Windows7 Windows8/8.1 Windows10 上記 OS について すべて日本語版を対象としております 32bit アプリケーションから呼び出される必要があります 使用条件 プリンタの解像度 300dpi 以上 機能 バーコードの基本幅を 1 ドット単位で指定できる

More information

グラフィックス 目次

グラフィックス 目次 WPF チュートリアル WPF デザイナーに依るサイズ変更可能なアプリケーションの作成 Grid コンテナーコントロールと共に GridSplitter コントロールを使用する事に依り 実行時にユーザーに依ってサイズを変更出来るウィンドウレイアウトを作成出来る 例えば 領域に分割されて居る UI を持つアプリケーションで ユーザーが分割線をドラッグする事に依り より多くの内容を見る必要が有る領域を大きくする事が出来る

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション DE - 003 Windows 8.1 時代の クライアントアプリケーション開発 日本マイクロソフト株式会社デベロッパー & プラットフォーム統括本部エバンジェリスト井戸文彦 本セッションの目的 Windows 8.1 におけるデス クトップとストアアプリの違いと使い分けをご理解いただくこと 今日の内容 Windows 8.1 プラットフォーム デスクトップアプリ開発 Windows ストアアプリ開発

More information

ファイル操作-バイナリファイル

ファイル操作-バイナリファイル ファイル操作 バイナリ ファイルを読み書きする バイナリファイル ( 即ちテキストファイル以外のファイル ) を読み書きするには FileStream クラス (System.IO 名前空間 ) を利用する FileStream クラスはファイル用のストリームをサポートするクラスで有り Stream クラス (System.IO 名前空間 ) の派生クラスの 1 つで有る 基本的には コンストラクタで指定したファイルのストリームに対して

More information

デジタル表現論・第4回

デジタル表現論・第4回 デジタル表現論 第 4 回 劉雪峰 ( リュウシュウフォン ) 2016 年 5 月 2 日 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 1 / 14 本日の目標 Java プログラミングの基礎 出力の復習 メソッドの定義と使用 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 2 / 14 出力 Systemoutprint()

More information

WPF Bindingの威力

WPF Bindingの威力 WPF Binding の威力 えムナウ ( 児玉宏之 ) Microsoft MVP for Visual- Developer C# 2005/01-2007/12 アジェンダ はじめに Bindingの概要 データソース データ変換 データ検証 はじめに Windows Presentation Foundation (WPF) データバインディングは アプリケーションがデータを提供し 柔軟な

More information

IT プロジェクト

IT プロジェクト オブジェクト指向設計による卓球 ゲームの試作 (2) 劉少英 情報科学部コンピュータ科学科 Email:sliu@hosei.ac.jp ホームページ : http://cis.k.hosei.ac.jp/~sliu/ 講義内容 1. 卓球ボールをテーブルの上に移動させる 2. 関連しているクラスにメソッドを加える 3. プログラムの文書化技術 1. 卓球ボールをテーブルの上に 移動させる 8 9

More information

型名 RF014 デジタル ラジオコミュニケーションテスタ Digital Radio Communication Tester ソフトウェア開発キット マニュアル アールエフネットワーク株式会社 RFnetworks Corporation 参考資料 RF014SDK-M001 第 1 章製品概要本開発キットは RF014 デジタルラジオコミュニケーションテスタ ( 本器 ) を使用したソフトウェアを開発するためのライブラリソフトウェアです

More information

D:\Documents\Visual Studio 2015\Projects\MyHomePage 用サンプル \ExcelAndWord\ExcelAndWord\MainForm.cs 1 /* */ Excel や Word とやりとりする ~9,20 仕様 Excel

D:\Documents\Visual Studio 2015\Projects\MyHomePage 用サンプル \ExcelAndWord\ExcelAndWord\MainForm.cs 1 /* */ Excel や Word とやりとりする ~9,20 仕様 Excel D:\Documents\Visual Studio 2015\Projects\MyHomePage 用サンプル \ExcelAndWord\ExcelAndWord\MainForm.cs 1 /* */ Excel や Word とやりとりする 2015.9.19~9,20 仕様 Excel の場合は 処理メニュー選択用の新しいフォームを開き この実行ファイルと同じフォルダにある test.xlsb

More information

10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料

10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料 10/28 Java AWT の基本構造 (Frame クラスの継承 ) 演習課題資料以下のプログラムを完成せよ 共通課題 1.Frame を生成するプログラム // Frame クラスを継承して 終了ボタンのみを定義した クラスの定義 class WhiteWindow 1 { // Frame クラスの継承をする (Frame クラスの拡張 ) WhiteWindow (String title){

More information

Prog2_15th

Prog2_15th 2019 年 7 月 25 日 ( 木 ) 実施メニューメニューバーとコンテクストメニュー Visual C# では, メニューはコントロールの一つとして扱われ, フォームアプリケーションの上部に配置されるメニューバーと, コントロール上でマウスを右クリックすると表示されるコンテクストメニューとに対応している これ等は選択するとメニューアイテムのリストが表示されるプルダウンメニューと呼ばれる形式に従う

More information

CommonMP Ver1.5 インストール手順書 目 次 1. 概要 目的 必要動作環境 ハードウェア構成 ソフトウェア構成 CommonMP のインストール手順 利用フロー

CommonMP Ver1.5 インストール手順書 目 次 1. 概要 目的 必要動作環境 ハードウェア構成 ソフトウェア構成 CommonMP のインストール手順 利用フロー CommonMP Ver1.5 インストール手順書 目 次 1. 概要... 1-1 1.1 目的 1-1 2. 必要動作環境... 2-1 2.1 ハードウェア構成 2-1 2.2 ソフトウェア構成 2-1 3. CommonMP のインストール手順... 3-1 3.1 利用フロー 3-1 3.2 プログラムのインストールとアンインストール 3-2 3.2.1 プログラムのインストール 3-2

More information

型名 RF007 ラジオコミュニケーションテスタ Radio Communication Tester ソフトウェア開発キット マニュアル アールエフネットワーク株式会社 RFnetworks Corporation RF007SDK-M001 RF007SDK-M001 参考資料 1

型名 RF007 ラジオコミュニケーションテスタ Radio Communication Tester ソフトウェア開発キット マニュアル アールエフネットワーク株式会社 RFnetworks Corporation RF007SDK-M001 RF007SDK-M001 参考資料 1 型名 RF007 ラジオコミュニケーションテスタ Radio Communication Tester ソフトウェア開発キット マニュアル アールエフネットワーク株式会社 RFnetworks Corporation RF007SDK-M001 RF007SDK-M001 参考資料 1 第 1 章製品概要本開発キットは RF007 ラジオコミュニケーションテスタ ( 本器 ) を使用したソフトウェアを開発するためのライブラリソフトウェアです

More information

Microsoft Word - Android_SQLite講座_画面800×1280

Microsoft Word - Android_SQLite講座_画面800×1280 Page 24 11 SQLite の概要 Android にはリレーショナルデータベースである SQLite が標準で掲載されています リレーショナルデータベースは データを表の形で扱うことができるデータベースです リレーショナルデータベースには SQL と呼ばれる言語によって簡単にデータの操作や問い合わせができようになっています SQLite は クライアントサーバ形式ではなく端末の中で処理が完結します

More information

表示の更新もそういた作業のひとつに当たる スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない その理由

表示の更新もそういた作業のひとつに当たる スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない その理由 Java 独習第 3 版 13.12 スレッドの使用 13.13 ダブルバッファリング 2006 年 7 月 12 日 ( 水 ) 南慶典 表示の更新もそういた作業のひとつに当たる 13.12 スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない

More information

ArcGIS Runtime SDK for .NET アプリケーション配布ガイド

ArcGIS Runtime SDK for .NET アプリケーション配布ガイド ArcGIS Runtime SDK for.net アプリケーション配布ガイド 目次 はじめに... 1 対象の製品バージョン... 1 ライセンス認証のステップ... 2 使用するライセンスの選択... 3 クライアント ID の取得... 4 Basic レベルのライセンス認証... 6 Standard レベルのライセンス認証... 8 ArcGIS Online / Portal for

More information

VFD256 サンプルプログラム

VFD256 サンプルプログラム VFD256 サンプルプログラム 目次 1 制御プログラム... 1 2.Net 用コントロール Vfd256 の使い方... 11 2.1 表示文字列の設定... 11 2.2 VFD256 書込み前のクリア処理... 11 2.3 書き出しモード... 11 2.4 表示モード... 12 2.5 表示... 13 2.6 クリア... 13 2.7 接続方法 ボーレートの設定... 13 2.8

More information

Source Insight

Source Insight ソースインサイト プログラムエディタ Source Insight のご紹介 ソースを理解しながら 効率の良いコーディング エクセルソフト株式会社営業部 エクセルソフト株式会社 Copyright 2008 XLsoft K.K. All Rights Reserved. - 1 - 目次 プログラムエディタ Source Insight のご紹介 ソースを理解しながら 効率の良いコーディング 目次

More information

プログラミング基礎I(再)

プログラミング基礎I(再) 山元進 クラスとは クラスの宣言 オブジェクトの作成 クラスのメンバー フィールド 変数 配列 メソッド メソッドとは メソッドの引数 戻り値 変数の型を拡張したもの 例えば車のデータベース 車のメーカー 車種 登録番号などのデータ データベースの操作 ( 新規データのボタンなど ) プログラムで使う部品の仕様書 そのクラスのオブジェクトを作ると初めて部品になる 継承 などの仕組みにより カスタマイズが安全

More information

Microsoft Word - SmartManager User's Manual-2 3 0_JP.docx

Microsoft Word - SmartManager User's Manual-2 3 0_JP.docx SMART MANAGER 取扱説明書 Rev.1.0 この度は 当社製品をお買い上げいただき 誠にありがとうございます ご使用前に取扱説明書をよくお読みの上 正しく安全にお使いください 本マニュアルの内容や画像は製品の性能向上のために予告なく変更又は修正されることがあります マニュアルの内容については 正確性を検証するために最善を尽くしておりますが 記載内容についての保証はいたしておりません ユニモテクノロジー株式会社

More information

Java知識テスト問題

Java知識テスト問題 Java 知識テスト SDAS プログラマ(Java 編 ) 運営事務局 このテストは J2EE プログラマとしての Java の知識を評価するものです 問題は 30 問, テスト時間は J2EE 知識テストとあわせて 90 分です 問題は全て択一式です 選択肢から 1 つだけ選択してください 資料の閲覧は禁止です テストが終わり次第 答案用紙を提出していただいてかまいません テスト終了後, 本テストの内容を他の方に話さないでください

More information

Prog2_6th

Prog2_6th 2015 年 10 月 29 日 ( 木 ) 実施 レイアウトレイアウトの位置付け Android アプリで用いられる様々なレイアウト (Layout) は, それぞれ ViewGroup クラスを継承するクラスとして定義されているものであり,ViewGroup クラスは Viewクラスを継承するクラスである Viewクラスはユーザインタフェイスを構成する基本要素を表す ビュー (View) は画面上に長方形の領域を占め,

More information

新しいイテレーション型開発

新しいイテレーション型開発 2 XAML WPF Windows Presentation Foundation 4 / 4 5 Silverlight 5 XAML 6 6 XAML 6 6 7 8 8 9 XAML 9 XAML 12 12 / / 13 / 14 15 XAML 15 Expression Blend 15 Visual Studio 2008 16 XAML 16 Microsoft Expression

More information

MENU 키를 누르면 아래의 화면이 나타납니다

MENU 키를 누르면 아래의 화면이 나타납니다 Stand-Alone Digital Video Recorder Advanced MPEG-4 DVR 16 Channel Models クライアントソフト 再インストールマニュアル くまざわ書店専用 日本語版 1 V1.07-n307 This document contains preliminary information and subject to change without notice.

More information

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード]

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード] 第 3 回 Java 基本技術講義 クラス構造と生成 33 クラスの概念 前回の基本文法でも少し出てきたが, オブジェクト指向プログラミングは という概念をうまく活用した手法である. C 言語で言う関数に似ている オブジェクト指向プログラミングはこれら状態と振る舞いを持つオブジェクトの概念をソフトウェア開発の中に適用し 様々な機能を実現する クラス= = いろんなプログラムで使いまわせる 34 クラスの概念

More information

Flash Loader

Flash Loader J MA1309-A プロジェクターファームウェア更新ガイド 本書はお読みになった後も大切に保管してください 本書の最新版は下記ウェブサイトに公開されております http://world.casio.com/manual/projector/ Microsoft Windows Windows Vistaは米国 Microsoft Corporationの米国およびその他の国における登録商標または商標です

More information

Javaプログラムの実行手順

Javaプログラムの実行手順 戻り値のあるメソッド メソッドには 処理に使用する値を引数として渡すことができました 呼び出し 側からメソッドに値を渡すだけでなく 逆にメソッドで処理を行った結果の値を 呼び出し側で受け取ることもできます メソッドから戻してもらう値のことを もどりち戻り値といいます ( 図 5-4) 図 5-4. 戻り値を返すメソッドのイメージ 戻り値を受け取ることによって ある計算を行った結果や 処理に成功したか失

More information

目次 はじめに... 3 システムの必要条件... 3 サンプルアプリケーションの作成... 3 手順 手順 手順 手順 手順 手順 終わりに... 23

目次 はじめに... 3 システムの必要条件... 3 サンプルアプリケーションの作成... 3 手順 手順 手順 手順 手順 手順 終わりに... 23 SharpShooter Reports.Silverlight 基本的な使い方 Last modified on: August 16, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されます 目次 はじめに... 3 システムの必要条件... 3 サンプルアプリケーションの作成... 3 手順 1...

More information

Prog2_2nd

Prog2_2nd 2018 年 10 月 4 日 ( 木 ) 実施 C# プログラムの基礎 基本構造 1) クラス Visual C# のプログラムの基本単位をクラスと呼ぶ Windows フォームアプリケーションを作 成する際, プロジェクトを作成すると生成されるファイルのうち,Form1.cs を例にとれば, その クラス名は Form1 である クラスは class キーワードを用いて宣言する Form1.cs

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 1 02 グラフゖックで簡単な図形を描く図形描画プログラム 1 今回作成するゕプリケーションの概要 ボタンをクリックすると図形を描くプログラム 行われる動作 [1] ボタンをクリック [2] そのボタンに対する図形を描く これを使用者とコンピュータの関係で描くと [ 使用者 コンピュータ ] ボタンをクリック [ 使用者 コンピュータ ] 図形を描画して見せる 使用者がコンピュータにすること ボタンをクリック

More information

GS1-128 の描画 DLL について (ver. 2.3) 動作環境など動作環境 WindowsXP Windows Vista Windows7 Windows8/8.1 Windows10 上記 OS について すべて日本語版を対象としております 32bit アプリケーションから呼び出される

GS1-128 の描画 DLL について (ver. 2.3) 動作環境など動作環境 WindowsXP Windows Vista Windows7 Windows8/8.1 Windows10 上記 OS について すべて日本語版を対象としております 32bit アプリケーションから呼び出される GS1-128 の描画 DLL について (ver. 2.3) 動作環境など動作環境 WindowsXP Windows Vista Windows7 Windows8/8.1 Windows10 上記 OS について すべて日本語版を対象としております 32bit アプリケーションから呼び出される必要があります 使用条件 プリンタの解像度 300dpi 以上 機能 バーコードの基本幅を 1 ドット単位で指定できる

More information

intra-mart Accel Platform — IM-Repository拡張プログラミングガイド   初版  

intra-mart Accel Platform — IM-Repository拡張プログラミングガイド   初版   Copyright 2018 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. はじめに 2.1. 本書の目的 2.2. 対象読者 2.3. サンプルコードについて 2.4. 本書の構成 3. 辞書項目 API 3.1. 最新バージョン 3.1.1. 最新バージョンの辞書を取得する 3.2. 辞書項目 3.2.1. 辞書項目を取得する 3.2.2.

More information

Prog1_6th

Prog1_6th 2019 年 10 月 31 日 ( 木 ) 実施配列同種のデータ型を有する複数のデータ ( 要素 ) を番号付けして, ひとまとまりの対象として扱うものを配列と呼ぶ 要素 point[0] point[1] point[2] point[3] point[4] 配列 配列の取り扱いに関して, 次のような特徴がある 1. プログラム中で用いる配列変数 ( 配列の本体を参照する参照型の変数 ) は必ず宣言しておく

More information

プロセス間通信

プロセス間通信 プロセス間通信 プロセス間通信 (SendMessage) プロセス間通信とは 同一コンピューター上で起動して居るアプリケーション間でデータを受け渡し度い事は時々有る Framework には リモート処理 と謂う方法でデータの受け渡しを行なう方法が有る 此処では 此の方法では無く 従来の方法の API を使用したプロセス間通信を紹介する 此の方法は 送信側は API の SendMessage で送り

More information

Graphical User Interface 描画する

Graphical User Interface 描画する Graphical User Interface 描画する オブジェクト指向プログラミング特論 2016 年度 只木進一 : 工学系研究科 2 描画の基本 javax.swing.jpanel に描画する paint() または paintcomponent() メソッドを上書きすることによって描画する この中で描画対象を描く 基本的図形要素は準備されている しかし 画面の重なりによる再描画の場合

More information

スライド 1

スライド 1 R 流 Visual Studio 2008 C# の 驚異的な生産性を知る 2008 年 03 月 29 日 R 田中一郎 http://blogs.wankuma.com/rti/ Microsoft MVP for Development Tools - Visual C# アジェンダ はじめに コード比較 新機能の紹介 新機能の応用 まとめ はじめに つい先日発売した Visual Studio

More information

画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう

画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう 第 14 回 応用 情報処理演習 ( テキスト : 第 10 章 ) 画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう 特定色の画素の検出 ( テキスト 134 ページ ) 画像データが保存されているファイルを読み込んで, 特定色の画素の位置を検出するプログラムを作成しなさい 元画像生成画像 ( 結果の画像 )

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 講座準備 講座資料は次の URL から DL 可能 https://goo.gl/jnrfth 1 ポインタ講座 2017/01/06,09 fumi 2 はじめに ポインタはC 言語において理解が難しいとされる そのポインタを理解することを目的とする 講座は1 日で行うので 詳しいことは調べること 3 はじめに みなさん復習はしましたか? 4 & 演算子 & 演算子を使うと 変数のアドレスが得られる

More information

HOW DO I WebBrowser コントロールで HTML5 を 使用するには ここでは以下の手順で説明します Video 要素を使用する Silverlight と JavaScript の間でやり取りする Canvas 要素を使用する Video 要素を使用する 1. Visual Stu

HOW DO I WebBrowser コントロールで HTML5 を 使用するには ここでは以下の手順で説明します Video 要素を使用する Silverlight と JavaScript の間でやり取りする Canvas 要素を使用する Video 要素を使用する 1. Visual Stu HOW DO I WebBrowser コントロールで HTML5 を 使用するには ここでは以下の手順で説明します Video 要素を使用する Silverlight と JavaScript の間でやり取りする Canvas 要素を使用する Video 要素を使用する 1. Visual Studio で "Windows Phone ゕプリケーション " プロジェクトテンプレートを使って "HTML5BrowserFeatures"

More information

第14回若年者ものづくり競技大会「業務用ITソフトウェア・ソリューションズ」職種 模擬競技課題

第14回若年者ものづくり競技大会「業務用ITソフトウェア・ソリューションズ」職種 模擬競技課題 公表 業務用 IT ソフトウェア ソリューションズ 模擬競技課題 第 日 第 2 日 注意 : これは模擬競技課題です. 実際の競技で使用するものではありません. また, 競技内容の参考のために競技課題の出 題形式等を模したものであり, この模擬競技課題と実際の競技課題との難易度の同一性を保証するものではありません. / 5 CONTENTS USB メモリ内に用意されている次のプログラムを使用する

More information

AquesTalk プログラミングガイド

AquesTalk プログラミングガイド AquesTalk プログラミングガイド ( 株 ) アクエスト 1. 概要 本文書は 規則音声合成ライブラリ AquesTalk をアプリケーションに組み込んで使用するためのプログラミングに関して 方法および注意点を示したものです AquesTalk には 2 種類のライブラリがあります 音声データをメモリ上に生成するものと サウンドデバイスに出力する 2 種類があります 使用するアプリケーションに応じて選択してください

More information

Microsoft PowerPoint - OOP.pptx

Microsoft PowerPoint - OOP.pptx 第 14 回 第 12 章アプレット 28 8 アプレットとは アプレット : ウェブ上で HTML のソースコードから参照されるプログラム.Web サーバや Web ブラウザ ( アプレットビューア ) から動的にアプレットはダウンロードされる. 289 HelloAp.java アプレットの基本事項 public class HelloAp extends Applet{ public void

More information

CashDrawer ライブラリ API 仕様書 2014/07/09 CashDrawer ライブラリ API 仕様書 Rev / 10

CashDrawer ライブラリ API 仕様書 2014/07/09 CashDrawer ライブラリ API 仕様書 Rev / 10 2014/07/09 CashDrawer ライブラリ API 仕様書 Rev. 00.0.04 1 / 10 目次 1. ファイル構成... 3 2. 環境 3 2.1. 動作環境 OS... 3 2.2. コンパイル時の注意点... 3 2.3. USB ドライバ... 3 3. 関数一覧... 4 3.1. USB 接続確認処理 (CD_checkConnect CD_checkConnect)

More information

PowerPoint Presentation

PowerPoint Presentation ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:

More information

Visual Basic Oracle Database 11 Release 1

Visual Basic Oracle Database 11 Release 1 Visual Basic 2008 + Oracle Database 11 Release 1 2008.01.26 初音玲 Part.1 Oracle Database 製品について Oracleクライアントコンポーネントについて ODP.NETについて OracleConnectionクラスについて Oracle Database 製品について Oracleクライアントコンポーネントについて

More information

平成 25 年度卒業研究中間レポート 拡張現実 (AR) を用いた 3D シミュレーションアプリの開発 - Kinect で実現するナチュラルユーザーインターフェース - 近畿大学工学部 情報システム工学科 太田雄介 提出

平成 25 年度卒業研究中間レポート 拡張現実 (AR) を用いた 3D シミュレーションアプリの開発 - Kinect で実現するナチュラルユーザーインターフェース - 近畿大学工学部 情報システム工学科 太田雄介 提出 平成 25 年度卒業研究中間レポート 拡張現実 (AR) を用いた 3D シミュレーションアプリの開発 - Kinect で実現するナチュラルユーザーインターフェース - 近畿大学工学部 情報システム工学科 1010960077 太田雄介 2013.08.09 提出 目次 1. 研究の背景と目的...1 1.1 Kinect の概要... 1.1.1 Kinect の仕組み... 1.1.2 Kinect

More information

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 ( 此処では 10) を代入する丈でなく 2 の配列変数の宣言の様に ブレース { } の中にカンマ区切りで初期値のリストを記述し 配列の各要素に初期値を代入出来る様に成った

More information

JAVA入門

JAVA入門 JAVA 入門後期 10 情報処理試験例題解説 H14 年度秋問 8 次の Java プログラムの説明及びプログラムを読んで, 設問に答えよ プログラムの説明 ディジタル論理回路シミュレータを作成するためのクラスとテスト用クラスである (1) ゲートを表す抽象クラス Gate のサブクラスとして, NOT ゲートを表すクラス NotGate 及び AND ゲートを表すクラス AndGate を定義する

More information

V8.1新規機能紹介記事

V8.1新規機能紹介記事 WebOTX V8.1 新規機能 EJB 3.0 WebOTX V8.1より Java EE 5(Java Platform, Enterprise Edition 5) に対応しました これによりいろいろな機能追加が行われていますが 特に大きな変更であるEJB 3.0 対応についてご紹介いたします なお WebOTX V7で対応したEJB 2.1についてもWebOTX V8.1で引き続き利用することが可能です

More information