hexagon logo

Line Angle to Feature

Hello all!
I have a cylindrical part mounted on a rotary table.
The print calls out 4 different angles on 4 subsequent sets of notches (each set of 4 having a different angle).
To measure the angles, I create an alignment, rotating the axis by the angle (thus giving perfect vector hits of <0,0,1>Wink
I take one 7 point line per notch, and dimension the angle in relation to the cylinder.
I measure the cylinder in <0,1,0> as well as the line, <0,1,0>, however they are different from each other by the angle of the notch
####################################################################################################
- When I get the report, the angles are perfect. Too perfect. I have it dimension in decimals with a tolerance of ± .17°
I get a deviation of .0001 or less consistently, and this worries me. I want to make sure I'm outputting accurate data, and this seems too good.
The reason I have concern is the company I work for had purchased these programs from Hexagon (or something).
They would report in min/sec that the whole tolerance band was used on seemingly random notches in the same set. (1 at high, 1 at low, 1 at split, 1 in between, etc for the same set)
The IJK vectors for all of the hits were random (<0.999999675, .000347345, 0> or some such nonsense) so I more or less recreated it with perfect vectors and alignments.
The reports look much better with more consistancy.
$$$$$$$$$$$$$$$$$$$$$$$$
Is this the best way to do this? I always try to create perfect hit vectors because of the probe compensation error factor, and aligning directly to the angle to take the hits was the best way.
-------------
When I dimension the angle, it is the opposite of what I'm looking for (90-rule). If its a 22.70°, I'll get a dimension of 67.30° How would I reverse this?
I have tried to change the workplane and direction of the line itself, but then it just changes if its -22.70 or +22.70 away from 90°.
I have tried to construct a generic feature and flip the two vectors, which works, but is tedious and bloats the program. Could I assign variables or something so that it measures the line the same way (or a right way, or what have you) but flips the J,K vectors for the dimension? Or simply report the angle, but subtract 90 every time programmatically, which I would prefer so the reports say 22.70 instead of 67.30.
=======================
Hopefully this makes sense, I've been stuck on this for longer than I should be.
As always, any help is appreciated, and feel free to ask whatever questions necessary so we can come to the right answer.
Thanks!
  • Are you reporting 2D or 3D angle? Are you in the correct workplane?

    As for the other issue, if you're getting the complementary angle of what you want, rotate the alignment to one of the features then check the feature against either the X or Y axis.
  • I am reporting a 3D Y/Z line from the XPLUS workplane
    +1. I will try that. I have tried to dimension to the cylinder (from cylinder to line and vice versa) but still get the same thing.
    If I dimension the angle from ZPLUS, I get the 20.70 degrees I'm looking for, but the dimensions sometimes report as .0000 deviation, which is unsettling.
    Is this still accurate-ish?
  • can you throw the parts on a comparator? never hurts to get a sanity check using another method of measurement.
  • Make sure you enter the nominal when you create the dimension...and you will usually get what you want...and not the complimentary. Once the dim is created with the complimentary...you can't correct it, just delete and do over.

  • -------------
    When I dimension the angle, it is the opposite of what I'm looking for (90-rule). If its a 22.70°, I'll get a dimension of 67.30° How would I reverse this?
    I have tried to change the workplane and direction of the line itself, but then it just changes if its -22.70 or +22.70 away from 90°.
    I have tried to construct a generic feature and flip the two vectors, which works, but is tedious and bloats the program. Could I assign variables or something so that it measures the line the same way (or a right way, or what have you) but flips the J,K vectors for the dimension? Or simply report the angle, but subtract 90 every time programmatically, which I would prefer so the reports say 22.70 instead of 67.30.
    =======================

    like this? Be sure to create a generic "none" feature, that will enable use of the "Angle" value.
    DIM ANGLEDIM1= 2D ANGLE FROM LINE AJ-1 TO LINE LINE2 ,$
    GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH
    AX NOMINAL +TOL -TOL MEAS DEV OUTTOL
    A 73.50000 0.00039 0.00039 73.11986 -0.38014 0.37975 <---
    F1 =GENERIC/NONE,DEPENDENT,CARTESIAN,OUT,$
    NOM/XYZ,<0+0,0+0,0+0>,$
    MEAS/XYZ,<0+0,0+0,0+0>,$
    NOM/IJK,<0+0,0+0,1>,$
    MEAS/IJK,<0+0,0+0,1>,$
    RADIUS/0+0,0+0,$
    ANGLE/ANGLEDIM1.NOM+(-90),ANGLEDIM1.MEAS+(-90),$
    DISTANCE/1,1
    DIM AJ5= LOCATION OF PLANE F1 UNITS=IN ,$
    GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH HALF ANGLE=NO
    AX NOMINAL +TOL -TOL MEAS DEV OUTTOL
    A 16.50000 0.00039 0.00039 -16.88014 -33.38014 33.37975 <---
    END OF DIMENSION AJ5]
  • Looks like I'd have to play with the 90degree values in the generic feature, so it lines up. Measured value is spitting out negative, nominal is spitting out positive. you get the point tho. happy Friday!
  • It's difficult to picture from your description alone.

    If the angles are too good I'd double check my workplane (but by virtue of the fact the nominals are coming out right, albeit 90° out, you're probably good)

    By changing the line direction(s) and/or workplane and/or order you're selecting the features you should be able to get the correct nominal angle.
  • Thanks for the input! I have recently found that measuring an angle using 3D can skew results, and have started measuring 2D.

    I can't post a print, but maybe a crude drawing would suffice
    20.3°
    -----\------/----------\------/-------|
    ................................................. | ROTARY
    -----/------\----------/------\-------|
    20.3°

    The slashes '/','\' represent the notches.
    That is more or less how the print outlines them anyways, from the XPLUS workplane. (rotary table is mounted facing Y-)

    Currently I take 7 perfect-vector points (<0,0,1>Wink on each notch, determined by first aligning to the cylinder, then adding the relevant translations/rotations (20.3° XPLUS). It is verified these are good hits (not touching burrs, missing edges, etc)

    My biggest concern is, as always, if I am measuring using best practices.
    I would assume aligning and making vectors perfect would be best. Would it be better to just align to the cylinder and take <0,0,1> points? (Straight down instead of perp to the notch surface)

    Also I heard rumor of a registry key that is supposed to remove the "quadrant"-ness of the angle dimension; can someone point me in the right direction?

    Thanks

    --
    Also, when dimensioning the angle, I use the Angle Dimension toolbar, creating an angle from the notch line to the cylinder (I've also done reverse, obviously).
    Could this be causing some problems? Would I be better off creating an alignment line (inside/after [using?]) the cylinder alignment and dimensioning the angle between, possibly subtracting 90 from the result?
  • you should ALWAYS probe-hit perpendicular to the sampled surface. ANY probe hit "Non-Normal" to the surface (Not 90° perpendicular) will induce cosine error.
  • Thanks louisd! I figured as much, having read through some things on probe compensation and vector errors.

    Due to the information received from this forum, on this thread and others, I was able to come up with this:

    I create a variable for the angle of the notch
    I load the part with a leveling feature pointing up (a notch)
    I take points along the OD, the face of the part, and the leveling feature, making a full alignment (all in DCC, I write my programs to be able to skip manual alignment)
    I create a new alignment, recalling the main part alignment.
    I first level to the OD (redundant, basically), THEN set the Y origin to the start of the notch, THEN rotate the alignment by 20.3° about XPLUS.
    I'm able to verify on the CAD model that the translation and rotation are correct. (If I don't align this way, and instead rotate first, the Y origin goes by the rotation, e.g. it's WAY out.)
    I report the dimension in the current alignment from the notch to the cylinder. For whatever reason if I reverse (align to cylinder, angle from cyl to notch) it becomes 90-(the angle).

    Hopefully this helps, and if my process can be improved (or is totally fricken' wrong!) please, let us know!