2017-12-14 71 views
2

私はdouble []が必要です。私はPoint3dまたはVector3dを持っています。どのようにしてポイントやベクトルをdouble []に​​変換できますか? 私は次のコードでポイントとベクトルを作成します。C#Vector3d/Point3dをdoubleに変換する[]

double[] move_mapped = new double[] { 
    pos1.X, pos1.Y, pos1.Z 
}; 

同じ構文がVector3dのために働く:あなたはこのように、[]初期化子構文を使用することができます

Point3d pos1 = new Point3d(); 
Point3d pos2 = new Point3d(); 
GetPosition(out pos1, out pos2); 
Vector3d a = new Vector3d(pos1.X, pos1.Y, pos1.Z); 

double[] move_mapped = new double[3]; 
+4

可能[すべての可能な重複をC#配列の初期化構文](https://stackoverflow.com/questions/5678216/all-possible-c-sharp-array-initialization-syntaxes) –

答えて

2

あなたがVector3dをインスタンス化のような単純な:

double[] move_mapped = new double[] {pos1.X, pos1.Y, pos1.Z}; 

またはより短い配列初期化子と

double[] move_mapped = {pos1.X, pos1.Y, pos1.Z}; 
2

。また、「ショートカット」構文を使用することができます。

var move_mapped = new[] {a.X, a.Y, a.Z}; 
関連する問題