diff options
| author | grothedev <grothedev@gmail.com> | 2025-10-01 23:19:48 -0400 |
|---|---|---|
| committer | grothedev <grothedev@gmail.com> | 2025-10-01 23:19:48 -0400 |
| commit | 047761dfae9c0f71c69d8259d93d65eed8f02064 (patch) | |
| tree | 5c492f41e05c8de742bbfdaccca9329c6b3fe434 /AGENTS.md | |
got some sinewaves rendering
Diffstat (limited to 'AGENTS.md')
| -rw-r--r-- | AGENTS.md | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..ba863d7 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,28 @@ +# TimePlot display prototype + +### Overview + +this is a graphical application that displays a number of sub-windows, each displaying a graph that updates in real-time with input data streams. there may be multiple different types of data points that each have different attributes which we want to see with respect to time, such as range, frequency, or speed. these graphs have been referred to as "waterfall" plots before. each graph can be configured to display some set of the attributes of some of the data points. graph legends will be displayed when necessary. + +### Implementation + +we must use vulkan in order to enable multi-threaded GPU operations. this means we'll probably use webgpu. the application will be written in either rust or C++. we will decide after playing with some basic proof-of-concepts. + +### Data inputs + +- {object id, object frequency} vs time +- List<frequency> vs time +- {object id, object position} vs time +- List<distance> vs time +- List<bearing> vs time + +### Requirements + +- must be able to store up to 1,000,000 different data points in memory at a time +- must be able to process as many data points per unit of time as possible +- efficiently render everything at an acceptable framerate (>= 45 fps) +- be able to display between 1 and 4 graphs at a time each in their own sub-window + +### GUI details + +- TODO |
