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

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



8 часов назад, IgorT сказал:

" WeldSimbol"? VBA ругается на него, и в хелпе о нем не знают :g:

Возможно  должно быть WeldSymbol?

Должно. Повезло вам, вон справку нашли.

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

... Повезло вам, вон справку нашли.

что тут смешного?

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

что тут смешного?

Смешно, что многие не находят.

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

Доброго дня. Хочу в чертеж вставить таблицу с отверстиями. Нашел пример.

'Insert Hole Table Example (VBA)
 boolstatus = Part.ActivateView("Drawing View1")    
    'Select a vertex in the drawing view to be the origin of all datums in the table
    'All XLOC and YLOC table column values will be relative to this datum origin
    boolstatus = Part.Extension.SelectByID2("", "VERTEX", 0.117324728174898, 0.108554228680764, -500.0075, True, 1, Nothing, 0)
    'Select a face that contains the holes that will be annotated in the table
    boolstatus = Part.Extension.SelectByID2("", "FACE", 0.090728339186173, 0.119052803281577, -500.0075, True, 2, Nothing, 0)    
    Dim myView As Object
    Set myView = Part.SelectionManager.GetSelectedObjectsDrawingView2(1, -1)
    Dim myHoleTable As Object
    'Insert a hole table
    'anchored with its top left corner at x-coordinate = 0.07m and y-coordinate = 0.175m,
    'with starting datum tag "A",
    'using hole table template: standard hole table--letters.sldholtbt
    Set myHoleTable = myView.InsertHoleTable2(False, 0.153019881817662, -3.77259107537343E-02, 1, "A", "C:\Program Files\SolidWorks Corp\SOLIDWORKS\lang\english\standard hole table--letters.sldholtbt")    
    Part.ClearSelection2 True 

Я не понимаю, как в чертежном виде выделить  VERTEX. Более того не совсем понятно что означают координаты для указания вершины . Они должны быть в абсолютном выражении или масштабе?

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

Я не понимаю, как в чертежном виде выделить  VERTEX

Это самое интересное))) это направление X и Y. Как их найти...есть догадки, но это будет полная хрень. Я как-то бился над темой определения нижней и верхней видимых кромок модели на виде.

 

Может гуру помогут ? :smile: я б тоже не отказался от решения.

Собсна, супервыход - это обозвать кромки в модели. А потом искать её на виде.

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

Собсна, супервыход - это обозвать кромки в модели. А потом искать её на виде.

Dim swedge As SldWorks.edge вродебы нет такого параметра как "name" . Может вы имели ввиду сохранить в массив объекты swedge или vertex , а потом  вызвать их в чертеже?

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

FlatView = swTempDraw.DropDrawingViewFromPalette2("A", 0.0, 0.0, 0.0);

Добрый вечер. Решил отписать свои некоторые наблюдения. У меня "палитра видов" вызывет переодически ошибку "отвала объекта  от клиента". Я думаю это происходит в тот момент когда макрос тарабанит в автоматическом режиме. Решил проверить пошагово . Вроде бы ошибки нет. Может нужно вставить задержку в секунду?. Не могу подобрать код, appliction.wait не работает .

automation error.jpg

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

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

А вообще, вы где-то может переиспользуете реально не открытый или невидимый документ (типа ActiveDoc = ModelDoc2 от детали или сборки, при открытом чертеже). Задержки ставить не надо, надо попробовать дождаться OnDocumentLoad или что-то в этом роде. На крайняк загружать сокращённо, чтоб по-быстрому.

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

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

А вообще, вы где-то может переиспользуете реально не открытый или невидимый документ (типа ActiveDoc = ModelDoc2 от детали или сборки, при открытом чертеже). Задержки ставить не надо, надо попробовать дождаться OnDocumentLoad или что-то в этом роде. На крайняк загружать сокращённо, чтоб по-быстрому.

Вообщем нашел выход из положения. У меня 98 % деталей как правило смотрят то вниз, вверх, влево, вправо,сперели, сзади. Плоскость A я назначаю как плоскость с максимально

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

Интернет отрубило и фразу не закончил. Вообщем те детали которые находятся в правильных плоскостях заношу в строковый массив. А затем вставляю без палитры. А те что "не рыба не мясо" идут с пометкой "A" в чертежах. Таким образом и скорость выше и баг отсутствует. Баг вознкал когда детали все дружно перемалывались циклом,  который добавлял новую страницу, а затем вставлял вид из палитры. Затем вставлялась табличка BOM. И так порядка 30 деталей. Причем отвал от клиента мог возникнуть на любом шаге цикла кроме первого.

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

Баг вознкал когда детали все дружно перемалывались циклом

Есть 3 вещи, когда такое происходит с SW.

1) Это ModelDoc2 вне контекста. Когда активный документ деталь - с него создали чертёж, пытаемся работать с ModelDoc2 детали.

2) Это потеря контекста из-за типа скорости работы с объектами. Как раз случай в цикле. Когда сторона COM сервера - SW - не успевает отработать, а код уже идёт дальше. Типичная ситуация - сохранение документа или получение какого-то объекта от документа, тот же BOM. Тут надо грамотно играться с событиями и подписками на них.

3) Это витиеватая хрень, когда вообще не понимаешь что происходит - код валится на потере контекста))) но работает дальше. Это уже высшие материи SW и Microsoft. В случае работы в Visual Studio тупо отключаем останов на такие ошибки.

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

Это уже высшие материи SW и Microsoft

Это точно!

Олег. Подскажите пожалуста. Как можно вначале узнать масштаб чертежного вида . Я нашел пример по изменению знаменателя (swView.ScaleDecimal = swView.ScaleDecimal * n ). Но ведь прежде чем подобрать удобный масштаб надо знать его на момент вставки. Я пример в упор не нахожу в хелпе.

 

Взгляд замылился ... vScaleRatio = swView.ScaleRatio вот оно

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

Но ведь прежде чем подобрать удобный масштаб надо знать его на момент вставки

Дык масштаб листа и будет изначальный для новых видов.

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

Добрый вечер. С масштабом все вроде бы понятно. Вчера долго думал как все обыграть с этими  методами

 

В 16.12.2017 в 23:49, streamdown сказал:

В в моделях деталей дал названия нужным вершинам и плоскостям вставки для методы InsertHoleTable2. В этом плане все зер гут.

 

Теперь сложность возникла при подборе метода перебора плоскостей и вершин в "myView" в чертежах. А точнее я не понимаю как выйти через myView на геометрию элементов модели. Может за это за это в чертежах вообще myView не в ответе?

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

как выйти через myView на геометрию элементов модели

госспади))) ну ведь только подумаешь - "о, чувак скоро меня обойдёт по знаниям" ))) и тут на тебе. (шутка)

http://help.solidworks.com/2015/english/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IView~GetVisibleEntities2.html

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

госспади))) ну ведь только подумаешь - "о, чувак скоро меня обойдёт по знаниям" ))) и тут на тебе. (шутка)

http://help.solidworks.com/2015/english/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IView~GetVisibleEntities2.html

Я снимаю шляпу перед вашими знаниями. Как говорят на ютубе "...Я человек простой,  вижу ваше новое сообщение на форуме, ставлю лайк." Еще пару месяцев назад я даже близко не понимал как выделить поверхность или кромку объекта. Теперь эти макросы , которые я пишу для улучшения показателей своей собственной работы становятся серьезным подспорьем в моей проектной практике. Есть куча программ которые я использую как рабочие лошадки, но моими основными любовницами по прежнему остаются SolidWorks и Excel. Все что, я делаю макросами , уже давно присутствует в специализированных софтах. Но это программы , которые меня сильно ограничивают и ставят в один ранг с конкурентами в среде их обитания. SW дает ощущение безграничной свободы, которую я исповедую для собственной жизни. Макросы шикарно вписываются в концепцию полнейшей автоматизации. Как бы трудно мне не было, я обязан учится всю свою жизнь, иначе пропаду. До кризиса 13 года работал в бизнесе. Потом все рухнуло. Я остался с кучей долгов и понял главное, в этой стране можно все потерять одним махом:деньги, имущество, здоровье.. Я задал вопрос сам себе, а куда и во что вкладывать ? и понял что бесценны только знания , опыт и навыки. Остальное - это ложные или сомнительные ценности. Поэтому я искренне восхищаюсь людьми которые знают и умеют.

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

На этом форуме есть 1 никнейм, который тоже по-началу возился с ответами на мои "глупые" вопросы. Есть ещё маленькая кучка, которые молодцы в макросах. Есть кучка которых я научил. И каждые пол-года появляется новичок, который потом бросает это дело.

Так вот, пока я с SW и пока я задействован в создании чего либо в этом SW - я буду подсказывать новичкам по API. Как меня когда-то не проигнорили, тем и я отвечу. За исключением ленивых ("сделай мне это") и необучаемых (в плане логического мышления => программирования).

Опять же: если есть годные предложения, то могу и под ключ написать что-то. Было и так: "а сделай как мне макрос, который выдёргивает значения списка вырезов, обсчитывает кромки модели, создаёт таблицу с вычислениями на чертеже, экспортирует в эксельку...предлагаю 100 рублей, ибо работы там не больше" :biggrin: Говорил мне человек, который про программирование знал только то, что там "книжки толстые".

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

На этом форуме есть 1 никнейм, который тоже по-началу возился с ответами на мои "глупые" вопросы. Есть ещё маленькая кучка, которые молодцы в макросах. Есть кучка которых я научил. И каждые пол-года появляется новичок, который потом бросает это дело.

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

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

Так вот, пока я с SW и пока я задействован в создании чего либо в этом SW - я буду подсказывать новичкам по API. Как меня когда-то не проигнорили, тем и я отвечу. За исключением ленивых ("сделай мне это") и необучаемых (в плане логического мышления => программирования).

Опять же: если есть годные предложения, то могу и под ключ написать что-то. Было и так: "а сделай как мне макрос, который выдёргивает значения списка вырезов, обсчитывает кромки модели, создаёт таблицу с вычислениями на чертеже, экспортирует в эксельку...предлагаю 100 рублей, ибо работы там не больше" :biggrin: Говорил мне человек, который про программирование знал только то, что там "книжки толстые".

Потому что это был барыга, а не инженер. Ему ли пользоваться макросом? Вопрос. А знаете почему так? У нас вся страна работает от %. Те любой малый бизнес платит спецу % от суммы общей сделки. Поэтому пофигу сколько там ночей будет сидеть инже-негр и потеть над работой. Я мало встречал мелких организаций которые работали бы по принципу оплаты человеко-часа. К чему это безобразие приводит? Это стимулирует сотрудника сделать работу как можно быстрее, но не факт что качественно.Да и кому нужно сейчас качество?

 

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

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • malvi.dp
      Допилил. Поддерживает многолистовые чертежи Начинает работу при нажатии на кнопку макроса: -при нахождении измененных (установлена галочка "Измененное значение") размеров окрашивает их в красный цвет; -если с измененного размера снята галочка "Измененное значение", т.е. он стал обычным - цвет становится обычным; -по окончании работы в сообщении выводится статистика найденных измененных размеров, если они есть. Тестировался на sw2016 и sw2020.   ChangeColorForOverridedDimensions.zip   Да, что-то прошло не так... Уже поправил.
    • maxx2000
      Я скорее согласен с Надеждой Януарьевной
    • Koels
      Мотора 54 градуса, что на 6 градусов больше соседнего станка, вентеляторы в норме да. Ещё хочу сравнить нагрузку координаты с соседним станком, но пока не дают. У этих двух станков проблемы с охлаждением, на соседнем стоит автомобильный радиатор для охлаждения масла. xD
    • Bot
      Dassault Systèmes Reports Solid First Quarter Results And Reaffirms Full-Year Objectives Просмотр полной статьи
    • Ninja
    • Ninja
      В зимнее время водители устанавливают на колёса специальные цепи против скольжения. В мире разработано множество видов цепей и способов их установки. Японцы применяют "цепи Абэ". Кто этот великий инженер? Это знаменитый японский писатель Кобо Абэ. Для уединенного писательского труда Абэ купил домик в горах. А в горах зима ранняя, снежная, затяжная. Без цепей на колёсах можно и улететь с обрыва. Абэ периодически заводил машину и спускался в долину. Почту получить/отправить, в магазине продукты купить, ящик рисовой водки. (Известное дело: насухую великую книгу не напишешь). В долине приходилось цепи снимать. По правилам цепи запрещается применять при отсутствии на дороге снежного покрова. В те времена для установки/снятия цепи требовалось домкратом поднимать каждое колесо. В машине 4 колеса. Товарищу Абэ приходилось корячиться с домкратом. При этом в самых нелитературных выражениях комментируя политику правящей партии и все домкраты в мире. Купил в магазине бухлишко-закусь. Поехал домой в горы. А там снег, скользко. Цепи требуются. Опять писатель и драматург Абэ домкрат крутит. Всё это насмерть надоело Абэ. Обратился к компаниям-производителям: придумайте способ установки цепей без домкрата! Но производители ничего не придумали. Или не захотели. Тогда Абэ сам придумал способ установки цепей без необходимости поднимать колесо. Послал изобретение на конкурс. И неожиданно получил призовое место и патент. Новый способ установки цепей быстро завоевал популярность. Так и пошло у японцев - "цепи Абэ". Кобо Абэ не получил Нобелевскую премию по литературе. Уже выдвигался, уже все были уверены в том, что он её получит. Но не успели, писатель умер. А это всё дурацкие цепи виноваты. Сколько времени он потерял в установке/снятии цепей? Сколько времени, вместо того чтобы писать, он крутил домкрат? Вот и не успел. https://ru.ruwiki.ru/wiki/Абэ,_Кобо
    • gudstartup
      приемлимо. температуру мотора посмотрите. если вентилятор нормально вращается и его скорость соответствует оригинальному а также контакт в разъеме нормальный а F все равно появляется то даже не знаю что у вас может быть так как привод у вас новый
    • Koels
      Хмм, я думал раз она вылазит даже в простое, то Z координата висит на тормозе и дело не в этом. Спасибо за мысль, щас узнаю. Вообще у нас рядом стоит точно такая же макина, точь в точь и там таким проблем нет. Много заказов и отсутствие специалистов сделало свое дело. :) @gudstartup, 58% нагрузка на координату
    • mrVladimir
      Что-то я немного засомневался. Если решим брать новое ЧПУ, то искать точно такое же необходимо по номеру сзади корпуса (пластикового пластмассового) - так? А если брать только плату (материнскую или как ее лучше назвать...), на которой установлена (запаена) микросхема 1 на моих фото выше, то искать плату необходимо по номеру, который указан на самой плате - так? В моем случае : ЧПУ : A02B-0321-B520. Код на плате : A20B-8201-0081/01A. Если, допустим, мы покупаем ЧПУ A02B-0321-B520 - будет ли это гарантией того, что в нем установлена плата A20B-8201-0081/01A. И можно ли будет его считать таким же. И с отдельно приобретаемой платой тоже самое - если номер на ней полностью совпадает с нашим, значит ли это, что она полностью идентична. P.S. : извиняюсь за , возможно, навязчивые вопросы. Просто не хотелось бы попасть впросак из-за своей некомпетентности. такой файл есть, но мне говорили, что после снятия архивов, его лучше вообще никогда нигде ни использовать. А на каком этапе он нам может понадобиться?. Если, как говорил Виктор, мы зальем архив SRAM на старый модуль (ROM-SRAM), установленный в новое ЧПУ, то и файл OPRMINF не нужен. Правильно же?
    • Slavdos
      Доброе. делюсь 1 внедренным китайцем. купили у ЛЛС MARVEL PRO 6000-3015.HGT , 2 шт , с автоматизацией. станки неплохие, интерфейс русские, достаточно дружелюбен. за автоматизацию зря переплатили, китай похоже в этом сильно уступает европе. из неожиданностей- резка воздухом дает неудаляемый грат, по сути необходимы зачистные станки.
×
×
  • Создать...