Autor |
Beitrag |
Boldar
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: Di 30.06.09 16:24
Hallo,
Ich suche eine Komponente, die mir einen Graph zeichnet wie der im Taskmanager, aber diese muss:
- Einfach zu bedienen sein
- Verschiedene Farben unterstützen und
- freeware sein
Mit einfach zu bedienen meine ich, dass ich vorher z.B. 50 als maximale einträge setzwe und dann mit blablabla.add (100);
Zahlen in die Liste schreiben kann. Die Grafik soll dann automatisch aktualisiert werden und die letzten Listeneinträge halt gelöscht werden.
Gibt es sowas?
mfg und Vielen Dank
Boldar
|
|
freedy
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Di 30.06.09 16:26
Hi Boldar,
in der Jedi-Bibliothek ist eine Scope-Komponente, die genau das macht. Glaube, da ist sogar eine Demo für die CPU-Auslastung bei.
Ist sehr einfach zu bedienen.
Grüße,
Michael
|
|
dummzeuch
      
Beiträge: 593
Erhaltene Danke: 5
Delphi 5 ent, Delphi 6 bis Delphi XE8 pro
|
Verfasst: Di 30.06.09 20:24
freedy hat folgendes geschrieben : |
in der Jedi-Bibliothek ist eine Scope-Komponente, die genau das macht. Glaube, da ist sogar eine Demo für die CPU-Auslastung bei.
Ist sehr einfach zu bedienen.
|
Wieder was gelernt.
Hast Du Erfahrungen mit der Komponente? Wie stark belastet sie die CPU? Ich habe naemlich eine Anwendung, die bis zu 20 solcher Grafiken anzeigt, das sollte dann moeglichst nicht zu 50% CPU Last fuehren. Derzeit benutze ich dafuer TeeChart mit Fastlines.
twm
|
|
freedy
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Mi 01.07.09 00:08
Die Belastung ist gering. Ich nutze die Komponente in abgewandelter Form.
In meinem Projekt zeige ich drei Oszilloskope mit jeweils ca. 3 - 4 Linie à 16000 Datenpunkten oder auch mehr an, die alle 0,5 sec aktualisiert und neu gezeichnet werden müssen, weil sich die Skalierung teilweise ändert. Meine Auslastung liegt im Schnitt bei 6 - 10 % eines Cores. Ich darf dir meine modifizierte und angepasste Komponente leider nicht rausgeben.
Im Wesentlichen habe ich die Komponente auf Layer umgestellt.
Vielleicht kannst du ja etwas ähnliches bei dir machen.
Grüße,
Michael
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: Mi 01.07.09 15:08
Du benutzt JvScope, hast es abgewandelt und darfst es nicht rausgeben?
lg elundril
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 01.07.09 15:22
Die Frage ist berechtigt, allerdings kann man das Copyleft der MPL umgehen. Man kann einfach seine Modifikation in einer abgeleiteten Komponente machen, die in einer separaten Unit steht. In dem Fall muss diese Unit auch nicht veröffentlicht werden.
Veröffentlicht unter der MPL müssen nur modifizierte Originaldateien, deren Code natürlich nur unter den Bedingungen der MPL verwendet werden darf.
Wie das in diesem Fall gemacht wurde, weiß ich natürlich nicht.
|
|
freedy
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Mi 01.07.09 15:28
Von der Scope-Komponente ist nur noch das Layout übrig. Wir mussten vieles so anpassen, dass wir unsere Daten einspeisen konnten. Dies erforderte somit ein komplettes Redesign. Damit fällt die neue Komponente TAdvScope nicht mehr untder die GPL (und wohl auch nicht MPL). Sie besitzt ja weiterhin Funktionalitäten wie Zoom, Pan, Print, CopyToClipboard, automatische Skalierungsfunktionen, Triggerfunktionen, eine interne FFT... also auch Dinge, die nur wenige Benutzer so brauchen.
Zuletzt bearbeitet von freedy am Do 02.07.09 13:35, insgesamt 1-mal bearbeitet
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 02.07.09 13:09
IANAL aber IMHO zählt sowas unter Derivative Work. Also zumindest für GPL wäre hier eine Veröffentlichung zwingend; wie das bei MPL aussieht, weiß ich grad nicht, weil ich die auf Grund der Erlaubnis zur Kommerziellen Nutzung nicht einsetze (erlaubt anderen, mehr oder weniger mit meiner Arbeit Geld zu verdienen).
Mich hat diese Aussage aber auch stark verwundert. Wäre es nämlich bei MPL ohne Weiteres Möglich, aus offenem Quelltext Closed Source zu machen, wäre die MPL nicht OSI-konform. Also ich denk mal, dass eine Closed-Source-Verschlusssache zumindest gegen §3.2 MPL Version 1.1 verstößt.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 02.07.09 13:13
Der vorhandene MPL Code darf auch nicht Verschlussache werden. Der muss weiter unter der MPL zur Verfügung stehen. Anderer Code in anderen Dateien des Projekts bleibt davon aber unberührt.
Und von wegen damit Geld verdienen: Das ist bei der GPL genauso. Der Unterschied ist nur, dass das gesamte Projekt Open Source unter der GPL sein muss. Man darf es aber trotzdem zusätzlich verkaufen.
|
|
freedy
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Do 02.07.09 13:46
Verstösse gegen die MPL und GPL werden hier im Betrieb nicht gut geheißen. Und bevor ich mich hier weiter gegen Vorwürfe des MPL-Verstosses wehren muss, möchte ich nochmals klarstellen, dass unsere entwickelte Komponente nicht mehr mit der Komponente TScope zu tun hat. Die Entwicklung begann, wenn man das so sagen will, bei Null. Ausgehend von den Features, die die TScope-Komponente und viele andere kommerzielle Komponenten liefern, wurde eine Anforderungsliste geschrieben, auf deren Grundlage die neue Komponente entwickelt wurde.
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: Do 02.07.09 16:38
und die geringe Auslastung des Prozessors, war die auf deine Komponente bezogen oder auf die TJvScope-Komponente? Bei ersterem wäre das ja irrelevant für das Topic da du ja die Komponente von Grund auf neu geschrieben hast und deswegen auch die Prozessorauslastung unterschiedlich wäre.
lg elundril
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
|
|
freedy
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Do 02.07.09 16:57
Die Prozessorauslastung ist gering (bei beiden Komponenten). DoubleBuffered Canvas. Beim Hinzufügen eines neuen Datenpunktes wird das Bild nur verschoben und nur der freigewordene Bereich wird neugezeichnet. Von daher sollte es auch keine Probleme machen, mehrere Scopes gleichzeitig laufen zu lassen.
Auslastungsmaximum tritt nur beim kompletten Neuzeichnen auf. Wenn es in deinem Programm da kritisch sein sollte, lagere das irgendwie in einen Thread aus. Aber ich denke nicht, dass das nötig sein wird.
Grüße
|
|