Итак, я сделал небольшой код для печати некоторых точек на сферической поверхности и заставил его также найти все позиции центра масс всех напечатанных точек (каждый раз, когда он печатает точку, он пересчитывает положение центр массы). Позиции центра масс были напечатаны в одном файле с i (это было количество точек, напечатанных до этого момента) и координатами x, y и z. И на основе сценария, сделанного моим профессором, я сделал этот сценарий ниже для запуска с gnuplot, чтобы создать ряд изображений с шариком, который перемещается вокруг позиций центра масс, и в конце я мог сделать видео с images.
set terminal pngcairo size 1080,1080
set view equal xyz
fx(t)= system(sprintf("sed -n '%d p' ../dat/cm.dat | cut -f2 -d' '", t))
fy(t)= system(sprintf("sed -n '%d p' ../dat/cm.dat | cut -f3 -d' '", t))
fz(t)= system(sprintf("sed -n '%d p' ../dat/cm.dat | cut -f4 -d' '", t))
unset xtics
unset ytics
unset ztics
t= 1
while(t <= 100000){
set output sprintf("%d.png", t/10)
set object circle at fx(t), fy(t), fz(t) size 0.35 fc rgb "#000000" fillstyle solid 1.0
splot "../dat/cm.dat" u 2:3:4 w l lc rgb "#FFFFFF" t""
unset object
t= t+10
}
unset terminal
unset output
Проблема, которая привела меня сюда, я перепробовал все, что пришло мне в голову, но каждый раз, когда я запускаю скрипт, печатается шар, который должен перемещаться вокруг позиций центра масс. настолько гигантский, что почти невозможно увидеть движение, вы можете увидеть проблему с размером здесь . Так что, если кто-то знает, в чем проблема, я буду благодарен.
ps: Может быть, это вообще не важно, но извините за мое письмо, я не очень знаком с engli sh.