Сообщество программистов Autodesk в СНГ

ADN Club => Civil 3D API => Тема начата: Алексей (IdeaSoft) от 10-01-2019, 10:20:24

Название: Добавить трубу в сеть
Отправлено: Алексей (IdeaSoft) от 10-01-2019, 10:20:24
В предыдущей теме.
http://adn-cis.org/forum/index.php?topic=9017.new#new
Пользователи форума помогли мне добавить сети.
Спасибо еще раз!

А как мне теперь объект трубы  в сеть?
pipe.NewWorkId - Только для чтения.
Есть какой-то метод добавления pipe в сеть?
 
Название: Re: Добавить трубу в сеть
Отправлено: Алексей (IdeaSoft) от 10-01-2019, 10:21:30
Ой ссылку не прочел.
Ответ же сеть.
Название: Re: Добавить трубу в сеть
Отправлено: Алексей (IdeaSoft) от 10-01-2019, 10:59:36
Посмотрел ссылку
http://adn-cis.org/forum/index.php?topic=8589.0

в примере кода показано как в сеть добавляется новая труба через метод AddPipe

Код - C# [Выбрать]
  1. static void AddPipe(Network net, ObjectId pipeFamId, ObjectId pipeSizeId)
  2.         {
  3.             LineSegment3d line = new LineSegment3d
  4.                 (new Point3d(0, 0, 0), new Point3d(100, 0, 0));
  5.             ObjectId pipeId = ObjectId.Null;
  6.             net.AddLinePipe
  7.                 (pipeFamId, pipeSizeId, line, ref pipeId, false);
  8.         }

А мне нужно добавить уже имеющеюся трубу
Т.е. беру за основу, трубу, которая есть и делаю pipe.Clone()

Иначе говоря, мне нужно трубы которые есть распределить по другим сетям
 
Название: Re: Добавить трубу в сеть
Отправлено: Дмитрий Загорулькин от 10-01-2019, 13:13:34
Насколько мне известно, в Civil так нельзя сделать. Нужна копия - добавляем трубу методом AddPipe, получаем все свойства исходной трубы и задаём их новой.
Название: Re: Добавить трубу в сеть
Отправлено: Дмитрий Загорулькин от 10-01-2019, 13:18:28
Иначе говоря, мне нужно трубы которые есть распределить по другим сетям
Если такая задача, то есть смысл посмотреть на метод Network.MoveParts (http://docs.autodesk.com/CIV3D/2019/ENU/API_Reference_Guide/html/90ba51f0-38b7-09c2-6285-c093f9a61271.htm)