четверг, 28 января 2016 г.

Релиз версии 0.4.0

Для нас уже стало доброй традицией выпускать новую версию в начале года. По этому встречайте релиз новой версии 0.4.0. И так что же нового приносит нам этот релиз?
Если вы и так в курсе всех изменений, а может даже пробовали тестовые сборки, тогда смело можете дальше не читать. Нечего терять время! Идите на наш сайт www.valentina-project.org и скачивайте версию 0.4.0. Специально для вас мы подготовили сборки для Windows, Mac OS X, Fedora, openSUSE и Ubuntu.

Поскольку с момента последнего релиза 0.3.3 прошло 8 месяцев, мы не будем рассматривать абсолютно все изменения. А остановимся только на некотором количестве основных. И так поехали!

Мерки

Главной целью этого релиза было решение проблемы с мерками. Как вы наверное знаете, это очень обширная тема и вряд ли за раз ее можно решить, но кое какой прогресс все же наблюдается. 

Главной проблемой было отсутствие необходимых мерок, а список поддерживаемых был напрямую зашит в спецификацию формата файла. И нам очень часто об этом напоминали. Немножко выручали прибавки которые можно объявить в самом файле, они же и могли выступать в качестве мерок. Но такой способ имел свои недостатки, из за неудобства постоянного переноса данных с одного файла в другой. Те кто следили за проектом знали о такой проблеме.

И в решении этой проблемы нам поможет специальная утилита Tape (с анг. "Лента"). Теперь заботы о работе с файлами мерок полностью перенесены на плечи Tape. Каждый рас когда вам нужно будет отредактировать или создать новый файл с мерками будет запускаться именно Tape. Файлы мерок теперь ассоциируются именно с Tape. Также для удобства вызвать Tape можно прямо из меню Valentina: Мерки -> Создать/изменить. 

С приходом Tape решилось несколько ключевых проблем:
  1. Отпала необходимость в ручном создании файла мерок. Как правильно организован файл это уже теперь забота Tape. Соответственно появился дополнительный контроль за введенными данными.
  2. Полная переработка формата файла мерок позволила полностью избавится от фиксированного количества мерок.
  3. Введены два типа мерок: известные и пользовательские. Это дает возможность сохранить функцию автоматического перевода имен мерок и исключить коллизии с пользовательскими именами. Каждая пользовательская мерка имеет символ "@" в начале имени. Таким образом ее легко отличить от "известной" в формуле. Этот символ обязательный для всех пользовательских мерок и удалить его Tape не позволит.
  4. Прямо из Tape стала доступна база данных о всех известных программе мерках со схематическим рисунок и описанием. Полная схема всех известных мерок так же доступна на странице Measurements.
  5. Ранее для индивидуальных мерок можно было назначать только значения. А теперь же каждое значения можно рассчитывать по формуле, если таковая имеется. Все имена мерок, которые были объявлены выше по списку, также можно использовать в формулах. Доступно перемещение мерок вверх и в низ по списку.
  6. Побочным эффектом такой схемы стала возможность создания файлов шаблонов. Которые по сути не что иное как пустые файлы с мерками. В каждом таком шаблоне можно один раз описать список необходимых мерок и их формулы, остальные значения просто оставив пустыми и использовать как основу. Это освобождает от необходимости создавать файл каждый раз с нуля или чистить существующий. Что кстати очень легко, поскольку позднее мы добавили функцию создания мерок с уже существующего файла, где Tape за вас очистит все поля значений.
  7. Поскольку файл мерок не возможно сейчас встроить в файл выкройки, возможны ситуации с утратой выкроек. Специально для такого случая предусмотрена функция восстановления списка мерок. Она вам не поможет восстановить значения мерок, так как данных просто нет в файле выкройки, но взамен вытащит список всех мерок которые были использованы в формулах.
  8. Прибавки так же претерпели изменения. Теперь все они имеют символ "#" в начале имени. И работают только в режиме индивидуальных мерок. Теперь сохранить стандартные мерки с помощью прибавок не получится.
  9. Для быстрого поиска в большом количестве мерок в Tape доступно поле для поиска.
Ранее большую проблему вызывало создание файла выкройки, а также отдельно файла мерок. Каждый раз при создании новой выкройки программа заставляла пользователя выбрать тип мерок: индивидуальные или стандартные. И соответственно создавала файл с мерками. Плюс ко всему путь к меркам был абсолютным. Что очень не удобно, если выкройка была перемещена в другое место или передана на другой компьютер.

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


Дальше, если вам нужны будут мерки, необходимо их создать с помощью Tape и уже тогда загрузить (привязать) к выкройке. При этом программа запишет относительный путь к файлу мерок. Этот подход все же плохо работает для стандартных мерок. Но показал себя очень хорошо для индивидуальных, которые удобно сохранять и передавать относительно файла выкройки. Например в той же самой директории.

Каждый файл мерок перед загрузкой теперь проверяется на соответствие необходимого количества мерок в списке для корректного расчета выкройки.

Программа следит за изменением файла выкройки и активирует функцию синхронизации если файл был изменен. Но синхронизировать или нет решает сам пользователь.

Если вы случайно подключили мерки, но передумали их использовать, еще не поздно все отменить. Для этого существует специальный пункт меню.

Переводы

В жизни каждой программы наступает период когда одного языка интерфейса явно не достаточно. Конечно для версии 0.4.0 это не новая функция. И переводы на несколько языков существовали уже давно. Но это если говорить только об переводе интерфейса. Нас же сейчас больше интересует перевод мерок. Достаточно интересная функция. Но еще более интересной ее сделала идя одного нашего пользователя.

Дело в том что для мерок не работает подход перевода один к одному. То есть height можно перевести буквально "рост", а можно использовать традиции системы конструирования и перевести как "Р". Как можно догадаться таких систем очень и очень много. И вариантов перевода может быть столько же.

Поэтому нам пришлось собрать информацию о всех известных нам мерках и дать им всем имена согласно нашей внутренней системе. Все эти мерки представлены на странице Measurements. Но перед тем как перевести эти названия на родные для системы конструирования имена их тоже пришлось каталогизировать. Итого у нас получилось 55 систем конструирования не считая внутренней!

Для перевода мы используем специальный сайт, где принять участие в переводе и помочь исправить ошибки может каждый. Кстати русским языком занимается очень мало людей, и если вы чувствуете в себе силы нам помочь милости просим. Все ваши изменения будут затянуты в репозиторий автоматически при следующей синхронизации, так что знайте - ваш труд не останется не замеченным.

По этому при выборе языка интерфейса не забывайте и о системе конструирования которая вас интересует. 

Тестирование

Тестирование - головная боль для каждого большого и сложного проекта. И без автоматизации здесь ну никак не обойтись. Наконец то у нас настали перемены в этом плане.

После помощи со стороны стороннего разработчика был расширен список ключей командной строки для запуска Valentina. Главной целью конечно было не тестирование. Такой список ключей вам понадобится если вам нужно автоматизировать генерацию лекал. С одной стороны мерки и выкройка, с другой роскладка с деталями. Все автоматически и без вмешательства человека.

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

Мы будет и дальше продолжать увеличения количества тестов. Что правда не отменяет обычной вашей жалобы на не работу того или другого функционала.

Печать

Тело человека ну не как не поместится на обычном листе формата А4 в масштабе 1:1, который доступен большинству прямо дома. Поэтому следующей проблемой после создания лекал было где и как их распечатать. Рецептов было найдено много, некоторые даже публиковались в списке рассылки и на странице в Facebook. И конечно все они строились на использовании внешней программы, что мягко скажем не удобно.

Поэтому следующим логическим шагом стала функция печати. Которая становится доступной после создания раскладки.
В пункте меню Файл -> Раскладка вам будет доступно несколько опций на выбор:
  • Печать оригинального файла, в масштабе 1:1.
  • Печать в PDF.
  • Печать листов плиткой (постер).
На последних двух стоит остановится поподробней. 

Пользователи Линукс дистрибутивов знают о такой полезной функции как PDF принтер. Она им доступна прямо из коробки. А вот пользователям Windows нужно сделать дополнительные телодвижения и установить все самостоятельно. Специально для такого случая возможность "печати" в PDF добавлена в программу.

Как уже было подмечено ранее раскладка с выкройками никак не поместиться на листе формата А4. Даже если вы попытаетесь печатать каждую дель отдельно, пытаясь ее туда уместить. Стандартным решением здесь будет разбивка листа по принципу плитки с некоторым количеством нахлеста, для лучшей склейки. Такой метод вряд ли подходит для промышленного применения, а вот для любителя в самый раз.


А теперь внимательно посмотрите на раскладку выше. Как вы думаете это можно назвать обычным рисунком или постером, на которые рассчитаны обычные программы? На мой взгляд нет. Поскольку несколько листов попадут как раз в центр пустого пространства детали и останутся абсолютно чистыми. И как их теперь склеивать если даже полей для склейки не оставлено? А такое очень часто бывает с такими программами.

А вот что получилось у нас. Символ ножниц показывает рекомендуемое место отрезания. Каждый лист имеет номер ячейки к которой он относится и информационно об общем количестве листов. 

Экспорт раскладки

Совсем коротенький пункт. С помощью внешней библиотеки начиная с этой версии дополнительно стал доступен экспорт изображения раскладки в DXF формате.

Инструменты

В этом релизе было добавлено несколько новых инструментов:
  • Дуга за заданной длиной и начальным углом.
  • Точка пересечения дуг.
  • Точка пересечения окружностей.
  • Точка касательной дуги и оси.
  • Точка касательной окружности и оси.
  • Инструмент Выточка.
Так же изменено поведение кривых. Теперь по умолчанию контрольные точки кривой прячутся после снятия выделения с нее.

Добавлено несколько новых внутренних переменных:
  • Начальный и конечный углы дуги.
  • Радиус дуги.
  • Начальный и конечный углы кривой.
Инструмент Деталь теперь более придирчиво проверяет введенные данные. И выводит сообщение об ошибке если список объектов не соответствует критериям.

Интерфейс

Мы разработали рабочий процесс который состоит из трех этапов: Чертеж, Детали, Раскладка. Это несколько отличается от того, что пользователи привыкли видеть в обычных графических редакторах. Многие из них путались и постоянно застревали при переходе из чертежа в детали. Поэтому мы стали выводить дополнительные подсказки и предупреждающие сообщение о том что делать дальше.
А так же между кнопок режимов показывать направление движения.

Большого изменения претерпела вкладка Раскладка. Ранее это было отдельное окно, которое появлялось взамен основного. И покидать его не можно было, иначе происходила утрата результатов создания раскладки.


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

Специально для поддержки hi-dpi мониторов доступных пользователям Mac OS X были перерисованы иконки всех инструментов.

Дальнейшие планы

О наших дальнейших планах мы рекомендуем ознакомится на странице Road map.

6 комментариев:

  1. Роман! здравствуйте! очень хочу работать в вашей программе! но видео Ольгой Макарюк сняты по старым версиям и ваши видео на ютубе по 3 версии ,да ещё почему то у меня без звука((( .Помогите разобраться! чувствую-я нашла,что искала!
    с ув Анна

    ОтветитьУдалить
    Ответы
    1. Здравствуйте. К сожалению инструкций по новой версии 0.4 не будет. Инструкция будет подготовлена только к преддверию выхода 0.5. Видео Ольги все еще показывают основные моменты работ. И да, все наши видео без звука по двум причинам: для создания роликов нужно на этом специализироватся и проект не ориентируется на какой то отдельный регион, не все люди знают английский или русский.

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

      И не забывайте главное, проект отрытый и мы не требуем деньги за нашу программу. Такого рода проекты держатся на плечах членов сообщества. Станьте активным членом сообщества и другие члены сообщества вам будут отвечать.

      Удалить
    2. Роман! спасибо! С большим удовольствием поддержу проект,но как стать членом сообщество- ткните носом))) А вам хочу сказать огромное Спасибо за то дело,что вы воплотили в этом проекте!.......
      где можно найти регистрацию в сообществе? В контакте ,гугле,ютубе подписалась..

      Удалить
    3. Член сообщества это абстрактное понятие, нету конкретного места где бы вы зарегистрировались и стали бы членом сообщества. Конечно есть репозиторий, где постят сообщения об ошибках и форум. Но это все будет доступно вам только если вы знаете английский. Для меня член сообщества это человек который использует программу, участвует в обсуждениях, сообщает об ошибках, делает просьбы о новом функционале.

      Русскоязычная часть сообщества мало активна. По этому обсуждений публичных нету. Группа в контакте можно сказать мертва. По всех вопросах обращаются прямо ко мне.

      Удалить
  2. Скажите, а как измерить расстояние между точками?

    ОтветитьУдалить
    Ответы
    1. Здравствуйте Юлия, специально чтобы ответить на ваш вопрос я написал новый пост. Пожайлуста перейдите вот по этой ссылке http://valentina-project.blogspot.com/2016/10/blog-post_21.html.

      Удалить