Развитие Редактора схем

Стартовая страница Форумы Новые идеи Развитие Редактора схем

Просмотр 15 сообщений - с 1 по 15 (из 119 всего)
  • Автор
    Сообщения
  • #29584
    manjey73
    Участник

    Бич всех графических редакторов — как правило полное отсутствие функционала позиционирования объектов. Только в примитиве — переместить, растянуть, ввести координаты угла…

    1. Где перемещение относительно другого объекта за произвольную точку (точка линии, середина линии, угол, центр окружности, точка дуги и так далее) ?
    Например в CAD системах есть уже отрисованный объект, рисуем линию вдоль него, используя как точку привязки например угол объекта, далее Ctrl+D берем произвольную точку и перемещаем от объекта на X вводом цифр, при чем либо перпендикулярно изначального объекта, под углом (возможен ввод угла) и так далее.
    Если есть знакомые, которые работают в CAD, попросите показать как это делается легко и просто.
    Ctrl+Shift+D создает копию объекта с последующим позиционированием.
    Я это говорю не только в части появления функционала рисования примитивов, но и в части позиционирования динамических рисунков, текста на мнемосхеме…. Сейчас это просто жесть, выровнять объекты между собой.

    2. Слои и привязки. Нужен «якорь» по отношению к фоновому изображению (точнее координатам фона, именно фона, так как возможно на первичном слое может и не быть изображения, а только указан цвет фона.
    Но так же нужен «якорь» по отношению к любому изображению. Например мы можем нарисовать вентиляцию используя ее объекты — трубопровод, вентилятор, фильтр, поворот, тройник и так далее. Если это делать сейчас — это потеря большого количества времени, так как надо отмасштабировать, все подвигать и так далее, что впрочем в любом случае делать, но если потом надо переместить хотя бы на чуть-чуть, или случайно зацепил, то все, радость очередной потери времени обеспечена.

    А так, привязал к главному объекту, например узловая точка, которую привязал к фону и никто никуда не едет, пока не снимешь привязку. При чем если снимать привязку с главного объекта, перемещать можно будет всю сборку рисунков.

    3. Рамки статусов вокруг объектов — сглаживание углов сделайте сразу, чтобы в настройках можно было изменить угол.

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

    з.ы. дополняйте… а то вот только начал, а уже устал 🙂
    Пример

    Сделать весь трубопровод Вентиляции (ну розовый на примере в рамке) с чертежа в svg занимает ну минут 5. в моем случае NanoCad + PDF + импорт в Inkscape + online редактор SVG для поворота если необходимо, заодно еще и оптимизация как оказалось, уменьшает размер.
    Изменить цвет потом с розового на любой свой, добавить параметр прозрачности, ну еще полминуты.
    А вот выставить его на мнемосхеме с соблюдением масштаба занимает еще столько же, если не больше.
    К сожалению нельзя сделать в одном масштабе, точнее можно, но там появятся пустые поля вокруг изображения, и тогда позиционирование усложниться.
    И все ради того, чтобы была возможность менять картинки в динамическом рисунке…
    А если это собирать кусочками (фильтр, вентилятор, нагреватель и т.д.) процесс позиционирования еще усложняется в несколько раз.

    з.ы. Михаил, перед тем как, соберите пожелания народа в части позиционирования и создания мнемосхем. А то потом будет дольше дорабатывать 🙂

    #29585
    manjey73
    Участник

    5. Добавлю к 4, если мы якорим одно изображение к другому, добавить возможно сделать его еще и дочерним, чтобы он воспринимал все настройки — например цвет статуса, мигание (если появится), прозрачность и т.д. чтобы все это не выставлять по кругу. Просто настроили первый, потом привязываем второй с указанием принять все настройки первого.

    #29586
    JurasskPark
    Участник

    По поводу якорей и привязок, если объединить одним словом — это сетка координат.
    Такие формы и сетки легко сделать.
    Тут даже скорее вопрос стоит, что:
    1) размеры объекты должны увеличивать кратно X: 5, 10, 15… 45
    2) движение по сетке должно быть кратно.

    Да. Сейчас будет ответ: нарисуй подложку, но если кто добавлял новый элемент в подложку (SVG), то знает, что элементы сдвигаются.
    А например, на старый трубопровод спозиционировать новую трубу — это двигать по пиксельно.

    #29587
    JurasskPark
    Участник

    P.S. Да тут попахивает доработка на 50 млн. руб.
    Товарищи, скидываемся на разработку или открываем OpenProject и пишем сами. 🙂

    #29588
    manjey73
    Участник

    @jurasskpark сетка координат это одно, но если изображение составное, сейчас для смещения надо либо выделять, либо двигать каждый. Если будет якорь и в дополнение блокировка, сняв блокировку можно двигать все Родительское изображение вместе с дочерними.
    Вот я о чем.

    з.ы. Редактор все равно будет перерабатываться под NET6, так что хотя бы часть учесть СРАЗУ а не потом 🙂

    И уходите товарищи от примитивов редакторов графики, ибо еще и на это тратить время тоже долго…

    • Ответ изменён 2 года, 9 месяцев назад пользователем manjey73.
    #29590
    manjey73
    Участник

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

    Вот если бы еще и цветом можно было управлять сразу, то есть добавлять атрибут в SVG, разрешающий изменение цвета и на лету его менять, будет еще круче.
    Так как сейчас надо делать копию svg с другими цветами.
    Ну, розовая труба вся занимает 7-8 кб всего. Но не всегда изображения такие маленькие

    #29768
    manjey73
    Участник

    Динамический текст, реализовать вариант написания как в Модуле автоуправления.
    Пример

    Текст {n} — текст и значение канала с размерностью.

    #29771
    Mikhail
    Модератор

    Спасибо. Назвал бы это шаблон текста.

    #32358
    sergyltd
    Участник

    Здравствуйте
    Я конечно могу ошибаться. А не легче импортировать из какой-нибудь диагаморисовалки? Dia? Visio? Ну ладно, вражеские не в счет. А если коммерсантам поговорить с авторами Автографа и привязать его к скаде? Обоюдная выгода — для скады нормальный редактор, для автографа доп продажи.

    #32362
    a80808
    Участник

    У RS SCADA есть интерфейс к Grafana

    #32363
    manjey73
    Участник

    Я так понимаю речь не о Grafana а о картинках.
    У меня есть идеи, но они применимы только к текущему варианту, а что будет в редакторе новом неизвестно.

    В текущем варианте можно сделать ОДНО изображение скажем насоса и раскрашивать его при вставке в мнемосхему. Это реализовать можно.
    Но над SVG файлами придется работать ручками для такой возможности, ну либо писать утилиту, которая будет добавлять такой функционал в картинку.
    Там собственно то нужно, придумать названия атрибутов для редактирования цвета, фона, толщины пера и т.д. и интегрировать их в xml картинки. А Редактором соответственно их считывать и принимать к действию.

    #32364
    sergyltd
    Участник

    Опять же, нет предела совершенству. Я то говорил об ЭЛЕМЕНТАРНЫХ удобствах. Например выравнивание, групповое изменение свойств (опять же, пусть не любых свойств). Делать из редактора фотошоп это хорошо, но уж слишком.
    Элементарный пример. Сделал 10 цифирей, посмотрел в браузере, — маловаты. Вернулся выделил все 10 и сделал длину на 10 пикселей больше. Просто и удобно. Или цвет поменять. Ну не нравится кому-то зеленый, выделил сделал синий.
    Но вот таких мелочей можно придумать много, и если их реализовывать, то получится в итоге полноценный редактор для диаграмм. Поэтому я и заговорил об импорте, ведь проще наверное?

    #32367
    manjey73
    Участник

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

    Фотошопа не планируется, но если нарисовать ОДНУ картинку, ей легко можно поменять цвет средствами библиотеки SVG, надо только добавить соответствующий код для этого.
    Ну и поработать над картинкой либо ручками, либо сделать утилиту для удобства.
    Но можно и ручками, там не сложно на самом деле.

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

    #32368
    manjey73
    Участник

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

    #32370
    sergyltd
    Участник

    Ну это вопрос масштабный и про много всего. Мне кажется, что если говорить о рисунках, — насосы, двигатели, трехмерные трубы, — то надо просто увеличивать библиотеку примитивов. Делать рисунки с прозрачным фоном и в нескольких экземплярах по цветам. А дальше просто изменять рисунки в зависимости от статуса. Если говорить о схемах, — электрическая, гидравлическая, и т.п, то опять же примитивы, но в них нет графики — линии. Просто изменять цвет линии в примитиве. Это я по опыту панелей говорю. Мне всегда хватало библиотеки как минимум на 90%. Ну а если клубнички хочется, так GIMP в руки.
    А вот например в OpenSCADA, все что можно сделать линиями вобще описывается текстом. Редактор просто переделывает нарисованную линию (ну или круг, эллипс, многогранник) в текст — координаты определяющих точек организованные в группу. И дальше его хоть в xml, хоть так пользовать.
    А вот позиционирование оно требуется всегда — хоть для рисунков, хоть для линий.

Просмотр 15 сообщений - с 1 по 15 (из 119 всего)
  • Для ответа в этой теме необходимо авторизоваться.