Найти - Пользователи
Полная версия: tkinter перевод данных и произведение замеров
Начало » Центр помощи » tkinter перевод данных и произведение замеров
1 2 3
zuzu
Моя задача написать программу, где загружается файл, в котором находятся координаты и по ним tkinter рисует фигуру, а потом выдает общую длинну сторон. Файл загружается, как мне данные перевести в координаты, а надо ли вообще переводить, может можно одной строкой, ведь рисует по одной строке. Второй вопрос как измерить длинну сторон, фигуры же могут быть разные.
4kpt_II
1. Тема должна быть в разделе GUI.
2. Фигура состоит из линий? Там нет окружностей?
3. Исходные данные это координаты начала и конца линии или это координаты узлов фигуры?

P.S. Хочу помочь, но нужна информация.
zuzu
2. Фигура состоит из прямых линий, координаты даются последовательно в файле
3. координаты начала и конца линий, хоть возможно я не понял вопроса, в списко подряд точки, их соеденяя получим узлы и линии.

Если упрошенно смотреть, то если фигу например треугольник, то первая и последняя точки одинаковые, но вот не доходит до меня, как мне координаты переделать (текст в стринг?) и вот с длинной, мне через теорему Пифагора решать?
4kpt_II
zuzu
и вот с длинной, мне через теорему Пифагора решать?

Да. Теорема Пифагора.

Для построения смотрим в сторону.

canvas = Tkinter.Canvas(root, width=..., height=...)
canvas.create_polygon(x0, y0, x1, y1, ..., xn, yn, options)

P.S. Размер для канваса можно высчитать по минимальным и максимальным точкам полигона.

zuzu
что-то у меня импорт не получается, значение файла:
54, 254
204, 104
254, 154
354, 54
454, 154
504, 104
654, 254
54, 254
zuzu
def _open():
op = askopenfilename()
for l in fileinput.input(op):
txt.insert(END,l)
точнее, я не помиаю, как мне значения перевести в координаты
за ним
= canvas.create_line(x0, y0, x1, y1, …, xn, yn, options)
4kpt_II
Это уже другой вопрос. Прикрепляйте файл - посмотрим…
zuzu
я понимаю, что должен превратить в стринг..
zuzu
input
4kpt_II
Получить данные из файла:

with open("ato4ki.txt") as file_:
    result = []
    for line in file_:
        for data in line.strip().split(", "):
            result.append(int(data))
    print result

P.S. Можно написать все в двух выражениях, но учитывая, что Вы только начинаете, решил максимально просто расписать.

P.S.S. Будут вопросы - пишите…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB