Scan pierces a plane... Possible?

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Scan pierces a plane... Possible?

    I want to generate a point exactly where a scan pierces a plane. Is this possible? I tried using constructed point (projection), but it doesnt seem to put the point on the actual scans hit path.

    Thanks.

  • #2
    You might need to construct your scan into some sort of feature that has an intersection point with the plane.

    Otherwise, the scan is just a collection of points with no real relationship to one another, and so doesn't have a point of intersection.

    What about finding the theoretical values of the point you want to hit, and creating a vector point there?
    "This is my word... and as such is beyond contestation."

    Comment


    • #3
      Originally posted by VinniUSMC
      You might need to construct your scan into some sort of feature that has an intersection point with the plane.

      Otherwise, the scan is just a collection of points with no real relationship to one another, and so doesn't have a point of intersection.

      What about finding the theoretical values of the point you want to hit, and creating a vector point there?
      Thanks for the reply. It's quite complex geometry which I suspect is subject to errors in the vector if it's out of tolerance.

      My plan was to use a relearn scan then input a theoretical plane at the exact dimension in one axis and then report the other axis from the intersection. ( The reported dimension is much closer to normal to the surface than the other axis )

      Comment


      • #4
        Then, you could look at the points immediately surrounding your theoretical plane and create a line out of them to intersect the plane. If you do scan "to points" then the points (theoretically) won't differ run to run.
        "This is my word... and as such is beyond contestation."

        Comment


        • #5
          Maybe something like this..........

          Ex.

          SCN1

          PLN1 (x,y,z) <i,j,k> (8.02,0,0) <1,0,0>


          Code:
          ASSIGN/COUNT = 0
          DO/
          ASSIGN/COUNT = COUNT +1
          ASSIGN/V1 = 8.02 - SCN1.HIT[COUNT].X
          ASSIGN/V2 = COUNT
          ASSIGN/V3 = COUNT -1
          UNTIL/V1 <0
          
          ASSIGN/V4 = "PNT"+V2
          ASSIGN/V5= "PNT"+V3
          Then create a line from any 2 points.

          Next, edit the line by replacing the 2 points with V4 and V5

          Pierce plane with line.

          B&S CHAMELEON/PCDMIS CAD++ V2011

          There are no bugs, only "UNDOCUMENTED ENHANCEMENTS!"

          sigpic

          Comment


          • #6
            Another way could be to level and origin on the plane (Z for ex), then create a array with MININDICES(ABS(SCN1.HIT[1..SCN1.NUMHITS].Z;2) and try to construct points.
            I'm not at the cmm to check...

            Comment


            • #7
              Originally posted by VinniUSMC
              You might need to construct your scan into some sort of feature that has an intersection point with the plane.
              Ive had good results constructing a curve through linear open or section scans. This creates a spline that can be intersected with a plane. Cant recall if it a pierce or an intersect, but I know if you leave it on auto pc-dmis picks the right one.

              Comment


              • #8
                Originally posted by DJAMS

                Ive had good results constructing a curve through linear open or section scans. This creates a spline that can be intersected with a plane. Cant recall if it a pierce or an intersect, but I know if you leave it on auto pc-dmis picks the right one.
                +1 ! I do it sometimes, I think it's with intersect point... But I'm not sure, as Djams !!!!!!

                Comment


                • #9
                  I just tested, and a Constructed Curve can intersect a plane. But as it is a spline curve, it can intersect the plane in many points (more than two) and you can only get the 'leftmost' and 'rightmost', depending on the order of the points in the curve. Example:

                  Code:
                  CRV1       =FEAT/CURVE,DEPENDENT,7,5,TOLERANCE,0.01
                              THEO/83.949
                              MEAS/81.796
                              CONSTR/CURVE,PNT2,PNT3,PNT4,PNT5,PNT6,,
                  PNT7       =FEAT/POINT,CARTESIAN,NO
                              THEO/<156.852,30.597,0>,<0,0,1>
                              ACTL/<172.616,30.109,0>,<0,0,1>
                              CONSTR/POINT,INT,CRV1,PLN1
                  CRV2       =FEAT/CURVE,DEPENDENT,7,5,TOLERANCE,0.01
                              THEO/83.945
                              MEAS/81.796
                              CONSTR/CURVE,PNT6,PNT5,PNT4,PNT3,PNT2,,
                  PNT8       =FEAT/POINT,CARTESIAN,NO
                              THEO/<171.682,30.157,0>,<0,0,1>
                              ACTL/<231.737,30.165,0>,<0,0,1>
                              CONSTR/POINT,INT,CRV2,PLN1
                  Int_Curve_plane.PNG
                  AndersI
                  SW support - Hexagon Metrology Nordic AB

                  Comment


                  • #10
                    Perfect gents. Changing the scan to a curve then intersecting that has worked perfectly. Didn't even think of that!
                    Thank you.

                    Comment


                    • DJAMS
                      DJAMS commented
                      Editing a comment
                      Great! I looked at that constructed curve for many years wondering what I'd ever use it for. To date, this is the only application I've found.

                  Related Topics

                  Collapse

                  Working...
                  X
                  😀
                  🥰
                  🤢
                  😎
                  😡
                  👍
                  👎