Ан нет, вставил в другой документ - заработал.
12.03.2021 07:39:44
[QUOTE]vite написал:
Вопрос в том, как добраться до него через объект фрагмента.[/QUOTE] По идее эта грань, на которую накладывается адаптивный фрагмент, является родительской для него. Ну и как следствие для "Грань_1 : Сглаживание_1". Могу ошибаться, но картина пока получается весьма логичной. |
|
|
07.02.2021 17:12:30
vite, премного благодарен. В понедельник предметно потестирую.
[QUOTE]FRei написал: Дык вы уже это сделали, у вас есть переменная периметр get("Базовая_грань","perimeter") она вам и считает:[/QUOTE] Периметр в макросе я считаю только для временного информирования. Что бы проверить его работу. Как и количество отрезков пути. Суть моей задачи в получении длин каждого отрезка грани или 3д профиля по которым вставляется в сборку адаптивный фрагмент для последующих вычислений для каждого фрагмента и занесением результатов в структуру каждого изделия. |
|
|
05.02.2021 19:21:09
[QUOTE]vite написал:
Так что особой разницы нет, какой объект выступает в роли привязки.[/QUOTE] Каким образом это можно реализовать? Раз ничего не создается, то нечему и конфликтовать в сборке. А то вот какая неприятность у меня получается. Файлы в закрепе. Деталь 1 это адаптируемый фрагмент, деталь 2 - сборка с ними. |
|
|
05.02.2021 18:41:25
[QUOTE]vite написал:
вы можете получить длину сегментов через привязку к ребрам. Затем, привязать переменные к дочерним элементам в структуре изделия (см. вложение). Привязка геометрического объекта к переменной осуществляется через операцию "Измерение".[/QUOTE] Уже пробовал таким образом. Но печаль такого способа заключается в том что при изменении количества сегментов грани весь расчет рушится. У меня адаптивные фрагменты располагаются по рассеченной области, части этой области могут быть как треугольными, так и н-угольными, как с прямыми участками, так и с криволинейными. Существует ли способ подсчета отрезков без создания пути? Или, допустим, после сбора данных, удалить ненужные уже объекты из модели (3д путь и ребра). Главное результат в структуре изделия сохранить. :)
Изменено: |
|
|
05.02.2021 13:22:57
Благодарю за еще один пример.
Суть моей задачи: необходимо собирать длины отрезков периметра грани, на которой располагается адаптивный фрагмент в сборке, эти значения обрабатывать, результат заносить в структуру фрагмента. Периметр стандартными средствами получить - не проблема, но нужны именно длины ребер. При чем их количество и геометрия вариативны в широком диапазоне. После добавления в сборку следующего адаптивного фрагмента он не пересчитывается. |
|
|
05.02.2021 09:19:58
Благодарю за пример.
Нашел в коде несколько недочетов, поправил, проверил - РАБОТАЕТ! [IMG WIDTH=20 HEIGHT=20]https://www.tflex.ru/bitrix/images/main/smiles/5/ulibka.gif[/IMG] Исправленный код под спойлером.
|
|||
|
04.02.2021 13:21:08
Добрый день!
Строю 3д путь по ребрам грани с известным именем, но получаю в модели ссылку на 3д путь.[CODE] List<BaseCurve> EdgeCurve = new List<BaseCurve>(); List<BaseInterval> EdgeInterval = new List<BaseInterval>(); foreach (TFlex.Model.Model3D.BodyPart body in document.Bodies) { foreach (ModelBody Body in body.TopOperation.Geometry.Solid) { foreach (ModelFace face in Body.Faces) { if (face.Name == "Базовая_грань") //фильтр по имени грани { foreach (ModelEdge edge in face.Edges) { EdgeCurve.Add(edge.Curve); EdgeInterval.Add(edge.Interval); } } } } } //создаю путь Path3D pp = new EdgePath(document); pp.Name = "Path"; pp = Path3D.Create(document, EdgeCurve, EdgeInterval); [/CODE] |
|
|