hexagon logo

Creating a point

As you can see from the attached marked up print, I need to measure the outside intersection point of two cylinders. Right now, I have it programmed to offset a line from the center of the cylinder to the outside of the cylinder by .5" which is the nominal radius of the tubing. The problem I run into with that method is that the dimensions apply after the part is powder coated, so the powder coating could make the radius of the part grow up to .575". So after the program is run, I go back and edit the constructed offset line by changing the offset distance to what the radius of the tube measures after the part is powder coated.

Is there an easier way to do this using code of some sort to offset the line by 1/2 of the diameter of the cylinder instead of using an exact number? That way if the cylinder grows the code will account for that in the program.

PS I am horrible at editing code, so if that is the best way please walk me through it step by step.

Greatly appreciated!

Attached Files
  • example code:

    [[code]]
    CIR1 =FEAT/CONTACT/CIRCLE,CARTESIAN,OUT,LEAST_SQR
    THEO/<0,0,0>,<0,1,0>,10,0
    ACTL/<0,0,0>,<0,1,0>,10,0
    TARG/<0,0,0>,<0,1,0>
    START ANG=0,END ANG=360
    ANGLE VEC=<0,0,1>
    DIRECTION=CCW
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=YES
    NUMHITS=10,DEPTH=0,PITCH=0
    SAMPLE HITS=3,SPACER=0.1181
    AVOIDANCE MOVE=BOTH,DISTANCE=0.7874
    FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
    SHOW HITS=NO
    PNT1 =FEAT/POINT,CARTESIAN,NO
    THEO/<-5,0,0>,<0,0,1>
    ACTL/<-5,0,0>,<0,0,1>
    CONSTR/POINT,OFFSET,,-5,0,0
    LN1 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<0,0,0>,<-1,0,0>
    ACTL/<0,0,0>,<-1,0,0>
    CONSTR/LINE,BF,3D,CIR1,PNT1,,
    OUTLIER_REMOVAL/OFF,3
    FILTER/OFF,WAVELENGTH=0
    PNT2 =FEAT/POINT,CARTESIAN,NO
    THEO/<5,0,0>,<-1,0,0>
    ACTL/<5,0,0>,<-1,0,0>
    CONSTR/POINT,PIERCE,CIR1,LN1
    CIR2 =FEAT/CONTACT/CIRCLE,CARTESIAN,OUT,LEAST_SQR
    THEO/<0,20,0>,<0,1,0>,10,0
    ACTL/<0,20,0>,<0,1,0>,10,0
    TARG/<0,20,0>,<0,1,0>
    START ANG=0,END ANG=360
    ANGLE VEC=<0,0,1>
    DIRECTION=CCW
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=YES
    NUMHITS=10,DEPTH=0,PITCH=0
    SAMPLE HITS=3,SPACER=0.1181
    AVOIDANCE MOVE=BOTH,DISTANCE=0.7874
    FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
    SHOW HITS=NO
    PNT3 =FEAT/POINT,CARTESIAN,NO
    THEO/<-5,20,0>,<0,1,0>
    ACTL/<-5,20,0>,<0,1,0>
    CONSTR/POINT,OFFSET,CIR2,-5,0,0
    LN2 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<0,20,0>,<-1,0,0>
    ACTL/<0,20,0>,<-1,0,0>
    CONSTR/LINE,BF,3D,CIR2,PNT3,,
    OUTLIER_REMOVAL/OFF,3
    FILTER/OFF,WAVELENGTH=0
    PNT4 =FEAT/POINT,CARTESIAN,NO
    THEO/<5,20,0>,<-1,0,0>
    ACTL/<5,20,0>,<-1,0,0>
    CONSTR/POINT,PIERCE,LN2,CIR2
    LN3 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<5,0,0>,<0,1,0>
    ACTL/<5,0,0>,<0,1,0>
    CONSTR/LINE,BF,3D,PNT2,PNT4,,
    OUTLIER_REMOVAL/OFF,3
    FILTER/OFF,WAVELENGTH=0
    ALIGN1 =ALIGNMENT/START,RECALL:STARTUP,LIST=YES
    ALIGNMENT/TRANS_OFFSET,YAXIS,30
    ALIGNMENT/ROTATE_OFFSET,45,ABOUT,ZPLUS
    ALIGNMENT/END
    CIR3 =FEAT/CONTACT/CIRCLE,CARTESIAN,OUT,LEAST_SQR
    THEO/<0,0,0>,<0,1,0>,10,0
    ACTL/<0,0,0>,<0,1,0>,10,0
    TARG/<0,0,0>,<0,1,0>
    START ANG=0,END ANG=360
    ANGLE VEC=<0,0,1>
    DIRECTION=CCW
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=YES
    NUMHITS=10,DEPTH=0,PITCH=0
    SAMPLE HITS=3,SPACER=0.1181
    AVOIDANCE MOVE=BOTH,DISTANCE=0.7874
    FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
    SHOW HITS=NO
    PNT5 =FEAT/POINT,CARTESIAN,NO
    THEO/<-5,0,0>,<0,0,1>
    ACTL/<-5,0,0>,<0,0,1>
    CONSTR/POINT,OFFSET,,-5,0,0
    LN4 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<0,0,0>,<-1,0,0>
    ACTL/<0,0,0>,<-1,0,0>
    CONSTR/LINE,BF,3D,CIR3,PNT5,,
    OUTLIER_REMOVAL/OFF,3
    FILTER/OFF,WAVELENGTH=0
    PNT6 =FEAT/POINT,CARTESIAN,NO
    THEO/<5,0,0>,<-1,0,0>
    ACTL/<5,0,0>,<-1,0,0>
    CONSTR/POINT,PIERCE,LN4,CIR3
    CIR4 =FEAT/CONTACT/CIRCLE,CARTESIAN,OUT,LEAST_SQR
    THEO/<0,20,0>,<0,1,0>,10,0
    ACTL/<0,20,0>,<0,1,0>,10,0
    TARG/<0,20,0>,<0,1,0>
    START ANG=0,END ANG=360
    ANGLE VEC=<0,0,1>
    DIRECTION=CCW
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=YES
    NUMHITS=10,DEPTH=0,PITCH=0
    SAMPLE HITS=3,SPACER=0.1181
    AVOIDANCE MOVE=BOTH,DISTANCE=0.7874
    FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
    SHOW HITS=NO
    PNT7 =FEAT/POINT,CARTESIAN,NO
    THEO/<-5,20,0>,<0,1,0>
    ACTL/<-5,20,0>,<0,1,0>
    CONSTR/POINT,OFFSET,CIR4,-5,0,0
    LN5 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<0,20,0>,<-1,0,0>
    ACTL/<0,20,0>,<-1,0,0>
    CONSTR/LINE,BF,3D,CIR4,PNT7,,
    OUTLIER_REMOVAL/OFF,3
    FILTER/OFF,WAVELENGTH=0
    PNT8 =FEAT/POINT,CARTESIAN,NO
    THEO/<5,20,0>,<-1,0,0>
    ACTL/<5,20,0>,<-1,0,0>
    CONSTR/POINT,PIERCE,LN5,CIR4
    LN6 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<5,0,0>,<0,1,0>
    ACTL/<5,0,0>,<0,1,0>
    CONSTR/LINE,BF,3D,PNT6,PNT8,,
    OUTLIER_REMOVAL/OFF,3
    FILTER/OFF,WAVELENGTH=0
    PNT9 =FEAT/POINT,CARTESIAN,NO
    THEO/<5,-2.0711,0>,<0,1,0>
    ACTL/<5,-2.0711,0>,<0,1,0>
    CONSTR/POINT,INT,LN6,LN3
    [[code]]
  • ...

    I forgot the format to enter code on this forum... anyone?
  • Right now, I have it programmed to offset a line from the center of the cylinder to the outside of the cylinder by .5" which is the nominal radius of the tubing.


    If your programm works like it, you can just add an assignment ASSIGN/V1=CYL1.R, then offset the line of V1 instead of 0.5''...
  • ...

    I forgot the format to enter code on this forum... anyone?


    your code here
    no spaces with the brackets
  • cir1 =feat/contact/circle,cartesian,out,least_sqr
    theo/<0,0,0>,<0,1,0>,10,0
    actl/<0,0,0>,<0,1,0>,10,0
    targ/<0,0,0>,<0,1,0>
    start ang=0,end ang=360
    angle vec=<0,0,1>
    direction=ccw
    show feature parameters=no
    show contact parameters=yes
    numhits=10,depth=0,pitch=0
    sample hits=3,spacer=0.1181
    avoidance move=both,distance=0.7874
    find hole=disabled,onerror=no,read pos=no
    show hits=no
    pnt1 =feat/point,cartesian,no
    theo/<-5,0,0>,<0,0,1>
    actl/<-5,0,0>,<0,0,1>
    constr/point,offset,,-5,0,0
    ln1 =feat/line,cartesian,unbounded,no
    theo/<0,0,0>,<-1,0,0>
    actl/<0,0,0>,<-1,0,0>
    constr/line,bf,3d,cir1,pnt1,,
    outlier_removal/off,3
    filter/off,wavelength=0
    pnt2 =feat/point,cartesian,no
    theo/<5,0,0>,<-1,0,0>
    actl/<5,0,0>,<-1,0,0>
    constr/point,pierce,cir1,ln1
    cir2 =feat/contact/circle,cartesian,out,least_sqr
    theo/<0,20,0>,<0,1,0>,10,0
    actl/<0,20,0>,<0,1,0>,10,0
    targ/<0,20,0>,<0,1,0>
    start ang=0,end ang=360
    angle vec=<0,0,1>
    direction=ccw
    show feature parameters=no
    show contact parameters=yes
    numhits=10,depth=0,pitch=0
    sample hits=3,spacer=0.1181
    avoidance move=both,distance=0.7874
    find hole=disabled,onerror=no,read pos=no
    show hits=no
    pnt3 =feat/point,cartesian,no
    theo/<-5,20,0>,<0,1,0>
    actl/<-5,20,0>,<0,1,0>
    constr/point,offset,cir2,-5,0,0
    ln2 =feat/line,cartesian,unbounded,no
    theo/<0,20,0>,<-1,0,0>
    actl/<0,20,0>,<-1,0,0>
    constr/line,bf,3d,cir2,pnt3,,
    outlier_removal/off,3
    filter/off,wavelength=0
    pnt4 =feat/point,cartesian,no
    theo/<5,20,0>,<-1,0,0>
    actl/<5,20,0>,<-1,0,0>
    constr/point,pierce,ln2,cir2
    ln3 =feat/line,cartesian,unbounded,no
    theo/<5,0,0>,<0,1,0>
    actl/<5,0,0>,<0,1,0>
    constr/line,bf,3d,pnt2,pnt4,,
    outlier_removal/off,3
    filter/off,wavelength=0
    align1 =alignment/start,recall:startup,list=yes
    alignment/trans_offset,yaxis,30
    alignment/rotate_offset,45,about,zplus
    alignment/end
    cir3 =feat/contact/circle,cartesian,out,least_sqr
    theo/<0,0,0>,<0,1,0>,10,0
    actl/<0,0,0>,<0,1,0>,10,0
    targ/<0,0,0>,<0,1,0>
    start ang=0,end ang=360
    angle vec=<0,0,1>
    direction=ccw
    show feature parameters=no
    show contact parameters=yes
    numhits=10,depth=0,pitch=0
    sample hits=3,spacer=0.1181
    avoidance move=both,distance=0.7874
    find hole=disabled,onerror=no,read pos=no
    show hits=no
    pnt5 =feat/point,cartesian,no
    theo/<-5,0,0>,<0,0,1>
    actl/<-5,0,0>,<0,0,1>
    constr/point,offset,,-5,0,0
    ln4 =feat/line,cartesian,unbounded,no
    theo/<0,0,0>,<-1,0,0>
    actl/<0,0,0>,<-1,0,0>
    constr/line,bf,3d,cir3,pnt5,,
    outlier_removal/off,3
    filter/off,wavelength=0
    pnt6 =feat/point,cartesian,no
    theo/<5,0,0>,<-1,0,0>
    actl/<5,0,0>,<-1,0,0>
    constr/point,pierce,ln4,cir3
    cir4 =feat/contact/circle,cartesian,out,least_sqr
    theo/<0,20,0>,<0,1,0>,10,0
    actl/<0,20,0>,<0,1,0>,10,0
    targ/<0,20,0>,<0,1,0>
    start ang=0,end ang=360
    angle vec=<0,0,1>
    direction=ccw
    show feature parameters=no
    show contact parameters=yes
    numhits=10,depth=0,pitch=0
    sample hits=3,spacer=0.1181
    avoidance move=both,distance=0.7874
    find hole=disabled,onerror=no,read pos=no
    show hits=no
    pnt7 =feat/point,cartesian,no
    theo/<-5,20,0>,<0,1,0>
    actl/<-5,20,0>,<0,1,0>
    constr/point,offset,cir4,-5,0,0
    ln5 =feat/line,cartesian,unbounded,no
    theo/<0,20,0>,<-1,0,0>
    actl/<0,20,0>,<-1,0,0>
    constr/line,bf,3d,cir4,pnt7,,
    outlier_removal/off,3
    filter/off,wavelength=0
    pnt8 =feat/point,cartesian,no
    theo/<5,20,0>,<-1,0,0>
    actl/<5,20,0>,<-1,0,0>
    constr/point,pierce,ln5,cir4
    ln6 =feat/line,cartesian,unbounded,no
    theo/<5,0,0>,<0,1,0>
    actl/<5,0,0>,<0,1,0>
    constr/line,bf,3d,pnt6,pnt8,,
    outlier_removal/off,3
    filter/off,wavelength=0
    pnt9 =feat/point,cartesian,no
    theo/<5,-2.0711,0>,<0,1,0>
    actl/<5,-2.0711,0>,<0,1,0>
    constr/point,int,ln6,ln3


    not my code just for clarity
  • What is the tolerance?

    To have actual readings on those surfaces you could:

    1) You could zero out on the tube on the ends and then take points on the zero equator using a 1,0,0 vector and construct a lines and intersect that way also.


    2) To be more creative you coule aligng thru each tube and take a series of points on the ends of the tube, find the highest points and create lines and intersect and tolerance.
  • This is literally the first time I have operated in command mode, I usually operate in summary mode. So for me looking at the above posts does not help me at all, although I truly appreciate you guys trying to help. Attached is my code, where in the code do I edit it and what do I edit it to?

    CYL1       =FEAT/CYLINDER,CARTESIAN,OUT,LEAST_SQR
                THEO/<-0.7361,7.7375,8.0555>,<0,-1,0>,1,5.584
                ACTL/<-0.7361,7.7375,8.0555>,<0,-1,0>,1,5.584
                MEAS/CYLINDER,9
                HIT/BASIC,NORMAL,<-1.1811,10.524,8.2835>,<-0.8899598,0,0.456039>,<-1.1811,10.524,8.2835>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.7416,10.4937,8.5554>,<-0.011033,0,0.9999391>,<-0.7416,10.4937,8.5554>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.31,10.5295,8.3171>,<0.8521661,0,0.5232713>,<-0.31,10.5295,8.3171>,USE THEO=YES
                HIT/BASIC,NORMAL,<-1.2153,7.4413,8.1983>,<-0.9583279,0,0.2856704>,<-1.2153,7.4413,8.1983>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.8372,7.3726,8.5451>,<-0.2021788,0,0.9793486>,<-0.8372,7.3726,8.5451>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.3178,7.3569,8.3293>,<0.8366638,0,0.5477168>,<-0.3178,7.3569,8.3293>,USE THEO=YES
                HIT/BASIC,NORMAL,<-1.1739,4.9663,8.297>,<-0.8755613,0,0.4831071>,<-1.1739,4.9663,8.297>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.7084,4.9455,8.5547>,<0.0554071,0,0.9984638>,<-0.7084,4.9455,8.5547>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.3403,4.9558,8.361>,<0.7915692,0,0.6110795>,<-0.3403,4.9558,8.361>,USE THEO=YES
                ENDMEAS/
    CYL2       =FEAT/CYLINDER,CARTESIAN,OUT,LEAST_SQR
                THEO/<3.5812,4.2473,8.0555>,<1,0,0>,1,6.9239
                ACTL/<3.5812,4.2473,8.0555>,<1,0,0>,1,6.9239
                MEAS/CYLINDER,9
                HIT/BASIC,NORMAL,<0.1193,3.8274,8.327>,<0,-0.8397228,0.5430154>,<0.1193,3.8274,8.327>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.2176,4.3281,8.5489>,<0,0.1616868,0.9868421>,<0.2176,4.3281,8.5489>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.1919,4.6483,8.3541>,<0,0.802079,0.5972179>,<0.1919,4.6483,8.3541>,USE THEO=YES
                HIT/BASIC,NORMAL,<3.6438,3.8189,8.3134>,<0,-0.8567188,0.5157838>,<3.6438,3.8189,8.3134>,USE THEO=YES
                HIT/BASIC,NORMAL,<3.6435,4.3112,8.5514>,<0,0.1278558,0.9917928>,<3.6435,4.3112,8.5514>,USE THEO=YES
                HIT/BASIC,NORMAL,<3.6194,4.6803,8.3055>,<0,0.8660251,0.5000005>,<3.6194,4.6803,8.3055>,USE THEO=YES
                HIT/BASIC,NORMAL,<6.9993,3.8531,8.3631>,<0,-0.7883187,0.6152671>,<6.9993,3.8531,8.3631>,USE THEO=YES
                HIT/BASIC,NORMAL,<7.0331,4.4295,8.5211>,<0,0.3645109,0.9311991>,<7.0331,4.4295,8.5211>,USE THEO=YES
                HIT/BASIC,NORMAL,<7.0431,4.6637,8.3322>,<0,0.8328943,0.5534321>,<7.0431,4.6637,8.3322>,USE THEO=YES
                ENDMEAS/
    CYL3       =FEAT/CYLINDER,CARTESIAN,IN,LEAST_SQR
                THEO/<0,5.877,0.0111>,<0,0,-1>,0.406,0.8635
                ACTL/<0,5.877,0.0111>,<0,0,-1>,0.406,0.8635
                MEAS/CYLINDER,12
                HIT/BASIC,NORMAL,<-0.1886,5.9521,0.3776>,<0.9291144,-0.3697923,0>,<-0.1886,5.9521,0.3776>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.1767,5.7771,0.3736>,<0.8705747,0.4920362,0>,<-0.1767,5.7771,0.3736>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.0464,5.6794,0.4033>,<-0.2283501,0.9735791,0>,<0.0464,5.6794,0.4033>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.1897,5.8048,0.3373>,<-0.9347062,0.3554213,0>,<0.1897,5.8048,0.3373>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.1546,6.0085,0.4428>,<-0.7616414,-0.6479988,0>,<0.1546,6.0085,0.4428>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.0173,6.0793,0.435>,<0.0853693,-0.9963494,0>,<-0.0173,6.0793,0.435>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.0134,6.0796,-0.4204>,<-0.0658408,-0.9978301,0>,<0.0134,6.0796,-0.4204>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.1639,5.9968,-0.4101>,<-0.8074171,-0.589981,0>,<0.1639,5.9968,-0.4101>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.1976,5.8303,-0.3617>,<-0.9731685,0.2300936,0>,<0.1976,5.8303,-0.3617>,USE THEO=YES
                HIT/BASIC,NORMAL,<0.1196,5.713,-0.3997>,<-0.5892573,0.8079454,0>,<0.1196,5.713,-0.3997>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.0375,5.6775,-0.4206>,<0.1845342,0.9828261,0>,<-0.0375,5.6775,-0.4206>,USE THEO=YES
                HIT/BASIC,NORMAL,<-0.1828,5.7888,-0.3428>,<0.9006852,0.4344724,0>,<-0.1828,5.7888,-0.3428>,USE THEO=YES
                ENDMEAS/
    LIN1       =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
                THEO/<0.8554,0,0>,<1,0,0>
                ACTL/<0.8554,0,0>,<1,0,0>
                CONSTR/LINE,CAST,CYL2,6.9239,DEPENDENT
    LIN2       =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
                THEO/<9.6619,0.626,0>,<0.7071068,0.7071068,0>
                ACTL/<9.6619,0.626,0>,<0.7071068,0.7071068,0>
                CONSTR/LINE,CAST,CYL4,16.1386,DEPENDENT
    PNT1       =FEAT/POINT,CARTESIAN,NO
                THEO/<0,0,0>,<0,-1,0>
                ACTL/<0,0,0>,<0,-1,0>
                CONSTR/POINT,INT,CYL1,CYL2
    PNT2       =FEAT/POINT,CARTESIAN,NO
                THEO/<9.0359,0,0>,<1,0,0>
                ACTL/<9.0359,0,0>,<1,0,0>
                CONSTR/POINT,INT,CYL2,CYL4
                COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
                Measure diameter of tube and enter the radius for LIN4 & LIN5, and then update the line and update dimensions G.
    PNT3       =FEAT/POINT,CARTESIAN,YES
                THEO/<21.9759,12.94,0>,<0.7071068,0.7071068,0>
                ACTL/<21.9759,12.94,0>,<0.7071068,0.7071068,0>
                CONSTR/POINT,PIERCE,CYL4,PLN3
    LIN5       =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
                THEO/<0,-0.5,0>,<1,0,0>
                ACTL/<0,-0.5,0>,<1,0,0>
                CONSTR/LINE,OFFSET
                SURFACE NORMAL = <0,0,1>,MULTI POINT
                ID = PNT1,PNT2,,
                OFFSET = -0.5,-0.5
    A3         =ALIGNMENT/START,RECALL:A2,LIST=YES
                ALIGNMENT/LEVEL,XPLUS,CYL4
                ALIGNMENT/ROTATE,YMINUS,TO,CYL2,ABOUT,XPLUS
                ALIGNMENT/TRANS,XAXIS,PNT2
                ALIGNMENT/TRANS,YAXIS,PNT2
                ALIGNMENT/TRANS,ZAXIS,PNT2
                ALIGNMENT/END
    LIN4       =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
                THEO/<18.2999,-0.5,0>,<-1,0,0>
                ACTL/<18.2999,-0.5,0>,<-1,0,0>
                CONSTR/LINE,OFFSET
                SURFACE NORMAL = <0,0,1>,MULTI POINT
                ID = PNT3,PNT2,,
                OFFSET = 0.5,0.5
                RECALL/ALIGNMENT,INTERNAL,A2
    PNT4       =FEAT/POINT,CARTESIAN,YES
                THEO/<9.243,-0.5,0>,<-0.7071068,-0.7071068,0>
                ACTL/<9.243,-0.5,0>,<-0.7071068,-0.7071068,0>
                CONSTR/POINT,INT,LIN4,LIN5
    PNT5       =FEAT/POINT,CARTESIAN,NO
                THEO/<22.683,12.94,0>,<-0.7071068,-0.7071068,0>
                ACTL/<22.683,12.94,0>,<-0.7071068,-0.7071068,0>
                CONSTR/POINT,PIERCE,PLN3,LIN4
    CIR1       =FEAT/CIRCLE,CARTESIAN,IN,LEAST_SQR
                THEO/<0,-0.4152,0>,<0,1,0>,0.406
                ACTL/<0,-0.4152,0>,<0,1,0>,0.406
                MEAS/CIRCLE,4,YPLUS
                HIT/BASIC,NORMAL,D=0,<-0.0554,-0.3784,0.1953>,<0.2728286,0,-0.9620627>,<-0.0554,-0.3784,0.1953>,USE THEO=YES
                HIT/BASIC,NORMAL,D=0,<0.1297,-0.4028,0.1561>,<-0.6390642,0,-0.7691534>,<0.1297,-0.4028,0.1561>,USE THEO=YES
                HIT/BASIC,NORMAL,D=0,<0.1566,-0.4366,-0.1291>,<-0.771526,0,0.6361978>,<0.1566,-0.4366,-0.1291>,USE THEO=YES
                HIT/BASIC,NORMAL,D=0,<-0.2017,-0.443,-0.023>,<0.9935587,0,0.1133187>,<-0.2017,-0.443,-0.023>,USE THEO=YES
                ENDMEAS/
    CYL5       =FEAT/CYLINDER,CARTESIAN,IN,LEAST_SQR
                THEO/<25.275,13.0625,0>,<0,1,0>,0.34,0.1999
                ACTL/<25.275,13.0625,0>,<0,1,0>,0.34,0.1999
                MEAS/CYLINDER,8
                HIT/BASIC,NORMAL,<25.2294,12.9899,-0.1638>,<0.2682381,0,0.9633526>,<25.2294,12.9899,-0.1638>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.4443,13.0114,-0.0155>,<-0.9958558,0,0.0909458>,<25.4443,13.0114,-0.0155>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.4021,12.9939,0.1129>,<-0.7476551,0,-0.6640872>,<25.4021,12.9939,0.1129>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.1118,12.9626,0.0475>,<0.9600935,0,-0.2796791>,<25.1118,12.9626,0.0475>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.2391,13.1536,-0.1662>,<0.2114272,0,0.9773937>,<25.2391,13.1536,-0.1662>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.438,13.1568,0.0483>,<-0.9587467,0,-0.2842619>,<25.438,13.1568,0.0483>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.3361,13.1543,0.1586>,<-0.3592813,0,-0.9332293>,<25.3361,13.1543,0.1586>,USE THEO=YES
                HIT/BASIC,NORMAL,<25.1107,13.1625,0.0438>,<0.9662524,0,-0.2575973>,<25.1107,13.1625,0.0438>,USE THEO=YES
                ENDMEAS/
  • You are in serious need of training which this forum is not designed for.

    If you can't translate from summary to command mode then you need more help than we can provide.
  • COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
    Measure diameter of tube and enter the radius for LIN4 & LIN5, and then update the line and update dimensions G.
    PNT3 =FEAT/POINT,CARTESIAN,YES
    THEO/<21.9759,12.94,0>,<0.7071068,0.7071068,0>
    ACTL/<21.9759,12.94,0>,<0.7071068,0.7071068,0>
    CONSTR/POINT,PIERCE,CYL4,PLN3
    LIN5 =FEAT/LINE,CARTESIAN,UNBOUNDED,NO
    THEO/<0,-0.5,0>,<1,0,0>
    ACTL/<0,-0.5,0>,<1,0,0>
    CONSTR/LINE,OFFSET
    SURFACE NORMAL = <0,0,1>,MULTI POINT
    ID = PNT1,PNT2,,
    OFFSET = -0.5,-0.5

    Instead of the comment, you should measure the diameter (cyl4 for example), then ASSIGN/V1=CYL4.R.
    In offset, write V1 instead of 0.5, i think that it should work like you want.
    Pwhitsa is right, you should learn a little more with Hexagon...
  • JEFMAN I really appreciate you taking the time to help me through this, it worked perfect! Like I said before I have never operated in command mode and at the class I went to they did not even attempt to teach us this. Now that I know some of the concepts associated with command mode I think I can work through most of the problems given my C++ background. It would really help if there was a spreadsheet, pdf, or word document detailing what command needs to be entered to get certain results.

    For instance CYLID.R=RADIUS OF THE CYLINDER or CYLID.D+.5=DIAMETER OF THE CYLINDER + 0.5 and so on and so on with all the commands, titles of commands, and what the result is.

    Is there a document out there like this or can I teach myself somehow?