Subscribed unsubscribe Subscribe Subscribe

Python vs C#

”重い処理は、C#で書くと軽くなって処理が早い”
kuma事務所からの噂を、50x50x50の点オブジェクトを作る処理で実験。

grasshopperとghPythonとC#など

f:id:ysok_na:20161022195610j:plain


写真上から
grasshopper : 330ms (2%)

ghPython : 10.9s (85%)

C# : 1.2s (9%)

(grasshopperのところは他にもseriesなどのコンポーネントもあるので、もう少しかかる(ほぼゼロに近いが))



結果として、今回の作業だと、C#は、Pythonよりもはやいが、
grasshopperのコンポーネントで直接やったほうが早かった。


以下、そーす

Python

import rhinoscriptsyntax as rs

a = []

for i in range(x):
    for j in range(x):
        for k in range(x):
            point = rs.AddPoint(i,j,k)
            a.append(point)

C#

  private void RunScript(int x, ref object A)
  {
    List<Point3d> pts = new List<Point3d>();

    for (int i = 0; i < x; i++){
      for (int j = 0; j < x; j++){
        for (int k = 0; k < x; k++){
          Point3d tempPt = new Point3d(i, j, k);
          pts.Add(tempPt);
        }
      }
    }
    A = pts;
  }