Вверх ↑
Ответов: 771
Рейтинг: 168
#1: 2024-06-08 17:24:01 ЛС | профиль | цитата
andrewproffi писал(а):
А как тогда добавлять точку с координатами на график? формировать строку Х,У ? Почему это так критично?
я показал пример с таймером чтобы наглядно было видно рост нагрузки на процессор, мне сейчас важен именно этот момент. как правильно выводить поток данных на график чтобы уменьшить нагрузку на процессор. текстовые поля можно убрать, смысл от этого не изменится.


У меня нагрузка не более 4%

Add(Plotter,13668624,770,91)
{
Left=140
Width=1000
Height=400
Name="1"
GridX=20
GridY=20
LeftMargin=40
TopMargin=30
Point(MinY)
Point(MaxY)
Point(doEnabled)
Point(MinX)
Point(MaxX)
}
Add(Button,3649645,686,133)
{
Left=5
Top=740
Width=120
Height=35
Caption="Очистить график"
Data=Integer(0)
link(onClick,5720659:doEvent1,[])
}
Add(Hub,5720659,735,133)
{
OutCount=3
link(onEvent1,13668624:doClear,[(759,139)(759,97)])
link(onEvent2,14196124:doClear,[(759,146)(759,153)])
link(onEvent3,16236745:doClear,[(759,153)(759,230)])
}
Add(Plotter,14196124,770,147)
{
Left=140
Top=405
Width=1000
Height=210
Name="2"
GridX=5
MinH=1
LeftMargin=40
TopMargin=30
Point(MinY)
Point(MaxY)
Point(doEnabled)
Point(doMinW)
Point(doMaxW)
Point(MinX)
Point(MaxX)
}
Add(Plotter,16236745,770,224)
{
Left=140
Top=625
Width=1000
Height=210
Name="3"
GridX=5
LeftMargin=40
TopMargin=30
Point(MinY)
Point(MaxY)
Point(doMinH)
Point(doMaxH)
Point(doEnabled)
Point(doMinW)
Point(doMaxW)
Point(MinX)
Point(MaxX)
}
Add(MainForm,14372191,357,70)
{
Left=21
Top=105
Width=1450
Height=871
Color=-16777194
Font=[Arial,8,0,0,1]
Ctl3D=0
Caption="тест SCD40"
BorderStyle=1
}
Add(PlotPoints,16575108,567,112)
{
Grapher="2"
Color=0
Size=3
Step=1
Shape=2
Point(doColor)
}
Add(PlotPoints,15831482,567,203)
{
Grapher="3"
Size=3
Step=1
Shape=2
Point(doColor)
}
Add(PlotPoints,7507624,567,154)
{
Grapher="1"
Color=0
Size=3
Step=1
Shape=2
Point(doColor)
}
Add(Button,3350393,266,182)
{
Left=55
Top=325
Caption="выкл"
Data=Integer(1)
link(onClick,2632097:doStop,[(305,188)(305,160)])
}
Add(Memo,1824552,784,364)
{
Left=1145
Top=40
Width=310
Height=645
ScrollBars=2
link(onChange,10324091:doData,[(828,370)(828,412)(779,412)(779,454)])
}
Add(DoData,10324091,791,448)
{
Data=Integer(0)
link(onEventData,11676252:doText,[])
link(Data,1824552:Count,[])
}
Add(Edit,11676252,840,448)
{
Left=1195
Top=700
Width=110
}
Add(Button,9926212,266,147)
{
Left=50
Top=300
Caption="вкл"
Data=Integer(1)
link(onClick,2632097:doTimer,[])
}
Add(StrCat,13187429,721,364)
{
Str2=" тестовая с тестовая строкатрока"
link(onStrCat,1824552:doAdd,[])
}
Add(Button,13428654,280,259)
{
Left=50
Top=390
Caption="выкл низ"
Data=Integer(1)
}
Add(Button,4819930,280,224)
{
Left=50
Top=360
Caption="вкл низ"
Data=Integer(1)
}
Add(Random,5835041,434,147)
{
Min=-30
Max=30
link(onRandom,9885685:doCalc,[])
}
Add(MathParse,9885685,483,147)
{
MathStr="%1 + %0"
link(onResult,11840090:doEvent1,[])
}
Add(EventFromData,13514818,574,455)
{
}
Add(Hub,11840090,532,147)
{
OutCount=3
link(onEvent1,16575108:doAdd,[(557,153)(557,118)])
link(onEvent2,7507624:doAdd,[])
link(onEvent3,15831482:doAdd,[(557,167)(557,209)])
}
Add(Timer,2632097,357,147)
{
Interval=100
link(onTimer,5835041:doRandom,[])
}

карма: 15

0