3rd part 코딩 기록 vicddory 2018. 9. 17. 08:00
UF_DRAW_set_view_display 사용 문제 (4.0, 7.5) UG NX C++ API 출처 : UF_DRAW_set_view_display 使用问题 [링크] 주제 : NX 4.0에서 UF_DRAW_set_view_display 함수 설정 방법이 NX 7.0과는 다릅니다. 함수 호출하면 에러가 발생합니다. NX 4.0과 NX 7.5의 정의 형태가 다르므로 발생하는 문제입니다. 7.5에서는 전달받는 인자 구조가 변경되어 interfering_solids 변수를 logical(논리형 bool)에서 int로 바꿔줘야 합니다. 만약 소스 하나로 NX4.0과 NX7.5에 프로그램을 공급해야 한다면, 버전에 맞도록 데이터를 변환하는 소스를 추가해야 합니다. UG NX C++ API를 사용하다 보면 다른..
3rd part 코딩 기록 vicddory 2017. 7. 13. 04:04
UG NX C++ API, NX UF_CLEAR_ask_preferences 에러 해결 방법 NX에서 충돌 체크를 확인하는 함수가 UF_CLEAR_ask_preferences()입니다. 근데, 사용 중 특정 에러가 발생하는 경우가 있습니다. Clearance Analysis : Clearance analysis has failed to due to input body or bodies failing to pass parasolid body checks 충돌 체크는 솔리드 바디를 기준으로 이뤄지는데 모델링 자체에 에러가 있으면 발생합니다. 즉, 충돌체크에 해당하지 않는 컴포넌트가 선택되었다는 뜻이죠. NX UG API 개발자로선 딱히 해결 방법이 없습니다. 왜냐면 NX 자체 에러인데 이걸 개발자가 고칠수는..
3rd part 코딩 기록 vicddory 2017. 6. 3. 19:11
[UG C++ API] NX 컴포넌트를 파트로 변경 (Component -> Part) NX 어셈블리 메뉴에서 Make Displayed Part를 선택하면 컴포넌트를 파트로 변경할 수 있습니다. C++에선 API를 이용해 자동으로 변경해 줄 수 있습니다. 순서는 이렇습니다. 1. 사용자가 선택한 컴포넌트의 어커런스occurrence 태그 획득 (UF_ASSEM_ask_part_occurrence()) 2. 1번 태그를 프로토타입으로 변경 (UF_ASSEM_ask_prototype_of_occ()) 3. 2번 태그를 디스플레이 파트로 변경 (UF_PART_set_display_part()) 4. 2번 태그를 작업 파트로 변경 (UF_ASSEM_set_work_part()) 이 과정의 소스는 아래와 같습니..
3rd part 코딩 기록 vicddory 2017. 6. 3. 10:00
UG NX [UF_ASSEM] UF_ASSEM_where_is_part_used 사용법 uf_assem.h - UF_ASSEM_where_is_part_used 함수원형 1234extern UFUNEXPORT int UF_ASSEM_where_is_part_used( tag_t part , // 차일드 태그 tag_t ** parent_parts // 리턴된 부모 태그 저장);/**/Colored by Color Scriptercs 설명 사용자가 선택한 자식 태그를 기반으로 부모 태그를 얻습니다. 너무 간단해 더 이어갈 말이 없네요... 사용 방법 12345678910111213tag_t *parent = NULL_TAG; int part_cnt = 0; // 어디선가 얻어낸 current_part란 차..
3rd part 코딩 기록 vicddory 2017. 5. 24. 20:00
UG NX C++ API [UF_DRF] UF_DRF_ask_preferences 폰트 크기 확인 uf_drf.h UG NX C++ API 함수 원형 123456extern UFUNEXPORT int UF_DRF_ask_preferences( int mpi[100], // MPI 속성 값 double mpr[70], // MPR 속성 값 char radius_value[27], // char diameter_value[27]);Colored by Color Scriptercs 설명 UF_DRF_ask_preferences 함수를 이용해 얻어오는 값은 매우 많습니다. 이 중에서 드래프트 작업 중 필요한 폰트 크기에 대한 기능만 설명합니다. 폰트의 정보는 mpr 배열에 담겨있기에 간단한 소스 코드를 통해 알..
3rd part 코딩 기록 vicddory 2017. 5. 17. 19:38
UG NX C++ API [UF_UI] uc1616 사용 방법 uf_ui.h UG NX C++ API 함수 원형 123456extern UGOPENINTEXPORT int uc1616( char * cue , // 사용자 정의 메시지 int mode[2] , // Point 창의 14가지 모드와 모드에 맞는 offset 값 6개 int point_display_mode, // 선택할 포인트 보이기 double point[3] // 선택된 포인트의 x, y, z 좌표 저장);Colored by Color Scriptercs C++ API 설명NX 메뉴 Insert - Datum/Point - Point 창을 띄웁니다. 위의 사진은 『UG NX Point 창』의 초기 화면입니다. Type과 Offset 등을..
3rd part 코딩 기록 vicddory 2017. 4. 14. 07:20
UG NX10 - 10.0.3.5 MP14 설치 방법 (지멘스 업데이트) UG NX의 MP는 Maintenance Pack의 약자로 UG NX에서 발표하는 MR(Maintenance Release)의 버그 수정용 패치입니다. 일반적으로 부르는 QRM의 문제점을 해결하기 위한 독립적인 패치죠. MP에 대해선 네이버 다른 분의 글을 조금 더 살펴보길 권합니다. 참조 : UG NX 10 설치 [클릭] 이 포스트에선 구체적인 설치 방법만 알려드립니다. 먼저 UG NX10을 실행하고 시스템 정보를 살펴보세요. MP 설치 전에는 NX Patch 란이 None로 되어 있을 겁니다. (Help - About - System Information) Siemens PLM Dowoload Server 페이지로 이동합니다. ..
3rd part 코딩 기록 vicddory 2017. 3. 21. 05:20
개요Open C API는 NX와 외부 세계 간의 쉬운 인터페이스가 가능하도록 설계되었습니다. Open C API는 아래와 같은 것으로 이루어져 있습니다. - NX 그래픽 터미널, 파일 관리자, 데이터베이스 등에 접근하는 호출 가능한 함수/서브루틴의 거대한 집합. - 사용자 프로그램을 링크하고 실행시키기 위한 커맨드 프로시져. - 그런 프로그램들을 실행시키기 위한 NX 내의 대화형 인터페이스. Open C API 프로그램은 프로그램이 링크된 방식에 따라 두 가지 다른 환경에서 실행할 수 있습니다. - External 이 Open C API 프로그램은 NX 외부의 운영체제에서 실행하거나, NX에서 차일드 프로세스로서 실행할 수 있는 독립된 프로그램입니다. - Internal 이 Open C API 프로그램은..