mir.pe (일반/어두운 화면)
최근 수정 시각 : 2024-02-15 15:02:17

FreeCAD


그래픽 툴
{{{#!wiki style="margin:0 -10px -5px; word-break: keep-all"
{{{#!wiki style="display:inline-block; min-width:25%"
{{{#!folding [ 2D ]
{{{#!wiki style="margin:-5px 0 -10px"
<colbgcolor=#eee,#333> DTP LibreOfficeΟF · Affinity Publisher · Microsoft Publisher · Sigil · QuarkXPressC · 어도비 인디자인C · ScribusΟF
비트맵 GIMPΟF · Affinity PhotoB · Artecture Draw, Sketch, PaintΜ · SketchbookBF · AzPainter2 · Black InkBF · CLIP STUDIO PAINTB$ · Dr. HALOΧ · ExpresiiC · EzPhotoX · ibisPaint XB$ · KritaBΟFC · LeonardoC · mdiappF · MyPaintΟF · Paint.NET$ · PaintTool SAI · PintaΟF · PixiaF · ProcreateΜ$ · RebelleC· SketchableC · Spine · 그림판 · 디럭스 페인트Χ · 메디방페인트BF · 스무스 드로우F · 아트레이지 · 아트위버 · 어도비 포토샵C · 에지B$ · 오픈캔버스 · 일러스트 스튜디오Χ · 콜러페인트F · 파이어알파카F · 페이즈원 캡처원프로$ · 페인터C · 페인트샵 · 페인트스톰 스튜디오B · 포토샵 라이트룸 · 포토스케이프 X$ 프레시 페인트B · 픽셀메이터 프로B · 픽픽$ · 하늘Χ · 훠닐 스타일픽스F · Pocket ArtistXM
벡터 InkscapeΟ · Affinity DesignerB · Corel DRAWC · CorelTRACEOFC · CLIP STUDIO PAINTBC · ibisPaint XΜ · Microsoft Visio · Spine · 어도비 애니메이트C · 어도비 일러스트레이터C · 툰붐 하모니
UI Sketch · 피그마$ · 어도비 XD
웹 기반 Draw Chat · Drawesome · Kleki · PixlrB$ · Photopea$ · Sketch Pad · Magma Studio · Sumo App · Queeky · 미리캔버스B$ · 툴디B$
}}}}}}}}}
[ 3D ]
##
||<tablewidth=100%><tablebgcolor=#fff,#1f2023><colbgcolor=#eee,#333><width=70> CAD ||<(> FreeCADOF · CATIA · CREO · Fusion 360 · Inventor · NX · Solid Edge · SolidWorks · OpenSCADOF · TinkercadF · ARCHICAD · AutoCAD · QCADO$ · ZWCAD · ZW3D · K-CAD||
PLM CATIA · CREO · Inventor · NX · Solid Edge · SolidWorks
Mesh BlenderOF · 3ds Max · Mudbox · Autodesk Maya · Cinema 4D( BodyPaint 3D) · Daz StudioF · Houdini · LightWave 3D · Metasequoia · MilkShape 3D · Mine-imator · MODO · Poser · SculptGL · Sculptris · SketchUp$ · 소프트이미지Χ · Source FilmmakerF · Substance 3D Painter · VUE · ZBrush · Zmodeler · 포즈 스튜디오 · Prisma 3DFM · XISMOF · VRoidBF · MikuMikuDance · Nomad SculptΜ
NURBS Alias · Autodesk Maya · 3ds Max · Rhino · 소프트이미지Χ
렌더 Arnold · Chaos Corona · Enscape · Mental RayΧ · V-Ray · Lumion · Twinmotion · 언리얼 엔진 · Keyshot · RenderMan$ · 코미Po! · 툰스푼 에디터
웹 기반 Onshape
[ 영상 ]
##
}}}||
B PC·모바일 공동 지원 · Μ 모바일 전용 · Ο 오픈 소스 · F 프리웨어 · $ 유·무료 공존/부분유료 · C 컬러 매니지먼트 시스템 · Χ 단종
프리캐드
파일:freecad.png
<colbgcolor=#f8f9fa,#1f2023><colcolor=#000,#fff> 용도 <colcolor=#000,#fff> 메커니컬 및 서피스 디자인,
기계설계, 시뮬레이션, 건축 BIM
코드 라이선스 gnu lgpl v2+
운영체제 Linux, Windows, macOS
사이트 freecad.org
1. 개요2. Link Branch 및 Assembly3 사용 팁
2.1. 사이클릭 디펜던시 및 에러 해결책
3. 프리폼 서피스 디자인 툴4. 프리캐드를 사용한 3D 모델링 강좌5. 렌더링, 데칼, SubD 서피스 활용방법6. Linux에서 포터블/멀티버전 설치 및 실행 방법7. 관련링크
[clearfix]

1. 개요

프리캐드는 크로스 플랫폼( 리눅스,윈도우즈,맥에서 모두 실행)을 지원하는 다목적 파라메트릭 3D CAD, 자유 소프트웨어이다. 메커니컬 및 서피스 디자인, 기계설계, 건축등의 분야에서 사용가능하다. 부가 기능을 워크벤치 모듈/Addon이나 매크로(Macros)로 제공하고 있다. 릴리스 히스토리 및 릴리스 노트 #.

디자인 구조설계 및 편집에 편리한 파라메트릭과 히스토릭 기능을 지원하고 있다. 멀티 다큐먼트 파일, 멀티 그룹, 멀티 파트, 멀티 바디 컨테이너로 솔리드 모델과 서피스 모델등을 구성한다. 활성화된 어셈블리, 바디 컨테이너, 또는 스케치 내에서 타 오브젝트를 (Sub)ShapeBinder나 External/DefiningGeometry 툴로 참조하여 피쳐를 정의 가능하다. 파트/바디의 피쳐, 디멘젼, 오브젝트 위치/어테치먼트 등등의 디자인 인텐트(intent)가 '어셈블리'로부터 가능한 탑다운(Top-down) 디자인을 지원하고 있다.

외부 다큐먼트 파일 또는 작업 다큐먼트 파일 내의 스케치/바디/파트/서브어셈블리 추가(고급 Copy/Paste 또는 Link) 및 In-Context / In-Place Design-Edit, 오브젝트간의 조인트/메이트 구속조건(3D Constraint), 바디 컨테이너 내에서 분리 또는 합쳐진 솔리드 오브젝트/피쳐 관리, 2D-3D 통합 스테틱 스페이스 솔버 및 리얼타임 다이나믹 키네마틱(kinematic) 모션, 고급 참조(Link/Bind CopyOnChange, Link, ConstrainingElement, ElementLink), 매니지먼트 기능 등등의 고급 어셈블리/파트 디자인을 위해 2017년 12월 프리캐드 0.17에서 브랜치 시작되어 2020년 4월초 릴리스된 프리캐드 프리뷰 0.19.20415 Conda 패키지 버전부터 공식 탑재되고 있는 고급레벨의 Assembly3 워크벤치 모듈을 사용하여야 한다. 프리캐드 공식 릴리스에서 브랜치/포크된 프리캐드 Link Branch 릴리스를 사용하는것이 유리하다. 프리캐드 공식 포럼 검색(https://forum.freecadweb.org/search.php)란에서 author를 realthunder로 하고 topics별 리스트 결과에서 Link Branch 릴리스의 추가된 기능을 확인할수 있다. 기본레벨의 A2plus 또는 Assembly4 워크벤치 모듈도 있으나 Assembly3 워크벤치 모듈의 기능을 따라오지 못하고 있다. 참고로, Link Branch와 Assembly3 워크벤치 모듈 경우 솔리드웍스나 퓨전360의 어셈블리 디자인 기능도 능가하고 있다.

2. Link Branch 및 Assembly3 사용 팁

성능과 관련하여 Menu > Edit > Preferences > Display > 3D view > Rendering 창에서 "Use OpenGL VBO"를 체크하고 "Render cache"를 Experimental로 선택하면 Coin3D 최적화 등을 통한 OpenGL GPU 직접 가속을 지원하게 되어 복잡한 어셈블리 작업시 확연한 성능 향상을 느낄수 있다 #. 저가형 GPU에서 특히 효과가 있다. 렌더 캐시 성능향상 기능은 Link Branch 릴리스에서만 지원한다. 3D View 설정창에서 "Show counter of frames per second"를 on하여 게임 성능 체크와 같이 FPS를 확인가능하다. 그리고 Tessellation값을 Menu > Edit > Preferences > Part desgin > Shape view창에서 글로벌로 설정, 라인/커브/서피스에 대한 화질과 성능 밸랜스를 조절가능하다.

어셈블리3 워크벤치 사용시 3D 컨스트레인트를 적용후 기계적 모션을 수동으로 실행하기 위해 어셈블리3 워크벤치의 'Move Part'나 'Axial Move Part' 툴을 사용한다. 선정된 컨스트레인트에 대해 Length, Angle, Distance 파라메터를 스텝을 조절하며 오토 모션 기능을 구현하려면 https://wiki.freecadweb.org/Tutorial_KinematicAssembly 및 https://wiki.freecad.org/Tutorial_KinematicController 튜토리얼 내용대로 매크로를 실행하여야 한다. 키네마틱 모션에 대한 스텝별 이미지 파일을 저장하는 기능도 있어 기계적 모션에 대한 gif 애니메이션 파일을 작성도 가능하다. 구동 컨스트레인트를 지정하기 위해 Assembly 트리의 Constraints 폴더 하부의 선택된 3D 컨스트레인트 Label을 Driver로 끝나게 수정한후 매크로를 실행하여야 한다.

어셈블리 파트에 대해 2번째 3D 컨스트레인트/조인트/메이트를 적용시 에러가 뜨는 경우는 그 파트에 대한 DOF(degree of freedom) 값이 0이하로 감소하여 Overconstrained되는 경우 발생한다. 해결책은 DOF값이 높은 3D constraint 툴을 조합하여 사용하면 된다. 예를들어 AxialAlignment와 DOF가 1로 낮은 PlaneCoincident를 사용하는 대신 DOF가 5로 높은 PointInPlane을 조합하여 사용하면 해결된다. SameOrientation툴과의 조합도 아주 유용하다.

2.1. 사이클릭 디펜던시 및 에러 해결책

3. 프리폼 서피스 디자인 툴

다음 워크벤치(WB)의 기능과 피쳐를 사용하여 3D 라인/커브/서피스를 쉽게 디자인 가능하다.
기본설치된 워크벤치 모듈의 서피스 디자인 툴 추가설치 가능한 서피스 디자인 워크벤치 모듈
Part Design WB Sweep(Pipe), Loft Curves WB (3D Curve/Line/Surface)
NURBS WB
Silk WB
Curved Shapes WB
Part WB Sweep, Loft, RuledSurface,
ShapeBuilder(FaceFromEdges)
Surface WB Filling, FillBoundaryCurves, ExtendFace,
SurfaceFromSectionCurves, CurveOnMesh
Part WB의 ShapeBuilder(FaceFromEdges) 툴을 제외하고 모두 전후 파라메트릭 기능을 지원하고 있다. 추가 설치가능한 서피스 디자인 워크벤치 모듈중에서는 Curves WB (NURBS 3D 라인/커브/서피스) 모듈이 가장 유용하다. Link Branch 릴리스와 Curves 워크벤치 모듈등과 함께 사용시 Assembly 컨테이너로 랩핑을 하여야 하는 경우가 있다.

Tip : 3D 라인/커브 오브젝트 작성 방법 위와 같이 작성된 3D 라인/커브 오브젝트는 구현하고자 하는 3D 서피스를 위한 프로파일(profile)/바운더리(boundary)/패스(path)로써 사용가능하다.

4. 프리캐드를 사용한 3D 모델링 강좌

Studio
Petrikas
MangoJelly
Solutions
Mariana
Badea
Joko
Engineeringhelp
TutorialField AllVisuals4U

5. 렌더링, 데칼, SubD 서피스 활용방법

모션 그래픽 업계에서 활용중인 오픈소스 자유 소프트웨어인 Blender의 특수기능을 프리캐드와 함께 사용 가능하다.

프리캐드에서 .OBJ나 .STL 파일로 export하여 Blender에서 리얼타임 렌더엔진인 Eevee나 CPU+GPU를 동시에 지원하는 Cycles 렌더엔진으로 렌더링 가능하다. 프리캐드에서 export시 Mesh WB에서 보다 상세한 셋팅을 하여야 할 경우도 있다. 실물 사진과 동일한 이미지 결과를 얻기 위해 블렌더에서 렌더 셋팅, Output 셋팅, View Layer 셋팅, World 셋팅, 머티리얼 셋팅, 텍스쳐 셋팅, 카메라/라이트 셋팅과 Shade에디터 사용에 대한 노우하우가 필요하다. 블렌더의 UV 에디터로 Decal을 입히거나 에니메이션과 관련된 에디터를 사용하여 모션 그래픽 툴로도 활용 가능하다.

렌더링을 위해서는 기본적으로 World HDRI 이미지에 오브젝트 별로 Material 텍스쳐 이미지(베이스 컬러/이미지 + Normal/Height/Metallic/Roughness 이미지)를 Normal/Bump 맵핑 노드와 Shader 노드(Principled BSDF)에 적용 또는 Displacement 맵핑을 통해 용이하게 상용 렌더러를 능가하는 이미지 결과를 얻을수 있다. 블렌더 PBR 텍스쳐 베이직 강좌(Normal/Bump맵핑). 유튜브에서 Freecad Blender, Blender Rendering, Blender PBR등으로 검색해보면 된다.

Blender에서 SubD/NURBS 서피스 모델링 결과를 .OBJ나 .STL 파일로 export한후, 프리캐드에서 Mesh to Shape 변환과 관련된 툴을 사용하거나, 별도의 SubD to NURBS 자동화 변환툴 (Mesh .OBJ/.STL => SubD => NURBS .IGES/ .STEP 트랜스레이터/컨버터) 등을 사용하여 Mesh 기반의 3D자료를 NURBS/Shape모델로 변환하여 프리캐드에서 활용 가능하다. 블렌더-프리캐드 전용 SubD to NURBS 자동화 변환툴도 있다.

6. Linux에서 포터블/멀티버전 설치 및 실행 방법

프리캐드는 멀티버전 및 포터블 버젼 실행을 지원한다. 프로그램 설정 파일 및 디렉토리 분리를 위해 Ubuntu 등등의 리눅스에서 FREECAD_USER_HOME 환경 변수와 값을 지정하여 프로그램을 실행한다.

프리캐드 AppImage 파일을 관련 링크에서 다운로드 한후 nautilus 파일 매니져에서 오른쪽 마우스 클릭, "Properties > Execuable as Program"을 체크한다. 텍스트 에디터에서 bash 스크립트 파일을 다음과 같이 작성후 nautilus 파일 매니져에서 오른쪽 마우스 클릭후 "Run as a Program"으로 실행한다.
cd PATH_TO_AppImage                 # appimage 실행 파일이 위치한 절대 경로로 수정
export FREECAD_USER_HOME="$PWD/Settings_Ex1"
export QT_QPA_PLATFORMTHEME=gnome   # 옵션 사항으로 Qt앱을 리눅스 GNOME데스크탑에서 사용시 UI튜닝을 위해 지정
./name_of_AppImage_file.AppImage    # 실제 appimage 파일명으로 수정
AppImage 실행 파일이 위치한 곳에 Settings_Ex1 서브폴더가 만들어지고 관련 셋팅파일 및 Addon등이 분리되어 위치함을 알수 있다.

7. 관련링크

프리캐드 최신 위클리 릴리스 → https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds
프리캐드 마스터/업스트림 릴리스 → https://github.com/FreeCAD/FreeCAD/releases

프리캐드 Link Branch 릴리스 → https://github.com/realthunder/FreeCAD/releases
프리캐드 Link Branch, 리눅스 전용 Snap 패키지 최신 릴리스 → https://snapcraft.io/freecad-realthunder
Assembly3 워크벤치 모듈 → https://github.com/realthunder/FreeCAD_assembly3

기본 설치된 워크벤치 모듈 정보 → https://www.freecadweb.org/wiki/Workbenches
추가 설치 워크벤치 모듈 정보 → https://www.freecadweb.org/wiki/External_workbenches

분류