Сообщество программистов Autodesk в СНГ
ADN Club => Inventor API => Тема начата: R.I.Chernov от 27-02-2021, 14:50:09
-
Доброго времени суток, уважаемые форумчане. Помогите пожалуйста разобраться с вопросом. У меня есть сборка в которую вставлено что-то вроде плоского листа. Внутри сборки есть фигурный пропил этого листа выдавливанием. Мне же нужно спроецировать итоговый контур. Внутри детали изменения, сделанные в сборке не отображаются. Не знаете, можно ли обратиться к поверхности вхождения, которые получились в результате выдавливания?
-
Дак это разве не оно?
AssemblyDocument.AssemblyComponentDefinition.Features.ExtrudeFeatures.Faces
-
Не,походу не оно: ExtrudeFeature.Faces судя по всему дает доступ к граням, которые получаются непосредственно от выдавливания (ни типо формируются новые). Уже существующие, но измененные грани в коллекцию не входят. Может коненчо что не понял, но я перебрал коллекцию и нашел грань с максимальной площадью, это была длинная грань пропила:
(https://i.ibb.co/7p6M53f/2.png) (https://ibb.co/GMbYLZ6)
А мне требуется вот эта вот грань:
(https://i.ibb.co/SXRYbWJ/1.png) (https://ibb.co/8D6vqTX)
У меня более сложные вырез, но суть в целом такая.
-
Может быть как-то можно обратиться к коллекции всех граней сборки? А потом проверить их на принадлежность нужной поверхности детали? Где-то же должна храниться информация о гранях?
-
AssemblyDocument.AssemblyComponentDefinition.Features.ExtrudeFeatures(1).SurfaceBodies(1).Faces
-
AssemblyDocument.AssemblyComponentDefinition.Features.ExtrudeFeatures(1).SurfaceBodies(1).Faces
Это именно то, что нужно. Спасибо, Михаил!