get_line_aprox.py
1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
import urllib.request
import json
import os
import datetime
from imageio import imread
import cv2
import numpy as np
import loca_data
import duamel_model
import matplotlib.pyplot as plt
import sher_duam_class
data_store = dict(max_prec = -500.0, values = {})
prec_store = []
prec_store.append([0.0, 0.0])
prec_store.append([1.0, 2.0])
prec_store.append([2.0, 4.0])
prec_store.append([6.0, 12.0])
prec_store.append([3.0, 6.0])
prec_store.append([4.0, 8.0])
prec_store.append([5.0, 10.0])
for p in prec_store:
if p[0] > data_store["max_prec"]:
data_store["max_prec"] = p[0]
key = p[0]
sd = data_store["values"]
sd[key] = p[1]
print(data_store)
print(sorted(data_store["values"].keys()))
value = 0.0
new_prec = 4.32
x1 = -1.0
x2 = -1.0
y1 = -1.0
y2 = -1.0
u_sort_keys = sorted(data_store["values"].keys(), reverse=True)
sort_keys = sorted(data_store["values"].keys(), reverse=False)
if new_prec > data_store["max_prec"]:
x1 = u_sort_keys[1]
x2 = u_sort_keys[0]
data_store["max_prec"] = new_prec
else:
if new_prec in sort_keys:
value = data_store["values"][new_prec]
print(value)
exit()
else:
counter = 0
for key in sort_keys:
if key > new_prec:
x1 = sort_keys[counter-1]
x2 = key
break
counter = counter + 1
y1 = data_store["values"][x1]
y2 = data_store["values"][x2]
value = ((x2 * y1 - x1 * y2) / (x2 - x1)) - (y1 - y2) * new_prec
print(value)
#print("{}|{}^^{}|{}".format(x1, y1, x2, y2))
#