Careful that we don't move the wrong end of the arc.
Fixes https://gitlab.com/kicad/code/kicad/issues/7409
This commit is contained in:
parent
90b3d0c96d
commit
065a16b48c
|
@ -585,8 +585,8 @@ int PCB_POINT_EDITOR::OnSelectionChange( const TOOL_EVENT& aEvent )
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void PCB_POINT_EDITOR::editArcEndpointKeepTangent( PCB_SHAPE* aArc, VECTOR2I aCenter, VECTOR2I aStart,
|
void PCB_POINT_EDITOR::editArcEndpointKeepTangent( PCB_SHAPE* aArc, VECTOR2I aCenter,
|
||||||
VECTOR2I aMid, VECTOR2I aEnd,
|
VECTOR2I aStart, VECTOR2I aMid, VECTOR2I aEnd,
|
||||||
const VECTOR2I aCursor ) const
|
const VECTOR2I aCursor ) const
|
||||||
{
|
{
|
||||||
VECTOR2D startLine = aStart - aCenter;
|
VECTOR2D startLine = aStart - aCenter;
|
||||||
|
@ -608,7 +608,7 @@ void PCB_POINT_EDITOR::editArcEndpointKeepTangent( PCB_SHAPE* aArc, VECTOR2I aCe
|
||||||
p3 = &aMid;
|
p3 = &aMid;
|
||||||
movingStart = true;
|
movingStart = true;
|
||||||
}
|
}
|
||||||
else
|
else if( aEnd != aArc->GetArcEnd() )
|
||||||
{
|
{
|
||||||
aEnd = aCursor;
|
aEnd = aCursor;
|
||||||
p1 = &aStart;
|
p1 = &aStart;
|
||||||
|
@ -616,6 +616,10 @@ void PCB_POINT_EDITOR::editArcEndpointKeepTangent( PCB_SHAPE* aArc, VECTOR2I aCe
|
||||||
p3 = &aMid;
|
p3 = &aMid;
|
||||||
movingStart = false;
|
movingStart = false;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
VECTOR2D v1, v2, v3, v4;
|
VECTOR2D v1, v2, v3, v4;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue