32 if( line_a_setback == 0 && line_b_setback == 0 )
40 if( aSegA.
Length() < line_a_setback || aSegB.
Length() < line_b_setback )
53 if( aSegA.
A == aSegB.
A )
58 else if( aSegA.
A == aSegB.
B )
63 else if( aSegA.
B == aSegB.
A )
68 else if( aSegA.
B == aSegB.
B )
81 const VECTOR2I& a_end_pt = ( &aSegA.
A == a_pt ) ? aSegA.
B : aSegA.
A;
82 const VECTOR2I& b_end_pt = ( &aSegB.
A == b_pt ) ? aSegB.
B : aSegB.
A;
86 SEG setback_a( *a_pt, *b_pt +
VECTOR2I( a_end_pt - *a_pt ).Resize( line_a_setback ) );
87 SEG setback_b( *b_pt, *b_pt +
VECTOR2I( b_end_pt - *b_pt ).Resize( line_b_setback ) );
94 std::optional<SEG> new_a;
99 std::optional<SEG> new_b;
std::optional< CHAMFER_RESULT > ComputeChamferPoints(const SEG &aSegA, const SEG &aSegB, const CHAMFER_PARAMS &aChamferParams)
Compute the chamfer points for a given line pair and chamfer parameters.
int Length() const
Return the length (this).
Parameters that define a simple chamfer operation.
int m_chamfer_setback_b
Chamfer set-back distance along the second line.
int m_chamfer_setback_a
Chamfer set-back distance along the first line.