hexagon logo

Linear Open Scan Frustrations

Linear Open Scan Frustrations:

I’ve been doing a lot of scans lately on tall skinny parts and the linear open scan tool has been very hit or miss on whether or not I can get what I want without a lot of futzing and troubleshooting. Here are my comments/critiques/constructive criticism. I’m using 2019R2. I don’t want this to sound like complaining, but more just a detailed look into things that aren’t working smoothly and could be slightly tweaked for a better user experience. Maybe newer versions fix these issues. I think I've mostly got everything figured out now and don't need help as much as I'm requesting that maybe things get updated in the future to smooth some of these rough patches.

Here’s my general work flow for what’s causing me grief.
  1. Open up the linear open scan dialog box
  2. Click Boundary Point 1 and Boundary Point D on the front of the part.
  3. Turn the part around and click Boundary Point 2 on the back of the part.
  4. Then I double click on the 1 in the Boundary Points table so that I can edit them manually to get them where I want them. Usually, I’ll just set all the X’s or Y’s to the same value to make the scan square with the world.

Here’s what I find frustrating:
  1. Unintuitive/Unpredictable Initial Vectors. A very small difference in the location of Boundary Point 2 can send the CutVec and PlaneVec vectors in wildly different directions. When you read the help file on “CutVec”, it says that “For Linear Open, the Cut Plane vector (CutVec) is the cross product of the Initial Touch vector (InitVec) and the line between the start and end point.” When you have all 3 Boundary Points roughly on the same side of the part, it works like you’d anticipate. When you have Boundary Point 2 on the backside of a part, this methodology doesn’t really work, and it comes down to either being really precise in your clicking or you have to manually edit the Initial Vectors. This is because the line between the two points is basically going through the part rather than along the surface of the part. As someone who clicks on things and seeing what happens as a means of learning how the software works, I think the methodology of clicking 1->D->2, led me to believe that the clicking of the D is what set the cut plane, like you start at 1, proceed in the direction of D and then stop when you get to 2. Looking back at things, the D isn’t really doing anything substantiative. It’s basically just saying go left or right from 1. I could also see a world where the cut plane is simply the plane that goes through 1, D, and 2. I think things would be much more intuitive if instead of vectors on the screen for planes, the software instead showed the actual planes with a curve on the surface where the cut plane intersects the CAD model surfaces.
  2. I can fix this by manually typing in values for the CutVec, but this doesn’t update the PlaneVec. So if the PlaneVec is still pointing in some weird direction, you still get unpredictable results. The planevec gets automatically updated, if click new spots for the 1 or 2 Boundary points. It should automatically update when you manually enter in values for the cut plane, or if you are changing where the D is.
  3. Selecting Surfaces. Assuming I don’t have “Only Selected” on, after I click 1,D, and 2. I only have the front and back of the part selected. Then I go to path definition, and click Generate and it draws point up the front of the part, but it doesn’t go up and over the top and it doesn’t go back down the back side. If I go back and select the surface on the top of the part and generate the points again, I now get points on the front, top and back but it skips the unselected surfaces. What is the point of having an “Only Selected” checkbox, and what does it fail to generate points on the backside if I don’t have the top surface selected? Doesn’t this just force me to select all the surfaces I want anyway? Why doesn’t it automatically select every surface between 1 and 2 that the scan goes through, and then I can unselect them if I want to, and if there’s a hole in a surface, skip it if the Jump holes is checked?
  4. Boundary Type Plane. On my parts , where I go up the front and end up on roughly the same spot, but on the back of the part, it’s very much a crap shoot on whether or not you need 1 or 2 Boundary Plane crossings. If the end point is slightly higher than the start point and you are going to cross the boundary plane almost immediately after starting the scan on the front of the part and you need 2 crossings or your scan will stop right after it starts. If the end point is slightly below the start point, the first time you cross the Boundary Plane is on the back side of the part, and you need 1 crossing. If you have 2 there it will end up on wrapping around the part a second time. Murphy’s law states that no matter what I pick it will be wrong and the end point will be nowhere near where it is supposed to be. Somehow the software should be able to figure out how to stop relatively near where the number 2 point is. I think a relatively safe option would be to not start looking for the Boundary Plane until we’re 50%/75% done with scan by default, and some sort of option for the weird edge cases where people are needing it to stop nowhere near where they predicted it to stop.

Thanks for the patience on this massive wall of text.

Below are pictures of a mock part I made. The first is for note 1 above, and the second is for note 3.



Parents
  • I can't believe I read the whole thing. I have so much time invested now that I kinda hafta respond.

    I agree with your first and second frustration about getting an ideal cut plane when scanning half way around a part. It would be ideal if the software used all 3 inputted points (including the direction point) to establish the vector of the cut plane, but it doesn't seem to work that way. Most of the time I get past that by selecting my three points, then open the cut plane dialog and click the 'workplane' button. That will shift the end point to be at the same depth (relative to the current workpalne) as the start point, and it will make the cut plane be along the current workplane. Otherwise, I manually adjust the numbers as needed.

    About frustration #3, The "only selected" option only applies to finding nominals from the model during execution. It forces the software to look for nominals only on the selected surfaces. It can be useful when scanning in small grooves or thin edges. To program the path itself, you need to select all the relevant surfaces to get the full path. This is assuming you are using a defined path. There is also the option to find the path on the fly, good for when you don't have a model or you are reverse engineering something.

    As for frustration #4, I suggest you use a spherical boundary condition, as NinjaBadger already brought up. Then you don't need to worry about how many crossings apply or what vector the plane is using.
Reply
  • I can't believe I read the whole thing. I have so much time invested now that I kinda hafta respond.

    I agree with your first and second frustration about getting an ideal cut plane when scanning half way around a part. It would be ideal if the software used all 3 inputted points (including the direction point) to establish the vector of the cut plane, but it doesn't seem to work that way. Most of the time I get past that by selecting my three points, then open the cut plane dialog and click the 'workplane' button. That will shift the end point to be at the same depth (relative to the current workpalne) as the start point, and it will make the cut plane be along the current workplane. Otherwise, I manually adjust the numbers as needed.

    About frustration #3, The "only selected" option only applies to finding nominals from the model during execution. It forces the software to look for nominals only on the selected surfaces. It can be useful when scanning in small grooves or thin edges. To program the path itself, you need to select all the relevant surfaces to get the full path. This is assuming you are using a defined path. There is also the option to find the path on the fly, good for when you don't have a model or you are reverse engineering something.

    As for frustration #4, I suggest you use a spherical boundary condition, as NinjaBadger already brought up. Then you don't need to worry about how many crossings apply or what vector the plane is using.
Children
No Data