diff --git a/Server_CoAP/CoAPthon3/exampleresources.py b/Server_CoAP/CoAPthon3/exampleresources.py index 3d4d5ab56ffe7e7d1059af91e89a8f8d92ac231f..f568f2633b222e67b132ce26590105b1bed2e915 100644 --- a/Server_CoAP/CoAPthon3/exampleresources.py +++ b/Server_CoAP/CoAPthon3/exampleresources.py @@ -119,9 +119,9 @@ class RpNodeInfoResource(Resource): return json.dumps(response) cosA = (math.pow(dis['b'], 2) + math.pow(dis['c'], 2) - math.pow(dis['a'], 2)) / (2 * dis['b'] * dis['c']) - if cosA >= 1 or cosA <= 0 : + if cosA >= 1 or cosA <= -1 : # 3번째 rpNode를 만들 수 없는 경우 - print("3번째 rpNode를 만들 수 없습니다.(impossible cosA)") + print("3번째 rpNode를 만들 수 없습니다.(impossible cosA)",cosA) response['operate'] = 1 return json.dumps(response) @@ -158,8 +158,9 @@ class RpNodeInfoResource(Resource): }) triangulationInst = triangulation.Triangulation(nodeList[:3]) - x, y = triangulation.doTriangulation() - + print("test : ", nodeList[:3]) + x, y = triangulationInst.doTriangulation() + print("x: ",x,"y : ",y) if x == None: # 4번째 이상의 rpNode를 만들 수 없는 경우 print("4번째 이상의 rpNode를 만들 수 없습니다.") diff --git a/Server_CoAP/CoAPthon3/triangulation.py b/Server_CoAP/CoAPthon3/triangulation.py index d45c38d7b7d2cd4b0753a55e179a2faf7d90bdc7..486b73f033e44f2b00f239df9f5064cb8afe59b3 100644 --- a/Server_CoAP/CoAPthon3/triangulation.py +++ b/Server_CoAP/CoAPthon3/triangulation.py @@ -50,9 +50,11 @@ class Triangulation(): meet_result[0][0]=meet1[0][0] meet_result[0][1]=meet1[0][1] else: + print(line_position) a=1+(line_position[0][0]/line_position[0][1])*(line_position[0][0]/line_position[0][1]) b=(-2*a1)+((-2*line_position[0][0]*line_position[0][2]) / (line_position[0][1]*line_position[0][1]))+(2*line_position[0][0]*b1/line_position[0][1]) c=(line_position[0][2]/line_position[0][1])*(line_position[0][2]/line_position[0][1]) + (-2*line_position[0][2]*b1/line_position[0][1]) + b1*b1 - r1*r1 + a1*a1 + print("a : "+str(a)+"b : "+str(b)+"c : "+str(c)+"b^2-4ac : " + str(b*b-4*a*c)) meet1[0][0]=(-b+math.sqrt(b*b-4*a*c))/(2*a) meet2[0][0]=(-b-math.sqrt(b*b-4*a*c))/(2*a) meet1[0][1]=(-1*line_position[0][0]*meet1[0][0]/line_position[0][1])+(line_position[0][2]/line_position[0][1]) @@ -221,15 +223,15 @@ class Triangulation(): c=self.cal_distance(self.n[1]['x'],self.n[1]['y'],self.n[2]['x'],self.n[2]['y']) if(list[2]==self.n[0]['distance']): if(self.n[1]['distance']+a<=self.n[0]['distance'] or self.n[2]['distance']+b<=self.n[0]['distance']): - print("error") + print("error1") return None, None elif(list[2]==self.n[1]['distance']): if(self.n[0]['distance']+a<=self.n[1]['distance'] or self.n[2]['distance']+c<=self.n[1]['distance']): - print("error") + print("error2") return None, None elif(list[2]==self.n[2]['distance']): if(self.n[0]['distance']+b<=self.n[2]['distance'] or self.n[1]['distance']+c<=self.n[2]['distance']): - print("error") + print("error3") return None, None if(a<=self.n[0]['distance']+self.n[1]['distance'] and b<=self.n[0]['distance']+self.n[2]['distance'] and c<=self.n[1]['distance']+self.n[2]['distance']): @@ -249,7 +251,7 @@ class Triangulation(): self.n[2]['x'],self.n[2]['y'],self.n[2]['distance'], self.n[0]['x'],self.n[0]['y'],self.n[0]['distance']) else: - print("error") + print("error4") return None, None return x, y """ diff --git a/Server_Vue_Express/backend/routes/api.js b/Server_Vue_Express/backend/routes/api.js index 100fbac867f71f270435f407001fe528aa1e6e44..f9134728b6b09e320b86ae231aacfa67c723cab2 100644 --- a/Server_Vue_Express/backend/routes/api.js +++ b/Server_Vue_Express/backend/routes/api.js @@ -178,9 +178,9 @@ router.get('/aggregateByRPUUID/:id', function(req, res, next) { '$match': { 'rpuuid': output.rpuuid, 'updateTime': { - '$gt': lastUpdateTime - 600 + '$gt': lastUpdateTime }, - distance: {'$lt': 1} + distance: {'$lt': 10, '$gt' : 0.1} } }, { '$group': {