Перейти к содержимому

Фотография
- - - - -

Фришип, вопросы и ответы, обмен опытом, помощь

Фришип Free!Ship проектирование лодок

Сообщений в теме: 1241

#801 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 07 марта 2019 - 19:39

Спасибо, основной смысл понял.

 

Вопрос: потом, при выгрузке шпангоутов, реданы будут на них? (до процесса нарезки на шпангоуты во Фри Шипе еще не дошел)

 

Дело в том, что прототип Гольфстрим - деревянный (фанерный), у меня же в планах стеклопластик.

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

 

Второй вопрос: как Вы оцениваете гидродинамику прототипа?

С моей (дилетантской) точки зрения в проекте заложено ограничение по материалу обшивки - фанера. Она позволяет ее изгибать только в одной плоскости. В моем случае со стеклопластиком таких ограничений нет, что можно будет выиграть при применении поверхностей двойной кривизны? 

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

По гидродинамике особо не скажу, "глубокое V", как "глубокое V" на вид, ловите  правильную центровку. Желательно сделать модель и посмотрть на ходу (потаскать за лодкой хотя бы). Тут опыт нужен а у меня по моторкам он небольшой, так с приятелем иногда "прогрессом" балуемся, а в основном яхты :) ..

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


  • 1

#802 DimaKo

DimaKo

    Старший матрос

  • Основной экипаж
  • PipPipPip
  • 52 сообщений
  • Из:Москва
  • Судно: пешеход

Отправлено 07 марта 2019 - 20:33

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

 

Понял, спасибо. Надо еще раз мануал по ФриШипу прочитать (первый раз прочитал, но в голове осталось только то, чем воспользовался)

Модель будет 1:2 :) летом испытаю с подвесниками

Технологию стеклопластика представляю хорошо (изготавливал кое-что, но не лодки)


  • 0

#803 rabah

rabah

    Яхтенный капитан

  • Инженер
  • 1 265 сообщений
  • Из:Русе-Болгария

Отправлено 07 марта 2019 - 20:52

По моему нижний редан-первый от линии ДП, сделан неправильно в носовой части-см.картинку. Неправильно два редана /нижний и следующий по высоте/ собирать в одну точку у форщевена. Лучше нижний идти паралельно верхнему и оба пересекать линию форщевена на различных местах по высоте.

NA Razmik Baharyan

Rousse-Bulgaria

Прикрепленные изображения

  • golfstream 004.png

Сообщение отредактировал rabah: 07 марта 2019 - 20:57

  • 0

#804 БАР

БАР

    Яхтенный капитан

  • Инженер
  • 25 655 сообщений
  • Из:СПб
  • Судно: СТ-31э
  • Название: Авось

Отправлено 07 марта 2019 - 21:03

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


  • 0

#805 rabah

rabah

    Яхтенный капитан

  • Инженер
  • 1 265 сообщений
  • Из:Русе-Болгария

Отправлено 07 марта 2019 - 21:09

Александр Романович правильно волнуется-нижний редан от килевой линии в ДП незачем идти до транеца. См. внимательно на картинку. Также видно и как закончивается нижний редан у форштевена в проекции Корпус.

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

NA Razmik Baharyan

Rousse-Bulgaria

Прикрепленные изображения

  • g_1.png

Сообщение отредактировал rabah: 07 марта 2019 - 21:24

  • 0

#806 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 07 марта 2019 - 21:27

Модель будет 1:2 :) летом испытаю с подвесниками

Технологию стеклопластика представляю хорошо (изготавливал кое-что, но не лодки)

При испытании "модели"  внимательней с весами. Часто при загрузке модели  используют один груз, размещенный в ЦТ, но это допустимо при испытании водоизмещающих судов, на скоростных накладываются динамические факторы, и нужно моделировать реальную загрузку будущего судна.

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


  • 0

#807 DimaKo

DimaKo

    Старший матрос

  • Основной экипаж
  • PipPipPip
  • 52 сообщений
  • Из:Москва
  • Судно: пешеход

Отправлено 07 марта 2019 - 22:37

Господа, спасибо за Ваш интерес.

В разделе "проекты и чертежи" создал тему по своему проекту.

Предлагаю мои ляпы обсуждать там, а здесь продолжать объяснять мне тонкости Free!Ship.

 

:)


  • 1

#808 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 22 мая 2019 - 02:01

Привет всем!

 

Напоролся на эту ветку.

Несколько лет уже поддерживаю программу FreeShip.

Перевел ее с платной Delphi на бесплатный Lazarus.

Код открытый. Компилируется для Linux и Windows.

https://github.com/m...plus-in-lazarus

 

Исправил несколько глубинных ошибок, которые иногда вылезали.

Делал прочие улучшения...

 

Недавно выпустил прe-релиз 4.1.1.159

Качайте отсюда https://github.com/m...azarus/releases

(откройте выпадалку Assets)

 

Разработку веду на Linux. Потом тестирую на Вин.

Windows сборка тестировалась только на Windows 10. Других версий у меня нет.

 

Многие "плагины" (exe программы) были откомпилированы под старую Винду и даже ДОС - не работают напрямую в Вин10. А может даже и в 8.

Они не мои, Тимошенко. Исходников у меня нет. Перекомпилировать не могу.

В Linuxe, кстати, они работают. Только надо установить Wine.

 

Сообщения о багах лучше постить на гитхаб https://github.com/m...plus-in-lazarus

/issues

 

Удачи!


Сообщение отредактировал mm7: 22 мая 2019 - 02:13

  • 0

#809 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 22 мая 2019 - 17:35

Несколько лет уже поддерживаю программу FreeShip.

Перевел ее с платной Delphi на бесплатный Lazarus.

Код открытый. Компилируется для Linux и Windows.

Пробовал ваш вариант довольно давно. Какие у вас цели (или планы)? Сделать вариант на линукс?Насколько далеко задуманы изменения? У меня тоже давно мысли совершенствования Фришипа. Ща между делом в  теорию сплайнов пытаюсь въехать с переменным успехом.  :)


  • 0

#810 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 23 мая 2019 - 16:40

Пробовал ваш вариант довольно давно. Какие у вас цели (или планы)? Сделать вариант на линукс?Насколько далеко задуманы изменения? У меня тоже давно мысли совершенствования Фришипа. Ща между делом в  теорию сплайнов пытаюсь въехать с переменным успехом.  :)

Изначальный план был откомпилить под Линукс. Т.к. дома у меня Линукс. Потом перетащить с платной Дэлфи на бесплатный открытый Лазарус. Потом нашел несколько багов. Пофиксил.... Косметику навел...

Убрал зависимость от QT.

Сейчас, с приходом 4К дисплеев, отрисовка подтормаживает. (вся 3Д графика сделана "вручную"). Есть мысль перейти на OpenGL.

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

 

Много работы по приведению в порядок интернационализации. Сейчас в коде 3 системы: родная на номерных индексах, где строка на другом языке ищется по номеру (очень неудобная для программирования, так как есть только номер строки, не понятно о чем строка); моя самодельная, где строка на другом языке ищется по строке на англ. Недавно начал внедрение стандартной системы, близкой по принципу к моей, но стандартной, более универсальной и поддерживаемой средой разработки.

 

Б-сплайны и NURBs используются.

А какие у Вас идеи?

Было бы круто совместить с какими нибудь CFD.


  • 0

#811 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 23 мая 2019 - 17:43

Изначальный план был откомпилить под Линукс. Т.к. дома у меня Линукс. Потом перетащить с платной Дэлфи на бесплатный открытый Лазарус. Потом нашел несколько багов. Пофиксил.... Косметику навел...

 

Сейчас, с приходом 4К дисплеев, отрисовка подтормаживает...

 

Много работы по приведению в порядок интернационализации. ...

 

Б-сплайны и NURBs используются.

А какие у Вас идеи?

Было бы круто совместить с какими нибудь CFD.

Про линукс понятно. А вот остальное, Лазарус, 4к дисплеи, интерфейс уже представляется  не столь важным (сейчас). Нужно считаю представлять целевую аудиторию пользователей программы. На данный момент она оправдывает предназначение на которое создавалось, но хочется в итоге получить полноценный инструмент поверхностного моделирования и предварительных расчетов, причем в направлении именно маломерного судостроения.

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

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

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

SFD задача тоже не первой необходимости. Более важно наладить взаимодействие с пакетом САПР. Желательно недорогим и/или имеющим версии для некоммерческого использования. С этим тоже не все просто. 

Я увы не программист, немного лиспом для автокада только пользуюсь,  с некоторыми инструментами поэкспериментировал коллега-программист, но он делфи не жалует, пишет на си. Поэтому вопрос реализации всего пока "в воздухе".Ща  "грызу" теорию :) .Когда сложится в голове все алгоритмы, тогда можно будет оценить трудоемкость реализации.

А вы один проект двигаете, или есть команда?


  • 0

#812 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 23 мая 2019 - 20:22

> Лазарус, 4к дисплеи, интерфейс уже представляется  не столь важным (сейчас).
Для пользователя 4к дисплеи - важно. Если после каждого градуса поворота отрисовка будет по 3 секунды, то это будет мучение.
Хороший интерфейс отражает профессиональность программы. Если она выглядит как-будто на коленке сделана, то и работает, скорее всего, так же.
Лазарус - для пользователей не важно, но программисту нужно иметь лицензию на среду разработки. Делфи - 1500-5600 долларов. Лазарус/ФриПаскаль - бесплатны. Это может помочь вовлечь новых разработчиков.

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

Делфшип это откуда появился Фришип. Движок тот-же. Даже ошибки те же. Даже в их новой ОпенГЛ версии.
Так и не понятно - что за идеи? Что конкретно нужно? В чем конкретно удручает подход программистов?

>т.е введение новых примитивов, например линий какие появились в Максюрфе.
С Максюрфом не знаком. Что за линии?

>Есть идея параметризации УВ, что тоже открывает большие возможности.
Поподробнее можно?

>Сплайны и нюрбс тут используются условно, хоть и пишут что сабдивижен алгоритм им соответствует, на деле все сложно.
Ну как - условно? После сабдивижена как раз идет сглаживание по Б-сплайн поверхности.

>Читал народ еще в первых версиях фришип удивлялись почему не взята нюрбс геометрия. И это тоже возможный вариант развития.
НУРБС поверхности тоже есть. Но с ними же моделировать - морока. В хелпе все расписано, что когда использовать.

>SFD задача тоже не первой необходимости.
Те, кто считает гидродинамику, могут и не согласиться. Сейчас для каждого типа корпуса надо использовать свой алгоритм. Не все плагины даже просто запускаются в современной Винде. Надо-бы проконтактировать Тимошенко и попросить его дать хотя-бы свежие ехе-шки. Лучше, конечно, если он откроет код. Но код, насколько я знаю, на фортране, мне не известно на каком, и какие библиотеки задействованы.
А ЦФД, надеюсь, даст возможность оценить гидродинамику более универсально, для разных типов корпусов и режимов хода.

>Более важно наладить взаимодействие с пакетом САПР. Желательно недорогим и/или имеющим версии для некоммерческого использования.
Так есть же экспорт в DXF, STL, IGES и т.п. А какое еще надо взаимодействие?

>А вы один проект двигаете, или есть команда?
Один. Но иногда люди помогают - иконки вот нарисовали. Тоже большое дело.
 


  • 0

#813 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 23 мая 2019 - 22:21

С Максюрфом не знаком. 

А зря :) .В общем то при разработке любой программы (или изделия) стоит глянуть как устроены вещи подобного назначения. 

Линии в максюрфе появились не так давно, поначалу были просто поверхности (как грани в FS). Собственно линия (кривая)-это ребро без грани. Математика та же.

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

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

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

Параметрическую информацию нужно будет писать в файл.

По нюрбс. Во фришипе используется алгоритм Кэтмела-Кларка, в каких то случаях он может соответствовать нюрбс-поверхностям, но я не заметил. Разница всегда есть. Нюрбс расчет вроде использует только экспорт в иджес, и то с переменным успехом. Соответственно импорт-экспорт затруден, и не всегда корректен.

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

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

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


  • 0

#814 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 24 мая 2019 - 02:04

поясню.
в общем-то я не разрабатывал движок. Ни НУРБСы, ни Б-Сплайны, ни подразделение, ни отрисовку... Это все было сделано делфтовцами. (Тимошенко добавил плагины для разных рассчетов. И, вроде, интернационализацию. Може еще чего.)
Я же писал, я перевел на Лазарус и откомпилил под Линукс.
Это уже сделано. Работает.
(Заодно Лазарус компилит под Виндовс тоже. Можно, в принципе, под Фрю или под Мак откомпилить.)
Попутно я выловил несколько багов в движке и прочих местах.
Сделал генерализацию/специализацию списков обьектов, из-за чего стала безопаснее работа с памятью, ушли утечки и висяче пойнтеры. Ну, это все внутри, юзерам видно только как более устойчивая программа, меньше глюков и падений. Программисты поймут.
Ну и навел косметику. Сделал превью при выборе проекта, и тп.

В частности только вчера исправил баг в выводе в ИГЕС. В него выводятся Б-сплайн поверхности 3-го порядка, тип 128.
Видимо, что рисуется, то и выводится. Иначе будет отличаться.

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

Линии (Б-сплайн кривые) в движке уже есть. Я не понял, чем они не устраивают. Можно выбрать несколько точек и добавить по ним линию. Подразделение работает для них так же.

Групп точек нет. Если очень надо, можно и добавить.
Я вот думаю, не добавить ли специальное свойство "на средней линии" к точкам и ребрам. Тогда У у них будет всегда 0. И при зеркалировании можно сделать поверхность без излома, если такие ребра без излома. Но это уже будет довольно большое изменение в движке.

> Дельшиповцы чуть подправили алгоритм, сетка теперь идет изнутри а не снаружи как во фришипе.
я не понял. Я выводил в иджес только вчера, и грузил во ФриКАД. Все рисуется вроде правильно. Конечно я не оценивал точность. Например, если обьемы посчитанные в ФШ и в ФК равны и до какого знака.
Как это "сетка изнутри а не снаружи"? (У сетки поверхности нет толщины.)
Что конкретно надо исправить?

>Взаимодействие между сапр-это когда можно использовать алгоритмы построения в разных средах с прямой передачей данных.
А готов-ли КАД к прямой передаче в него, из него? Если да, то в принципе, можно написать интерфейс, который будет пулять модель в КАД хоть после каждого перестроения. И/или принимать из КАДа. Хм. Пока не понимаю, правда, для чего это нужно.
У каких КАДов есть такой реал-тайм интефейс?

>смело брать современную среду разработки на которой пишут многие (языки си например).
:) Си не значит "более современно". Си это язык. Среда разработки это вообще отдельная вещь. Она может быть Вижуал Студио, может Эклипс или еще что. Хоть текстовый редактор. Переписывать с Фри Паскаля на Си++? А зачем? Чем будет лучше? Для пользователя так вообще ничем. А программистам работы выше крыши. Новые баги, новые глюки. Программист, который переписывает, должен хорошо знать и ФриПаскаль/Делфи/Лазарус и Си++. И все их классы там и там. А таких пойди поищи. Не реально. Да и смысла особого не вижу.


  • 0

#815 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 24 мая 2019 - 03:23

Как это "сетка изнутри а не снаружи"?

Посмотрите вот эту темуhttps://forum.katera...r-svoei-mechty/, эт так начинались наши "изыскания" :)  .

Многие вопросы ща видятся несколько иначе, про сетку посмотрите картинку с треугольником в п32 и п42. Там сразу видна разница построения сетки. Во FS сплайн (синий) идет по вершинам сетки нарубленной сабдивиженом, а в DS уже сетка идет по сплайну который строится по уравнению. Понятное описание алгоритма кетмела-кларка приложил. Получается кривая (Highest) в DS похожа на фришиповскую при типичном для нюрбс построении сетки.Если проследить эволюцию Фришипа, то можно увидеть что изначально там ни сплайнов, ни экспорта в иджес не было, отсюда все ухишрения.

По языкам программирования, тут вопрос комплексный, и нужно оценивать весь объем поставленных задач. Если мы говорим о развитии, а не просто как запустить под линукс (под Вин7 у меня кстати ваш вариант глючит не по детски :) ).Под си можно писать практически под любой сапр. И если наработанные алгоритмы можно будет запускать и в сапр, то это большой довод в пользу такого варианта. Хотя  думается расчетная часть будет похожа в любом языке. Ща больше занимает теория, т.е.что строить, и как (какой математикой).

Прикрепленные файлы


  • 0

#816 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 24 мая 2019 - 06:53

За доку по катмелу-кларку спасибо. А то я только видел его в коде на паскале :)

Там в программе, кстати, треугольные фасетки по-другому делятся. Без центральной точки.

Это был один из багов, который занял у меня недели две, чтоб выловить.

Для треугольника центральная точка отсутствует, но в список записывается (какой-то мусор), как центр фасетки.

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

Пофиксил.

 

Читал, читал вашу тему. Так и не понял, что конкретно требуется? Вывод сплайнов в DXF?

 

Да, что конкретно глючит? Какая версия?


Сообщение отредактировал mm7: 24 мая 2019 - 06:54

  • 0

#817 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 24 мая 2019 - 15:28

Читал, читал вашу тему. Так и не понял, что конкретно требуется? Вывод сплайнов в DXF?

Да, что конкретно глючит? Какая версия?

Версия ваша, по ссылке выше. В общем редактировать не дает совсем. Все пропадает с экрана. При выделении зум прыгает (Вин7_64).

Будете экспорт в иджес отлаживать, там есть странный баг, круглоскулые корпуса делятся на две поверхности, хотя сетка правильная. Причем стык "плавающий" получается.  Можете прям начальный корпус отправить посмотреть.

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

Из плюсов фришипа- реализованы развертки, графики кривизны, реал-тайм отрисовка и расчет GS, возможно добавить инструменты по работе с точками.

Ну и множество модулей расчета, хотя там тоже есть что добавить.

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

Можно еще про кривые подумать, они там почти уже есть :) .

Но, останется проблема связки с сапр. Можно сделать довольно корректный импорт/экспорт, но он будет по любому на основе итерполяции. Т.е . полученная из фришипа модель будет трудно (считай не) редактируемая в сапр, и наоборот. Плюс с перетяжеленной сеткой УВ.

И вот это решается только двумя путями. Либо делается алгоритм на основе фришиповского в сапр, но это можно сделать не везде, на данный момент я уверен что это можно реализовать только в Автокаде, т.к. есть пример (старые Shipconstructor), осталось только в СИ++ писать научиться :) .

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


  • 0

#818 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 24 мая 2019 - 17:19

>Версия ваша, по ссылке выше. В общем редактировать не дает совсем. Все пропадает с экрана. При выделении зум прыгает (Вин7_64).

 

программа для Вин откомпилена в Вин10. Видимо системные вызовы Вин10 плохо воспринимаются в Вин7. Попробую найти Вин7 и откомпилить там. У меня есть Вин7 на работе, но вроде она 32-бита.

 

Поймите, я не могу поддерживать весь зоопарк операционок. Просто у меня их столько нет. Вин7,8,10... Сейчас только 10.

Если вы уже сгрузили проект, стобы разобраться в коде сплайнов, то может поставите Лазарус и компильнете в Вин7-64 ?

(и с С++ потом вам понятнее будет ;) )

 

>Будете экспорт в иджес отлаживать, там есть странный баг, круглоскулые корпуса делятся на две поверхности, хотя сетка правильная. Причем стык "плавающий" получается.

Да, я видел это. Тоже показалось странным. Посмотрю...

 

>Если по малому кругу, то добавив инструменты и параметризацию по точкам

Опишите подробнее, что Вы имеете в виду? Какие инструменты? Что они должны делать. Какие параметры добавить к точкам, что потом с ними делать? (я программист, а не КАД-инженер)

 

>Либо менять геометрию самого Фришипа на нюрбс

Не, давайте не будем обнимать необъятное. Менять геометрию - это переписывать весь движок.

У меня генерализация/специализация списков заняла 2 месяца. Но то была зима. А летом есть и другие дела.

Заниматься практическим судостроением (доску делать), кататься на ней, фойл отремонтировать надо... И тп.

Полная переделка геометрии займет не меньше года. А на практике и больше.

 

Если надо подкорректировать экспорт в DXF, IGES, то это достижимо. Сплайны это подмножество НУРБС, поэтому, думаю, можно вывести сплайн как НЮРБС. Насчет обратной трансформации, не уверен.

 

Да, гонять модель туда-сюда, из ФС в КАД и обратно, выглядит круто.

Но Вы так и не объяснили - для чего. Я понимаю, выгрузить в КАД выкройки-развертки. Но это не модель. Выгрузить модель, задать в КАДе материалы и посчитать прочность. Хорошо. Но, посчитав прочность, модель не надо грузить из КАДа обратно в ФС. Давайте делать в одну сторону пока. Какой формат предлагаете?


  • 0

#819 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 24 мая 2019 - 19:07

Поймите, я не могу поддерживать весь зоопарк операционок. Просто у меня их столько нет. Вин7,8,10... Сейчас только 10.

Если вы уже сгрузили проект, стобы разобраться в коде сплайнов, то может поставите Лазарус и компильнете в Вин7-64 ?

(и с С++ потом вам понятнее будет ;) )

Да я ж без претензии :) , эт так для информации. А вин7 еще долго в ходу будет, мои друзья точно на 10ку перейдут только если семерку майкрософты совсем сломают как XP.

Я код фришипа читаю в нотпаде :) ,   среду как то ставил, и делфи, и визуал студию, но это надо садиться и изучать серьезно , так с бухты-барахты не подъедешь.  Ну и математика, которую как водится в школе прогуляли ща больше занимает. Что то проверить я и на лиспе смогу, да и просто в эксель тупо.

По инструментам я могу найти список, он у нас есть где то, но конечно лучше посмотреть как они работают в тех программах где это уже реализовано. В общем-то они сводятся к группированию и выравниванию. А вариаций может быть много, по вертикали, горизонтали,между точками , совместное изменение одной координаты, совмещение точек. Кое какие из этих инструментов в Максюрфе уже "память" имеют, они например так совмещают две поверхности, поскольку там нет единой сетки, и две поверхности просто "склеивают" по точкам.Точечные инструменты в принципе самые простые, даже математика особо не нужна, больше нужны именно программерские знания по работе со списками (или как там правильно).Ну как параметризацию записывать надо придумать раздел.

По экспорту-пока иджес более универсален, и он есть, вот только баг победить. Можно еще в сапре делать поверхность на основе экспортированной сети (DXF mesh), но слишком "тяжелая" поверхность получается.Если  с математикой разберусь, подумаю и над более оптимальными способами.


  • 0

#820 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 24 мая 2019 - 21:12

>Я код фришипа читаю в нотпаде

В среде даже читать удобнее. Подсветка синтаксиса. Навигация. Ктрл-Клик на метод - встает на определение. Ктрл-стрелка вниз встает в тело метода. Альт-Влево - идет назад.....

 

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

 

А, понял - выделил группу точек - нажал Выровнять по горизонтали по Верхней(Нижней,Средней) точке. Так что-ли?

 

----

ПС

Еще есть проблемы с отрисовкой. Моргание вызвано тем, что полная перестройка модели делается на каждый чих, где и не надо. А отрисовка во время пересторойки не имеет смысла (и опасна) т.к. модель не готова.

Визуально это выражается в исчезновении изображения и тп.

Хочу сделать перестройку только когда это действительно нужно - после структурных изменений - добавление/удаление обектов или сдвиги точек, ребра которых пересекают ватерлинию (и то если в проекте указано "красить подводную часть")


Сообщение отредактировал mm7: 24 мая 2019 - 21:23

  • 0

#821 bisoft

bisoft

    Яхтенный капитан

  • Капитан
  • 1 145 сообщений
  • Из:Таганрог

Отправлено 24 мая 2019 - 21:29

Еще есть проблемы с отрисовкой. Моргание вызвано тем, что полная перестройка модели делается на каждый чих, где и не надо. А отрисовка во время пересторойки не имеет смысла (и опасна) т.к. модель не готова.

Визуально это выражается в исчезновении изображения и тп.

Хочу сделать перестройку только когда это действительно нужно - после структурных изменений - добавление/удаление обектов или сдвиги точек, ребра которых пересекают ватерлинию (и то если в проекте указано "красить подводную часть")

Это делается следующим способом.

Создаете таймер на 20 мс. Метод обновления изображения заменяете на такой, который просто инкрементриует счетчик. По таймеру смотрите, если счетчик > 0 тогда изображение обновляете стандартным методом. В винде это все есть внутри GDI, а вот на других системах может и не быть. Можно еще просто запрещать обновление экрана во время изменения модели. В дельфи вроде для контролов типа TreeView были методы BeginUpdate, EndUpdate - но на сегодняшний день первый метод дает лучшие результаты.


  • 0

#822 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 24 мая 2019 - 21:54

А, понял - выделил группу точек - нажал Выровнять по горизонтали по Верхней(Нижней,Средней) точке. Так что-ли?

Да, ща есть только выравнивание между первой и последней, в DS еще выбор координат есть, для Фришипа тоже делали эксперимент, отладить нужно.

Но не в этом суть. Если выровняли, и после точки стали сами по себе-это одно, а вот если они стали группой со свойством (на одной горизонтали/вертикали) то это уже совершенно другой уровень работы. Поэтому лучше сразу продумать вопрос параметризации, возможно ее осилить или нет. Самым сложным мне представляется вопрос "иерархии", т.к. точки могут входить в разные группы, и нужно продумать что за что будет цепляться.


  • 0

#823 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 25 мая 2019 - 00:44

Это делается следующим способом.

Создаете таймер на 20 мс. Метод обновления изображения заменяете на такой, который просто инкрементриует счетчик. По таймеру смотрите, если счетчик > 0 тогда изображение обновляете стандартным методом. В винде это все есть внутри GDI, а вот на других системах может и не быть. Можно еще просто запрещать обновление экрана во время изменения модели. В дельфи вроде для контролов типа TreeView были методы BeginUpdate, EndUpdate - но на сегодняшний день первый метод дает лучшие результаты.

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


  • 0

#824 mm7

mm7

    Рулевой 1-го класса

  • Основной экипаж
  • PipPipPipPipPipPip
  • 473 сообщений
  • Из:Вудбридж
  • Судно: виндфойл доска

Отправлено 25 мая 2019 - 00:59

Да, ща есть только выравнивание между первой и последней, в DS еще выбор координат есть, для Фришипа тоже делали эксперимент, отладить нужно.

Но не в этом суть. Если выровняли, и после точки стали сами по себе-это одно, а вот если они стали группой со свойством (на одной горизонтали/вертикали) то это уже совершенно другой уровень работы. Поэтому лучше сразу продумать вопрос параметризации, возможно ее осилить или нет. Самым сложным мне представляется вопрос "иерархии", т.к. точки могут входить в разные группы, и нужно продумать что за что будет цепляться.

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

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

Гр А(Т1,Т2,Т3) - общий X , 

Гр Б(Т2,Т4,Т5) - общий Y,

Гр В(Т2,Т5,Т1) - общий Z.

 

Сохранять группы не большая проблема, формат надо дополнять.

 

Но. Напридумывать можно много. Насколько это будет востребовано на практике?

 

Сечас-бы вот все баги выловить... Производительность улучшить. Экспорт/Импорт сделать правильный.

А потом можно и изысками заниматься.


  • 0

#825 a_max

a_max

    Яхтенный капитан

  • Капитан
  • 2 842 сообщений
  • Из:moscow

Отправлено 25 мая 2019 - 01:04

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

Так можно уйти от того, к чему хочется прийти :) . С сеткой, которая повехность связана ГС, а фришип тем и хорош что все изменения видишь сразу, а не как в Максюрфе, подвинул точки, потом к ним прыгнет поверхность.А еще в отдельном окошке можешь посмотреть строевую :) . 


  • 0



Ответить



  



Темы с аналогичным тегами Фришип, Free!Ship, проектирование лодок

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей