GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - valkaaaa/shape-lab: Геометрический конструктор на Python/Tkinter: 15+ фигур, площадь и периметр в реальном времени, экспорт в SVG/PNG/PDF, инструменты линейки и транспортира.

BranchesTags
Open more actions menu

Latest commit

 

History

3 Commits
3 Commits

Folders and files

NameName
Last commit message
Last commit date
shapelab
shapelab
 
 
.gitignore
.gitignore
 
 
LICENSE.txt
LICENSE.txt
 
 
README.md
README.md
 
 
main.py
main.py
 
 
requirements.txt
requirements.txt
 
 

Repository files navigation

ShapeLab v1.2

Python Tkinter License

ShapeLab — настольное приложение для построения геометрических фигур, визуализации их на координатной плоскости и вычисления площади, периметра и других характеристик.

✨ Возможности

  • 15+ фигур: круг, квадрат, прямоугольник, треугольник (обычный, прямоугольный, равносторонний), эллипс, ромб, параллелограмм, трапеция, полукруг, кольцо, звезда, капсула, многоугольник по точкам.
  • Статистика в реальном времени: формулы площади и периметра, промежуточные величины (радиус, диаметр, диагонали, гипотенуза, длина дуги).
  • Безопасный вычислитель: можно вводить 2*pi, sqrt(16), 5^2, sin_deg(30), hypot(3,4) — без риска выполнить произвольный код.
  • Навигация: зум колесом мыши, панорама средней/правой кнопкой, «вписать всё» (F5).
  • Инструменты: линейка, транспортир, рамка выделения.
  • Единицы измерения: мм, см, дм, м, км.
  • Редактирование: перетаскивание, изменение размера за угол, поворот, стили (заливка/обводка), группировка.
  • Слои: на передний/задний план, выше/ниже на слой.
  • Несколько сцен: переключение через вкладки.
  • Undo/Redo: Ctrl+Z / Ctrl+Y.
  • Экспорт: JSON, SVG, PNG, PDF-отчёт.
  • Тёмная тема, сетка, оси координат, подсказки вершин.

📦 Установка

Требуется Python 3.12.

git clone https://github.com/ваш-логин/shapelab.git
cd shapelab
python -m venv .venv
.venv\Scripts\activate     # Windows
source .venv/bin/activate  # Linux / macOS
pip install -r requirements.txt

Tkinter входит в стандартную библиотеку Python. На Linux может потребоваться отдельный пакет:

sudo apt install python3-tk

🚀 Запуск

python main.py

🎓 Быстрый старт

  1. Выберите фигуру во вкладке «Создание» и заполните параметры.
  2. Нажмите «+ Добавить» — фигура появится на холсте.
  3. Кликните по фигуре, чтобы увидеть её параметры в «Статистике».
  4. Потяните за угол рамки выделения — фигура масштабируется.
  5. Переключите инструмент «Линейка» (2) и кликните две точки.
  6. Нажмите F5, чтобы вписать всё содержимое сцены в окно.

⌨ Горячие клавиши

Комбинация Действие
Ctrl+Z / Ctrl+Y Отменить / повторить
Ctrl+C / Ctrl+V / Ctrl+D Копировать / вставить / дублировать
Ctrl+A Выделить всё
Ctrl+G / Ctrl+Shift+G Группировать / разгруппировать
Ctrl+S / Ctrl+O Сохранить / загрузить JSON
Ctrl+N Новая сцена
Ctrl+U Единицы измерения
F5 Вписать всё
1 … 4 Инструменты: выбор / линейка / транспортир / рамка
Esc Сбросить текущее измерение
Delete Удалить выделенное

🖼 Экспорт

Формат Что внутри Зависимость
JSON сцена с фигурами —
SVG векторный рисунок холста —
PNG растровый рисунок холста pillow
PDF отчёт с таблицей параметров reportlab

🤝 Вклад

PR и issues приветствуются. Если добавляете новую фигуру — достаточно написать класс-наследник Shape и зарегистрировать его в App.SHAPE_CLASSES.

📄 Лицензия

MIT — см. LICENSE.txt.

About

Геометрический конструктор на Python/Tkinter: 15+ фигур, площадь и периметр в реальном времени, экспорт в SVG/PNG/PDF, инструменты линейки и транспортира.

Topics

desktop-appeducationgeometryguipythontkinter

Resources

Readme
MIT license
Activity

Stars

1 star

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.