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

Свойства, связанные с заметками. Как к ним программно обратиться?


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

Всем доброго.

Когда-то на одном форуме спрашивал этот вопрос но видимо модераторы его удалили, или просто я туплю найти его не могу.

Задача: Есть в штампе чертежа заметки, связанные с некими свойствами ($PRPSHEET:{Обозначение} например). Необходимо считать все эти свойства, и (или) изменить их. Пишу на Делфи (но в принципе мне понять бы как на VBA Солида это сделать).

Вопрос: Знаю что есть несколько устаревших функций для работы с этими свойствами, и один класс (Solid 2008 у меня), но вот забыл как он называется.

Подскажите пожалуйста в какую сторону мне копать, и если не сложно один примерчик

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


Перебираешь все заметки на чертеже, проверяя у каждой свойство text (функция GetText)

Вот пример взятый из справки, тебе его чуть чуть поправить и готово. (пример называется: Get All Notes Example in Drawing Template (VBA))

Option Explicit

Sub main()

Dim swApp As SldWorks.SldWorks

Dim swModel As SldWorks.ModelDoc2

Dim swDraw As SldWorks.DrawingDoc

Dim swView As SldWorks.View

Dim swNote As SldWorks.note

Dim swAnn As SldWorks.Annotation

Dim bRet As Boolean

Set swApp = CreateObject("SldWorks.Application")

Set swModel = swApp.ActiveDoc

Set swDraw = swModel

Set swView = swDraw.GetFirstView ' This is the drawing template

Set swNote = swView.GetFirstNote

swModel.ClearSelection2 (True)

Debug.Print "File = " & swModel.GetPathName

Do While Not swNote Is Nothing ' <- Вот тут перебираются все заметки

Set swAnn = swNote.GetAnnotation

bRet = swAnn.Select2(True, 0)

Debug.Assert bRet

Debug.Print " " & swNote.GetName

Debug.Print " " & swNote.GetText <- Вот функция которая получает текст заметки, его тебе и надо проверять.

Set swNote = swNote.GetNext

Loop

End Sub

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

Перебираешь все заметки на чертеже,

Это я уже пробовал, оно тормозит жестоко.

У меня получилось через CustomPropertyManager :lighten:

Теперь появился другой вопрос:

Когда я изменяю пользовательское свойство, связанная с ним заметка не меняется, пока я не перобновлю вид.

Как программно это сделать. Rebuild не помог. может еще какой метод есть?

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

Как программно это сделать. Rebuild не помог. может еще какой метод есть?

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

Redraw?

:no:

Вот я после того как все поля позаполнял (там через CustomPropertyManager.Set заношу),

потом ручками открываю штамп на редактирование - новые данные переобновляются...

Как бы это програмно сделать...

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

Redraw?

Как бы это програмно сделать...
Это ключевое слово из справки по Solidworks API, там же пример на этот счёт: modelDoc2.GraphicsRedraw2.
Ссылка на сообщение
Поделиться на других сайтах

Как бы это програмно сделать... Это ключевое слово из справки по Solidworks API, там же пример на этот счёт: modelDoc2.GraphicsRedraw2.

:no:

Черт его знает... Менеджер свойств документа как-то ж переобновляет... Как ?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Viktor2004
      А если после прогона выполнить G50 X0 Y0 Z0 G52 X0 Y0 Z0 может в панеле оператора ABS переключить?
    • Snake 60
      @1master Скинь макрос, который используешь, а то версий много... Я подправлю
    • 1master
      Всем привет! А можно ли сделать так, чтобы при вызове макроса MProp (из пакета SWPlus macro) по умолчанию стояла галка "Без массы"? Масса на чертеже редко требуется, надоело уже каждый раз нажимать вручную эту галку.
    • mev13
      Может ведомость упаковки?  Тогда указана форма рекомендуемая в ГОСТ В 20.39.308
    • Greenston
      Привет! По идее, реально. Ведь 800 цикл аналог мазаковского, хоть и выглядит немного по-другому. Но лучше править с фануковского поста, проще. Пример трансформации Мазака: G68.2 X15.1027 Y-26.1587 Z-32.4463 I30.0 J55.0 K-90.0 G53.1
    • Greenston
      с большой долей вероятности надо править постпроцессор. Стойку такую не слыхал даже)
    • Мрачный
      Прям как дети... https://hh.ru/vacancy/95765023 Joymechanix, Москва, Калужская, улица Бутлерова, 17Б от 1 300 до 2 000 $ на руки
    • mactepnew
      Так я конкретно расписал, что мне не понравилось. Вам всерьез нравится панель измерений? Например то, что нужно каждый раз выбирать направление измерения, если выбрана плоская поверхность и точка.  И два меню настроек тоже нравятся?  А, есть же еще третье. Где две команды: И несколько меню свойств объекта - это тоже нормально? Settings, Edit, Edit text и Properties. Хотя у Крео тоже их два... Или то, что в эскизе может быть избыток ограничений, которое NX может поначалу игнорировать, а в какой-то момент сам отменить какие-то из них и сделать из эскиза каля-маля. Крео такого не позволяет. Кнопка Create persistent relations регулярно отключается сама по себе. А как вручную удалить одно из ограничений я так и не понял. NX пишет: click to relax. Кликал всеми семью кнопками со всеми комбинациями Shift, Ctrl и Alt - оно не удаляется.    Да, к Крео у меня тоже были претензии поначалу, но всё равно он раз в 10 быстрее и намного дружественнее. В NX можно перенести размеры из 3D на чертеж?    Простите, если это уже оффтоп, но просто вот эта кривая логика ломает мне мозг.
    • Greenston
      в 2016-2017 версии FC было доступно много постов (потом их убрали). Их можно найти +- тут: \Program Files\Delcam\FeatureCAM 2016\Posts\Mill\5-Axis В том числе и на дмг. Ну без гарантий, канеш
    • Alexey8107
      Да, я написал При этом, после сбоя не помогает возврат в реф. А если задать систему координат заготовки то корректоры на инструмент становятся неверными. Возможно бред, но примерно так и есть. С другими станками такой проблемы нет. А с этим почему то каждый раз.
×
×
  • Создать...