|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.11.2023, 18:41 | #1 |
Новичок
Джуниор
Регистрация: 01.11.2023
Сообщений: 3
|
3D ASCII аrt фигуры Python
Привет всем!
Я новичок в пайтоне, но мне дали задание, которое я совсем не понимаю как выполнить Необходимо нарисовать 3D ascii art фигуры(куба, например) в консоли, при этом чтобы по желанию пользователь мог превратить ее в 2D. Также, чтобы он мог задавать размеры и цвета фигуры. У меня были наработки, но они все были неудачными. Есть идея сделать это через трехмерную матрицу, но я не знаю как это сделать, чтобы фигура выглядела правильно и действительно 3D. Помогите пожалуйста понять или показать способ реализации задачи, буду очень признателен! |
01.11.2023, 19:43 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Код:
|
01.11.2023, 20:21 | #3 | |
Новичок
Джуниор
Регистрация: 01.11.2023
Сообщений: 3
|
Цитата:
И еще одно условие: Реализуйте метод, который преобразует 3D-представление фигуры в 2D-представление, пригодное для ASCII-арта. Как человек объяснил, можно сделать через матрицу, чтобы при выводе 2D фигуры использовалась одна матрица с передней стороной, а не все. Честно, я не знаю как это представляет человек который задал задание, он слабо объяснил, но хоть что-то... |
|
02.11.2023, 01:35 | #4 |
Форумчанин
Регистрация: 17.06.2012
Сообщений: 976
|
Учтите количество пробелов в фигуре 3D
применяя простейший принцип до сих пор в теме не прозвучавший Код:
Если автору нужен принцип перевода чтоб получилась диметрия тогда важно читать мои темы да там всё на языках высочайшего уровня qb64 & C# p.s. применяется массив p.p.s. то бишь искомая автором матрица p.p.p.s. но пока рисуйте ASCII параллелограмм
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
Последний раз редактировалось сфинкс; 02.11.2023 в 11:24. |
02.11.2023, 08:02 | #5 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
сфинкс, ну что, учли? Почему у вас куб превратился в это?
|
04.11.2023, 00:52 | #6 | |
Новичок
Джуниор
Регистрация: 01.11.2023
Сообщений: 3
|
Цитата:
|
|
04.11.2023, 10:09 | #7 |
Форумчанин
Регистрация: 17.06.2012
Сообщений: 976
|
впервые в теме пишу ответ: цикл
пробелов количество: цикл и длина горизонтали количество: цикл и в результате вложенные циклы вариант балки длиннее показательнее Код:
программа ниже онлайн работает если ввели данные счастливые https://rextester.com/HPZ41539 https://jdoodle.com/ia/PXs и жмите Execute
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
Последний раз редактировалось сфинкс; 05.11.2023 в 09:37. |
04.11.2023, 12:47 | #8 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,331
|
Решил попробовать, но натолкнулся на детали, в которых не стал рыться
Хотелось построить изображение параллелепипеда с размерами a*b*c. 1. Из черчения известно, что для отображения глубины надо рисовать этот размер под углом 30 град и в два раза меньшим. 2. Для визуального восприятия прямоугольника как квадрата надо соблюсти отношение сторон как 3:4. Дополнительно надо учесть соотношение между размером знакоместа и расстоянием между строками. Следующий код рисует параллелепипед, но только полным подбором параметров ручками. И тут не учитываются масштабирующие коэффициенты: Код:
Код:
Как-то так, ...
|
05.11.2023, 18:34 | #9 |
Форумчанин
Регистрация: 17.06.2012
Сообщений: 976
|
Копируя заднюю плоскость смещайте
по диагонали из сверху справа налево вниз в цикле и там видимо 5 слоёв плоскостей и возможно смещение направо вниз Код:
что возможно проблематично на искомом языке зато подобие Locate есть в си-образных языках например в похожем на qbasic qb64 C#
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
Последний раз редактировалось сфинкс; 05.11.2023 в 19:28. |
07.11.2023, 08:30 | #10 |
Форумчанин
Регистрация: 17.06.2012
Сообщений: 976
|
Пока никто новые задачи не задаёт
данная тема возможно решаема на python заполнив массив символами как у меня на qbasic qb64 и выведя массив на экран Мой алгоритм работает онлайн в эмуляторе qb64 на js https://qbjs.org/?mode=auto&src=http...t.php?aid=2387 qbjs.org/?mode=auto&src=https://qb64phoenix.com/forum/attachment.php?aid=2387 и планирую создать ссылки на некоторые мои визуальные программы Спросив на форуме qb64 создали несколько вариантов да я ещё не проверял Картинка 36 КБ Чтоб закончить: программа без Locate Код:
Код:
https://qbjs.org/?mode=auto&src=http...t.php?aid=2390 qbjs.org/?mode=auto&src=https://qb64phoenix.com/forum/attachment.php?aid=2390
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
Последний раз редактировалось сфинкс; 07.11.2023 в 13:24. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Python - как установить Easy-Machine-Learning-Object-Detection при уже установленном Python 3.9 | Krasi | Общие вопросы по программированию, компьютерный форум | 4 | 23.12.2021 15:49 |
Код, вычисляющей длину линии вертикального разреза фигуры, значения площадей фигуры слева и справа от линии разреза, по значениям аргумента, введенного с консоли | nertex | Помощь студентам | 21 | 22.09.2019 12:13 |
[Python] Нужно решить в среду вечером 5 -6 заданий для начинающих на языку Python. Пример заданий смогу выслать. Задания на английском языке. | foxylen | Фриланс | 2 | 17.03.2019 12:30 |
Начальный уровень Python. Функции - Python | YYYUUU | Python | 5 | 09.06.2017 12:09 |
Движение одной фигуры,вслед изменения высоты другой фигуры. | 7vlad37 | Microsoft Office Excel | 3 | 21.07.2011 18:01 |