Замена элемента в списке - PullRequest
       13

Замена элемента в списке

2 голосов
/ 26 ноября 2011

При выполнении симметрии вертикального отражения на точках на экране, обратите внимание на следующее:

scrWidthCM=40

originals={{14.2065, 10.609, 0.974938}, {19.5653, 6.92721, 0.974938}, 
           {30.4607,17.4802, 0.974938}, {27.4621, 10.0393, 0.974938}, 
           {15.915, 20.4278,0.974938}, {28.6921, 5.2132, 1.53205}, 
           {27.0317, 24.8346,1.53205}, {20.8853, 18.8588, 1.53205}}

Где каждый подсписок соответствует: {Xcoordinate, Ycoordinate, radius}

Применение симметричногоперенести в каждую из 8 точек:

(scrWidthCM - #[[1]]) & /@originals

Как можно заменить первое значение каждого подсписка, а не просто вычислить его отраженную координату X?

1 Ответ

4 голосов
/ 26 ноября 2011

Предполагая, что вы хотите напрямую изменить объект originals:

originals[[All, 1]] = scrWidthCM - originals[[All, 1]]

Если вам нужна копия, используйте:

{scrWidthCM - #, ##2} & @@@ originals
...