Your Products have been synced, click here to refresh
So it appears you have a measured scan.
I'd align/origin to the center to the scan (presuming you have a means to consistently control rotation)
construct a generic plane and construct intersect points between the scan and the plane, then again between the plane and the scan.
construct a line between the two points.
I have the same scenario, and i do this (well i actually just take 2-hit lines on each face, not a scan) 3x to determine my hexagon-shaped bore with a max inscribed diameter specification.
ASSIGN/V1=MININDICES(ABS(DOT(SCN1.HIT[1..SCN1.NUMHITS].XYZ-PL1.XYZ,PL1.IJK))) ASSIGN/V2=UNIT(SCN1.HIT[V1[2]].XYZ-SCN1.HIT[V1[1]].XYZ) ASSIGN/V3=DOT(V2,PL1.IJK) ASSIGN/V4=SCN1.HIT[V1[1]].XYZ IF/V3<0 ASSIGN/V4=SCN1.HIT[V1[2]].XYZ END IF/ ASSIGN/V5=DOT(V4-PL1.XYZ,PL1.IJK)/V3 ASSIGN/V6=V4+V5*V2 F1 =GENERIC/POINT,DEPENDENT,CARTESIAN,$ NOM/XYZ,<V6.X,V6.Y,V6.Z>,$ MEAS/XYZ,<V6.X,V6.Y,V6.Z>,$ NOM/IJK,<0,0,1>,$ MEAS/IJK,<0,0,1>
So it appears you have a measured scan.
I'd align/origin to the center to the scan (presuming you have a means to consistently control rotation)
construct a generic plane and construct intersect points between the scan and the plane, then again between the plane and the scan.
construct a line between the two points.
I have the same scenario, and i do this (well i actually just take 2-hit lines on each face, not a scan) 3x to determine my hexagon-shaped bore with a max inscribed diameter specification.
ASSIGN/V1=MININDICES(ABS(DOT(SCN1.HIT[1..SCN1.NUMHITS].XYZ-PL1.XYZ,PL1.IJK))) ASSIGN/V2=UNIT(SCN1.HIT[V1[2]].XYZ-SCN1.HIT[V1[1]].XYZ) ASSIGN/V3=DOT(V2,PL1.IJK) ASSIGN/V4=SCN1.HIT[V1[1]].XYZ IF/V3<0 ASSIGN/V4=SCN1.HIT[V1[2]].XYZ END IF/ ASSIGN/V5=DOT(V4-PL1.XYZ,PL1.IJK)/V3 ASSIGN/V6=V4+V5*V2 F1 =GENERIC/POINT,DEPENDENT,CARTESIAN,$ NOM/XYZ,<V6.X,V6.Y,V6.Z>,$ MEAS/XYZ,<V6.X,V6.Y,V6.Z>,$ NOM/IJK,<0,0,1>,$ MEAS/IJK,<0,0,1>
© 2024 Hexagon AB and/or its subsidiaries. | Privacy Policy | Cloud Services Agreement |