Раскрой коробки картонной четырехклапанной

Любая прямоугольная коробка имеет 3 размера, 2 из которых образуют сторону с клапанами. Возможно 3 варианта раскроя для одних и тех же размеров, в зависимости от стороны с клапанами. Разные варианты имеют разные габариты и разные площади раскроя. С помощью расчета нужно подобрать вариант для оптимального расходования листов картона.

Коробка

Картонная коробка с размерами

Размеры a и b образуют сторону с клапанами.

Размер d должен быть достаточным для надежного склеивания коробки, например 5 см. Картон надежно склеивается клеем ПВА.

Должно соблюдаться условие:

b \geq a

На изображениях в статье не учитывается толщина картона.

Раскрой на одном листе картона

Раскрой развертка картонной коробки

Обязательное условие:

b \geq a

Размеры минимального листа картона рассчитываются по следующим формулам.

E = 2 (a + b) +d

F = c + a

Раскрой на двух листах картона

Если нет достаточно большого листа картона, то коробку можно сделать из двух небольших листов картона. В этом случае будет два хвоста для склейки.

Раскрой развертка картонной коробки из двух половин

Обязательное условие:

b \geq a

Размеры минимального листа картона рассчитываются по следующим формулам.

G = a + b +d

F = c + a

Таблица для расчета раскроя

Пример расчета раскроя опубликован в Гугл Таблицах. Рассчитывается 3 варианта раскроя в зависимости от стороны расположения клапанов. Можете создать копию документа (Файл -> Создать копию) и подставить свои размеры коробки.

 

 

Ввод символа рубля с клавиатуры

В Линуксе можно настроить специальную клавишу Compose, которая упрощает ввод символов, которых нет на клавиатуре.

По умолчанию определен ввод многих символов, но пока среди них нет символа рубля ₽.

Чтобы вводить символ рубля комбинаций клавиш Compose дефис p (английская), запустите в терминале следующую команду.

echo -e 'include "%L"\n<Multi_key><minus><p>:"₽"' > ~/.XCompose

Эта команда создаст в домашней папке файл .XCompose с определенным содержимым. Ввод символа будет доступен только пользователю, которому принадлежит эта домашняя папка.

Если файл .XCompose уже существует, то следует использовать следующую команду.

echo -e '\n<Multi_key><minus><p>:"₽"' >> ~/.XCompose

Удачи!

Что происходит при выравнивании кода табуляцией

Среди программистов существует спор, что использовать для отступа: табуляцию или пробелы.

Проблема с табуляцией в том, что многие используют ее и для выравнивания.

Следует различать отступы и выравнивание. Отступ (indent) используется, чтобы сместить начало строки. Выравнивание (alignment) используется внутри строки, чтобы сместить одну часть строки относительно другой.

Отступы можно делать и табуляцией, и пробелами, а выравнивание только пробелами.

Допустим, программист сделал выравнивание табуляцией шириной 4 пробела, а потом решил поменять ширину.

Ширина: 4 пробела (эталонное выравнивание)

int variable                = 1;
int superVariable           = 2;
int anotherSuperVariable    = 3;

Ширина: 2 пробела

int variable        = 1;
int superVariable     = 2;
int anotherSuperVariable  = 3;

Ширина: 3 пробела

int variable            = 1;
int superVariable       = 2;
int anotherSuperVariable   = 3;

Ширина: 8 пробелов

int variable                            = 1;
int superVariable                       = 2;
int anotherSuperVariable        = 3;

Как видно, выравнивание разваливается.

Иллюстрация табуляция для выравнивания кода в программировании

Сборка Qt Virtual Keyboard и добавление русской раскладки

Qt Virtual Keyboard Русская раскладка

Qt Virtual Keyboard — это библиотека предоставляющая виртуальную экранную клавиатуру. Она входит в библиотеку Qt начиная с Qt 5.7. Точнее, она и раньше входила, но была доступна только в коммерческой версии.

По умолчанию клавиатура из официальной сборки Qt поддерживает только английскую раскладку. Если нужны раскладки на других языках, то проект Qt Virtual Keyboard нужно пересобрать.

Далее приводится инструкция по сборке Qt Virtual Keyboard и добавлению русской раскладки в Линукс. Все действия выполняются в консоле. Для Виндовс инструкция не приводится, но она похожа.

Библиотека Qt должна быть установлена вместе с исходным кодом. Для этого при установке нужно отменить пункт Sources.

Установка исходного кода Qt

Создадим папку для сборки и перейдем в нее.

mkdir /tmp/build-qtvirtkb
cd /tmp/build-qtvirtkb

Создадим переменную, содержащую путь к папке, в которой установлен Qt.

QTDIR=/opt/Qt5.9.1/5.9.1

Переменная нужна только для того, чтобы далее не прописывать полные пути.

Сконфигурируем проект Qt Virtual Keyboard с помощью qmake.

$QTDIR/gcc_64/bin/qmake "CONFIG += lang-en lang-ru" $QTDIR/Src/qtvirtualkeyboard
 

Языки раскладок задаются в строке "CONFIG += lang-en lang-ru". Таким образом клавиатура будет поддерживать английскую и русскую раскладки. Полный список языков приведен в официальной документации. Если указать"CONFIG += lang-all", то клавиатура будет поддерживать все возможные языки.

Соберем проект с помощью make.

make

Сборка занимает некоторое время.

Следующая команда установит новую сборку. Нужно учесть, что будут внесены изменения в официальную сборку Qt. Она заменит файлы клавиатуры на те, которые получены во время новой сборки. Предыдущие файлы невозможно будет восстановить.

sudo make install

Готово. Теперь в клавиатуре будет русская раскладка.

Если нужно изменить раскладки, то нужно пересобрать проект следующими командами.

make distclean
$QTDIR/gcc_64/bin/qmake "CONFIG += lang-all" $QTDIR/Src/qtvirtualkeyboard
make
sudo make install

Первая команда нужна, чтобы очистить сборку.