How to retrieve translation information

unhandled

#1

I’ve inserted a txt file (point cloud data). It’s been moved and rotated. Where can I find the translation information (x, y, z, and rotation) ? Thank you.


(Pascal Golay) #2

Hello - the only way that I can think of is to insert the cloud as a block - then you can get at the transforrm info from a script.

-Pascal


#3

Well it’s already moved. I could possibly reinsert a copy and move it to match. Then get the info as you’ve suggested. But with what script?

I’m using 5.0. We’ve just updated to 6.0, but I haven’t installed it and don’t have time tonight. I need this ready asap.


(Keyu Gan) #4

I think it is InstanceReferenceGeometry.Xform. But you need to decompose it manually. It is the code in my component to retrieve the base point of a block.

if(blk is InstanceReferenceGeometry irg)
{
    var trans = irg.Xform;
    baseptr = new Point3d(trans.M03, trans.M13, trans.M23);
}

If you get a InstanceObject instead, you may use InstanceObject.InstanceXform and InsertionPoint.

I would recommend to use a convex hull of the point cloud to match rotation and translation, as it is usually more recognizable.