checkfourbar3Poseattachpermutation
by Tim C. Lueth, SG-Lib Toolbox: SolidGeometry 5.6 - 4Bar/Linkages
Introduced first in SolidGeometry 4.5, Creation date: 2019-02-27, Last change: 2025-09-14
returns only subset of permutations of grid points to achieve a real fourbar linkage solution
Description
currently slow since not optimized function
This function can be used without calling center3Poseeffektorgrid before since it has almost the same input parameters
Adds the Fields
GPL - if not existing already
GAL - List of Solutions
A0L - List of crank base point wrt to GAL
B0L - List of swing base point wrt to GAL
%% CONVERT GAL TO FOURBARS A0 B0 A1 B1 GPLA GPLB
A0=PS.A0L(k,:); B0=PS.B0L(k,:);
GPLA=PS.GPL(PS.GAL(k,1),:); GPLB=PS.GPL(PS.GAL(k,2),:);
T=TofPose(PS); A1=PLtransT(GPLA,T(:,:,1)); B1=PLtransT(GPLB,T(:,:,1));
See Also: isincirclesegment
, center3Poseeffektorgrid
, Posefourbarplotcouplercurve
, checkfourbar2Poseattachpermutation
, checkfourbar1Poseattachpermutation
, Posetransui
Example Illustration
Syntax
[PS,C,R,P1,P2,P3,ei,mi]=checkfourbar3Poseattachpermutation(PS,[CPLE,GPL,m,exactCPL])
Input Parameter
PS: | | Pose; only PS.A and PS.B are used |
CPLE: | | optional CPLE or size of square |
GPL: | | Grid point list relative to origin or resolutin |
m: | | CPLE buffer buffer size or exact CPL |
exactCPL: | | false==outer boundary; true==exact CPLE; default is false |
Output Parameter
PS: | | [i j ellbow segment startangle endangle] |
C: | | Grid point list relative to origin size of GPL |
R: | | Radius of circle for each grid point size of GPL |
P1: | | Grid point list relative to pose 1 size of GPL |
P2: | | Grid point list relative to pose 2 size of GPL |
P3: | | Grid point list relative to pose 3 size of GPL |
ei: | | index of Grid points with solution |
Examples
PS=Posesample(7); PS.CPLE=PLsquare(6,3);
[GPL,ki]=GPLauxgridpointsCL(PS.CPLE,0.5,.5); GPL=GPL(ki==1,:);
checkfourbar3Poseattachpermutation(PS,'',GPL)
checkfourbar3Poseattachpermutation(Posesample(7))
checkfourbar3Poseattachpermutation(Posesample(7),4)
checkfourbar3Poseattachpermutation(Posesample(7),4,5)
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