this all makes sense yes. I am just not that is the most intuitive way to work. I would suggest adding functions for an external coordinate set and get transformation of RigidBodies as the internal coordinate system is an implementation detail. On May 25, 2009, at 4:30 PM, Daniel Russel wrote:
> As with any thing you want to use that is an offset from a value, > you need to keep track of the offset and subtract it when you set > the value. For ease with rigid bodies, compute the centroid in the > rigid body frame (or apply the inverse transform to map a point in > external coordinates) and then rotate the internal coordinates and > subtract them before setting when you want to set the translational > part of the coordinats later. Make sense? > > If you don't care what centroid you use, just use the rigid body > center (since it is currently a unwejghted centroid and will at most > change to a weighted centroid). > > > > On May 25, 2009, at 2:01 PM, Keren Lasker kerenl@salilab.org wrote: > >> I know Daniel .... >> This is how I solved it now - but I would like to change the >> centroid of the rigid body after an optimization stage since it is >> part of a bigger optimization protocol. >> On May 25, 2009, at 1:54 PM, Daniel Russel wrote: >> >>> Assuming you want to transform, say, the input pdb, then just get >>> the transformation immediately following creation and compose with >>> that (since the initial transform has not moved the object). >>> >>> >>> >>> On May 22, 2009, at 10:27 PM, Keren Lasker kerenl@salilab.org >>> wrote: >>> >>>> thanks - but what I want to do is different from RigidBodyMover >>>> as the transformation should be absolute and not relative. >>>> On May 22, 2009, at 9:40 PM, Dina Schneidman wrote: >>>> >>>>> it is rigid body internal coord. transformation. >>>>> you can move by composing it with your move. take a look at >>>>> RigidBodyMover.cpp propose_move func. >>>>> >>>>> On Fri, May 22, 2009 at 7:43 PM, Keren Lasker >>>>> kerenl@salilab.org wrote: >>>>>> >>>>>> Is the transformation given in set_transformation relative to a >>>>>> global >>>>>> internal coordinate system or to the rigid body internal >>>>>> coordinate system >>>>>> ? >>>>>> If the answer is that it is relative to the rigid body internal >>>>>> coordinate >>>>>> system -how can you move the rigid body to a specific position >>>>>> in space ? >>>>>> >>>>>> Thank you ! >>>>>> Keren. >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> IMP-dev mailing list >>>>>> IMP-dev@salilab.org >>>>>> https://salilab.org/mailman/listinfo/imp-dev >>>>>> >>>>> _______________________________________________ >>>>> IMP-dev mailing list >>>>> IMP-dev@salilab.org >>>>> https://salilab.org/mailman/listinfo/imp-dev >>>> >>>> _______________________________________________ >>>> IMP-dev mailing list >>>> IMP-dev@salilab.org >>>> https://salilab.org/mailman/listinfo/imp-dev >>> _______________________________________________ >>> IMP-dev mailing list >>> IMP-dev@salilab.org >>> https://salilab.org/mailman/listinfo/imp-dev >> >> _______________________________________________ >> IMP-dev mailing list >> IMP-dev@salilab.org >> https://salilab.org/mailman/listinfo/imp-dev > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev