C# 从jSon文件中提取矩阵

C# 从jSon文件中提取矩阵,c#,python,json,matrix,rhinoceros,C#,Python,Json,Matrix,Rhinoceros,我使用fSpy软件:开源静态图像相机匹配 要将结果与Rhino 3d一起使用,我将导出到jSon文件,该文件包含相机位置矩阵 我需要使用Python将行提取到一个数字列表 谢谢你的帮助 来自此: "cameraTransform": { "rows": [ [ -0.7469096503244566, -0.0048362499036055774, -0.6649079522302825, -6.75634

我使用fSpy软件:开源静态图像相机匹配 要将结果与Rhino 3d一起使用,我将导出到jSon文件,该文件包含相机位置矩阵 我需要使用Python将提取到一个数字列表 谢谢你的帮助

来自此:

  "cameraTransform": {
    "rows": [
      [
        -0.7469096503244566,
        -0.0048362499036055774,
        -0.6649079522302825,
        -6.756347957309588
      ],
      [
        -0.6649255299159078,
        0.005255128514812499,
        0.7468911723205343,
        7.333944516331069
      ],
      [
        -0.00011797562067967932,
        0.9999744968303753,
        -0.007140852231397498,
        -4.200072574252649
      ],
      [
        0,
        0,
        0,
        1
      ]
    ]
  }
0   -0.7469096503244566
1   -0.0048362499036055774
2   -0.6649079522302825
3   -6.756347957309588
4   -0.6649255299159078
5    0.005255128514812499
6   0.7468911723205343
7   7.333944516331069
8   -0.00011797562067967932
9   0.9999744968303753
10   -0.007140852231397498
11   -4.200072574252649
12   0
13   0
14   0
15   1
至:

  "cameraTransform": {
    "rows": [
      [
        -0.7469096503244566,
        -0.0048362499036055774,
        -0.6649079522302825,
        -6.756347957309588
      ],
      [
        -0.6649255299159078,
        0.005255128514812499,
        0.7468911723205343,
        7.333944516331069
      ],
      [
        -0.00011797562067967932,
        0.9999744968303753,
        -0.007140852231397498,
        -4.200072574252649
      ],
      [
        0,
        0,
        0,
        1
      ]
    ]
  }
0   -0.7469096503244566
1   -0.0048362499036055774
2   -0.6649079522302825
3   -6.756347957309588
4   -0.6649255299159078
5    0.005255128514812499
6   0.7468911723205343
7   7.333944516331069
8   -0.00011797562067967932
9   0.9999744968303753
10   -0.007140852231397498
11   -4.200072574252649
12   0
13   0
14   0
15   1

您可以在将json转换为python格式后尝试以下操作:

cameraTransform= {
        "rows": [
          [
            -0.7469096503244566,
            -0.0048362499036055774,
            -0.6649079522302825,
            -6.756347957309588
          ],
          [
            -0.6649255299159078,
            0.005255128514812499,
            0.7468911723205343,
            7.333944516331069
          ],
          [
            -0.00011797562067967932,
            0.9999744968303753,
            -0.007140852231397498,
            -4.200072574252649
          ],
          [
            0,
            0,
            0,
            1
          ]
        ]
      }

from itertools import chain
for idx, value in enumerate(chain(*cameraTransform['rows'])):
    print(idx, value)
输出:

0 -0.7469096503244566
1 -0.0048362499036055774
2 -0.6649079522302825
3 -6.756347957309588
4 -0.6649255299159078
5 0.005255128514812499
6 0.7468911723205343
7 7.333944516331069
8 -0.00011797562067967932
9 0.9999744968303753
10 -0.007140852231397498
11 -4.200072574252649
12 0
13 0
14 0
15 1

您使用的是C#还是Python?为什么这两个都有标记?c#in Grasshopper with python(Ghpython)非常感谢Peter;这是非常有帮助的,我希望看到其他解决方案从json中提取相机转换行file@seghier我不知道您的json格式,但您可以访问
https://docs.python.org/3/library/json.html
了解如何在python中处理json