A reliable alternative to create a sleeve cap

How to draw a reliable shoulder seam / a sleeve cap without using the “Length to Line” or “Intersect Arc and Line” tools

Issue using the “Length to Line” or “Intersect Arc and Line” tools

image

Let’s consider this situation, where the line A_A1 is horizontal, and the line A_A2 is vertical.

In this particular situation, if you want to create a point A3 10cm away from A2, on the A_A1 line, you could use the “Length to Line” or “Intersect Arc and Line” tools. Since there are 2 points that satisfy this condition, the generated point could be at the right side or at the left side of the A_A2 line. If the point was created on the wrong side, switching A and A1 in the tool properties would make the point switch side.

However, this solution is not very reliable, since the point A3 could decide to randomly switch side in some situations, if you try to move the draft block by moving the point A for instance:

A Github issue has been created. But before a method to tell the tool on which semi plane he has to find the intersection point is implemented (@Douglas do you think it’ll be an easy thing to do ?), here’s a reliable workaround:

Workaround

If you want the point A3 to be at a distance d of A2 (10cm in the above example), on the A_A1 line, you use the “Length and Angle” tool on A2, enter d as the length, and:

  • - asinD(Line_A_A2 / d) if you want the point to be on the right side
  • 180 + asinD(Line_A_A2 / d) if you want the point to be on the left side

Cheers !

2 Likes

It’s not “ramdomly” switching sides. It’s switching sides because one end of the line (segment) is no longer outside the arc, and since the the tool alway takes the first point going clockwise, it will find the only instersect point.

Screenshot 2024-11-09 180548 Screenshot 2024-11-09 180512

I saw your issue on Github, but while I agree we could add the option which intersect point we would want to take as in a case of my first pic, it doesn’t address the issue you want to solve if the line “segment” endpoints don’t lie within the arc. The Intersect Arc & Axis has the same issue, as the Axis point may also exist inside the arc, in which case there is only one intersect point.

Technically part of the issue lies in the fact the terminolgy that was used (not my doing) is not correct. What we think of as a line and axis is incorrect. In the app a line is really a line segment, and and axis is really a ray.

IMO I submit we should:

  1. Make the Point - Intersect Arc and Line have the option of selecting the 1st or 2nd intersect. Plus deal with the cases where the selected option is not found.

  2. Make the Point - Intersect Arc and Axis actually use an “axis”, that is extend in both directions and not just as a ray. That way there will ALWAYS be 2 intersects as long as the axis passes through the Arc. There should also be the option to choose which intersect point you want to use.

2 Likes

Just giving my ha’penny’s worth…

Can something not be modelled on this Point - Intersect Line & Axis tool? Where instead of using the angle, one uses the length to determine the position of the point on the line?

Yeah… it’s called the Shoulder tool (Length to Line). :wink:

Which BTW I’ve got the dialog and visuals fixed. I just need opinions on whether to add an option (my preference) to “constrain” the length or not. So a user can choose to have the length fall “inside” the selected baseline or contrain the length (as it currently exists) in which case it uses the second point of the line as the intersect point.

The tool would now draw the tool “length” line - instead of the base line which was stupid, and intersect point. Now the visual when clicked on would draw the neck point to point 1, the baseline point 1 to point 2 in a support color solidline, and a support color dashed from point 2 to to the intersect point. The variables created are the lenght of the tool line, the length of the baseline (point 1 to point 2), the length of point 2 to to the intersect point, and point 1 to the intersect point.

image

Just to illustrate what the tool currently does… and does not allow… is in the case of point A6 with a length of 7", and A1 as the 2nd point - the tool works as it should. In the case of A4, with the same length of 7", but with X as the 2nd point… the length falls within A to X so the length ends up A3 to X or 9.06". If we have the option to use A1 or X the tool correctly works with a length of 7", and does not create another point on top point 2. The option is a way to have your cake and eat it to. :slight_smile:

Screenshot 2024-11-10 021802

image

1 Like

In both case there is no end of the line (A_A1) outside the arc:

And since I’m moving A, I’m also moving A1 and A2 at the same time so nothing should change…

1 Like

Oh, I see… It means that in the case I describe, where there is no intersection point between the segment A_A1 and the arc, the tool should not have returned an intersection point. But it seems that the tool does return an intersection point in this particular case, and that the position of this point is quite random.

1 Like

That would be perfect indeed :wink:

1 Like

In the case I described, I used the point A1 only to define the base line in the Intersect Arc and Line tool. But in reality there’s no need for it.

This should be a better solution:

Draw a sleeve cap

1 Like

In my opinion, the line A3 to the shoulder tip should always reflect the chosen shoulder length, regardless of the length of the line that its supposed to be on. One can always fill in the line distance between the shoulder tip & the existing line, if one wants to.

Constraining it in anyway will give an incorrect shoulder length.

1 Like

Hey @Grace and @Onetchou

I looked at the Intersect Arc and Line tool… and I was able to reproduce the “flipping intersect point”… sort of. RT did some really strange stuff with this tool, and I’m still not quite sure why it does what it does.

First thing I noticed is that to reproduce the flippping when moving the basepoint, the arc has to be past the line segment… like:

image

This does not produce the flipping:

image

Secondly, and the part that really has me baffled, is if you move the basepoint far enough away from the origin point (0,0), the flipping stops???

The tool acts weird because it’s trying decide which intersect point to used based on position of the basline points and the way the tool is extending the segment.

Line segment A4 to A1: image

Line segment A4 to A1: image

Line segment A4 to A1: image

Again I think the solution would be to change the way the tool extends the segment in both directions, and add the option to select 1st or 2nd intesect point.

3 Likes

Hey @Grace and @Onetchou

I looked at the Intersect Arc and Line tool… and I was able to reproduce the “flipping intersect point”… sort of. RT did some really strange stuff with this tool, and I’m still not quite sure why it does what it does.

First thing I noticed is that to reproduce the flippping when moving the basepoint, the arc has to be past the line segment… like:

image

This does not produce the flipping:

image

Secondly, and the part that really has me baffled, is if you move the basepoint far enough away from the origin point (0,0), the flipping stops???

The tool acts weird because it’s trying decide which intersect point to used based on position of the segment points and the way the tool is extending the segment.

Line segment A4 to A: image

Line segment A4 to A1: image

Line segment A4 to A1: image

Again I think the solution would be to change the way the tool extends the segment in both directions, and add the option to select 1st or 2nd intesect point.

2 Likes

Just a thought…

Is there no way to set the angle (direction) to the angle of the 2 chosen points of the line? E.g. if one chooses A and then A4 as the line, then the angle would be 180° but if one chooses A4 and then A, the angle would be 0°. So the length would be from the axis point A2 but on the line at the given direction according to the choice of points on the line.

However, just getting the tool to use the measurements & direction would be great :grinning:

1 Like

I also think that this would be the best solution, and adding a “reverse” button or checkbox to switch the order of the 2 previously selected points would be the cherry on the cake :blush:

1 Like

Even better indeed, as it could be used to create things like sleeve caps without having to use the method I previously explained :smile:

1 Like

Don’t need a “reverse” button… just make it an option in the tool dialog to select which point to “Take” (like several of the other intersect tools) - First point or Second point. Need to maintain consistency in the tools.

image

BTW… the angle of the line has nothing to do with how the tool selects an intersect point.

I don’t want to get too far over the skies right now… but there’s some other things and options to consider.

  1. The name of the tool is incorrect… it should be Point - Intersect Circle and Line. The tool draws and uses a circle, not an arc.
 m_circle->setRect(pointRect(m_radius));
 DrawPoint(m_circle, static_cast<QPointF>(*third), m_secondrySupportColor, 
           widthMainLine, Qt::DashLine);
QPointF p1, p2;
qint32 res = VGObject::LineIntersectCircle(center, radius, QLineF(firstPoint, secondPoint), p1, p2);
  1. In order to make more sense, and simplify HOW the current tool is trying to find any intersect points, I’m thinking of making the current tool extend the segment selected in both directions… so it IS a LINE, and then use the LINE to find any intersects with the CIRCLE. Then create a new tool called Point - Intersect Circle and Segment… where the segment does NOT get extended, and can only find intersect points between the SEGMENT and CIRCLE.

  2. The visuals need fixing as they pretty much don’t exist. The circle doesn’t show. This is the current visual when selected:

image

This is how it looks after I fixed it:

image

  1. I also thought it might be handy instead of having the tool(s) based on the SinglePoint class, use the DoublePoint class (like the Dart and Intersect X-Y tools use) , and have a 3rd option of taking BOTH points. Of course this would invlove some conversion of older patterns using the current tool, but that will be the case anyway with adding the option of which point to take.

  2. For consideration… maybe move the “Circle” based tools to a “Circle” toolbox page?

3 Likes

Addendum:

  1. There could be another tool… Point - Intersect Curve and LIne which would double as a Point - Intersect Arc and LIne tool… completely different than what the current tool does. And if you want to know what I’m always dealing with when it comes to names - the under lying code is still named the “Point of Contact” tool. :roll_eyes:

To illustrate an Intersect Arc and Line tool that would not find an intersection, where the current one does… given Arc_A2_5 and Line_A_A1:

image

4 Likes

Thank you very much for fixing this for us, @Douglas

I really do appreciate all that you do. You’re a star.

1 Like

Do I correctly understand you to be proposing to move all of the tools using an imaginary (non-drafted) circle into their own category? At the moment I am only finding three of that kind, one in the Point toolbox & two in the Arc toolbox, which seems kinda small but would still have better fill than the line toolbox. However, with the couple or so new tools I understand you to be proposing as well it would be respectable.

:unicorn:

1 Like

I’m just worried that people won’t find it in the Arc toolbox.

1 Like

Yes.

That was my thought… I think it may help to seperate the difference between tools like Intersect Arc and Line and Intersect Circle and line. Plus there’s other circle centric tools we could add… such as um… A Circle with Radius - rather than having to make an Arc with Radius from 0-360 degs, and a Circle by 3 Points.

4 Likes