WM3_MC_GetMorphPoint. What the?!

Hi guys,

Can anyone tell me how WM3_MC_GetMorphPoint is supposed to work? I can't make any sense of the values it returns. In this example I take a simple box and throw a morpher on it. I copy the box and move one vert, vert number 6, and add it back in to channel 1 of the original box's morpher. Only one vert has moved. Here are the results:

vertIndex = for i = 1 to $.baseobject.getNumVertices() collect i
#(1, 2, 3, 4, 5, 6, 7, 8)

baseObj = for i in vertIndex collect ($.baseobject.GetVertex i)

#([-13.1451,-9.03128,0], [13.1451,-9.03128,0], [-13.1451,9.03128,0], [13.1451,9.03128,0], [-13.1451,-9.03128,32.6379], [13.1451,-9.03128,32.6379], [-13.1451,9.03128,32.6379], [13.1451,9.03128,32.6379])

morphObj = for i in vertIndex collect (WM3_MC_GetMorphPoint $.morpher 1 i)

#([13.1451,-9.03128,0], [-13.1451,9.03128,0], [13.1451,9.03128,0], [-13.1451,-9.03128,32.6379], [19.4905,6.01406,42.9083], [-13.1451,9.03128,32.6379], [13.1451,40.5414,32.6379], [0,0,0])

The arrays that are returned for "morphObj" make no sense to me. All the values are in a different order than "baseObj" and the last value for vert number 8 is listed as (0,0,0)! But there are no verts at the origin! Does anyone understand what values this command is actually returning?

Thanks for any help.

update: I've been reading through the forums and tried some things.

$.baseobject.GetVertex 1 returns the position of vert # 1.

WM3_MC_GetMorphPoint $.morpher 1 1 returns the position of vert # 2.

For either method, asking for the position of a vert beyond the number that the object actually contains, returns a value of {0,0,0,).

Does anyone know why it behaves this way? How could I make a vertIndex that would take this offset into account so the vertex values would correspond between the base and morph object correctly? I'm trying to figure out a way to compare the difference between a base object and it's morph targets.