Так что как вариант, как нарисуете тяните рисунок туда где система не сотрет. Не исключаю что есть и более элегантный вариант решения, но пока ничего на ум не приходит.
Схема
Add(Button,8764201,112,70)
{
Left=310
Top=15
Width=90
Caption="Рассчёт"
link(onClick,2159489:doEvent1,[])
}
Add(Edit,13883334,343,84)
{
Left=92
Top=15
Text="321"
}
Add(Label,13311803,112,168)
{
Left=15
Top=20
Width=72
Height=17
Caption="Диаметр, мм"
}
Add(For,7740520,266,84)
{
Start=3
End=100
link(onEvent,2317069:doCalc,[(312,90)(312,174)])
link(End,4115576:Text,[])
}
Add(MathParse,2317069,336,168)
{
MathStr="(sin ((360/%1)/2))*%2"
AngleMode=1
link(onResult,3039440:doOperation,[])
link(X1,12869071:Var2,[(342,156)(272,156)])
link(X2,4326351:Var2,[])
}
Add(GetDataEx,12869071,266,126)
{
link(Data,7740520:Position,[])
}
Add(StringTable,262099,546,168)
{
Left=15
Top=60
Width=465
Height=250
Columns=#16:Диаметр, мм.=100|12:Частей, шт. |10:Хорда, мм.|10:Округленно|
Grid=0
Point(onMouseUp)
link(onClick,12261816:doEvent1,[(590,174)(590,237)])
}
Add(FormatStr,13922804,469,168)
{
DataCount=4
Mask="%1;%2;%3;%4"
link(onFString,262099:doAdd,[])
link(Str1,4326351:Var3,[(475,138)])
link(Str2,12869071:Var3,[(482,131)])
link(Str3,3039440:Result,[(489,156)(417,156)(417,214)(384,214)])
link(Str4,4918351:Result,[(496,156)(516,156)(516,215)(433,215)])
}
Add(Math,3039440,378,168)
{
OpType=35
Op2=0.00001
link(onResult,4918351:doOperation,[])
}
Add(GetDataEx,4326351,343,133)
{
link(Data,13883334:Text,[])
}
Add(Hub,2159489,182,70)
{
InCount=2
OutCount=3
link(onEvent1,262099:doClear,[(528,76)(528,181)])
link(onEvent2,7740520:doFor,[(256,83)(256,90)])
}
Add(Math,4918351,427,168)
{
OpType=35
Op2=0.01
link(onResult,13922804:doString,[])
}
Add(Edit,4115576,273,28)
{
Left=237
Top=15
Text="16"
}
Add(Label,3312127,112,119)
{
Left=155
Top=18
Width=77
Height=17
Caption="Расчёт от 3 до"
}
Add(GL_Main,12986311,252,273)
{
Color=16777215
TwoSide=0
AASamples=1
link(onInit,12198675:doInit,[])
link(onViewPort,3410847:doPerspective,[(305,286)(305,321)])
link(Handle,7534867:Var1,[])
}
Add(GL_GTools,771925,315,350)
{
Point(doClear)
Point(doPushMatrix)
Point(doPopMatrix)
}
Add(Hub,1049454,175,350)
{
InCount=2
OutCount=7
link(onEvent1,771925:doClear,[])
link(onEvent2,771925:doPushMatrix,[])
link(onEvent3,7484386:doEvent,[(298,370)(298,475)])
link(onEvent4,771925:doPopMatrix,[(307,377)(307,370)])
link(onEvent5,7534867:doWork1,[(223,384)(223,230)])
link(onEvent6,12986311:doFlip,[(231,391)(231,293)])
link(onEvent7,7534867:doWork2,[(240,398)(240,237)])
}
Add(Hub,16299401,119,273)
{
OutCount=3
link(onEvent1,12986311:doInit,[])
link(onEvent2,12986311:doViewPort,[])
link(onEvent3,2159489:doEvent2,[(157,293)(157,83)])
}
Add(GL_Perspective,3410847,315,315)
{
Fovy=30
}
Add(GL_Disk,5637833,567,490)
{
OutRadius=1.6
Stacks=1
Point(Slices)
Point(Stacks)
link(onDraw,6148131:doWork2,[])
link(Slices,2952427:Var2,[])
}
Add(GL_Color,13997617,518,490)
{
Color=12632256
link(onColor,5637833:doDraw,[])
}
Add(MultiStrPart,14001167,637,231)
{
Count=4
link(onSplit,8650820:doOperation,[])
link(Str,262099:Select,[(643,215)(559,215)])
}
Add(MainForm,10062641,70,273)
{
Width=763
Height=401
Caption="Хорда"
Position=1
link(onActivate,16299401:doEvent1,[])
}
Add(GL_Disk,8052256,406,483)
{
InRadius=1.6
OutRadius=1.6
Slices=50
Stacks=1
link(onDraw,8728187:doWork2,[])
}
Add(GL_Color,8472235,364,483)
{
Color=255
Alpha=0.5
link(onColor,8052256:doDraw,[])
}
Add(Label,7194114,840,231)
{
Left=20
Top=329
Width=20
Font=[MS Sans Serif,10,1,16711680,1]
Transparent=0
Caption=""
}
Add(FormatStr,10033650,798,231)
{
DataCount=3
Mask="Радиус=%3мм %1 Хорда=%2мм"
link(onFString,7194114:doText,[])
link(Str2,14001167:Part4,[(811,209)(676,209)(676,269)(664,269)])
link(Str3,8650820:Result,[(818,222)(790,222)(790,271)(699,271)])
}
Add(Convertor,13355228,749,231)
{
Mode=16
Word_1="часть"
Word_2="части"
Word_5="частей"
link(onResult,10033650:doString,[])
link(Data,1840627:Var3,[(755,222)(741,222)(741,292)])
}
Add(GL_GluTools,12198675,357,273)
{
DrawStyle=1
Orientation=0
Point(doDrawStyle)
}
Add(GetDataEx,1840627,644,287)
{
link(Data,14001167:Part2,[])
}
Add(Math,8650820,693,231)
{
OpType=3
Op2=2
link(onResult,13355228:doConvert,[])
link(Op1,14001167:Part1,[(699,222)(685,222)(685,277)(643,277)])
}
Add(GL_PrimSizes,7310423,665,490)
{
Size=4
link(onSize,11735507:doEvent1,[])
}
Add(GL_Disk,5960140,791,497)
{
OutRadius=1.6
Stacks=1
Point(Slices)
Point(Stacks)
link(onDraw,10398903:doPointSize,[])
link(Slices,2952427:Var3,[(811,460)])
}
Add(GetDataEx,2952427,581,455)
{
link(Data,1840627:Var1,[(587,292)])
}
Add(GL_PrimSizes,10398903,833,490)
{
link(onSize,5764263:doWork2,[(874,496)(874,461)])
}
Add(GL_Color,9607631,749,497)
{
Color=0
link(onColor,5960140:doDraw,[])
}
Add(ChanelToIndex,5764263,896,448)
{
link(onIndex,7480950:In,[])
}
Add(Hub,11735507,714,490)
{
link(onEvent1,5764263:doWork1,[(739,496)(739,454)])
link(onEvent2,9607631:doColor,[])
}
Add(LineBreak,10071192,315,287)
{
link(Out,12198675:doDrawStyle,[])
Primary=[7480950,630,161]
}
Add(CheckBox,8844065,315,413)
{
Left=490
Top=20
Width=70
Checked=0
Caption="Диаметр"
}
Add(CheckBox,7194394,462,413)
{
Left=575
Top=20
Width=70
Checked=0
Caption="Связи"
}
Add(CheckBox,11268426,616,413)
{
Left=650
Top=20
Checked=0
Caption="Точки"
}
Add(IndexToChanel,7484386,315,469)
{
Point(Index)
link(onEvent1,8728187:doWork1,[(452,475)])
link(onEvent2,8472235:doColor,[(355,482)(355,489)])
link(Index,8844065:Checked,[])
}
Add(IndexToChanel,13582094,462,483)
{
Point(Index)
link(onEvent1,6148131:doWork1,[(506,489)(506,475)(606,475)])
link(onEvent2,13997617:doColor,[])
link(Index,7194394:Checked,[])
}
Add(IndexToChanel,13106668,616,490)
{
Point(Index)
link(onEvent2,7310423:doPointSize,[])
link(Index,11268426:Checked,[])
}
Add(HubEx,8728187,448,483)
{
link(onEvent,13582094:doEvent,[])
}
Add(HubEx,6148131,602,490)
{
link(onEvent,13106668:doEvent,[])
}
Add(Hub,12261816,602,231)
{
link(onEvent1,14001167:doSplit,[])
link(onEvent2,1670417:In,[(627,244)(627,321)])
}
Add(LineBreak,11428786,126,392)
{
link(Out,1049454:doEvent2,[(165,398)(165,363)])
Primary=[1670417,518,-77]
}
Add(Button,16630746,129,350)
{
Left=15
Top=40
Width=465
Caption="При нажатии на эту кнопку работает ,а при выборе из таблицы нет"
link(onClick,1049454:doEvent1,[])
}
Add(ChildPanel,7534867,252,224)
{
}
BEGIN_SDK
Add(EditMulti,1983358,21,21)
{
WorkCount=2
VarCount=1
Width=608
Height=305
link(Var1,15040464:Var1,[(27,96)])
link(doWork1,5103000:doClear,[(269,27)(269,62)])
link(doWork2,16454260:doCapture,[(165,34)(165,125)])
}
Add(Panel,4591409,49,42)
{
Left=490
Top=60
Width=250
Height=250
Point(Handle)
}
Add(Image,5103000,301,49)
{
Width=250
Height=250
Align=5
Color=16777215
Point(Handle)
}
Add(ScreenShort,16454260,308,119)
{
link(onCapture,5103000:doLoad,[(390,125)(390,40)(289,40)(289,55)])
link(Handle,15040464:Var2,[])
}
Add(GetDataEx,15040464,308,91)
{
link(Data,5103000:Handle,[])
}
END_SDK