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

Помощь по NX Open API


zu_rab

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

Здравствуйте!

Не так давно начал изучать NX Open API C++. Пока только куча вопросов, и нет понимания логики того что я изучаю...

Например если посмотреть описание функции, котора проводит прямую между 2-мя точками

int UF_CURVE_create_line_point_point

(

tag_t point1,

tag_t point2,

UF_CURVE_limit_p_t limit_p [ 2 ] ,

tag_t support_plane,

logical is_asso,

tag_p_t line_feature_id

)

Что есть UF_CURVE_limit_p_t и зачем он вообще нужен тут??? Зачем указывать вспомогательную плоскость?? Это же просто прямая между 2-мя точками... Подскажите плз возможно есть какая-то другая функция которая делат тоже самое гораздо проще? И какой язык лучше использывать С, С++, C# или Java, и с чего лучше начинать изучение?

Да и еще в Open C++ Programmer's Guide много примеров, где все написано просто и логично, только если пытаешься их скомпилировать, появляется куча ошибок типа undeclared identifier и т.д.

Если можно, скиньте плз самые простые исходники с коментами, чтобы можно было понять что тут и к чему.

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


Судя по всему (не использовал) int UF_CURVE_create_line_point_point

создаёт ассоциативную линию (появилась то ли в NX4, то ли в NX6)

а если Вам просто линию создать:

int UF_CURVE_create_line

(

UF_CURVE_line_p_t line_coords,

tag_t * line

)

UF_CURVE_line_p_t line_coords Input Coordinates of line in absolute space

tag_t * line Output Object identifier Of new line

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

Да и еще в Open C++ Programmer's Guide много примеров, где все написано просто и логично, только если пытаешься их скомпилировать, появляется куча ошибок типа undeclared identifier и т.д.

Если можно, скиньте плз самые простые исходники с коментами, чтобы можно было понять что тут и к чему.

Это происходит потому что Ты не подключил header фалы и lib файлы

По поводу примеров - они есть каталогах NX посмотри UGOPEN UGOPENPP

Поищи каталоги example

Файлы *.cpр ....

Много чего найдешь

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

Спасибо! =)

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

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • realasd
      Здравствуйте. Нужен документ LR34-040-R2 " osp-p3000s/p300l руководство к обслуживанию". Поможете?  
    • Chuvak
      @nahaus Ок, сейчас проверю у себя  У Вас не объявлены переменные  fullPathFile и nameFileExtension Переменная  sheetProperties вообще лишняя, не используется, а тип данных имеет самый жористый)
    • clavr
      у вас для 3 и 4 мм указаны
    • nahaus
      Выскакивает ошибка  Она же выскакивает и без параметра в скобках.
    • Chuvak
      @nahaus  Потому что метод GetProperties2 возвращает массив свойств листа, состоящий из 8 переменных типа double: [ paperSize, templateIn, scale1, scale2, firstAngle, width, height, sameCustomProp ] Вам какие именно переменные из данного массива нужны:  paperSize, width или height ? Или все сразу. Тогда переделайте строку:   swApp.SendMsgToUser2 swSheet.GetProperties2, swMbWarning, swMbOk   на swApp.SendMsgToUser2 swSheet.GetProperties2(0), swMbWarning, swMbOk или   swApp.SendMsgToUser2 swSheet.GetProperties2(5), swMbWarning, swMbOk дальше примеры приводить не  буду, думаю поняли логику
    • hlibhlib
      Он на Гоблинском в Исходнике.
    • Kelny
      Модельку забыли положить.   И не указали версию программы и сервиспака.
    • nahaus
      Подскажите пожалуйста как получить размеры листа с помощью метода GetProperties2? Пытаюсь получить сообщение. Что не так в строке swApp.SendMsgToUser2 swSheet.GetProperties2, swMbWarning, swMbOk Dim swApp As SldWorks.SldWorks Dim swModel As SldWorks.ModelDoc2 Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Dim lErrors As Long Dim lWarnings As Long Dim swSheet As SldWorks.Sheet Dim swDrawing As SldWorks.DrawingDoc Dim sheetProperties As Variant Sub main() Set swApp = Application.SldWorks Set swModel = swApp.ActiveDoc fullPathFile = swModel.GetPathName ' swApp.SendMsgToUser2 fullPathFile, swMbWarning, swMbOk nameFileExtension = Mid(swModel.GetPathName, InStrRev(swModel.GetPathName, "\") + 1) ' swApp.SendMsgToUser2 nameFileExtension, swMbWarning, swMbOk nameFileWithoutExtension = Left(nameFileExtension, InStrRev(nameFileExtension, ".") - 1) ' swApp.SendMsgToUser2 nameFileWithoutExtension, swMbWarning, swMbOk Set swSheet = swModel.GetCurrentSheet ' swApp.SendMsgToUser2 swSheet.GetName, swMbWarning, swMbOk swApp.SendMsgToUser2 swSheet.GetProperties2, swMbWarning, swMbOk End Sub  
    • mannul
      Да, важна координата X. Если резьба с допуском, 6H допустим, лучше брать d1 из ГОСТа или просто из наружного диаметра резьбы вычесть две глубины, так меньше шанс провалить. А уже потом уменьшать X по 0,05 мм.
    • mannul
      Потому что расчетная глубина резьбы не учитывает радиус скругления на резьбовой пластине. Поэтому на практике всегда глубже нужно делать резьбу, подгонять.
×
×
  • Создать...