Aero Example

/*
** Example: SoftBodies_Aero.kl
*/

require Math;
require Geometry;
require BulletHelpers;


function Vec3 randomVec3(io Size offset, Scalar scale)
{
  const Size seed = 16841;
  Vec3 p(
    mathRandomFloat32(seed, offset++),
    mathRandomFloat32(seed, offset++),
    mathRandomFloat32(seed, offset++)
    );
  return p * scale;
}

function Init_Aero(io SoftBodySimulation sim, Integer count)
{
  sim.initPhysics();
  sim.createFlatGround(0.0);
  BulletSoftRigidDynamicsWorld softWorld = sim.getSoftDynamicsWorld();

  const Scalar  s=2;
  const Scalar  h=10;
  const Integer segments=6;
  Size      randoffset = 0;
  for(Integer i=0;i<count;++i)
  {
    // create a cloth
    PolygonMesh cloth();
    cloth.addPlane(Xfo(), s*2.0, s*2.0, segments, segments);

    Vec3 positions[] = cloth.getAttributes().getPositions().values;
    positions.resize(cloth.pointCount());
    UInt32 triangles[] = cloth.generateTriangleList();

    BulletSoftBody  psb=BulletSoftBodyHelpers_CreateFromTriMesh(sim.softBodyWorldInfo, positions, triangles, false);

    BulletSoftBodyMaterial  pm=psb.appendMaterial();
    psb.generateBendingConstraints(2,pm);
    BulletSoftBodyConfig cfg = psb.getConfig();
    cfg.setLF(0.004);
    cfg.setDG(0.0003);
    cfg.setAeromodel(BulletSoftBody_eAeroModel_V_TwoSided);
    Xfo trs;
    Vec3 ra=  randomVec3(randoffset, 1.0).unit() * 0.2;
    trs.setIdentity();
    trs.tr = randomVec3(randoffset, Scalar(count)*0.3) + Vec3(0,20,-40);
    trs.ori.setFromEulerAngles(Vec3(PI/8 + ra.x,-PI/7 + ra.y,ra.z));
    psb.transform(trs);
    psb.setTotalMass(0.1);
    psb.addForce(Vec3(0,2,0),0);

    sim.addSoftBody(psb, cloth);
  }
}


operator entry(){

  report("SoftBodySimulation Aero Demo");
  SoftBodySimulation sim();
  Init_Aero(sim, 10);

  BulletSoftRigidDynamicsWorld softWorld = sim.getSoftDynamicsWorld();
  UInt32 numReportedVertices = 4;
  String reportedPositions[];
  reportedPositions.resize(numReportedVertices);

  BulletSoftBody softBodies[] =  softWorld.getSoftBodyArray();

  for(Integer i=0; i<600; i++){
    sim.stepSimulation();

    if(i%60==0){
      // Report X vertex positions;
      for(Integer k=0; k<softBodies.size(); k++){
        BulletSoftBody softBody = softBodies[k];
        for(Integer j=0; j<numReportedVertices; j++){
          Index index = (Scalar(j+1) / Scalar(numReportedVertices+1)) * softBody.getNumNodes();
          BulletSoftBodyNode node = softBody.getNode(index);
          reportedPositions[j] = unitTestPrint(node.x);
        }
        report("i:"+i +"k:"+k + " mesh vertices:" + reportedPositions);
      }
    }
  }

  // Force the destruction of the sim object.
  sim = null;

  report("entry<<<<");

}

/*
** Output:

SoftBodySimulation Aero Demo
i:0k:0 mesh vertices:["{x:+1.011718,y:+22.51953,z:-41.22656}","{x:+2.550293,y:+22.02734,z:-39.875}","{x:-0.405761,y:+21.64843,z:-39.9375}","{x:+1.133056,y:+21.15234,z:-38.58593}"]
i:0k:1 mesh vertices:["{x:+0.053405,y:+23.0664,z:-38.61718}","{x:+1.662597,y:+22.78906,z:-37.28906}","{x:-1.267578,y:+22.24609,z:-37.19531}","{x:+0.341857,y:+21.96875,z:-35.85937}"]
i:0k:2 mesh vertices:["{x:+0.383361,y:+21.99609,z:-41.03906}","{x:+2.085937,y:+21.69531,z:-39.83593}","{x:-0.835327,y:+21.1875,z:-39.52343}","{x:+0.867431,y:+20.88671,z:-38.3125}"]
i:0k:3 mesh vertices:["{x:+2.19873,y:+22.38671,z:-38.64062}","{x:+3.782226,y:+21.99218,z:-37.30468}","{x:+0.838623,y:+21.51953,z:-37.28125}","{x:+2.421875,y:+21.125,z:-35.94531}"]
i:0k:4 mesh vertices:["{x:+2.744629,y:+22.75,z:-40.03906}","{x:+4.412109,y:+22.4414,z:-38.78906}","{x:+1.484863,y:+21.91796,z:-38.57031}","{x:+3.152343,y:+21.60937,z:-37.32031}"]
i:0k:5 mesh vertices:["{x:+3.009277,y:+22.98046,z:-40.03906}","{x:+4.5,y:+22.64453,z:-38.58593}","{x:+1.559326,y:+22.17578,z:-38.73437}","{x:+3.049804,y:+21.83984,z:-37.28906}"]
i:0k:6 mesh vertices:["{x:+1.666015,y:+22.96875,z:-38.98437}","{x:+3.335937,y:+22.76562,z:-37.71093}","{x:+0.415039,y:+22.22265,z:-37.46093}","{x:+2.084961,y:+22.01953,z:-36.1875}"]
i:0k:7 mesh vertices:["{x:+1.90747,y:+22.01953,z:-39.86718}","{x:+3.551269,y:+21.58984,z:-38.625}","{x:+0.608764,y:+21.13281,z:-38.46875}","{x:+2.252441,y:+20.70312,z:-37.21875}"]
i:0k:8 mesh vertices:["{x:+2.266113,y:+23.97265,z:-40.54687}","{x:+3.903808,y:+23.3789,z:-39.36718}","{x:+0.944458,y:+23.0664,z:-39.17968}","{x:+2.582519,y:+22.47265,z:-37.99218}"]
i:0k:9 mesh vertices:["{x:+1.546875,y:+22.64062,z:-39.20312}","{x:+3.306152,y:+22.30078,z:-38.09375}","{x:+0.391845,y:+21.91406,z:-37.59375}","{x:+2.150879,y:+21.57812,z:-36.48437}"]
i:60k:0 mesh vertices:["{x:+1.867431,y:+20.51562,z:-44.42968}","{x:+3.40625,y:+20.02343,z:-43.07031}","{x:+0.449768,y:+19.64062,z:-43.13281}","{x:+1.988525,y:+19.14843,z:-41.78125}"]
i:60k:1 mesh vertices:["{x:+1.193603,y:+20.27343,z:-41.36718}","{x:+2.803222,y:+19.99609,z:-40.03125}","{x:-0.127044,y:+19.45312,z:-39.94531}","{x:+1.482421,y:+19.17578,z:-38.60937}"]
i:60k:2 mesh vertices:["{x:+1.223877,y:+19.17968,z:-43.88281}","{x:+2.926757,y:+18.8789,z:-42.67968}","{x:+0.524234e-2,y:+18.375,z:-42.36718}","{x:+1.708007,y:+18.07031,z:-41.15625}"]
i:60k:3 mesh vertices:["{x:+3.189941,y:+20.08203,z:-41.67187}","{x:+4.773437,y:+19.6875,z:-40.33593}","{x:+1.829589,y:+19.21484,z:-40.3125}","{x:+3.412597,y:+18.82031,z:-38.97656}"]
i:60k:4 mesh vertices:["{x:+3.695312,y:+20.08593,z:-42.92187}","{x:+5.363281,y:+19.77734,z:-41.67187}","{x:+2.435547,y:+19.2539,z:-41.45312}","{x:+4.103515,y:+18.94531,z:-40.20312}"]
i:60k:5 mesh vertices:["{x:+4.197265,y:+20.22265,z:-42.78906}","{x:+5.688476,y:+19.88671,z:-41.33593}","{x:+2.747558,y:+19.41796,z:-41.48437}","{x:+4.238281,y:+19.08203,z:-40.03125}"]
i:60k:6 mesh vertices:["{x:+2.730957,y:+19.67187,z:-41.5}","{x:+4.401367,y:+19.46484,z:-40.22656}","{x:+1.47998,y:+18.92578,z:-39.97656}","{x:+3.149902,y:+18.72265,z:-38.70312}"]
i:60k:7 mesh vertices:["{x:+2.694824,y:+19.90234,z:-43.03906}","{x:+4.338867,y:+19.47265,z:-41.78906}","{x:+1.39624,y:+19.01953,z:-41.63281}","{x:+3.040039,y:+18.58593,z:-40.39062}"]
i:60k:8 mesh vertices:["{x:+2.662109,y:+22.4375,z:-44.00781}","{x:+4.299804,y:+21.84375,z:-42.82031}","{x:+1.340332,y:+21.53515,z:-42.64062}","{x:+2.978027,y:+20.9375,z:-41.45312}"]
i:60k:9 mesh vertices:["{x:+1.988281,y:+19.48828,z:-41.97656}","{x:+3.747558,y:+19.15234,z:-40.85937}","{x:+0.833251,y:+18.76562,z:-40.36718}","{x:+2.592285,y:+18.42578,z:-39.25781}"]
i:120k:0 mesh vertices:["{x:-3.841308,y:+8.880859,z:-23.64843}","{x:-2.297363,y:+8.503906,z:-22.27734}","{x:-5.24707,y:+8.0625,z:-22.30859}","{x:-3.693847,y:+7.646484,z:-20.95312}"]
i:120k:1 mesh vertices:["{x:-6.05664,y:+11.27148,z:-23.9375}","{x:-4.450195,y:+11.01171,z:-22.59765}","{x:-7.375976,y:+10.44726,z:-22.51171}","{x:-5.768554,y:+10.1875,z:-21.17578}"]
i:120k:2 mesh vertices:["{x:-4.047851,y:+10.11132,z:-25.80468}","{x:-2.340332,y:+9.751953,z:-24.62109}","{x:-5.267578,y:+9.289063,z:-24.29296}","{x:-3.560547,y:+8.933594,z:-23.10937}"]
i:120k:3 mesh vertices:["{x:-3.163574,y:+9.199219,z:-22.0039}","{x:-1.576904,y:+8.763672,z:-20.6875}","{x:-4.52539,y:+8.324219,z:-20.65625}","{x:-2.936035,y:+7.867187,z:-19.35156}"]
i:120k:4 mesh vertices:["{x:-2.422363,y:+10.71093,z:-24.55078}","{x:-0.759521,y:+10.44335,z:-23.28515}","{x:-3.680175,y:+9.882813,z:-23.07812}","{x:-2.013672,y:+9.59375,z:-21.82031}"]
i:120k:5 mesh vertices:["{x:-3.358398,y:+11.06054,z:-25.32421}","{x:-1.863281,y:+10.70703,z:-23.88281}","{x:-4.804687,y:+10.24414,z:-24.02734}","{x:-3.322754,y:+9.960938,z:-22.55468}"]
i:120k:6 mesh vertices:["{x:-3.883789,y:+12.29101,z:-25.95703}","{x:-2.213867,y:+12.09179,z:-24.6875}","{x:-5.133789,y:+11.54882,z:-24.43359}","{x:-3.461425,y:+11.33203,z:-23.16796}"]
i:120k:7 mesh vertices:["{x:-2.303222,y:+8.070313,z:-22.46484}","{x:-0.652465,y:+7.603515,z:-21.24218}","{x:-3.602539,y:+7.220703,z:-21.03906}","{x:-1.943847,y:+6.666015,z:-19.86718}"]
i:120k:8 mesh vertices:["{x:+0.350219,y:+7.203125,z:-21.52734}","{x:+1.991943,y:+6.329101,z:-20.55078}","{x:-0.964233,y:+6.230469,z:-20.19531}","{x:+0.673828,y:+5.231445,z:-19.32421}"]
i:120k:9 mesh vertices:["{x:-0.765625,y:+11.62109,z:-24.6914}","{x:+0.99353,y:+11.28906,z:-23.57812}","{x:-1.920166,y:+10.89648,z:-23.08593}","{x:-0.161132,y:+10.56445,z:-21.96875}"]
i:180k:0 mesh vertices:["{x:-17.3125,y:+2.276367,z:-1.479248}","{x:-17.95312,y:+4.199219,z:-1.998291}","{x:-19.26562,y:+1.78125,z:-0.854003}","{x:-19.89843,y:+3.726562,z:-1.350341}"]
i:180k:1 mesh vertices:["{x:-16.88671,y:+0.252136,z:+1.545654}","{x:-15.51953,y:+0.252197,z:+3.144043}","{x:-18.49218,y:+0.252441,z:+2.909179}","{x:-17.125,y:+0.252258,z:+4.510742}"]
i:180k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:180k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.252685,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:180k:4 mesh vertices:["{x:-9.703125,y:+0.252685,z:-0.986084}","{x:-9.025391,y:+0.252624,z:+1.010009}","{x:-11.69921,y:+0.252563,z:-0.307678}","{x:-11.02148,y:+0.252685,z:+1.688476}"]
i:180k:5 mesh vertices:["{x:-13.94531,y:+0.252502,z:-1.609863}","{x:-12.5625,y:+0.252502,z:-1.832199e-2}","{x:-15.5371,y:+0.252624,z:-0.227233}","{x:-14.15429,y:+0.252624,z:+1.364257}"]
i:180k:6 mesh vertices:["{x:-15.03125,y:+0.251403,z:+0.800293}","{x:-13.14062,y:+0.247741,z:+1.738525}","{x:-15.96679,y:+0.25061,z:+2.690429}","{x:-14.07812,y:+0.252014,z:+3.626953}"]
i:180k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:180k:8 mesh vertices:["{x:-0.818603,y:+0.250976,z:-14.75976}","{x:+0.950561,y:+0.398681,z:-13.65625}","{x:-1.933593,y:+0.239562,z:-12.97265}","{x:-0.241699,y:+0.955688,z:-11.98437}"]
i:180k:9 mesh vertices:["{x:-5.248047,y:+0.251525,z:+4.483398}","{x:-3.8125,y:+0.250976,z:+6.026367}","{x:-6.791992,y:+0.251159,z:+5.918945}","{x:-5.356445,y:+0.251831,z:+7.461914}"]
i:240k:0 mesh vertices:["{x:-25.23437,y:+0.252746,z:+0.980102}","{x:-27.3125,y:+0.252441,z:+1.328857}","{x:-24.88281,y:+0.252746,z:+3.059082}","{x:-26.96484,y:+0.252685,z:+3.408203}"]
i:240k:1 mesh vertices:["{x:-16.88671,y:+0.252746,z:+1.541503}","{x:-15.51953,y:+0.252746,z:+3.146972}","{x:-18.49218,y:+0.252746,z:+2.908203}","{x:-17.125,y:+0.252746,z:+4.513672}"]
i:240k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:240k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.252746,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:240k:4 mesh vertices:["{x:-9.703125,y:+0.252746,z:-0.986084}","{x:-9.025391,y:+0.252746,z:+1.010009}","{x:-11.69921,y:+0.252746,z:-0.307678}","{x:-11.02148,y:+0.252746,z:+1.688476}"]
i:240k:5 mesh vertices:["{x:-13.94531,y:+0.252746,z:-1.609863}","{x:-12.5625,y:+0.252746,z:-1.831817e-2}","{x:-15.5371,y:+0.252746,z:-0.227233}","{x:-14.15429,y:+0.252746,z:+1.364257}"]
i:240k:6 mesh vertices:["{x:-15.13085,y:+0.252746,z:+0.970092}","{x:-13.21679,y:+0.252685,z:+1.856689}","{x:-16.01562,y:+0.252746,z:+2.882812}","{x:-14.10351,y:+0.252746,z:+3.769531}"]
i:240k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:240k:8 mesh vertices:["{x:-0.838989,y:+0.252746,z:-14.79296}","{x:+0.947631,y:+0.252746,z:-13.67382}","{x:-1.958252,y:+0.252746,z:-13.00585}","{x:-0.171539,y:+0.252685,z:-11.88671}"]
i:240k:9 mesh vertices:["{x:-5.223633,y:+0.252746,z:+4.741211}","{x:-3.853027,y:+0.252746,z:+6.342773}","{x:-6.825195,y:+0.252746,z:+6.111328}","{x:-5.455078,y:+0.252746,z:+7.71289}"]
i:300k:0 mesh vertices:["{x:-25.23437,y:+0.252746,z:+0.980102}","{x:-27.3125,y:+0.252746,z:+1.328857}","{x:-24.88281,y:+0.252746,z:+3.059082}","{x:-26.96484,y:+0.252746,z:+3.408203}"]
i:300k:1 mesh vertices:["{x:-16.88671,y:+0.252746,z:+1.541503}","{x:-15.51953,y:+0.252746,z:+3.146972}","{x:-18.49218,y:+0.252746,z:+2.908203}","{x:-17.125,y:+0.252746,z:+4.513672}"]
i:300k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:300k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.252441,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:300k:4 mesh vertices:["{x:-9.703125,y:+0.252746,z:-0.986084}","{x:-9.025391,y:+0.252746,z:+1.010009}","{x:-11.69921,y:+0.252746,z:-0.307678}","{x:-11.02148,y:+0.252746,z:+1.688476}"]
i:300k:5 mesh vertices:["{x:-13.94531,y:+0.252746,z:-1.609863}","{x:-12.5625,y:+0.252746,z:-1.831817e-2}","{x:-15.5371,y:+0.252746,z:-0.227233}","{x:-14.15429,y:+0.252746,z:+1.364257}"]
i:300k:6 mesh vertices:["{x:-15.13085,y:+0.252746,z:+0.970092}","{x:-13.21679,y:+0.252746,z:+1.856689}","{x:-16.01562,y:+0.252746,z:+2.882812}","{x:-14.10351,y:+0.252746,z:+3.769531}"]
i:300k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:300k:8 mesh vertices:["{x:-0.838989,y:+0.252746,z:-14.79296}","{x:+0.947631,y:+0.252746,z:-13.67382}","{x:-1.958252,y:+0.252746,z:-13.00585}","{x:-0.171569,y:+0.252746,z:-11.88671}"]
i:300k:9 mesh vertices:["{x:-5.223633,y:+0.252746,z:+4.741211}","{x:-3.853027,y:+0.252746,z:+6.342773}","{x:-6.825195,y:+0.252746,z:+6.111328}","{x:-5.455078,y:+0.252746,z:+7.71289}"]
i:360k:0 mesh vertices:["{x:-25.23437,y:+0.252685,z:+0.980102}","{x:-27.3125,y:+0.252746,z:+1.328857}","{x:-24.88281,y:+0.252746,z:+3.059082}","{x:-26.96484,y:+0.252746,z:+3.408203}"]
i:360k:1 mesh vertices:["{x:-16.88671,y:+0.252746,z:+1.541503}","{x:-15.51953,y:+0.252746,z:+3.146972}","{x:-18.49218,y:+0.252746,z:+2.908203}","{x:-17.125,y:+0.252746,z:+4.513672}"]
i:360k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:360k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.252746,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:360k:4 mesh vertices:["{x:-9.703125,y:+0.252746,z:-0.986084}","{x:-9.025391,y:+0.252746,z:+1.010009}","{x:-11.69921,y:+0.252746,z:-0.307678}","{x:-11.02148,y:+0.252746,z:+1.688476}"]
i:360k:5 mesh vertices:["{x:-13.94531,y:+0.252746,z:-1.609863}","{x:-12.5625,y:+0.252746,z:-1.831817e-2}","{x:-15.5371,y:+0.252746,z:-0.227233}","{x:-14.15429,y:+0.252746,z:+1.364257}"]
i:360k:6 mesh vertices:["{x:-15.13085,y:+0.252746,z:+0.970092}","{x:-13.21679,y:+0.252502,z:+1.856689}","{x:-16.01562,y:+0.252746,z:+2.882812}","{x:-14.10351,y:+0.252746,z:+3.769531}"]
i:360k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:360k:8 mesh vertices:["{x:-0.838989,y:+0.252746,z:-14.79296}","{x:+0.947631,y:+0.252746,z:-13.67382}","{x:-1.958252,y:+0.252746,z:-13.00585}","{x:-0.171569,y:+0.252746,z:-11.88671}"]
i:360k:9 mesh vertices:["{x:-5.223633,y:+0.252746,z:+4.741211}","{x:-3.853027,y:+0.252746,z:+6.342773}","{x:-6.825195,y:+0.252746,z:+6.111328}","{x:-5.455078,y:+0.252746,z:+7.71289}"]
i:420k:0 mesh vertices:["{x:-25.23437,y:+0.252746,z:+0.980102}","{x:-27.3125,y:+0.252746,z:+1.328857}","{x:-24.88281,y:+0.252746,z:+3.059082}","{x:-26.96484,y:+0.252746,z:+3.408203}"]
i:420k:1 mesh vertices:["{x:-16.88671,y:+0.252746,z:+1.541503}","{x:-15.51953,y:+0.252746,z:+3.146972}","{x:-18.49218,y:+0.252746,z:+2.908203}","{x:-17.125,y:+0.252746,z:+4.513672}"]
i:420k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:420k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.251709,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:420k:4 mesh vertices:["{x:-9.703125,y:+0.252746,z:-0.986084}","{x:-9.025391,y:+0.252746,z:+1.010009}","{x:-11.69921,y:+0.252746,z:-0.307678}","{x:-11.02148,y:+0.252746,z:+1.688476}"]
i:420k:5 mesh vertices:["{x:-13.94531,y:+0.252746,z:-1.609863}","{x:-12.5625,y:+0.252746,z:-1.831817e-2}","{x:-15.5371,y:+0.252746,z:-0.227233}","{x:-14.15429,y:+0.252746,z:+1.364257}"]
i:420k:6 mesh vertices:["{x:-15.13085,y:+0.252746,z:+0.970092}","{x:-13.21679,y:+0.252746,z:+1.856689}","{x:-16.01562,y:+0.252746,z:+2.882812}","{x:-14.10351,y:+0.252746,z:+3.769531}"]
i:420k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:420k:8 mesh vertices:["{x:-0.838989,y:+0.252746,z:-14.79296}","{x:+0.947631,y:+0.252746,z:-13.67382}","{x:-1.958252,y:+0.252746,z:-13.00585}","{x:-0.171569,y:+0.252746,z:-11.88671}"]
i:420k:9 mesh vertices:["{x:-5.223633,y:+0.252746,z:+4.741211}","{x:-3.853027,y:+0.252746,z:+6.342773}","{x:-6.825195,y:+0.252746,z:+6.111328}","{x:-5.455078,y:+0.252746,z:+7.71289}"]
i:480k:0 mesh vertices:["{x:-25.23437,y:+0.252563,z:+0.980102}","{x:-27.3125,y:+0.252746,z:+1.328857}","{x:-24.88281,y:+0.252746,z:+3.059082}","{x:-26.96484,y:+0.252746,z:+3.408203}"]
i:480k:1 mesh vertices:["{x:-16.88671,y:+0.252746,z:+1.541503}","{x:-15.51953,y:+0.252746,z:+3.146972}","{x:-18.49218,y:+0.252746,z:+2.908203}","{x:-17.125,y:+0.252746,z:+4.513672}"]
i:480k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:480k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.252746,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:480k:4 mesh vertices:["{x:-9.703125,y:+0.252746,z:-0.986084}","{x:-9.025391,y:+0.252746,z:+1.010009}","{x:-11.69921,y:+0.252746,z:-0.307678}","{x:-11.02148,y:+0.252746,z:+1.688476}"]
i:480k:5 mesh vertices:["{x:-13.94531,y:+0.252746,z:-1.609863}","{x:-12.5625,y:+0.252746,z:-1.831817e-2}","{x:-15.5371,y:+0.252746,z:-0.227233}","{x:-14.15429,y:+0.252746,z:+1.364257}"]
i:480k:6 mesh vertices:["{x:-15.13085,y:+0.252746,z:+0.970092}","{x:-13.21679,y:+0.251586,z:+1.856689}","{x:-16.01562,y:+0.252746,z:+2.882812}","{x:-14.10351,y:+0.252746,z:+3.769531}"]
i:480k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:480k:8 mesh vertices:["{x:-0.838989,y:+0.252746,z:-14.79296}","{x:+0.947631,y:+0.252746,z:-13.67382}","{x:-1.958252,y:+0.252746,z:-13.00585}","{x:-0.171569,y:+0.252746,z:-11.88671}"]
i:480k:9 mesh vertices:["{x:-5.223633,y:+0.252746,z:+4.741211}","{x:-3.853027,y:+0.252746,z:+6.342773}","{x:-6.825195,y:+0.252746,z:+6.111328}","{x:-5.455078,y:+0.252746,z:+7.71289}"]
i:540k:0 mesh vertices:["{x:-25.23437,y:+0.252746,z:+0.980102}","{x:-27.3125,y:+0.252746,z:+1.328857}","{x:-24.88281,y:+0.252746,z:+3.059082}","{x:-26.96484,y:+0.252746,z:+3.408203}"]
i:540k:1 mesh vertices:["{x:-16.88671,y:+0.252746,z:+1.541503}","{x:-15.51953,y:+0.252746,z:+3.146972}","{x:-18.49218,y:+0.252746,z:+2.908203}","{x:-17.125,y:+0.252746,z:+4.513672}"]
i:540k:2 mesh vertices:["{x:-9.771484,y:+0.252746,z:-4.605469}","{x:-8.189453,y:+0.252746,z:-3.211425}","{x:-11.16601,y:+0.252746,z:-3.023925}","{x:-9.583984,y:+0.252746,z:-1.629882}"]
i:540k:3 mesh vertices:["{x:-7.624023,y:+0.252746,z:-3.918457}","{x:-7.492187,y:+0.252746,z:-1.814453}","{x:-9.728516,y:+0.252746,z:-3.786621}","{x:-9.595703,y:+0.252746,z:-1.682617}"]
i:540k:4 mesh vertices:["{x:-9.703125,y:+0.252746,z:-0.986084}","{x:-9.025391,y:+0.252746,z:+1.010009}","{x:-11.69921,y:+0.252746,z:-0.307678}","{x:-11.02148,y:+0.252746,z:+1.688476}"]
i:540k:5 mesh vertices:["{x:-13.94531,y:+0.252746,z:-1.609863}","{x:-12.5625,y:+0.252746,z:-1.831817e-2}","{x:-15.5371,y:+0.252746,z:-0.227233}","{x:-14.15429,y:+0.252746,z:+1.364257}"]
i:540k:6 mesh vertices:["{x:-15.13085,y:+0.252746,z:+0.970092}","{x:-13.21679,y:+0.252746,z:+1.856689}","{x:-16.01562,y:+0.252746,z:+2.882812}","{x:-14.10351,y:+0.252746,z:+3.769531}"]
i:540k:7 mesh vertices:["{x:-4.877929,y:+0.252746,z:-8.820313}","{x:-3.517578,y:+0.252746,z:-7.208984}","{x:-6.488281,y:+0.252746,z:-7.459961}","{x:-5.127929,y:+0.252746,z:-5.848633}"]
i:540k:8 mesh vertices:["{x:-0.838989,y:+0.252746,z:-14.79296}","{x:+0.947631,y:+0.252746,z:-13.67382}","{x:-1.958252,y:+0.252746,z:-13.00585}","{x:-0.171569,y:+0.252746,z:-11.88671}"]
i:540k:9 mesh vertices:["{x:-5.223633,y:+0.252746,z:+4.741211}","{x:-3.853027,y:+0.252746,z:+6.342773}","{x:-6.825195,y:+0.252746,z:+6.111328}","{x:-5.455078,y:+0.252746,z:+7.71289}"]
entry<<<<

*/