Construct a plane using hits of another plane

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Construct a plane using hits of another plane

    Let's say I took 8 hits for Plane A, now I want to construct Plane B using hits #1, #3 and #5 of Plane A.
    Any help you can give would be greatly appreciated!


  • #2
    In order to just be able to pick and choose points like that you're gonna have to make that first plane into individual points somehow.

    If you're taking them manually, you can just take 8 separate points and then construct each plane out of whichever points you want.
    If you're using an autoplane you can use the "to points" option which will take all the points as individual features and then construct the plane for you.

    Edit: if you were just asking if its possible to grab individual points from a plane feature, not that I know of

    Comment


    • #3
      I would have done it differently if I have known what this stupid drawing want. The first plane is at the beginning of the program, and the plane I want to construct is after program line #4,000+

      Comment


      • ajlee7
        ajlee7 commented
        Editing a comment
        That's... very unfortunate. As inefficient as it is, I would try to squeeze a second measurement of the surface into the program somewhere just to avoid having to go back and make all those changes.

      • DungT
        DungT commented
        Editing a comment
        It's for reporting purpose not a big deal, tolerance is ±.010". I think I can do away with min/max or PLN_A.HIT[2].Y for ex

    • #4
      Could construct a plane and reference the points using Feature.hit[1], feature.hit[3], etc. Could also use the to points script to generate individual cast points of all points of a feature.

      Comment


      • #5
        I've tried that and I got syntax error

        Comment


        • #6
          Try....
          create plnb from any three features.

          If plane is in xy-plane
          edit plnb by changing features to
          plna.hit[1].z,
          plna.hit[3].z,
          plna.hit[5].z



          B&S CHAMELEON/PCDMIS CAD++ V2011

          There are no bugs, only "UNDOCUMENTED ENHANCEMENTS!"

          sigpic

          Comment


          • #7
            Originally posted by dph51 View Post
            Try....
            create plnb from any three features.

            If plane is in xy-plane
            edit plnb by changing features to
            plna.hit[1].z,
            plna.hit[3].z,
            plna.hit[5].z

            That's exactly what I did and construction error pops up "...combination of input feature not supported." it erases the codes as soon as I press ok to close the popup.
            V2019R2

            Comment


            • tking
              tking commented
              Editing a comment
              Drop the .z to plna.hit[1] etc.

              It works. Construct a plane with any three features then replace the features (in the edit window) with the points you want with the syntax shown.

            • DungT
              DungT commented
              Editing a comment
              Got it. Thank you, Sir!

          • #8
            OK, I got it.

            First thing is to change REV to BFRE from plane construction command
            Then type in PLNB.HIT[1] without axis name
            Use the commas provided in the command to separate the hits

            Thank you all for your help
            Last edited by DungT; 03-03-2020, 06:26 PM.

            Comment


            • #9
              Code:
              MPNT1 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[1].TX,LM_PLN.HIT[1].TY,LM_PLN.HIT[1].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[1].X,LM_PLN.HIT[1].Y,LM_PLN.HIT[1].Z>,$
              NOM/IJK,<LM_PLN.HIT[1].TI,LM_PLN.HIT[1].TJ,LM_PLN.HIT[1].TK>,$
              MEAS/IJK,<LM_PLN.HIT[1].I,LM_PLN.HIT[1].J,LM_PLN.HIT[1].K>
              MPNT2 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[2].TX,LM_PLN.HIT[2].TY,LM_PLN.HIT[2].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[2].X,LM_PLN.HIT[2].Y,LM_PLN.HIT[2].Z>,$
              NOM/IJK,<LM_PLN.HIT[2].TI,LM_PLN.HIT[2].TJ,LM_PLN.HIT[2].TK>,$
              MEAS/IJK,<LM_PLN.HIT[2].I,LM_PLN.HIT[2].J,LM_PLN.HIT[2].K>
              MPNT3 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[7].TX,LM_PLN.HIT[7].TY,LM_PLN.HIT[7].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[7].X,LM_PLN.HIT[7].Y,LM_PLN.HIT[7].Z>,$
              NOM/IJK,<LM_PLN.HIT[7].TI,LM_PLN.HIT[7].TJ,LM_PLN.HIT[7].TK>,$
              MEAS/IJK,<LM_PLN.HIT[7].I,LM_PLN.HIT[7].J,LM_PLN.HIT[7].K>
              MPNT4 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[8].TX,LM_PLN.HIT[8].TY,LM_PLN.HIT[8].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[8].X,LM_PLN.HIT[8].Y,LM_PLN.HIT[8].Z>,$
              NOM/IJK,<LM_PLN.HIT[8].TI,LM_PLN.HIT[8].TJ,LM_PLN.HIT[8].TK>,$
              MEAS/IJK,<LM_PLN.HIT[8].I,LM_PLN.HIT[8].J,LM_PLN.HIT[8].K>
              M_CONSTR_PLN=FEAT/PLANE,CARTESIAN,OUTLINE,NO
              THEO/<-22.75,25.8125,0>,<0,0,1>
              ACTL/<-18.49817,-23.49811,0.00039>,<-0.0004582,-0.0001294,0.9999999>
              CONSTR/PLANE,BF,MPNT1,MPNT2,MPNT3,MPNT4,,
              OUTLIER_REMOVAL/OFF,3
              FILTER/OFF,WAVELENGTH=0
              LPNT1 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[3].TX,LM_PLN.HIT[3].TY,LM_PLN.HIT[3].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[3].X,LM_PLN.HIT[3].Y,LM_PLN.HIT[3].Z>,$
              NOM/IJK,<LM_PLN.HIT[3].TI,LM_PLN.HIT[3].TJ,LM_PLN.HIT[3].TK>,$
              MEAS/IJK,<LM_PLN.HIT[3].I,LM_PLN.HIT[3].J,LM_PLN.HIT[3].K>
              LPNT2 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[4].TX,LM_PLN.HIT[4].TY,LM_PLN.HIT[4].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[4].X,LM_PLN.HIT[4].Y,LM_PLN.HIT[4].Z>,$
              NOM/IJK,<LM_PLN.HIT[4].TI,LM_PLN.HIT[4].TJ,LM_PLN.HIT[4].TK>,$
              MEAS/IJK,<LM_PLN.HIT[4].I,LM_PLN.HIT[4].J,LM_PLN.HIT[4].K>
              CLEARP/ZPLUS,4.99936,ZPLUS,-0.00064,OFF
              LPNT3 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[5].TX,LM_PLN.HIT[5].TY,LM_PLN.HIT[5].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[5].X,LM_PLN.HIT[5].Y,LM_PLN.HIT[5].Z>,$
              NOM/IJK,<LM_PLN.HIT[5].TI,LM_PLN.HIT[5].TJ,LM_PLN.HIT[5].TK>,$
              MEAS/IJK,<LM_PLN.HIT[5].I,LM_PLN.HIT[5].J,LM_PLN.HIT[5].K>
              LPNT4 =GENERIC/POINT,DEPENDENT,CARTESIAN,$
              NOM/XYZ,<LM_PLN.HIT[6].TX,LM_PLN.HIT[6].TY,LM_PLN.HIT[6].TZ>,$
              MEAS/XYZ,<LM_PLN.HIT[6].X,LM_PLN.HIT[6].Y,LM_PLN.HIT[6].Z>,$
              NOM/IJK,<LM_PLN.HIT[6].TI,LM_PLN.HIT[6].TJ,LM_PLN.HIT[6].TK>,$
              MEAS/IJK,<LM_PLN.HIT[6].I,LM_PLN.HIT[6].J,LM_PLN.HIT[6].K>
              L_CONSTR_PLN=FEAT/PLANE,CARTESIAN,OUTLINE,NO
              THEO/<-17.5,-21.875,0>,<0,0,1>
              ACTL/<-18.49352,23.50303,-0.00028>,<0.0004568,-0.0001616,0.9999999>
              CONSTR/PLANE,BF,LPNT1,LPNT2,LPNT3,LPNT4,,
              OUTLIER_REMOVAL/OFF,3
              FILTER/OFF,WAVELENGTH=0
              Use above with a co-planar primary datum plane generated from auto plane with 8 points and then each side is used independently
              extracted points each plane is primary for a different FCF callout and plane only cares about this side of coplanar zone
              Works well
              HTH
              Last edited by Rich P; 03-03-2020, 04:55 PM.

              Comment


              • DungT
                DungT commented
                Editing a comment
                That works too, the code a little bit too long.

              • Rich P
                Rich P commented
                Editing a comment
                agree looks tedious that way but copy & paste edit hit number in brackets

            • #10
              Just thought I'd let everyone know that you can do this from the construct feature dialogue - I think it was introduced in 2019. If you choose constructed plane and then select the plane you want to grab hits from, you should see all of that plane's individual hits displayed in the graphics window. You can then click on the hits you want and create your new plane. The code in the edit window will look something like this...
              Code:
              PLN5 =FEAT/PLANE,CARTESIAN,TRIANGLE,NO,LEAST_SQR
              THEO/<154.174,59.176,0>,<0,0,1>
              ACTL/<154.175,59.175,0.135>,<-0.003549,0.0028327,0.9999897>
              CONSTR/PLANE,BF,PLN1.HIT[29..29],PLN1.HIT[20..20],PLN1.HIT[3..3],PLN1.HIT[14..14],PLN1.HIT[27..27],,
              OUTLIER_REMOVAL/OFF,3
              FILTER/OFF,WAVELENGTH=0
              Neil Challinor
              PC-DMIS Product Owner

              T: +44 870 446 2667 (Hexagon UK office)
              E: [email protected]

              Comment


              • tking
                tking commented
                Editing a comment
                I had some time with 2018 R1, this was available there also.

              • Rich P
                Rich P commented
                Editing a comment
                Thanks Neil

              • LostL
                LostL commented
                Editing a comment
                Annoying when you get the hit of a point instead of the point.

            • #11
              Originally posted by neil.challinor View Post
              Just thought I'd let everyone know that you can do this from the construct feature dialogue - I think it was introduced in 2019. If you choose constructed plane and then select the plane you want to grab hits from, you should see all of that plane's individual hits displayed in the graphics window. You can then click on the hits you want and create your new plane. The code in the edit window will look something like this...
              Code:
              PLN5 =FEAT/PLANE,CARTESIAN,TRIANGLE,NO,LEAST_SQR
              THEO/<154.174,59.176,0>,<0,0,1>
              ACTL/<154.175,59.175,0.135>,<-0.003549,0.0028327,0.9999897>
              CONSTR/PLANE,BF,PLN1.HIT[29..29],PLN1.HIT[20..20],PLN1.HIT[3..3],PLN1.HIT[14..14],PLN1.HIT[27..27],,
              OUTLIER_REMOVAL/OFF,3
              FILTER/OFF,WAVELENGTH=0
              Good to know. Thank you, Sir!

              Comment

              widgetinstance 190 (Related Topics) skipped due to lack of content & hide_module_if_empty option.
              Working...
              X