Facebook
From Nigga, 4 Years ago, written in Python.
Embed
Download Paste or View Raw
Hits: 237
  1. import turtle
  2. turtle.tracer(0,0)
  3.  
  4. class punkt(object):
  5.     def __init__(self,x,y):
  6.         self.__x=x
  7.         self.__y=y
  8.  
  9.     def getxy(self):
  10.         return(self.__x,self.__y)
  11.  
  12.     def draw(self,skala,dx,dy,nazwa):
  13.         turtle.speed(0)
  14.         turtle.up()
  15.         turtle.goto((self.__x-dx)*skala,(self.__y-dy)*skala)
  16.         turtle.dot()
  17.         if nazwa != 0:
  18.             turtle.write(str(self.__x)+", "+str(self.__y))
  19.  
  20. def kwadrat(x1,y1,x2,y2):
  21.     turtle.up()
  22.     turtle.goto(x1,y1)
  23.     turtle.down()
  24.     turtle.goto(x2,y1)
  25.     turtle.goto(x2,y2)
  26.     turtle.goto(x1,y2)
  27.     turtle.goto(x1,y1)
  28.     turtle.up()
  29.     return 0
  30.  
  31. turtle.up()
  32. plik = open("C:\Users\user\Downloads\punkty.txt","r")
  33.  
  34. xmin = 1000000.0
  35. xmax = -10000000.0
  36. ymin = 1000000.0
  37. ymax = -1000000.0
  38. punkty = []
  39. for i in plik:
  40.     wiersz = i.split()
  41.     punkty.append(punkt(float(wiersz[0]),float(wiersz[1])))
  42.     x = float(wiersz[0])
  43.     y = float(wiersz[1])
  44.     if x<xmin:
  45.         xmin = x
  46.     if x>xmax:
  47.         xmax = x
  48.     if y<ymin:
  49.         ymin = y
  50.     if y>ymax:
  51.         ymax = y
  52. w = ymax-ymin
  53. sz = xmax-xmin
  54.  
  55. px = (xmin+xmax)/2
  56. py = (ymin+ymax)/2
  57.  
  58. turtle.up()
  59. turtle.goto((xmin-px)*100,(ymin-py)*100)
  60. turtle.down()
  61. turtle.goto((xmin-px)*100,(ymin+w-py)*100)
  62. turtle.goto((xmax-px)*100,(ymax-py)*100)
  63. turtle.goto((xmax-px)*100,(ymax-w-py)*100)
  64. turtle.goto((xmin-px)*100,(ymin-py)*100)
  65.  
  66. xsr = (xmin+xmax)/2
  67. ysr = (ymin+ymin)/2
  68.  
  69. if w>sz:
  70.     a = (w-sz)/2
  71.     kwadrat((xmax-px)*100,(ymax-py+a)*100,(xmin-px)*100,(ymin-py-a)*100)
  72.     kwadrat(x
  73.  
  74. elif w<sz:
  75.     a = (sz-w)/2
  76.     kwadrat((xmax-px+a)*100,(ymax-py)*100,(xmin-px-a)*100,(ymin-py)*100)
  77.    
  78. else:
  79.     kwadrat(xmax,ymax,xmin,ymin)
  80.  
  81. for i in punkty:
  82.     i.draw(100,px,py,0)
  83.  
  84.  
  85.  
  86.  
  87. plik.close()
  88. turtle.done()
  89.