Original Post
Hi, Ive drawn a little picture to help explain...
http://people.ucsc.edu/~asue/deform.jpg Suppose we have an initial box defined by 4 verts joined by 4 edges as in diagram A. It has a local X and Y axis as shown in diagram B, which are aligned with the horizontal and vertical edges. But suppose the verts have been displaced as in C, I can easily do some vector averaging to find the new Local X and Y (which are not orthoganal anymore, but are offset by a degree corresponding to the deformation amount). However, How do I perform this same operation for a complex arbitrary object, as in diagram D? In this situation, the edges are not parralel nor are they aligned with the initial Local X and Y. So I cant do simple vector math to find them in the event of a deformation/ rotation/ etc. Now before you tell me that I should already know the local X and Y beforehand. In my model the object as a whole is 'abstract', it only exists as a relationship between verts -simple particles with simple translational physics thus there is no directly controlled rotation or deformations, rather they are 'measured' context...(tho i suspect not directly relavant to the solution) This is all going to be part of an interesting physics engine i'm building... based upon the principals introduced in Jakobsen's Adv. Char. Physics. Except to be much more computationaly effecient, rather than resolve many individual constraints I derive Local X and Y axis of the object as a whole, then enforce a single angle constraint between them, and reposition the verts accordingly once i have the new reference frame. The structure then, is defined by my initial 'snapshot' with Jakobsen's constraints being used only to resolve torques and rotations, not to create the object. This allows me to have much more complex objects, but without the computational overhead of resolving all the geometric constraints to hold it together. (assuming I can generalize this for arbitrary meshs, not just simple box)
http://people.ucsc.edu/~asue/deform.jpg Suppose we have an initial box defined by 4 verts joined by 4 edges as in diagram A. It has a local X and Y axis as shown in diagram B, which are aligned with the horizontal and vertical edges. But suppose the verts have been displaced as in C, I can easily do some vector averaging to find the new Local X and Y (which are not orthoganal anymore, but are offset by a degree corresponding to the deformation amount). However, How do I perform this same operation for a complex arbitrary object, as in diagram D? In this situation, the edges are not parralel nor are they aligned with the initial Local X and Y. So I cant do simple vector math to find them in the event of a deformation/ rotation/ etc. Now before you tell me that I should already know the local X and Y beforehand. In my model the object as a whole is 'abstract', it only exists as a relationship between verts -simple particles with simple translational physics thus there is no directly controlled rotation or deformations, rather they are 'measured' context...(tho i suspect not directly relavant to the solution) This is all going to be part of an interesting physics engine i'm building... based upon the principals introduced in Jakobsen's Adv. Char. Physics. Except to be much more computationaly effecient, rather than resolve many individual constraints I derive Local X and Y axis of the object as a whole, then enforce a single angle constraint between them, and reposition the verts accordingly once i have the new reference frame. The structure then, is defined by my initial 'snapshot' with Jakobsen's constraints being used only to resolve torques and rotations, not to create the object. This allows me to have much more complex objects, but without the computational overhead of resolving all the geometric constraints to hold it together. (assuming I can generalize this for arbitrary meshs, not just simple box)
