Top > Kinect > ExtendKinectLibrary > HowToUse > JointCollectionEx
Last-modified: Tue, 06 Nov 2012 19:06:04 JST
Counter:1636 Today:1 Yesterday:0 Online:3
このエントリーをはてなブックマークに追加

JointCollectionExについて

Now Editing!

JointCollectionExとは

 JointCollectionExとは簡単に、JointCollectionと同等の機能+少しの拡張機能を持ったクラスです。基本的にはJointCollectionと同じ様に扱われます。

なぜJointCollectionではないのか

 EKLを利用する上で頻繁に扱われる「JointCollectionExクラス」ですが、MSから公式で用意される、JointCollectionではなくJointCollectionExである理由があります。JointCollectionクラスは、任意のインスタンスを生成できず(2012.10.19,SDK1.6時点)、例えばJointCollectionのデータを保存し、再度読み込んでJointCollectionのインスタンスを生成することなどができません。これは引数を取らないコンストラクタがJointCollectionに用意(公開)されていないためで、回避する事の出来ない問題です。これはつまり、継承によって機能を拡張する事ができないことも意味します。そのためEKLではJointCollectionExを用意しています。

JointCollectionExからJointを取得する

 JointCollectionExからJointを取得する場合には、JointCollectionと同様に扱います。

JointCollectionEx[JointType.Joint]

JointCollectionExに定義される基本的なJoint「DefaultJoint」

 JointCollectionは基本的なJointのインスタンスを生成するプロパティがあります。「DefaultJointプロパティ」によって得られるJointのインスタンスは、TrackingScore.NotTracked、Position=SkeletonPointExtensions.ZeroPoint(=0,0,0)を示します。

JointCollectionEx.DefaultJoint;