From 45f18adf080a83cccb5ebb0b277af5929648b5c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20Luka=20=C5=A0ijanec?= Date: Mon, 13 Jun 2022 23:34:53 +0200 Subject: geografska predstavitev --- "fiz/naloga/su\305\276enjstvo/lokacije.c" | 19 +++++++++++++------ "fiz/naloga/su\305\276enjstvo/transformiraj.sh" | 1 + 2 files changed, 14 insertions(+), 6 deletions(-) (limited to 'fiz/naloga/suženjstvo') diff --git "a/fiz/naloga/su\305\276enjstvo/lokacije.c" "b/fiz/naloga/su\305\276enjstvo/lokacije.c" index bc9e2e1..1d759cf 100644 --- "a/fiz/naloga/su\305\276enjstvo/lokacije.c" +++ "b/fiz/naloga/su\305\276enjstvo/lokacije.c" @@ -2,6 +2,8 @@ #include // datoteka se mora začeti s prvim frameom - prižgana lučka #include #define STR0(x) (x ? x : "") +#define ŠIR 3840 // moramo vedeti, da GIMP koordinate pretvorimo v blender koo +#define VIŠ 2160 // nisem prepričan. če se ti zdi, da je to nepotrebno => mail int main (int argc, char ** argv) { long double kalibracijske_vrednosti[] = { 14.20, -2.35, 2.25 }; if (argc < 1+1+7) { @@ -12,18 +14,19 @@ int main (int argc, char ** argv) { char * cp; int merilo_leva_šir = strtol(argv[5], &cp, 10); cp++; - int merilo_leva_viš = strtol(cp, NULL, 10); + int merilo_leva_viš = VIŠ-strtol(cp, NULL, 10); int merilo_desna_šir = strtol(argv[6], &cp, 10); cp++; - int merilo_desna_viš = strtol(cp, NULL, 10); + int merilo_desna_viš = VIŠ-strtol(cp, NULL, 10); int središče_šir = strtol(argv[7], &cp, 10); cp++; - int središče_viš = strtol(cp, NULL, 10); + int središče_viš = VIŠ-strtol(cp, NULL, 10); int kotna_točka_šir = strtol(argv[8], &cp, 10); cp++; - int kotna_točka_viš = strtol(cp, NULL, 10); + int kotna_točka_viš = VIŠ-strtol(cp, NULL, 10); long double pikslov_v_1m = 10*sqrtl(powl(labs(merilo_leva_šir-merilo_desna_šir), 2)+powl(labs(merilo_leva_viš-merilo_desna_viš), 2)); - fprintf(stderr, "pikslov v 1m je %Lf\n", pikslov_v_1m); + long double kot = atan2l(kotna_točka_viš - središče_viš, kotna_točka_šir - središče_šir); + fprintf(stderr, "pikslov v 1m je %Lf\tkot je %Lf rad\n", pikslov_v_1m, kot); char buf[512]; fgets(buf, 512, stdin); int i = 0; @@ -53,7 +56,11 @@ int main (int argc, char ** argv) { for (unsigned int j = 0; j <= frame+1; j++) fgets(millis, 512, timestamps); unsigned int milliseconds = strtoul(millis, NULL, 10); - fprintf(stdout, "%lu\t%u\t%Lf\t%Lf\n", frame - starting_frame, milliseconds - starting_milliseconds, piksel_šir, piksel_viš); + + long double točka_šir_ro = piksel_šir*cosl(kot)-piksel_viš*sinl(kot); + long double točka_viš_ro = piksel_šir*sinl(kot)+piksel_viš*cosl(kot); + + fprintf(stdout, "%lu\t%u\t%Lf\t%Lf\n", frame - starting_frame, milliseconds - starting_milliseconds, točka_šir_ro, točka_viš_ro); fgets(buf, 512, stdin); } } diff --git "a/fiz/naloga/su\305\276enjstvo/transformiraj.sh" "b/fiz/naloga/su\305\276enjstvo/transformiraj.sh" index 8b379ac..d0c9aea 100755 --- "a/fiz/naloga/su\305\276enjstvo/transformiraj.sh" +++ "b/fiz/naloga/su\305\276enjstvo/transformiraj.sh" @@ -1,4 +1,5 @@ #!/bin/bash +gcc lokacije.c -lm for i in *.tsv do t=`rev <<<$i | cut -d. -f2- | rev` -- cgit v1.2.3