Перейти к публикации

Рекомендованные сообщения

Аддончик - это маленький Аддон. (Add-in) программное дополнение к софту. Примера такой задачи не встречал. 

Изменено пользователем maxfox
Ссылка на сообщение
Поделиться на других сайтах


Есть у меня один вариант. Считать дерево построения, а потом каждой детали передать нужные значения. Но в таком случае я не знаю как правильно поступить с деталями которые из библиотеки Solid.

Задача поставлена преподавателем + свое дополнение.

Ссылка на сообщение
Поделиться на других сайтах

Вы имеете ввиду, что не хотите вносить изменения в библиотечные детали? Думаю, что есть возможность определить библиотечный это элемент, или нет...

 

Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, ApiLearn сказал:

Задача поставлена преподавателем

А, тогда лан.

9 минут назад, ApiLearn сказал:

Считать дерево построения

http://help.solidworks.com/2015/english/api/sldworksapi/traverse_assembly_at_component_level_example_vb.htm

 

 

10 минут назад, ApiLearn сказал:

а потом каждой детали передать нужные значения

http://help.solidworks.com/2015/english/api/sldworksapi/add_equations_example_vb.htm

Ссылка на сообщение
Поделиться на других сайтах

Эммм, а зачем вам файлы переименовывать? И зачем лезть в детали toolbox?

Хотя не. Не так.

Скажите, как долго вы учитесь работать в Solidworks?

----------------------------

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

Изменяйте логику работы вашего "проекта". На бумажке, с преподавателем. Потом уж беритесь её реализовывать кодом.

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах

api - почти месяц. Вот на картинке болты взяты из toolbox. Если в результате расчета мне потребуется болт больше(меньше)  как мне работать?

Снимок.JPG

Изменено пользователем ApiLearn
Ссылка на сообщение
Поделиться на других сайтах

@ApiLearn я не про API :smile:

13 минуты назад, streamdown сказал:

Скажите, как долго вы учитесь работать в Solidworks?

в этой фразе нет ни слова о программировании.

 

7 минут назад, ApiLearn сказал:

Если в результате расчета мне потребуется болт больше(меньше)  как мне работать?

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

А вы решили ещё и какие то там значения изменять.

Ладушки.

16 минут назад, streamdown сказал:

Изменяйте логику работы вашего "проекта". На бумажке, с преподавателем. Потом уж беритесь её реализовывать кодом.

Удачи :smile:

Ссылка на сообщение
Поделиться на других сайтах

@ApiLearn ВЫ не обижайтесь, только, но на самом деле. Ход вашей мысли очень тяжело проследить. И такое ощущение, что у вас нет нужных знаний, чтобы это реализовать.

Ссылка на сообщение
Поделиться на других сайтах
18 часов назад, ApiLearn сказал:

api - почти месяц. Вот на картинке болты взяты из toolbox. Если в результате расчета мне потребуется болт больше(меньше)  как мне работать?

Снимок.JPG

Хорошо могу задать вопрос  по другому: "Если увеличится отверстие под болты, как изменить конфигурацию болта под размер отверстия? Или есть такая взаимосвязь чтобы он менялся как нужно?"

2 часа назад, maxfox сказал:

@ApiLearn ВЫ не обижайтесь, только, но на самом деле. Ход вашей мысли очень тяжело проследить. И такое ощущение, что у вас нет нужных знаний, чтобы это реализовать.

Я вас понимаю, но ход мысли меняется потому что, пока как жду ответ на форуме, успеваю нагуглить часть нужной информации

Изменено пользователем ApiLearn
Ссылка на сообщение
Поделиться на других сайтах

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

Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, ApiLearn сказал:

Хорошо могу задать вопрос  по другому: "Если увеличится отверстие под болты, как изменить конфигурацию болта под размер отверстия? Или есть такая взаимосвязь чтобы он менялся как нужно?"

Так может для этого не программирование нужно, а АВТОКРЕПЁЖ?

Ссылка на сообщение
Поделиться на других сайтах

Доброй ночи. Есть вопросы у меня. Существует ли метод по которому можно определить принадлежность точки (x,y,z) к поверхности твердого тела? Т е находится ли она внутри контура или снаружи, в случае если он плоский. По сути это нужно для алгоритма нахождения "пятна". О чем я писал выше. Сейчас воспользовался "методом трассировки луча", появилась проблема при попадании такового на вершины контура. Иные алгоритмы работают для фигур не имеющих скруглений. Может все гораздо проще? И второй вопрос. Как можно трансформировать координату 2Dэскиза в 3D координату?

Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, Sla_68 сказал:

Существует ли метод

Нет. Напишите его сами)))

- точку эскиза в IMathPoint

- спроецировать на нужную поверхность http://help.solidworks.com/2015/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.iface2~getprojectedpointon.html

- сравнить координаты. Не забываем про точность, ибо "X:0,0000001" это то же самое что и "X:0"

 

7 часов назад, Sla_68 сказал:

Т е находится ли она внутри контура или снаружи

Это отдельная песня и она чисто математическая. Гугл подскажет "принадлежит ли точка полигону".

 

7 часов назад, Sla_68 сказал:

Может все гораздо проще?

Да)))) забить на API и делать средствами солида.

Ссылка на сообщение
Поделиться на других сайтах
В 04.09.2017 в 08:43, streamdown сказал:

Это отдельная песня и она чисто математическая. Гугл подскажет "принадлежит ли точка полигону".

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

В 04.09.2017 в 08:43, streamdown сказал:

Да)))) забить на API и делать средствами солида.

Вы правы 1000 раз что может и надо бы забить. Но на данном этапе это меня мотивирует изучать API. Мне на самом деле интересно побольше для себя узнать. Даже если задачу не решу, то хоть в голове не пустое место будет.

 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Sla_68 сказал:

Те точка не ищется

ээээ...скучно)))) а как же аппроксимировать всё это дело? :biggrin:

1 час назад, Sla_68 сказал:

то хоть в голове не пустое место будет

если в таком ключе рассуждать, то я бы вам посоветовал отказаться от IMathUtil солидовской и самому реализовать операции над векторами и точками (благо операций там всего-то штук 10). Матрицы можно оставить как есть. Там точно скилл подтянете.

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах
3 минуты назад, streamdown сказал:

а как же аппроксимировать всё это дело?

Пока что дуг и отрезков вполне достаточно. Главное уже хоть какой то результат. Теперь поищем "пятно"  пересечения двух поверхностей.

Ссылка на сообщение
Поделиться на других сайтах

Добрый день. Столкнулся вот с чем. При образмеривании отрезка в эскизе всплывает окно с диалогом. Как можно его закрыть?

Sub main()

Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("Line20", "SKETCHSEGMENT", 0.284750488136214, 1.95283771782014E-02, 0.182365660331776, False, 0, Nothing, 0)
Dim myDisplayDim As Object
Set myDisplayDim = Part.AddDimension2(0.360239251985161, -0.161052587323203, 0.016)

'надо закрыть диалоговое окно с размером

Part.ClearSelection2 True
Dim myDimension As Object
Set myDimension = Part.Parameter("D1@Эскиз200")
myDimension.SystemValue = 0.03
Part.ClearSelection2 True
End Sub

 

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...