PLtangentarc4P

by Tim C. Lueth, SG-Lib Toolbox: SolidGeometry 5.6 - PL/Point Lists
Introduced first in SolidGeometry 4.5, Creation date: 2019-04-19, Last change: 2025-09-14

returns center point and circle segment for the two tangents

Description

This function connects the endpoints of two point lists via a circle. The circle is selected so that the last two points of the two point lists are regarded as tangents of the circle. The contour always runs from the end points of the first list to the end points of the second list. To connect the two point lists, the last 4 points of both must be replaced by the new point list and the sequence of the second point list rotated.

All circles (!) for which the two straight lines form the tangents lie on the halving of the angle between the two straight lines. The two possible radii are determined by the respective perpendicular to the lines through the respective end point. The larger of the two radii can be used for both lines by extending the other line. For the smaller of the two radii, the other would have to be shortened.


See Also: crosscircline , rofcircbend , PLtangentcirc , PLtangentcirc3 , tangent2circ , cross2circ

Example Illustration

 missing image of PLtangentarc4P(PLA,PLB)

Syntax

[PLall,PLX,R]=PLtangentarc4P(PLA,PLB)

Input Parameter

PLA: Start Point and Endpoint of Line A [xs ys; xe ye]
PLB: Start Point and Endpoint of Line B [xs ys; xe ye]

Output Parameter

PLall: Radius of the 4 circles (1st is left of PLA(2,:)
PLX: center points of the 4 circles (1st is left of PLA(2,:)
R: cross points of B of 4 circles (1st is left of PLA(2,:)

Examples


PLX=PLradialEdges(PLrand(10,4)*100,30); SGfigure; PLplot(PLX,'b-');
SGfigure; PLplot(PLX,'b-'); PLY=PLtangentarc4P(PLX,flipud(PLX(1:2,:))); PLplot(PLY,'m-',2)
PLX=rand(4,2)*10; PLtangentarc4P(PLX(1:2,:),PLX(3:4,:)); fullview(1500) % ANY CASE




Copyright 2019-2025 Tim C. Lueth. All rights reserved. The code is the property of Tim C. Lueth and may not be redistributed or modified without explicit written permission. This software may be used free of charge for academic research and teaching purposes only. Commercial use, redistribution, modification, or reverse engineering is strictly prohibited. Access to source code is restricted and granted only under specific agreements. For licensing inquiries or commercial use, please contact: Tim C. Lueth

Last html export of this page out of FM database by TL: 2025-09-21