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

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

6 часов назад, alek77 сказал:

можно ли с визуализацией работать через АПИ

Не знаю. Но настроить столбцы для визуализации можно 1 раз и сохранить шаблон, потом им пользоваться. Макросом можно записывать в свойства детали её количество в сборке и уже оттуда брать значение для спецификации.

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


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

Макросом можно записывать в свойства детали её количество в сборке

Нельзя. Деталь может применяться в разных изделиях и количество может быть разным.

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

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

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

В том примере что я давал

У меня сложности с шарпом, пробовал только vba, буду разбираться, спасибо!

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

Здравствуйте. Большая просьба помочь с поиском команды. Не нашел в хелпе вставку "вида примечаний". Может конечно плохо искал. но битый час убил точно.

 

вид_примечаний.jpg

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

но битый час убил точно.

Мало, видать, искал.

http://help.solidworks.com/2015/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.imodeldocextension~insertannotationview.html

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

Доброго вечера... 
А вот такая грабля неожиданно ударила меня по лбу:
У чертежного вида (IView) есть  замечательный метод - GetOutline , который "Gets the bounding box for a view (sheet or drawing) in meters on the drawing page.", которым я активно пользовался, размещая заметки вокруг этого вида. 
И все как бы хорошо было, пока не понадобилось сменить размер бумаги. Для одной и той же детали, которая размещена в масштабе 1:1, на листах а4 и а3, у которых так же масштабы стоят 1:1, размеры bounding box разные, причем на  несколько мм. Например 21,27мм. в а4, против  24,05мм. в а3. 
Но сама деталь то рисуется верно. В результате заметки начинают либо налезать на деталь, либо слишком далеко уплывать от чертежного вида, при смене размера бумаги. 
Есть идеи что с этим сделать можно? Ну кроме как проверять руками размер бумаги, и выставляя константные поправки при позиционировании... 

:wallbash:

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

Спасибо.. как всегда выручаете. Буду разбираться с методом.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 17.10.2017 в 20:49, Sla_68 сказал:

Спасибо.. как всегда выручаете. Буду разбираться с методом.

Метод рабочий . Вставляет примечания . Но при этом вызывает ошибку. Все потому что я не понимаю его параметры. Вот мой код

 Sub мой код()
Dim swApp As SldWorks.SldWorks
Dim part As SldWorks.ModelDoc2
Dim arrbody As Variant
Dim swface As SldWorks.face2
Dim swModelDocExt As IModelDocExtension
Dim swFeat As SldWorks.Feature

  Set swApp = Application.SldWorks
Set part = swApp.ActiveDoc
Set swModelDocExt = part.Extension
   arrbody = part.GetBodies2(swSolidBody, False)
Set body = arrbody(0)
glavfaces = вернуть_номера_главных_плоскостей(body) ' функция возвращает мне нужные грани
Set swface = glavfaces(5)
Set swSelMgr = part.SelectionManager
Set swSelData = swSelMgr.CreateSelectData
swface.Select4 False, swSelData
part.Extension.RunCommand swCommands_e.swCommands_NormalTo, "" 
swface.Select4 False, swSelData
    
value = swModelDocExt.InsertAnnotationView(0, swface, True, swface, 0) ' вот тут и засада 

End Sub

Я не понимаю параметры с № 3 по № 5.  Подскажите пожалуста на каком либо примере . Как правильно вставить нужные параметры.

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

AnnotationViewingDirection - это направление. Типа Спереди, Сзади, Слева...
Не пишите цифры, вставляйте сразу значение энума. И наглядно и понятно.
DirectionReference - направление, если в первом параметре 0
FlipDirection - типа перевернуть. Типа указал Спереди, тут true - результат будет обратный Спереди.
HorizontalDirectionReference  - я так понял это направление как бы по оси X
AngleMadeWithHorizontal - ставьте 0, это вроде поворот вокруг Z

 

Вот вам ещё "фишка" чтоб понять что к чему в этих апях. :smile: 

Выделите этот AnnotationView в дереве, приведите тип и посмотрите его параметры. Т.е. идите от обратного.

Вот отсюда выдерните кусок кода http://help.solidworks.com/2015/english/api/sldworksapi/move_annotations_to_first_annotation_view_example_vb.htm

 

 

А вообще, да. Дохрена непонятных параметров. Скорее всего это сделано специально, необязательные параметры нужно выставлять по дефолту либо null.

45 минут назад, Sla_68 сказал:

Set swSelData

Вам зачем это надо? Ну - для чего вам дальше по коду эта SelectData?

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

приведите тип и посмотрите его параметры

Не совсем понял смысл сказанного. Типы вроде бы "приводят" в коде .... типа 

Dim swApp As SldWorks.SldWorks
2 часа назад, streamdown сказал:

AnnotationViewingDirection - это направление. Типа Спереди, Сзади, Слева...
Не пишите цифры, вставляйте сразу значение энума. И наглядно и понятно.
DirectionReference - направление, если в первом параметре 0
FlipDirection - типа перевернуть. Типа указал Спереди, тут true - результат будет обратный Спереди.
HorizontalDirectionReference  - я так понял это направление как бы по оси X
AngleMadeWithHorizontal - ставьте 0, это вроде поворот вокруг Z

 

 

AngleMadeWithHorizontal  как видите поставил

FlipDirection - тоже

AnnotationViewingDirection то что направление я понял, только мне нельзя стандартные "спереди справа". плоскость вида может находится рандомно

и сразу вопрос мне оно не надо , но поставить что то нужно .. а что? Вот я и поставил 0

DirectionReference я понял что это направление вот и поставил swface ту на которую камера смотрит

и наконец

HorizontalDirectionReference  и это тоже вродебы понятно там сказано что можно выбрать плоскость или край

 

Получается что в этом параметре у меня ошибка? Нужно указать что то что отбивает горизонт?

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

Вам зачем это надо? Ну - для чего вам дальше по коду эта SelectData?

Ну вообще нравится она мне. Пользуюсь когда нужно выделить обект . Если не задать , то нужно использовать другие методы. Например select by ID

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

Не совсем понял смысл сказанного.

- Выбрать в дереве SW эту AnnotationView. Либо там она есть, либо свою тупо мышкой создать и выбрать.

- GetSelectedObject()

- Cast to AnnotationView

- Посмотреть все свойства, которыми обладает та самая стандартная View, либо та, что сам создал на первом шаге.

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

Но при этом вызывает ошибку

А что за ошибка?

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

А что за ошибка?

На скрине (приходится через ж... делать or error resume next) Т.е как видите, получается тот вид что мне нужен но с ошибкой

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

- Выбрать в дереве SW эту AnnotationView. Либо там она есть, либо свою тупо мышкой создать и выбрать.

- GetSelectedObject()

- Cast to AnnotationView

- Посмотреть все свойства, которыми обладает та самая стандартная View, либо та, что сам создал на первом шаге.

 

Спасибо вам за науку.

ошибка.jpg

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

Есть вопрос еще.. А как из аддона получить доступ к sql серверу в сети?  Попробовал сперва EF, затем и голый ADO.NET, соединение не открывается... :wallbash:

Вот уж не ожидал что споткнусь на таком... Разумеется все проверено из отдельного приложения, из exe - все пучком.

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

Твою дивизию... несколько часов потратил, но стоило написать вопрос, как сообразил что брандмауэр я так и не выключил, хоть и собирался... Разумеется у него все исходящие запросы порезаны... Трудно быть бестолковым... 

ЗЫ.
Правда в вопросе с GetOutline  я так и не продвинулся... 

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

@Krokogen Не надо его выключать. Не-на-до! )) В брэндмауэре создать правило для входящего и исходящего SQL.

А вообще, всё вот в картинках http://mattslay.com/opening-up-windows-firewall-to-allow-sql-server-to-allow-remote-connections/

 

 

Так же учесть, что на одной локальной машине НЕ ставить разные SQl сервера.

Так же учесть, что на локальной машине, если SQL младше VS и её либ для работы с SQL, то сначала ставим VS а потом только SQL. Иначе VS перезапишет либы SQL на более поздние и ничего работать не будет. Т.е. если имеем VS 2017 и SQL 2008. То сначала ставим VS.

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

Спасибо, это я знаю. Я имел в виду , что у меня как раз правило и было, на солид с блоком. Надо же было забыть и столько хапнуть гимора... А с солидом все норм, он вообще на другой машине.

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

Здравствуйте! Подскажите пожалуйста, как программно на vba, получить имя компонента и экземпляр компонента из дерева конструирования?

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

Добрых всем дел. Я снова со своими вопросами. У меня не получается такая казалось бы простая вещь как вызвать диалог на выбор папки. Нужно что то типа inputbox который мне отдаст в стоковую переменную выбранный путь . В эксельке такое можно  с помощью

Application.FileDialog(msoFileDialogFolderPicker)

Как тут этого добиться?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • cepr
      Есть рабочий компьютер, есть от чего отталкиваться. Понятно, что связка Intel-Nvidia. Экран 17", обратить внимание на матрицу. Ну, и сумма, какую можете потратить на ноут.
    • gudstartup
      а вот тут все уже расписано   это оказалось непросто оказывается китайцы в этих вопросах большие параноики и сами себе не доверяют
    • MagicNight
      Да дело не в бедности, ищу оптимальный ноут, пока не могу найти.
    • Bot
      АСКОН объявляет о старте открытого бета-тестирования новой версии КОМПАС-3D и приложений. Коммерческая версия КОМПАС-3D v23 выйдет летом 2024 года, но уже сейчас испытать новинки может любой желающий. Бета-тестирование — это проверка новой функциональности в «полевых» условиях, когда пользователи знакомятся с нововведениями на собственных проектах и сценариях работы, а также проверяют совместимость со своим программно-аппаратным обеспечением. Новая версия создавалась в соответствии с дорожной картой АСКОН для задач проектирования изделий высокотехнологичных отраслей и стала еще более функциональной и производительной. При разработке учитывались предложения пользователей по темам трехмерного моделирования, подготовки чертежей и спецификаций, приложений для машиностроения, приборостроения и строительства. Бета-версия КОМПАС-3D открыта для всех. Дистрибутив предоставляется бесплатно на время проведения тестирования. *** Период проведения бета-тестирования: с 6 [...] View the full article
    • fenics555
      Уважаемые Дамы и Господа!  Есть библиотечные изделия, которые почему-то очень доооооолго грузятся в сборках. Я хочу попросить Вас потестить их и сказать в чем причина, ибо совсем невозможно работать. gost18829-73.prt.1 pin_split.prt.1 Как это всё можно ускорить?
    • gudstartup
      а вы хоть станок проверяли по программе на изделии на точность прежде чем товарищей этих выгнать? если нет то грешите на самих себя! система в наших краях еще не распространенная поэтому и тем тут нет надо в поднебесную писать
    • AlexArt
      Ну допустим, ты и на другом ресурсе это опубликовал. А не коммуниздил. Но вот продвигать воровство от государства, ворующее из Вики, это верх мерзости.
    • maxx2000
      Ах, да. Фильтры выбора добавили. Теперь можно выбрать только то что видно на первом плане, а не вместе с тем что с обратной стороны детали. В общем надо обновляться. Как раз работёнка на прессформу нарисовалась 
    • maxx2000
      Причина того - Кроилово. Кроилово всегда приводит к попадалову. Месяц простоял сколько мильонов деревянных потеряли? Вопрос риторический. И ещё будет стоять. Как памятник человеческой глупости и жадности.
    • AlexKaz
      "9 июля 1968 года на мышах был проведен самый знаменитый эксперимент американского ученого-этолога Джона Кэлхуна «Вселенная-25». Суть опыта заключалась в создании идеальных условий, где мыши могли бы жить и размножаться, не ведая никаких забот, вдали от хищников и в отсутствие эпидемий и заболеваний. Для этих целей ученый построил специальный загон, куда были помещены четыре пары белых мышей (самцов и самок). В распоряжении мышей всегда была чистая вода и еда в изобилии, специальные гнезда, где можно обустроить себе жилище ― гнезд в загоне хватало для проживания нескольких тысяч мышей. Температура в загоне в среднем составляла около 20 ℃ и была комфортной для мышей. Животные не подвергались никаким влияниям извне и жили в идеальных условиях в свое удовольствие. А дальше началось самое интересное. На первом этапе эксперимента мыши хорошо размножались, вели активный образ жизни, охотно играли. На следующей фазе эксперимента мыши стали есть меньше, перестали наедаться до отвала. На третьей фазе эксперимента, когда в загоне были уже сотни мышей, произошло распределение социальных ролей, стала ярко выраженной иерархия, клановость. Появились так называемые отверженные ― молодые особи, которых другие, взрослые мыши сгоняли в центр загона, не давали им вести нормальный образ жизни, причиняли физический вред. В природе такое, наверное, было бы невозможно, ведь эти мыши-агрессоры просто не дожили бы до старости: их бы съели хищники. Но в загоне Кэлхуна хищников не было, и взрослые мыши начали попросту издеваться над молодняком. Образовались две большие группировки: самцы-одиночки и самки-одиночки. При этом самки-одиночки отказывались спариваться <с менее статусными многочисленными молодыми самцами и с оставшимися старыми статусными> и отвергали ухаживания самцов. У мышей стал проявляться тотальный индивидуализм, мыши не стремились создать семью. На последней, четвертой стадии мышиная популяция стала сокращаться. Появились самцы, которых сам Кэлхун назвал «красивыми» (англ. beautiful ones), из-за отсутствия ран и рубцов. <В оригинале: They never engaged in sexual approaches toward females, and they never engaged in fighting, and so they had no wound or scar tissue. Thus their pelage remained in excellent condition. - Дословный перевод: Они никогда не прибегали к сексуальным подходам к самкам, и они никогда не участвовали в боях, и поэтому у них не было ран или рубцовой ткани. Таким образом, их шерсть сохранилась в отличном состоянии.> Эти мыши не вступали в борьбу за самок и территорию, не проявляли активности к размножению и только питались, спали и чистили шёрстку. У мышей стали проявляться различные формы девиантного поведения, вспышки агрессии. Самки стали проявлять агрессию, защищать себя сами, стали умерщвлять своих детенышей, а затем окончательно отказались размножаться. На пике эксперимента в загоне одновременно проживало чуть более двух тыс. мышей. Еды и гнезд было достаточно для дальнейшего роста популяции, но через четыре года после начала эксперимента Кэлхун остановил свой опыт, потому что в загоне осталось чуть более сотни мышей, и все они уже вышли из репродуктивного возраста. По итогам эксперимента Кэлхун пришел к выводу, что достижение определенной плотности населения и заполнение социальных ролей в популяции приводит к распаду общества" https://physicsoflife.pl/dict/pic/calhoun/calhoun.. https://scientificrussia.ru/articles/utopiya-dlya-mys.. https://ru.wikipedia.org/wiki/Кэлхун,_Джон_(этолог)
×
×
  • Создать...