Solid из витража

Автор Тема: Solid из витража  (Прочитано 5780 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн enotАвтор темы

  • ADN OPEN
  • *****
  • Сообщений: 525
  • Карма: 2
Solid из витража
« : 28-01-2019, 19:03:53 »
Возможно ли получить Solid из витража ?

Оффлайн Александр Пекшев aka Modis

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Re: Solid из витража
« Ответ #1 : 28-01-2019, 19:08:25 »
Так посмотрите через Lookup что возвращается в геометрии

Отмечено как Решение enot 28-01-2019, 20:13:39

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Solid из витража
« Ответ #2 : 28-01-2019, 19:30:03 »
Нету у витража твердотельной геометрии, но можно получать геометрию панелей и импостов

Оффлайн enotАвтор темы

  • ADN OPEN
  • *****
  • Сообщений: 525
  • Карма: 2
Re: Solid из витража
« Ответ #3 : 28-01-2019, 19:32:49 »
Да, солид  , вроде как извлекается (MessageBox.Show(CurtainWall_Solid.SurfaceArea.ToString()); => дает положительное значение), но когда пытаюсь произвести операцию с солидом помещения:

Solid interSolid = BooleanOperationsUtils.ExecuteBooleanOperation(curtainGrid_Solid, Room_Solid, BooleanOperationsType.Intersect);
Получаю ошибку:



Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Solid из витража
« Ответ #4 : 28-01-2019, 19:35:08 »
Только solid тот номинальный, с 0 объемом и, скорее всего, без поверхностей. Ещё раз повторяю, твердотельной геометрии у витража нет, плавали-знаем, только панели / импосты

Оффлайн enotАвтор темы

  • ADN OPEN
  • *****
  • Сообщений: 525
  • Карма: 2
Re: Solid из витража
« Ответ #5 : 28-01-2019, 19:37:34 »
плавали-знаем

значит-таки, нужно плыть в направлении
Curtaingrid.  GetPanelIds() => пробуем получить солиды ?

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Solid из витража
« Ответ #6 : 28-01-2019, 19:38:53 »
В точку

Оффлайн enotАвтор темы

  • ADN OPEN
  • *****
  • Сообщений: 525
  • Карма: 2
Re: Solid из витража
« Ответ #7 : 28-01-2019, 19:40:35 »
Мерси,
а потом все эти солиды еще и соединим => и будет цельный солид, как и хотелось

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Solid из витража
« Ответ #8 : 28-01-2019, 19:42:27 »
Скорее, сеточка, там же ещё импосты

Оффлайн enotАвтор темы

  • ADN OPEN
  • *****
  • Сообщений: 525
  • Карма: 2
Re: Solid из витража
« Ответ #9 : 28-01-2019, 19:47:27 »
+ GetMullionIds()
Получилось, спасибо!
« Последнее редактирование: 28-01-2019, 20:25:06 от enot »

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Solid из витража
« Ответ #10 : 28-01-2019, 21:21:46 »
В качестве альтернативного варианта, если таки будут какие-то проблемы, можно воспользоваться temporary transaction trick:
1) открываем транзакцию
2) меняем типоразмер стенки на типоразмер обычной стенки нужной толщины
3) doc.Regenerate()
4) получаем solid стенки, делаем нужные расчеты
5) откатываем транзакцию (RollBack)