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

Скрытые возможности Sw


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

Количество по сборочным единицам, думаю будут проблемы (неправильный подсчет).

Вот я сейчас над этим бьюсь.. СП Навигатор считает точно.. А я в своем макросе не могу правильно посчитать..

 

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

 

Свойство может быть одно.. Просто можно сделать текст многострочным, добавив символы переноса..

 

Может лучше оформить таблицу спецификации отдельно для подсборки? Родная табличка солида считает количества.

 

Так речь про чертеж детали..

 

Или может есть нужда писать для каждой детали в какую сборку сколько штук входит?

 

Я чисто теоретически подумал, что кому-то это может пригодиться.. У нас необходимое количество деталей в чертеже не пишут.ю. И ни с нашим цехом, ни со сторонними изготовителями вопросов никогда не возникало..

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


Вот я сейчас над этим бьюсь.. СП Навигатор считает точно.. А я в своем макросе не могу правильно посчитать..
 

Что именно не получается?

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

 

Получаю состав сборки и пытаюсь посчитать количество компонентов (по пути к файлу, конфигурации и пути в сборке) в каждой сборочной единице.. С головной сборкой (нулевой уровень вхождения) проблем нет.. А вот если в нее вставлено несколько одинаковых подсборок, то посчитать сколько в них чего входит не получается.. Впрочем, для данной темы это оффтоп..

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

Получаю состав сборки и пытаюсь посчитать количество компонентов (по пути к файлу, конфигурации и пути в сборке) в каждой сборочной единице.. С головной сборкой (нулевой уровень вхождения) проблем нет.. А вот если в нее вставлено несколько одинаковых подсборок, то посчитать сколько в них чего входит не получается..

 

Попробуйте активировать сборку с которой считается количество или работайте только с одной сборкой одновременно. Макрос в прикреплении записывает в одно поле количества в главной сборке и подсборках (для примера, конфигурации не учитывает).

Получается так:

Имя поля: count in assembly

Значение поля: 7 | Assem000.SLDASM = 3

part_counter 3.zip

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

 

Ругается на строку

 

sw_app.OpenDocSilent path_to_assembly, 2, 0

 

Run-time error '13':

 

Type mismatch

 

В Object Browser "OpenDocSilent" отсутствует (SW2012 x64 SP 5.0)..

 

А вообще, к скрытым возможностям SW это не относится.. Поэтому предлагаю переместится в отдельную тему или в  "Solidworks API"

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

Работать в Солиде начал с 2004 версии. Уже тогда обнаружил, что в уравнениях работает функция  ROUND  (округление). 

Полезно для управления количеством элементов массива.

Ссылка на сообщение
Поделиться на других сайтах
В 14.01.2017 в 21:09, Спартанец сказал:

в Солиде начал с 2004 версии. Уже тогда обнаружил, что в уравнениях работает функция  ROUND  (округление). 

Полезно для управления количеством элементов массива.

Так это не скрывалось разработчиками и было описано в справке, что можно использовать некоторые функции из VBA в уравнениях.

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

Округление значений.

этот скрытый метод имеет скрытую подъяпку

Скрытый текст

Because of the loss of precision that can result from representing decimal values as floating-point numbers or performing arithmetic operations on floating-point values, in some cases the Round(Double) method may not appear to round midpoint values to the nearest even integer. In the following example, because the floating-point value .1 has no finite binary representation, the first call to the Round(Double) method with a value of 11.5 returns 11 instead of 12.

Vigd0oaD.jpg

что такое 0.1 - не знаю,ненагуглил, получил методом научного тыка,

 

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

Может быть в уравнениях и логические функции применять можно?

только в место функции if() стоит использовать iif(). if глючит во вложенных циклах или что то подобное.

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

что такое 0.1 - не знаю,ненагуглил, получил методом научного тыка,

Открываем справку VBA и смотрим, вероятно 0,1 воспринимается как ноль (т.к. нельзя оставить 0,1 от количества знаков после запятой, а число на втором месте в скобках должно быть целым указывающем на оставляемое количество знаков после запятой) и поэтому после точки ни чего не выводится, округление проходит по правилу округления (округляемые 5 и больше в большую сторону, меньше 5 - в меньшую).

Цитата

Round Function

      

Description

Returns a number rounded to a specified number of decimal places.

Syntax

Round(expression [,numdecimalplaces])

The Round function syntax has these parts:

Part Description
expression Required. Numeric expression being rounded.
numdecimalplaces

Optional. Number indicating how many places to the right of the decimal are included in the rounding. If omitted, integers are returned by the Round function.

Есть и другие функции округления которые могут округлять в большую или меньшую сторону не зависимо от окгругляемых значений.

30 минут назад, Spikard сказал:

только в место функции if() стоит использовать iif(). if глючит во вложенных циклах или что то подобное.

Возможно вы просто не разобрались в синтаксисе команды if, iff просто ближе ко всякого рода формулам MSOffice:

IIf(expr, truepart, falsepart)

тогда как IF несколько сложнее, например:

Цитата

If A > 10 Then A = A + 1 : B = B + A : C = C + B

 

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

округление проходит по правилу округления

rHj78qxo.jpg

по моему все таки не по правилу, разве что правило слегка мутировало)
и да, 0,1 воспринимается как 0

DNrRH8fL.jpg

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

по моему все таки не по правилу

Вероятно просто правило у этой функции иное, нежели в правиле округления.

Округляет до чётного числа:

Цитата

The ROUND function utilizes round-to-even logic. If the expression that you are rounding ends with a 5, the ROUND function will round the expression so that the last digit is an even number. For example:

Round(12.55, 1)
Result: 12.6   (rounds up)

Round(12.65, 1)
Result: 12.6   (rounds down)

Round(12.75, 1)
Result: 12.8   (rounds up)

https://www.techonthenet.com/excel/formulas/round_vba.php

 

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

если я правильно понял  ̶и̶н̶т̶е̶д̶ж̶е̶р̶ флоат он откругляет до четного дабл до нечетного и это происходит из за "Because of the loss of precision that can result from representing decimal values as floating-point numbers or performing arithmetic operations on floating-point values"

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

Для округления попробуйте другую функцию:

Format(12.65, "###0.0") ' Returns "12.7".

 

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

Коллеги, подскажите где найти список тегов (SWML tags) для форматирования полей с текстом (размеры, примечания)? Речь про теги вроде <DIM>,<STACK>,<OVER>. Прям с начала этой темы все как-то очень уверенно знают их. Но только в Help-е я их не увидел, а на forum.solidworks.com это считается недокументированным методом . Может я просто их неверно называю? Пробовал и искать: "Форматирование"(Formatting), "Разметку"(Markup), "Модификаторы"(Notes modifiers/Modifiers), "Теги"(tags) в различном сочетании. Ни таблицы, ни списка с описанием не нашёл. 

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

Список тегов лежит в файле gtol.sym, путь "C:\ProgramData\SolidWorks\SolidWorks 2014\lang\russian"

Путь можно глянуть в окне "Библиотека обозначений", вываливаемое при нажатии кнопки "Дополнительно" на вкладке "Текст размера"

Показать содержимое  

59f854dff0344_.jpg.2e6bab28b0b57dd324d8b7b3491c1f52.jpg

Hide  
Если открыть файл gtol.sym, то это текстовый файл с описанием тегов - "Geometric Tolerancing Symbols Library". Файл большой, 7400 строк. Чем-то напоминает шейп-файлы из Автокада.

 

Его читаем так: Категория - GTOL, допуск на угол - ANGULAR, получилось <GTOL-ANGULAR>

59f854fd02792_.jpg.08da746a38953f2ee7209259ba10e955.jpg

То есть, если ввести в текстовое поле <GTOL-ANGULAR>, то будет "допуск формы и расп.пов-стей", а если <GTOL-BETW>, то отобразится стрелочка туда-сюда ("между", как написано в примечании).

 

Вот этот файл и отображается по категориям в окне "Библиотека обозначений".

Соответственно, все дополнительные теги вы можете вытащить оттуда.

Ну а тег <DIM> в справке описан отдельно, его в этом файле нет.

gtol.zip

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

<DIM>

Это служебный тег для значения размера, если вы хотите отображать значение размера.

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

<STACK>,<OVER>

Это один большой тег, овер в некоторых случаях опускается:

<STACK size=0.5 divider=no>верх<OVER>низ</STACK>

size - коэффициент размера шрифта, то есть при шрифте 4 мм при коэффициенет 0,5, значения будут высотой 2 мм.

divider - отсутсвие параметра по умолчанию или divider= разделено линией, divider=no - без лини, divider=slash - диагональная линия.

 

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

для форматирования полей с текстом

По шрифтам:

<FONT style=B> - утолщённый

<FONT style=I> - наклонённый

<FONT effect=U> - подчёркнут

<FONT effect=S> - зачёркнут

можно добавить в тег размер в мм, цвет, например: <FONT effect=S size=5 color=0x000000ff>

Для раскрытия форматирования иногда помогает установка обратного слеша "\" перед форматированным текстом, тогда открывается тег в виде текста.

Ну и тег не плохо бы закрыть: </FONT>

 

Ещё есть возможность создавать всякого рода списки, но это лучше уже через макрос, т.к. прямого доступа к этим тегам нет (только через интерфейс программы при редактировании заметок или макрос):

<PARA  indent=10 findent=-10 bullet=on><FONT color=0x000000ff>Строка1
строка2
строка 3

 

<PARA  indent=10 findent=-10 number=on ntype=1 nformat=$$. nstartNum=0><FONT color=0x000000ff>строка1
<PARA  indent=0 findent=0 number=off>продолжение строки1
<PARA  indent=10 findent=-10 number=on ntype=1 nformat=$$. nstartNum=0>строка2
<PARA  bullet=on>"

 

<PARA  indent=10 findent=-10 number=on ntype=1 nformat=$$. nstartNum=0><FONT color=0x000000ff>Строка1
строка2
строка3
<PARA  bullet=on>

 

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

jtok, спасибо. Именно этот список и был нужен, именно это я и имел ввиду. М..а что служебный тег <DIM> один такой служебный? Вот, скажем Kelny, описывает уже форматирование через <FONT..> этого нет в списке Gtol по понятным причинам - тег определенно служебный/операционный, а не символ. Не подскажете где в справке написано про использование именно тега <DIM> (и прочих служебных тегов), я видел только хелп по использованию инструментов вынесения размером. Там не предполагалось ручное вписывание тегов в поле.

Kelny, ну допустим <DIM>,<STACK> и Ко я как раз усвоил подглядывая за тем, что они ставятся при использовании инструментов кнопками. И отсюда и родился вопрос: а какие ещё есть?. Вы описали работу <FONT>.. Откуда у вас это тайное знание? Если менять параметры шрифта и цветности через "кнопочные" инструменты, то с тегами в поле PropertyManager ничего не происходит и они остаются как были (тег <FONT> с параметрами не добавляется в строку). Имеет смысл распотрошить какой-нибудь макрос на предмет списка всех остальных тегов или где-то всё таки есть просто список: тег - назначение - пример использования?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • david1920
      нет время нет заниматься да и информации новой нет Это я на других станках делал
    • gudstartup
      @david1920 имеется ввиду платы на системах с сертификацией опций фалом oprminf старые в расчет не принимаются вы свой 18i восстановили?
    • gudstartup
      очень даже спрашивают как обязательную информацию для проверки вашей компании налоговый идентификатор должен быть указан. на myfanuc не спрашивают а вот на портале к сожалению просто так не зарегаться. 
    • david1920
      На 0I-TC mate менял плату управления приводами На 18i-TB менял для диагностики платы процессоров (один был от Spinner другой простой) процы были одинаковые Всё работает
    • brigval
      Браком 1.04В версии 1.04Добавлено: Автоуменьшение высоты шрифта многострочного наименования в ОН чертежа.Добавлено: Переименование поверхностей, баз, размеров в порядке их следования на чертеже.Добавлено: Переименование изображений по ГОСТ: сначала виды, затем разрезы, сечения, выносные элементы.Добавлено: Выравнивание неассоциативных видов.Добавлено: Ручной ввод шага и угла наклона штриховки.Добавлено: Перемещаются в макроэлемент компоненты, исключаемые из спецификации.Добавлено: Выбор количества значащих цифр в значении площади поверхности детали для вставки в ТТ.Добавлено: Возможность не авторазмещать ТТ перед конвертацией чертежа в PDF.Добавлено: Добавлены кнопки «Выделить все включенные в расчет» и Выделить все исключенные из расчета».Добавлено: Версия КОМПАС-3D Home показывается в программе со словом Home.Добавлено: Улучшен алгоритм считывания и вставки ТТ чертежа.Добавлено: При конвертации чертежа в PDF удаляется старый файл с таким же обозначением в начале имени, как обозначение в начале имени нового файла.Добавлено: Улучшено считывание номеров позиций из 3D-модели сборки.Исправлено: Иногда скрытые и потом показанные объекты чертежа отображались не серым цветом.Исправлено: Иногда после ручного заполнения графы «Масса» ОН чертежа в окне программы масса могла отображаться не правильно.Исправлено: В некоторых случаях из ОН чертежа могла не считываться литера.Исправлено: В некоторых окнах программы неправильно показывался заголовок окна программы.Исправлено: Другие замеченные мелкие ошибки и неточности кода.Скачать
    • boomeeeer
      Не помню чтобы у меня такое спрашивали при регистрации.
    • Snake 60
      @eljer0n  Откройте макрос SaveDRW.swp редактором VBA Найдите вот эти строки: Поменяйте выделенную цифру на нужную вам 3 или 4 - это количество символов которое останется от имени конфигурации. PS При сохранении в PDF тоже ругается на неправильное название чертежа, т.к. тоже обрезает название конфигурации до двух знаков, там тоже надо править при желании...
    • eljer0n
      @malvi.dp в общем порядок следующий (на каждое исполнение свой чертеж и позиция в спецификации):   Для исполнения с 2мя знаками. 1. Есть деталь с именем формата ХХ-01.01-01 (последнее -01 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации (как у вас на картинке). Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с корректным именем. 5. В спецификации сборки все отображается корректно.     Для исполнения с 3мя знаками. 1. Есть деталь с именем формата ХХ-01.01-011 (последнее -011 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации. Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с некорректным именем, а именно - с обрезанным до двух знаков исполнением (-01). 5. В спецификации сборки шифр отображается (внезапно! может какой глюк был: у солида или у меня ) корректно, как и у вас на рисунке.     Выходит, загвоздка все-таки только в сохранялке чертежа.
    • gudstartup
      да информация о решенной проблеме очень важна так что будем ждать хороших новостей!
    • mrVladimir
      @gudstartup Спасибо Вам за помощь. Теперь дело в приобретении платы. Как что-то получится (сперва приобрести, потом поставить) обязательно отпишусь.
×
×
  • Создать...