Add(MainForm,5799316,483,399)
{
Width=1351
Height=764
WindowsState=2
link(onCreate,2171490:doEvent1,[])
}
Add(Plotter,12892324,1148,182)
{
Left=-5
Top=-10
Width=1330
Height=660
Name="123"
GridX=20
GridY=20
MinH=-2
MaxH=2
MinW=-5
MaxW=5
MouseControl=1
Point(doMaxH)
Point(doMinH)
Point(onMouseWheel)
Point(doMaxW)
link(onMouseWheel,98667:doCompare,[(1192,188)(1192,268)(968,268)(968,349)])
}
Add(PlotAxis,13638926,1148,98)
{
Grapher="123"
Color=0
Style=2
}
Add(PlotAxis,8991717,1085,98)
{
Grapher="123"
Color=0
Style=2
Angle=90
}
Add(PlotPoints,16350363,616,357)
{
Grapher="123"
Size=3
Name="1"
Shape=2
link(ValueY,13094846:Var1,[(622,313)])
link(ValueX,3599729:Var2,[(629,320)(643,320)])
}
Add(Memory,12132263,595,189)
{
Default=String(-2)
}
Add(Memory,11325255,665,189)
{
Default=String(-1)
}
Add(PointHint,13195512,546,189)
{
Info=#2:X1|
Width=29
Height=25
}
Add(PointHint,5324795,714,189)
{
Info=#2:Y1|
Width=29
Height=25
}
Add(Hub,8319343,1022,217)
{
link(onEvent1,11726241:doOperation,[(1050,223)(1050,195)])
link(onEvent2,13914399:doOperation,[(1050,230)(1050,251)])
}
Add(Math,13914399,1064,245)
{
Op2=-2
link(onResult,12892324:doMinH,[(1122,251)(1122,202)])
}
Add(Math,11726241,1064,189)
{
Op2=2
link(onResult,12892324:doMaxH,[])
}
Add(If_else,98667,980,343)
{
Op2=String(120)
link(onTrue,4764878:doOperation,[(1038,349)(1038,356)])
link(onFalse,12905359:doOperation,[(1038,356)(1038,454)])
}
Add(Memory,14752883,1141,378)
{
Default=String(0)
link(onData,8352143:doCompare,[(1185,384)(1185,300)(891,300)(891,216)])
}
Add(Math,12905359,1064,448)
{
OpType=1
Op2=0.5
link(onResult,10488796:doEvent2,[(1118,454)(1118,461)])
link(Op1,10495885:Var1,[(1070,390)])
}
Add(Math,4764878,1064,350)
{
Op2=0.5
link(onResult,10488796:doEvent1,[(1118,356)(1118,454)])
link(Op1,10495885:Var2,[(1070,338)(1105,338)])
}
Add(GetDataEx,10495885,1099,385)
{
Angle=2
link(Data,14752883:Value,[(1105,422)(1147,422)])
}
Add(Hub,10488796,1141,448)
{
InCount=2
OutCount=1
link(onEvent1,14752883:doValue,[(1167,454)(1167,419)(1129,419)(1129,384)])
}
Add(If_else,8352143,903,210)
{
Op2=String(2)
link(onFalse,12178600:doCompare,[(947,223)(947,216)])
}
Add(If_else,12178600,959,210)
{
Op2=String(-2)
link(onFalse,8319343:doEvent1,[])
}
Add(TrackBar,2420342,1127,245)
{
Left=5
Top=665
Width=1170
Max=30
Position=5
link(onPosition,12892324:doMaxW,[(1176,251)(1176,230)(1136,230)(1136,209)])
}
Add(PlotAxis,10713502,728,357)
{
Grapher="123"
Color=0
Angle=45
link(X,16322095:Var2,[])
link(Y,13100609:Var2,[(741,344)(671,344)])
}
Add(GetDataEx,13094846,665,308)
{
link(Data,11325255:Value,[])
}
Add(GetDataEx,3599729,637,273)
{
Angle=3
link(Data,12132263:Value,[(601,278)])
}
Add(PlotPoints,4985497,644,588)
{
Grapher="123"
Color=16711680
Size=3
Name="2"
Shape=2
link(ValueY,9077474:Var1,[(650,558)])
link(ValueX,13877566:Var2,[])
}
Add(Hub,2171490,532,413)
{
OutCount=3
link(onEvent1,13045913:doStart,[])
link(onEvent2,16350363:doAdd,[(581,426)(581,363)])
link(onEvent3,4985497:doAdd,[(595,433)(595,594)])
}
Add(Memory,13798332,651,504)
{
Default=String(0.5)
}
Add(Memory,11809859,721,504)
{
Default=String(1.6)
}
Add(PointHint,14863803,595,504)
{
Info=#2:X2|
Width=29
Height=25
}
Add(PointHint,15771444,763,504)
{
Info=#2:Y2|
Width=29
Height=25
}
Add(PlotSeriesMarker,8960325,1148,602)
{
Grapher="123"
TextList=#1:A|0:|
Series="1"
}
Add(PlotSeriesMarker,2718198,791,616)
{
Grapher="123"
TextList=#1:B|
Series="2"
}
Add(PlotLines,4908245,840,469)
{
Grapher="123"
Color=0
Name="lim"
link(ValueY,13045913:V_Y,[])
link(ValueX,13045913:V_X,[])
}
Add(GetDataEx,13100609,665,329)
{
link(Data,13094846:Var2,[])
}
Add(GetDataEx,16322095,728,308)
{
link(Data,3599729:Var3,[(734,278)])
}
Add(GetDataEx,13877566,651,546)
{
link(Data,13798332:Value,[])
}
Add(GetDataEx,9077474,721,553)
{
link(Data,11809859:Value,[])
}
Add(MultiElementEx,13045913,840,413)
{
link(X1,16322095:Var3,[(846,313)])
link(X2,13877566:Var3,[(853,360)(796,360)(796,551)])
link(Y1,13100609:Var3,[(860,334)])
link(Y2,9077474:Var3,[(867,347)(809,347)(809,558)])
link(onData,4908245:doAdd,[(891,419)(891,460)(828,460)(828,475)])
link(Ext,6460224:Value,[(874,405)(888,405)])
}
BEGIN_SDK
Add(EditMultiEx,8896262,21,21)
{
WorkCount=#7:doStart|
EventCount=#6:onData|
VarCount=#3:V_Y|3:V_X|
DataCount=#2:X1|2:X2|2:Y1|2:Y2|3:Ext|
Width=384
Height=368
VOffset=35
HOffset=35
link(V_Y,5313561:Var,[(62,357)(167,357)])
link(V_X,7702554:Var,[(69,368)(328,368)])
link(doStart,14432124:doOperation,[(42,62)(42,104)])
}
Add(MathParse,2279904,161,105)
{
@Hint=#20:Расчёт углового кооф|
DataCount=4
MathStr="(%4 - %3) / (%2 - %1)"
link(onResult,3611920:doCalc,[])
link(X1,11990014:Var2,[])
link(X2,9209211:Var2,[])
link(X3,7300354:Var2,[])
link(X4,8896262:Y2,[(188,48)(83,48)])
}
Add(If_else,1338313,112,98)
{
Op2=Integer(0)
link(onTrue,10168997:In,[(153,104)(153,34)])
link(onFalse,2279904:doCalc,[])
}
Add(Math,14432124,63,98)
{
OpType=1
link(onResult,1338313:doCompare,[])
link(Op1,9104436:Var2,[])
link(Op2,13364400:Var2,[])
}
Add(GetDataEx,13364400,70,63)
{
Angle=3
link(Data,8896262:X1,[(62,68)])
}
Add(GetDataEx,9104436,63,56)
{
link(Data,8896262:X2,[])
}
Add(MathParse,3611920,210,105)
{
@Hint=#15:Расчёт смещения|
DataCount=3
MathStr="%2-%1*%3 "
link(onResult,3482928:doCalc,[])
link(X2,7300354:Var3,[(223,54)])
link(X3,7658257:Var2,[])
}
Add(GetDataEx,7300354,175,49)
{
Angle=3
link(Data,8896262:Y1,[(76,54)])
}
Add(GetDataEx,11990014,161,63)
{
Angle=3
link(Data,13364400:Var3,[])
}
Add(MathParse,3482928,259,105)
{
@Hint=#5:x_min|0:|
DataCount=3
MathStr="min(%1, %2) - %3"
link(onResult,5667487:doCalc,[])
link(X1,10009016:Var2,[])
link(X2,1953833:Var2,[])
link(X3,6182693:Var2,[])
}
Add(GetDataEx,7658257,224,63)
{
Angle=3
link(Data,11990014:Var3,[])
}
Add(GetDataEx,9209211,168,56)
{
Angle=3
link(Data,9104436:Var3,[])
}
Add(MathParse,5667487,308,105)
{
@Hint=#5:x_max|0:|
DataCount=3
MathStr="max(%1, %2) + %3"
link(onResult,5663699:doEvent1,[(348,111)(348,150)(116,150)(116,202)])
link(X1,10009016:Var3,[(314,68)])
link(X2,1953833:Var3,[(321,61)])
link(X3,6182693:Var3,[(328,40)])
}
Add(GetDataEx,10009016,259,63)
{
Angle=3
link(Data,7658257:Var3,[])
}
Add(GetDataEx,1953833,266,56)
{
Angle=3
link(Data,9209211:Var3,[])
}
Add(GetDataEx,6182693,273,35)
{
Angle=3
link(Data,8896262:Ext,[(90,40)])
}
Add(MathParse,15011012,161,196)
{
@Hint=#5:y_min|
DataCount=3
MathStr="%1 * %3 + %2"
link(onResult,8841571:doWork1,[(245,202)(245,244)])
link(X1,15996982:Var2,[])
link(X2,8150550:Var1,[(174,159)])
link(X3,15874523:Var1,[(181,166)])
}
Add(MathParse,3495654,203,245)
{
@Hint=#5:y_max|
DataCount=3
MathStr="%1 * %3 + %2"
link(onResult,8841571:doWork2,[])
link(X1,15996982:Var3,[(209,180)])
link(X2,8150550:Var3,[(216,159)])
link(X3,8836248:Var1,[(223,180)])
}
Add(GetDataEx,15996982,161,175)
{
link(Data,2279904:Result,[])
}
Add(GetDataEx,8150550,210,154)
{
link(Data,3611920:Result,[])
}
Add(GetIndexData,7702554,322,238)
{
link(onIndex,5313561:doIndex,[(369,244)(369,346)(142,346)(142,307)])
link(Data1,15874523:Var3,[(328,166)])
link(Data2,8836248:Var3,[(335,180)])
}
Add(ChanelToIndex,8841571,259,238)
{
link(onIndex,7702554:doIndex,[])
}
Add(Hub,5663699,126,196)
{
link(onEvent1,15011012:doCalc,[])
link(onEvent2,3495654:doCalc,[(152,209)(152,251)])
}
Add(GetIndexData,5313561,161,301)
{
link(onIndex,8896262:onData,[(394,307)(394,62)])
link(Data1,15011012:Result,[])
link(Data2,3495654:Result,[(174,286)(209,286)])
}
Add(GetDataEx,15874523,259,161)
{
link(Data,3482928:Result,[])
}
Add(GetDataEx,8836248,308,175)
{
link(Data,5667487:Result,[])
}
Add(LineBreak,5943570,427,49)
{
Caption="Если X1 = X2 другой алгоритм"
Primary=[10168997,0,-21]
}
END_SDK
Add(Memory,6460224,882,364)
{
@Hint=#37:Единица удлинение линии в обе стороны|
Default=Integer(10)
}
|
Ответов: 528
Рейтинг: 167
|
|||
|
Andrej77rv , добрый день, вариант костыльный , возможно будут более дельные предложения )
|
|||
| карма: 4 |
|
Редактировалось 1 раз(а), последний 2025-10-13 12:59:45



Поиск
Друзья
Администрация