C#中list<>取元素赋值问题
我定义了一个list对象List<double>[]coord=newList<double>[count];coord数组里每个元素存放的是m个点的三维坐标(x,y,z...
我定义了一个list对象
List<double>[] coord = new List<double>[count];
coord 数组里每个元素存放的是m个点的三维坐标(x,y,z)形式,这是每个count里的元素
17.209431,-3.110594,7.662928,17.220444,-3.129421,7.661561,
17.215628,-3.124454,7.654997,17.220444,-3.129421,7.661561
依次是(x,y,z,x,y,z,x,y,z,x,y,z)格式
现在想 把每个count元素转化成control[][][]形式存储
请给出具体代码,谢谢 展开
List<double>[] coord = new List<double>[count];
coord 数组里每个元素存放的是m个点的三维坐标(x,y,z)形式,这是每个count里的元素
17.209431,-3.110594,7.662928,17.220444,-3.129421,7.661561,
17.215628,-3.124454,7.654997,17.220444,-3.129421,7.661561
依次是(x,y,z,x,y,z,x,y,z,x,y,z)格式
现在想 把每个count元素转化成control[][][]形式存储
请给出具体代码,谢谢 展开
3个回答
展开全部
double[, ,] controls = new double[coord.Length, 4, 3]; //4:因为每个LIST里有4个点; 3:每个点有三个值x, y z
for (int i = 0; i < coord.Length; i++)
{
for (int j = 0; j < coord[i].Count / 3; j++)
{
for (int k = 0; k < 3; k++)
{
controls[i,j,k] = coord[i][j*3 + k];
}
}
}
for (int i = 0; i < coord.Length; i++)
{
for (int j = 0; j < coord[i].Count / 3; j++)
{
for (int k = 0; k < 3; k++)
{
controls[i,j,k] = coord[i][j*3 + k];
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不需要用到List<>
如果元素个数确定,定义一个二维数组就行了
double[,] coord = new double[3,2];
coord[0,0] = ..;
coord[0,1] = ..;
如果元素个数确定,定义一个二维数组就行了
double[,] coord = new double[3,2];
coord[0,0] = ..;
coord[0,1] = ..;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for(int i=0;i<count;i++){
for(int j =0;j<3;j++){
control[j]=coord[i][j];
}
}
for(int j =0;j<3;j++){
control[j]=coord[i][j];
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询