[FAQ]Unigraphics CAD 사용시 문제 해결 Ⅱ
FAQ소프트웨어 백문백답Unigraphics CAD 사용시 문제 해결 Ⅱ이 코너에서는 소프트웨어를 사용하면서 빈번하게 질문하는 내용을 FAQ식으로 엮어 소개하고 있다. 내용은 특정 소프트웨어에 국한하지 않고 널리 사용되는 소프트웨어 위주로 지속적으로 소개하고 있으므로, 소프트웨어를 사용하면서 느꼈던 어려운 점이나 질문사항이 있는 경우는 취재부(pablino@cadgraphics.co.kr)로 연락을 주기 바란다.■ 자료 제공 / 유니그래픽스솔루션즈코리아Q. IGES 파트를 변환하려고 할 때, 내가 만들어둔 기본 옵션(Default)을 저장할 수 없다. 이것은 도면작업이나 모델링 모두 마찬가지이다. 그래서 매번 할 때마다 많은 값들을 바꾸어야 한다. 혹시 ug_English.def 파일에서 이것을 저장할 수 있는가. 기본 옵션이 UG를 시작할 때마다 동시에 적용되도록 하고 싶다.A. 혹시 IGES 파트 자체를 조정해 보신적이 있는가. UG를 설치한 디렉토리 밑에 IGES 디렉토리가 있다. 이 디렉토리에는 2개의 파일이 있는데 igesnullv160_in.prt와 igesnullv160_mm.prt 이다. 이 두 파일에 IGES 지오메트리가 합쳐진다. 그러므로 이 2 파일의 원본을 백업하신 후에 이 파일을 조정하면 원하시는 기본 옵션을 정할 수 있을 것이다.Q. SolidWorks로부터 파라솔리드 데이터를 받아들일 때, 면 색상은 유지되는 데, 선 색상은 기본 설정 값인 녹색으로 바뀌어 버린다. 모델 어셈블리를 색상보기(shaded)로 표시하면 색상이 올바르게 표시된 것을 볼 수 있다. 어떻게 이해해야 하는가.A. 만일 실지로 그렇다면 ug_metric 파일을 조사해 보고 그 결과를 알려주기 바란다. 유니그래픽스는 솔리드의 한 부분인 에지의 색상에 대하여 독립적인 수정을 지원하지 않는다. 그러나 면 색상의 변경은 지원한다. 파라솔리드 또한 면에 대한 색상 속성을 지원한다. 이것이 모델을 읽어 들었을 때 왜 면의 정보만 일치하는지에 대한 답이 되기를 바란다. 결과적으로 에지에 대한 색상은 기본 바디 색상으로 변환된다.Q. SolidWorks의 어셈블리를 읽어 들일 경우 파라솔리드 버전 10에서는 어셈블리 구조가 수평구조로 바뀌어 버리는 것 같다. 같은 파라솔리드를 사용하는데 어떻게 된 것인지 궁금하다.A. 어셈블리 구조를 관리하는 방법에 있어서 유니그래픽스와 파라솔리드는 약간 다르다. 즉, 파라솔리드에 종속되어 있지 않다. 물론 SolidWorks가 어셈블리를 정의하는 방법에 있어서 파라솔리드와 UG를 제외한다면 문제가 될 수 있을 것이다.Q. V16에서 사용자 툴 메뉴를 사용하려고 한다. 그러나 비트맵 파일을 지원하지 않는 것 같다. 그렇지만 Uistyler는 사용 가능하다. 어떻게 된 것인지 설명을 부탁한다.A. 문제가 무엇인지 정확히 이해가 되지 않으나, 이 문제에서 비트맵이 UG 라이브러리에 있거나 the UGII_BITMAP_DIR에 있다면 정상적으로 사용하는데 문제가 없다. 혹, ".bmp" 확장자를 이름에서 제거해보면 어떨까. 아래의 예는 정상적으로 사용할 수 있는 툴바의 예제이다. 도움이 되기 바란다.BUTTON my_macro_1LABEL Reset ConfigurationBITMAP update_arrow_redACTION ${UGII_USER_DIR}pref_cam_reset.macroQ. UG V15.0.3 사용자인데, 글자 폰트 파일을 이용하여 커브로 하여 Extrude 명령을 사용하고 싶은데 방법을 알고 싶다.A. Ug 폰트는 단지 선일 뿐이어서 Extrude용으로는 그렇게 좋지는 않다. 귀하가 찾는 것은 프로그램으로 가능하며 이것은 아래의 위치에 있다.$UGII_BASE_DIR/griplib/source/grip/main/font_geom.grx만일 위의 위치에 있지 않다면 설치 CD를 이용하여 재설치 하거나 griplib 디렉토리에 있는 tar 파일을 압축 해제하여 사용할 수 있다.Q. Adobe Distiller를 사용하고 있는데, 이를 이용하여 포스트스크립트 파일을 PDF 파일로 만들고자 한다. 포스트스크립트 파일은 UG Drawing의 플로팅 기능을 이용하여 만든 것이다. 이렇게 하여 만들 수는 있으나, PDF 파일의 품질이 떨어지고 출력하여 보면 만족스럽지 못하다. 텍스트와 두꺼운 선은 정말 두껍게 나온다. 어떻게 하면 품질을 올릴 수 있는가.A. 다음의 스위치를 조정하여 보면, 향상된 결과를 얻을 수 있을 것이다.PLRID=3DPOSTSCRIPTINTEGRITY_ID=3D0007DSPNM=3DUGIIPSPLTVEN=3DPOSTSCRIPTSWITCHES=3D/AR/PG=3D17X11/MO/SP=3DMW =E7OUTMOD=3D3COMLN=3DQUENAM=3DOUTDIR=3DG:\PDF_POSTSCRIPTNPENS=3D15DXBET=3D0STPSZ=3D1440Q. vAC 프로젝트에 참가하고 있는 연구원으로, 팬 히터로부터 매니폴드/공기 분사기 쪽을 연결하는 호스를 디자인하고 있다. 호스의 단면은 사각형이며, 길이에 따라서 그 단면의 크기가 변한다. 이 경우 그 단면을 다이나믹하게 볼 수 있는 방법이 있는가.A. 만일 UG V16을 사용하고 있다면 간단하다. 새로운 기능으로 Analysis 메뉴 항목에서 Section이라는 기능이 있다. 이것을 이용하여 분석하고자 하는 면을 선택하고 단면으로 사용할 면을 정의하면 원하는 정보를 얻을 수 있다. 이 때 각 단면의 곡률을 조사하기 위하여 슬라이더 기능을 사용하시면 좀더 다이나믹하게 확인할 수 있다. 만일 V15를 사용하고 계신다면 다음과 같은 방법으로 확인할 수 있다. 즉, Toolbox-Curve-Section의 명령을 이용하는 것입니다. 즉 원하는 임의의 위치에서 단면의 속성을 지닌 커브를 생성한다. 다음으로 Info-Analysis-Curve Analysis 명령을 이용하여 커브의 곡률을 분석할 수 있다. 이것은 V16의 새로운 모듈인 UG/Studio for Design이다. 위에서 보셨던 Analysis/Section 명령어는 소개드린 모듈에 대한 라이센스가 있어야만 정상적으로 작동한다. 단면 커브를 생성하고 분석하는 기능은, 다이나믹하게 할 필요만 없다면, 위에서 설명한 방법으로 하는 것도 좋은 방법이라 생각된다.Q. Drafting Guide for Effective Use를 읽고 있다. 이 책에서 보면 UG/Open을 이용하면 작업시간 이외에도 일종의 배치작업으로 도면 뷰를 갱신할 수 있다. UG/Open뿐만 아니라 기타 어떠한 프로그래밍도 해본 적이 없는데, 가능하다면 기술적인 지원을 받아서 이 작업을 완료하는 것이 시간을 절약할 수 있어 바람직하다고 생각한다. A. 우선 UG/Open의 라이센스가 있어야 있어야 하고, 또한 C 프로그램을 작성할 줄 알아야 한다. V16.0의 온라인 버전 Drafting Guide to Effective Use에는 도면 뷰를 갱신하는 예제 프로그램이 있다. 그 파일의 이름은 ufd_update_views.c이며 Ugopen 디렉토리에 있다. 그리고 사용자의 환경에 맞게 계속적으로 수정하기 위해서라도 C 프로그램에 대하여 조금 공부하는 것이 좋을 것으로 보인다.Q. 현재 V15.0.2를 사용하고 있다. 오래된 도면을 가지고 있는데 갱신을 하면 더 이상 옛 도면을 읽지 않는다. 그래서 저장을 하고 모든 파트를 닫은 다음에 다시 열면 옛 도면을 읽어 들이는데 문제가 무엇인지 알고 싶다. A. 질문한 것이 어셈블리인가. 혹시 옛 버전에서 만든 콤포넌트가 있어 그 단품이 최신 버전으로 갱신되지 않은 상황은 아닌가. 어셈블리를 열 때마다 오래된 콤포넌트는 갱신되며 "modified"라는 메시지가 따라 붙기 때문에 그 자체로는 문제가 되지 않는다. 문제가 되는 상황은 다음에 그 파일을 열었을 때이다. 이 경우 그 해당 파일은 "modified"라는 꼬리표가 붙어있게 된다. 왜냐하면 저장했었던 파일은 갱신되었는데 도면은 옛 것을 보여주기 때문이다. 물론 "picture"는 정상적으로 보일 수도 있지만 내부적으로 보았을 때에는 무엇인가가 변경된 경우로 간주된다. 예로서 선을 지우고 다시 그릴 경우 외관은 같지만 변경된 것으로 인식하는 것과 같은 것이다.Q. 상당히 큰 곡면작업을 하고 있는데, 그 크기는 8-9미터 정도이다. 이 곡면들은 Through Curves 또는 Through Curve Mesh 기능을 이용하여 생성한다. 이 곡면들의 크기는 각각 1.5Mb 정도이다. 이렇게 생성된 곡면들을 마스터 지오메트리로 사용하려고 한다. 이 곡면들을 언파라메트릭으로 만들고 작업하기 쉽게 하기 위하여 필요한 크기로 잘라낸다. 그 다음으로 다중 옵셋 면을 생성하고 이 옵셋 면을 이용하여 솔리드를 트림한다. 이렇게 함으로써 유사한 컨투어를 가지게 한다. 그리고 필요한 피처를 추가한다. 이렇게 하는 동안 다음에 열거한 내용을 발견하였다.① 파라미터를 제거함으로써, 파일 크기를 줄일 수 있을 거라고 생각했는데 실제로는 줄어들지 않는다. 파라미터 제거는 Edit -Feature -Remove parameters를 이용하였다. 마치 UG가 여전히 파라미터를 내부적으로 가지고 있으면서 사용자에게는 제공하지 않는 것과 같다.② 한 장의 곡면이 1.5Mb의 크기를 가질 때, 옵셋 면을 하면 파일 크기가 3Mb로 증가한다. 들리는 얘기로는 옵셋과 관련된 정보만을 저장한다고 하는데 그렇지 않은 것 같다.③ 파라메트릭하게든 언파라메트릭하게든 곡면을 잘라 그 곡면의 반을 없애면 파일의 크기가 상당히 줄어들 것으로 생각된다. 그러나 그 반대로 증가한다.A. 보통 콤포넌트는 8에서 15개의 옵셋을 가지고 있으며, 더 많은 피처가 추가된다. 단순한 콤포넌트의 경우에는 30-40Mb의 파일 크기 정도가 된다. 곡면을 생성하는 것을 패치 그룹으로 생각하고 있으나, 주변을 둘러싸는 것에 대해 탄젠트를 유지하는 것이 많은 경우에 가능하지 않다. 만일 치수관점과 파일 크기의 관점에서 곡면의 크기를 줄이려고 한다면 Iso-Trim 기능을 이용하여야 한다. 분할 또는 트림 중에서 어떤 것을 하더라도 원본 데이터를 기억한다. 그러므로 메모리가 필요하다. 면을 옵셋하는 것은 파일 크기를 증가시키는데 왜냐하면 실제로는 또다른 별개의 곡면을 생성하는 것이기 때문이다. 즉, 단순히 가상적인 면이 아니기 때문이다. 더 나아가 원본 곡면과 옵셋된 면을 프로그램으로 링크시킨다. 만일 원본 곡면이 변하면 프로그램이 옵셋된 곡면을 따라서 변경시킨다.Q. DXT 파일을 확인하기 위해 새로운 mm 단위의 파트 파일로 반입하였다. 반입 중에 "Metric-English units conflict. automatically scaling part"라는 에러 메시지가 발생한다. 모델링의 치수를 확인하였고, 치수가 스케일 된 것을 알았다. 그래서 이 번에는 그 DXF 파일을 inch 단위계에서 읽었는데 에러 메시지가 없었다.A.이것은 파일 양식이 항상 English(또는 universal)일 경우에 발생한다. 즉, inch 단위계에서 파트를 생성하는 것처럼 보이지만 실제로는 metric 단위계로 입력을 하는 경우이다. 언급된 에러메시지가 뜨면 다시 스케일을 역으로 주어서 되돌리기 바란다.Q. 도면 출력을 하기 전에 도면에 디지털 서명을 넣고 싶은데, 내 생각으로는 서명을 스캔하여 읽은 다음에 CGM이나 DXF로 바꾸어 사용하면 될 것으로 추측했었다. 그러나 TIFF나 JPEG같은 래스터 데이터를 UG에서 읽을 수 있는 CGM 형식으로 바꿀 수 있는 프로그램을 찾지 못하였다. COREL DRAW가 이 기능을 가지고 있는 것 같은데 이것으로 생성한 CGM 파일을 UG로 읽어 들이지 못하고 있다.A 인터넷에 Paint Brush 파일(PCX)를 DXF로 바꾸는 프로그램이 있다. 이 프로그램은 단지 모든 래스터 정보를 작은 수평선으로 변환한다. 이 프로그램을 이용하면 UG로 읽어들이는데 충분할 것으로 판단된다. 이 프로그램은 pcxslt18이라는 이름으로 www.download.com에서 얻을 수 있다. 이 프로그램은 PCX 파일이 있는 디렉토리 위치에서 실행하여야만 작동한다.Q. 현재 mm 단위로 모델링한 파트를 inch 단위로 변환하고 싶다. 이 파트는 UDF도 포함하고 있다. Ug_part_convert 프로그램을 이용하여 보았지만 에러가 발생한다. 혹시 UDF를 포함하고 있어서 에러가 발생한 것인가.A. 질문한 내용은 V15와 V16에서 문제점으로 발견된 것이다. 즉, UDF가 V15이전의 것일 경우에 발생하는데 V16.0.1에서 수정되었다.Q. STL 파일을 생성하는데 있어서 Triangle Tol 와 Adjacency Tol를 조정할 수 있는 방법이 있는가. A. 전체적인 입장에서 사용자 기본 값 또는 환경변수 형식으로 지정할 수 있는 방법은 없으나 파트 파일을 이용하여 세팅할 수 있다. 즉 기본 파트를 하나 만들어 둔다. 이 기본 파트에 설정하고 싶은 변수 값을 정해두고 새로운 모델을 생성할 때마다 이용한다. 또는 빈 파일을 생성하고, 이 경우 변수는 지정하여져 있고, 래피드 프로토타이핑 하고자 하는 파일을 추가/병합(Merge) 하는 것이다. 주의할 것은 그 파트는 어셈블리 콤포넌트로 추가될 수 있고, stl 파일로도 생성될 수 있다. 어셈블리를 이용할 경우 한 가지 더 좋은 점은 올바른 결과를 얻기 위해서는 모든 모델이 양의 공간에 있어야 한다. 즉, X, Y 및 Z값이 모두 양인 공간에 모델이 있어야 한다는 것이다. 이렇게 함으로써 CSYS를 변경하거나 옮길 필요가 없고, 단순히 기본 어셈블리 파일에 추가하여 양의 공간에 위치하도록 옮기기만 하면 됩니다. 사실 더미 어셈블리를 생성하고 컴포넌트를 양의 공간에 미리 배치한 후 open as를 이용하여 원하는 파트를 선택하면 .STL 파일을 생성할 수 있다.Q. 약간 복잡한 솔리드 모델을 가지고 있다. 이것을 3 스퀘어의 베지어 패치 시트로 변환하려고 한다. 어떤 간편한 방법이 있는가. 아니면 솔리드로부터 시트를 추출하고 분할하여 패치로 만들어야 하는가. 해석 프로그램이 솔리드를 처리하지 못해서 문의드린다.A. Quilt 명령어를 사용할 수 있다. 우선 3x3의 패치를 구하기 위해 필요한 솔리드의 영역에 투영되거나 투영될 수 있는 커브 세트를 생성한다. 다음으로 Qulit 기능을 이용하여 정의된 영역에 있어서 솔리드 모델을 근사치화한 하나의 파라메틱한 곡면 덩어리를 생성할 수 있다. 물론 근사치화 정도는 조정할 수 있다. 또한 V15 버전부터는 Qulit로 만들어진 곡면은 연관성을 가지고 있어서 솔리드가 변하면 생성된 패치는 자동 갱신된다.Q. V15 기능 중에서 Face Analysis가 있는데, 이것은 결과를 여러 가지의 다른 색상으로 표시하는 것으로 알고 있다. 그런데 참고서적에서는 이 결과를 보는 방법에 대하여 많이는 설명하고 있지 않다. 이 결과를 보는 방법 또는 관련 사이트가 있으면 알려주기 바란다.A. UG에서 실시하는 'Free Form Feature Modeling' 교육에는 이 부분에 대한 섹션이 있다. Student guide의 lessen 11의 제목은 'Shape Analysis of Faces and Deviation'이다. 이 부분을 참조하시면 도움이 될 것이다.Q. 우연히 발견하였는데, 이상하게도 Load 옵션은 있지만 Save 옵션은 없는 것 같다. 어딘가에 save_option.def라는 파일이 있을 것 같은데 알려주기 바란다.A. 이 옵션에 대한 기본 값은 customer defaults file에서 읽어들인다. 즉, UG_initialPartDir 변수를 사용한다. 그러므로 만일 전 부분에 걸쳐 설정을 변경하고 싶으면 ug_English.def 또는 ug_metric.def를 수정하시기 바란다. 만일 UG를 시작하는 각 위치/환경별로 다르게 설정하고 싶으면, 예로서 load_options.def 경우처럼, 스크립트를 작성하여야 한다.즉, 이 스크립트로 UG를 구동하고 필요한 변수 세팅을 한다. 스크립트는 유닉스의 경우 쉘 스크립트, NT에서는 윈도우 스크립팅 호스트이다.Q. 큰 어셈블리의 경우에 Blank/Unblank 기능을 사용하거나 레이어를 사용하여 콤포넌트를 관리하였다. 그러므로 이 경우 필요한 부품만을 화면에 띄워 필요한 작업을 할 수 있었다. 그리고 이러한 작업 환경을 기구/동력학 쪽으로 돌려 애니메이션을 하여 간섭조사를 하기도 하였다. 다시 모델링으로 돌아가서 몇 개의 부품을 끄고 켜거나 혹은 매칭조건(Mating Condition)을 조정하기도 하였다. 다시 기구/동력학으로 돌아가서 또 다른 시나리오를 시도한다.또 다른 시나리오를 추가한다. 모델링에서 ANT를 이용하여 보고자 하는 부품만 켜거나 끌려고 한다. 이 경우 매칭 조건이 틀려지게 된다. 모션을 선택하면 완전히 다른 어셈블리가 보이게 되며, 모든 어셈블리가 화면상에 표시된다. 기구/동력학에서는 ANT를 사용할 수가 없다. 할 수 없이 레이어를 이용하여 다른 레이어로 이동시키거나 블랭크 시키는 방법을 사용한다. 결국 참조 세트(Referenced Set)가 틀려지게 되는데, 이를 수정하기 위해서는 이 Motion에 사용한 파트를 모델링 작업으로 돌아가서 변경해야 한다. 이렇게 함으로써 애니메이션을 힘겹게 시작하게 된다. 다시 모델링으로 돌아가서 이 피처를 변경하고, 변수를 바꾸고 블랭크/언블랭크를 하고 난 후 다시 Motion으로 돌아간다. 이와 같은 과정을 반복하기가 너무 힘들어서 단순히 몇 개의 커브를 이용하여 간섭 체크를 한다. 만일 기구/동력학을 구조해석과 연관시켜서 생각한다면 정말 힘든 작업이다.지금은 특정 파트의 형상 변경이 매우 커서 어차피 다시 재설정하여야 하므로 그냥 사용하고 있다. 그러나 그러한 개념은 어셈블리의 용도와 어긋나는 것으로 판단된다. 트리 구조에서 수준을 변경하면 레이어, 블랭크, 참조 세트가 틀려진다. 콤포넌트의 연관구조가 초기화되는 느낌이다. 돌이켜 보면 V15의 큰 어셈블리 상황이 더 적합한 것으로 판단된다. 옛 V15를 사용하다가 V16으로 업그레이드 했을 경우 이런 문제를 어떻게 극복했는지 궁금하다.A. 어셈블리 어트리뷰트가 시나리오로 이동할 경우에는 그 어트리뷰트가 사라진다는 내용은 인지하였다. 이것은 V17에서 고쳐질 것이며, 더불어 Motion +에서도 어트리뷰트의 속성이 유지됨을 약속드린다.- CAD & 그래픽스 2000년 9월호 중 발췌 -
작성일 : 2005-10-12