gsl-shell.git - gsl-shell

index : gsl-shell.git
gsl-shell
summary refs log tree commit diff
diff options
context:
space:
mode:
Diffstat
-rw-r--r--agg-plot/plot-window.cpp 6
-rw-r--r--examples/anim.lua 27
2 files changed, 31 insertions, 2 deletions
diff --git a/agg-plot/plot-window.cpp b/agg-plot/plot-window.cpp
index 8f55fbd2..fc6907b9 100644
--- a/agg-plot/plot-window.cpp
+++ b/agg-plot/plot-window.cpp
@@ -99,9 +99,11 @@ public:
void plot_update()
{
this->lock();
- this->on_draw_unprotected();
if (this->status == plot_window::running)
- this->update_window();
+ {
+ this->on_draw_unprotected();
+ this->update_window();
+ }
this->unlock();
};
diff --git a/examples/anim.lua b/examples/anim.lua
index 4dddacc5..ff27e7db 100644
--- a/examples/anim.lua
+++ b/examples/anim.lua
@@ -33,3 +33,30 @@ function demo2()
p:refresh()
end
end
+
+function demo3()
+ local x1 = 25
+ local p = plot('rotating sine')
+
+ local box = path(-2*pi, -2*pi)
+ box:line_to(2*pi, -2*pi)
+ box:line_to(2*pi, 2*pi)
+ box:line_to(-2*pi, 2*pi)
+ box:close()
+
+ p:addline(box, 'black')
+ p.units = false
+ p:show()
+
+ local N = 512
+ for j=0, N do
+ local angle = j*2*pi/N
+ p:clear()
+ local ln = fxline(sin, 0, 2*pi)
+ p:stroke(ln, 'red', {}, {{'rotate', angle= angle}})
+ p:stroke(ln, 'blue', {}, {{'rotate', angle= angle + pi/2}})
+ p:stroke(ln, 'green', {}, {{'rotate', angle= angle + pi}})
+ p:stroke(ln, 'yellow', {}, {{'rotate', angle= angle + 3*pi/2}})
+ p:refresh()
+ end
+end
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月23日 04:32:06 +0000

AltStyle によって変換されたページ (->オリジナル) /