Awesome, thanks for the replies....
Wouldn't an interference operation be easier?
Yes, and this is similar to one of my sanity checks, I use volume property though. the geometry check is the hardest and most expensive, that's why it is the last check I do (if all else fails) to know with absolute certainty that the objects are different.
I've also looked at the bounding box / extents check but before now I couldn't rely on it as always seems to align to WCS xy plane (no good for objects rotated in 3d), I spose I could use that now as I can transform to WCS 0,0,0 and do the extents check there.
Do you know if there is like a "shrink wrap" (tight bounding box) example anywhere?
*I should point out, though, that PrincipalDirection only works directly for Pitch and Yaw if the 3dSolid extrusion is without any Boolean/Slice operations.
Thanks for the links, very interesting and not unlike the approach I had in mind.
My approach was to disassemble the solid using Brep and compare the faces for equality. Finding 2 identical parallel faces might indicate extrusion direction (assuming for now, no mods).
I'm still confused as to why there is no reference made to the WCS or a vector describing the extrusion direction, at creation time? surely this is an inexpensive property and would do away with guess game later.
The easiest way to handle transformations I have found is to add a World Space (1013) 3d point to the entity as xdata.
Thanks Mick, that's exactly what I've done, however I still need to deal with solids that have been created prior.
GRH