[SciPy-User] Accumulation sum using indirect indexes
Alexander Kalinin
alec.kalinin@gmail....
Tue Jan 31 14:34:28 CST 2012
Hello!
I use SciPy in computer graphics applications. My task is to calculate
vertex normals by averaging faces normals. In other words I want to
accumulate vectors with the same ids. For example,
ids = numpy.array([0, 1, 1, 2])
n = numpy.array([ [0.1, 0.1, 0.1], [0.1, 0.1, 0.1], [0.1, 0.1, 0.1], [0.1,
0.1 0.1] ])
I need result:
nv = ([ [0.1, 0.1, 0.1], [0.2, 0.2, 0.2], [0.1, 0.1, 0.1]])
The most simple code:
nv[ids] += n
does not work, I know about this. For 1D arrays I use numpy.bincount(...)
function. But this function does not work for 2D arrays.
So, my question. What is the best way calculate accumulation sum for 2D
arrays using indirect indexes?
Sincerely,
Alexander
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/scipy-user/attachments/20120131/b70c891b/attachment.html
More information about the SciPy-User
mailing list