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

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

Аддончик - это маленький Аддон. (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 пользователей

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




  • Сообщения

    • gudstartup
      это было вам показано вкачестве примера как устроена система контроля контура позиционирования современных станков. а целью функции dual position feedback является вовсе не повышение дискретности дискретность чпу вещь постоянная а служит как раз для того чтобы настроив ее вы смогли работать без вибраций  в сервосистеме при потери жесткости в механике. почитайте описание функции если станок уже стары и вы не планируете повышать его точность дорогостоящим ремонтом тогда покупаете опцию и продолжаете на этом старом осле  ездить
    • Guhl
      Нашел такие картинки Похоже что речь идет о том, что чпу само вычисляет зазор и, зная его, улучшает качество обработкт при смене направления вращения винта Я привел выше, что нашёл по этой теме Пока не увидел, что целью этого мероприятия является повышение дискретности 
    • gudstartup
      это диагностические параметры  а никакие не границы они показывают рассогласование  контуров а основные для настройки в servo параметрах. кстати такая схема как раз очень хорошо показывает что у вас начинаются проблемы с механикой и она уже потеряла жесткость а значит и точность и пора принимать меры. с новым станком никаких дрожаний нет и контур настроен оптимально
    • lem_on
      Я вообще любой информации рад буду, провода, так провода. 
    • Guhl
      Да, там вычисляется разница для контроля. Границы задаются параметрами, которые вы привели   
    • gudstartup
      вы картинку видели ?
    • Guhl
      Это все для контроля А для вычисления позиции это используется?
    • gudstartup
      а производителям чпу и станкостроителям вполне обычным @Guhl
    • Guhl
      Это не флуд Я никогда внимания на это не обращал, потому что работает станок и работает. Проблемы обычно не с размерами в моей практике А использование дискрет энкодера, полученных с погрешностью винта как ни крути, потому что коррекция шага винта тоже работает по точкам, в качестве заполнения между импульсами от линейки, на мой взгляд необычное решение. Нет, такое решение конечно заманчивое для повышения точности, но механику никто не отменял с ее немалыми погрешностями, которые значительно больше 10нм, например. Поэтому мне такое решение и кажется необычным   Я ж и говорю, что выглядит красиво. Но швп есть швп Там указано, что это именно для повышения точности или для предотвращения проблем с линейкой?
    • gudstartup
      психолог значит ну да ладно. просто  странно что вы с вашим опытом не знаете очевидных вещей очень похоже на флуд. там даже параметр есть который в диагностике это самое рассоглосование показывает вот сюда посмотрите
×
×
  • Создать...