필드에서의 사고 - 암묵적 모델링을 위한 입문서

필드 기반 디자인 측면에서 직관적으로 사고할 수 있도록 도움을 주는 비디오 및 예시와 함께 Inspire 내의 암묵적 모델링에서 필드가 사용되는 방법에 대한 자세한 설명입니다.

대부분의 CAD(Computer-Aided Design)는 3D 객체를 둘러싸는 표면(예: "경계 표현(BRep)")을 묘사하는 방법으로 3D 객체를 나타냅니다. 여기에는 파라메트릭 표면(예: NURBS), 테셀레이션 표면 메쉬(예: 평면 삼각형) 및 세분화 표면이 포함됩니다. 암묵적 모델링은 BRep이 아니라 볼륨 표현입니다. 이는 지오메트리를 객체 외부 공간의 모든 위치와 객체 내부 공간의 모든 위치에 대한 정보를 인코딩하는 필드로 나타냅니다. 표면 자체는 공간의 외부 영역과 내부 영역 사이의 경계로 암시됩니다.

"필드"라고 하는 것은 무엇을 의미합니까?

"필드"라는 용어는 사람과 분야에 따라 다른 의미를 갖습니다. 명확히 설명하자면 암묵적 모델링의 맥락에서 필드라는 용어는 다음과 같이 정의됩니다. 일반적으로 실제 경계 내에 있는 공간의 모든 좌표에서 필드는 부호화된 스칼라 값(예: 1.0, -3.1, 0.0 등)을 반환합니다. 우리는 보다 완전한 용어인 "스칼라 필드"를 줄여서 "필드"라고 부릅니다. 필드에 의해 인코딩된 정보는 {x 좌표, y 좌표, z 좌표, 부호화된 스칼라 값} 형식입니다.

암묵적 모델링은 기하학의 맥락에서 몇 가지 중요한 규칙을 사용합니다. 첫째, 음의 스칼라 값은 모델링된 객체의 내부에 있는 것으로 가정되고 양의 스칼라 값은 외부에 있는 것으로 가정됩니다. 물체의 표면 자체는 스칼라 값 0을 반환하는 공간의 모든 위치에 나타납니다. 따라서, 필드의 부호화된 스칼라 값은 공간의 모든 좌표에 대한 내부/외부를 즉시 확인할 수 있습니다.

다음 단락에서는 암묵적 모델링에 유용하고 이 정의의 범위에 속하는 다양한 유형의 필드에 대해 설명합니다.

SDF(Signed Distance Field)

SDF는 스칼라 필드 측면에서 특별한 경우입니다. 각 좌표에서 보고된 스칼라 값은 객체 표면까지의 최단 거리를 인코딩합니다. 표면에서 바깥쪽으로 멀어질수록 스칼라 값이 더 커집니다. 마찬가지로 표면에서 안쪽 방향으로 이동하면서 객체 속으로 더 깊이 이동하면 음의 스칼라 값 크기가 더 커집니다. 이 개념은 아래 이미지에서 모델의 외부 영역으로 표현됩니다. 모델링된 객체는 파란색으로 표시되며 다층 레이어는 객체 표면에 일정한 거리를 가진 등위면을 나타냅니다.

아래 이미지는 필드를 시각화하는 또 다른 방법입니다. 이 이미지는 녹색 축에 정렬된 원통을 나타내는 필드의 단면도를 보여줍니다(원통 자체는 숨겨져 있습니다). SDF의 내부 및 외부 영역이 모두 표시되며 내부 영역은 파란색과 흰색 띠로 음영 처리되고 외부 영역은 주황색과 흰색 띠로 음영 처리됩니다. 띠는 스칼라 값이 공간에서 어떻게 변하는지 나타냅니다. SDF의 경우 이러한 띠는 아래와 같이 균일한 간격으로 배치되고 왜곡되지 않습니다.

SDF는 내부/외부를 즉시 확인하고 점이 객체 표면에 얼마나 가까운지 알려 주므로 특히 유용합니다. 이 배열은 해당 지오메트리에 대해 정확한 오프셋 표면을 생성하는 데 최적이며 표면 간의 제어된 블렌딩, 필렛 작업 등을 가능하게 합니다.

UDF(Unsigned Distance Field)

UDF는 필드의 모든 스칼라 값이 모델링되는 객체의 내부 또는 외부인지 여부에 관계없이 동일한 부호(+/-)를 갖는다는 점을 제외하면 SDF와 동일한 속성을 모두 공유합니다. 선, 곡선, 점 등과 같은 일부 지오메트리는 구성을 통해 UDF를 생성합니다. 이는 이러한 객체에서 내부와 외부에 대해 적절히 정의된 개념이 없기 때문입니다. 그러나 때로는 SDF 대신 UDF를 구성하는 것이 유용할 수 있습니다. 이는 SDF의 절대값을 취하여 모든 양의 거리를 생성하면 가능합니다.

거리와 유사한 스칼라 필드

일부 필드는 SDF(또는 UDF)와 유사하게 동작하지만 해당 스칼라는 표면까지의 정확한 거리를 인코딩하지 않습니다. 이러한 필드는 표면에서 0이고 표면에서 멀어질수록(안쪽으로 또는 바깥쪽으로) 크기가 증가하는 스칼라 값을 갖는 경우가 많습니다. 그러나 스칼라가 변하는 속도는 실제 SDF의 속도와 다를 수 있습니다. 표면에서 멀어지는 단위 이동 길이당 스칼라 값 변화량 측면에서 이것을 생각해 볼 수 있습니다. SDF에서는 스칼라 값과 표면에서 멀어지는 거리를 비교할 때 스칼라가 1:1 비율로 변경됩니다. 반대로, 거리와 유사한 스칼라 필드의 스칼라는 2:1의 비율로 변하여 표면까지의 거리를 인코딩하지 않을 수 있습니다.

예를 들어 자이로이드 래티스 필드의 단면도를 보여주는 다음 이미지를 고려해 보십시오. 거리와 같은 속성을 개선하기 위해 필드의 배율을 조정했지만 주의 깊게 조사해 보면 띠(예: 파란색과 흰색)의 간격이 균일하지 않고 표면에서 멀어질수록 왜곡되는 것으로 나타났습니다. 이는 자이로이드 래티스의 기본 방정식이 SDF가 아닌 거리와 유사한 스칼라 필드를 생성하기 때문입니다.



많은 암묵적 모델링 함수는 거리와 같은 스칼라 필드에서도 동일하게 작동함에 유의하십시오. 그러나 이러한 필드를 블렌딩, 필렛 및 오프셋할 때는 필요한 정확한 두께나 반경을 생성하지 못할 수 있으므로 주의해야 합니다.

이진 및 조각별 상수 필드

관례적으로 객체 표면 외부와 표면의 모든 곳에서는 0이고 표면 내부의 모든 곳에서는 1인 이진 필드를 생성하는 것이 가능합니다. 이러한 필드는 공간의 영역을 마스킹하여 다운스트림 작업의 범위를 제한하는 데 매우 유용할 수 있습니다. 예를 들어, 지오메트리 편집 내용을 다른 곳에 적용하지 않고 특정 영역 내에서만 적용하려는 경우가 있습니다. 간략하게 말하자면 “이 모든 위치에서 작업을 수행하되 다른 위치에서는 작업을 하지 마십시오”라고 말하는 것과 같습니다.

이진 필드와 마찬가지로 상수 필드를 만드는 것이 유용할 수 있습니다. 일반적으로 이러한 필드에는 객체 내부와 객체에 하나의 사용자 정의 값이 있고 객체 외부에는 동일하거나 다른 사용자 정의 값이 있습니다. 예를 들어, 객체 내부와 표면의 스칼라 값이 3이고 객체 외부의 값이 5인 필드를 만들 수 있습니다. 이러한 필드는 다양한 영역의 래티스 요소 두께를 설정하는 데 유용할 수 있습니다.

스칼라 필드 보간

때로는 점 집합과 같은 개별 위치에 있는 필드의 스칼라 값에 대한 정보만 가지고 있는 경우도 있습니다. 암묵적 모델링에서는 포인트 클라우드 데이터와 스칼라 필드 보간을 사용하여 이 경우를 처리합니다. 포인트 클라우드 데이터는 다음과 같은 다양한 소스에서 가져올 수 있습니다.
  • 시뮬레이션 데이터
  • 측정 데이터
  • 수학 함수에서 샘플링된 값
  • 이전 경험에서 얻은 지식
이 정보는 매우 유용하지만 공간의 모든 위치(장면의 경계 상자 내)에서 스칼라 값을 요구하는 암묵적 모델링 요건과는 아직 호환되지 않습니다. 이러한 요구 사항을 해결하기 위해 포인트 클라우드 데이터에서 보간 스칼라 필드를 생성할 수 있습니다. 이러한 상황에서 포인트 클라우드 데이터는 클라우드의 각 포인트에 대한 x, y, z 및 스칼라 정보를 제공해야 합니다. 그 다음에 구름의 점으로 표시되지 않는 필드 위치에 대한 스칼라 값이 보간법을 사용하여 채워집니다. 보간 기술의 예로는 역거리 가중치(Inverse Distance Weighting)와 최근접(Nearest Neighbor)이 있습니다.
역거리 가중치를 사용하는 경우 포인트 클라우드 데이터에 지정되지 않은 위치의 스칼라 값은 포인트 클라우드에 있는 포인트의 스칼라 값의 가중 평균으로 계산됩니다. 포인트 클라우드의 각 포인트에 대한 가중치는 클라우드의 각 포인트까지의 거리에 따라 달라집니다. 포인트 클라우드 데이터에 지정된 포인트의 스칼라 값은 제공된 스칼라 값과 정확히 동일합니다. 다양한 지수 값을 사용하여 거리 가중치에 대한 감소를 제어할 수 있습니다. 아래에 간단한 포인트 클라우드에 대한 두 가지 예시 필드가 있습니다. 더 낮은 지수(이 경우 2)를 사용하면 각 점의 기여도는 필드를 통해 더 멀리 이동할수록 점진적으로 감소하지만 소스 지점 근처에서는 약해집니다. 이 경우, 소스 점의 전계 강도는 해당 점까지 거리의 제곱에 반비례합니다. 지수를 4로 증가시키면(두 번째 이미지) 소스 지점 부근에서 영향력이 훨씬 더 커지지만 이 소스에서 멀어질수록 영향력이 급격히 감소합니다. 이 경우 기여도의 강도는 거리의 4제곱에 반비례합니다.



최근접 보간법은 시각화하기가 더 쉽습니다. 필드의 각 위치는 포인트 클라우드에서 가장 가까운 점의 스칼라 값을 채택합니다. 이 기술은 공간에서 가까운 위치가 다른 스칼라 값으로 "스냅"될 수 있으므로 결과적으로 보간 스칼라 필드에 급격한 변화를 요구하게 됩니다. 이 효과는 아래 이미지에서 동일한 포인트 클라우드 구성에 대해 표시됩니다. 필드에 부드러운 변화가 없기 때문에 색 구성표에 밴딩이 없습니다.

필드를 사용하여 형상 만들기

이미 설명한 것처럼 필드는 필드가 0인 공간의 모든 위치를 통과하는 등위면을 추출하여 지오메트리를 생성하는 데 사용될 수 있습니다. 이제 이것의 작동 방법을 설명하기 위해 간단한 예를 들어보겠습니다.

3D 데카르트 좌표에서 구에 대해 일반적으로 사용되는 방정식은 다음과 같습니다.

x - x 0 2 + y - y 0 2 + z - z 0 2 = r 2 ,

여기서: x 0 , y 0 , z 0 , 는 구의 중심 좌표이고, r 은 반경입니다. 그러나 구를 SDF로 표현하기 위해 구의 방정식을 다음 형식으로 제시합니다.

p - p 0 - r = 0

이 표현식에서, p 0 은 구의 중심 위치를 식별하는 1x3 벡터입니다. 마찬가지로, p 는 공간에서 쿼리 점의 x, y, z 좌표를 나타냅니다. 이전과 마찬가지로, r 은 구의 반경을 정의합니다. 괄호로 사용된 이중 수직선은 유클리드 2-노름(norm)을 나타냅니다. 이 경우 해당 사용법은 쿼리 점과 구심 사이의 벡터 길이를 계산하고 있음을 의미합니다. 이 모든 것을 종합하여 쿼리 점과 구심 사이의 거리에서 구의 반경을 뺍니다. 쿼리 점과 구심 사이의 거리가 반경보다 작으면 이 방정식은 음수를 생성하여 쿼리 점을 구 내부에 배치합니다. 이 방정식에서 반환된 스칼라 값은 항상 쿼리 점에서 구 표면까지의 부호화된 거리를 반환함을 알 수 있습니다. 아래는 이 방정식을 사용하여 만든 필드의 단면도입니다.

필드를 사용하여 기존 형상의 속성 편집(예: 필드 기반 디자인)

이제 필드를 사용하여 기존 지오메트리의 특정 매개변수나 크기를 로컬로 변경할 수 있음을 보여 드리겠습니다. 아래 이미지는 스트럿 래티스의 단면도를 보여줍니다. 여기서 녹색 면은 래티스와 단면 사이의 교차점입니다. 보시는 것처럼 스트럿의 두께는 상단 파란색 평면에서 하단 파란색 평면으로 선형적으로 감소합니다. 다음은 필드 기반 디자인의 간단한 예입니다. 필드는 z=0 평면까지의 거리를 기준으로 생성되었는데, 여기서 이 모델의 거리 범위는 z 방향(두 개의 파란색 평면)으로 -50mm에서 +50mm까지 확장됩니다. '크기 조정' 확인란 옵션을 사용하여 이 거리를 1mm~4mm의 적절한 두께 범위로 매핑합니다. 명확하게 설명하자면 기준면에서 -50mm일 때 두께가 1mm가 되고, 기준면에서 +50mm일 때 두께가 4mm가 됩니다.



이 원칙은 Implicit Modeling 워크플로우 전반에 걸쳐 두 가지 방법으로 적용될 수 있습니다. 첫 번째 방법은 컨스트럭션 이력에 사용하기 전에 일반적으로 일부 참조 지오메트리를 기반으로 필드를 정의하는 것입니다. 즉, 필드를 사용하여 해당 매개변수 중 하나를 제어하는 지오메트리를 구축하기 전에 필드를 구축합니다. 이렇게 하려면 기본 암묵적 모델링 리본에서 필드 아이콘을 클릭해야 합니다.

두 번째 방법은 궁극적으로 해당 필드를 활용할 지오메트리의 맥락 내에서 필드를 생성하는 것입니다. 위의 스트럿 래티스 사례를 계속 진행하면 스트럿 직경과 단위 셀 크기 모두 필드 기반 디자인을 사용하여 제어할 수 있습니다. 이것은 아래에 빨간색으로 강조 표시된 작은 필드 아이콘 버튼으로 명확해집니다. 이 방법을 사용할 때 필드로 기반이 아닌 모든 매개변수(예: 단위 셀 유형)를 설정한 다음, 관련 아이콘을 사용하여 그 자리에서 필드를 생성해야 합니다. 위의 예에서는 스트럿 직경 옆에 있는 필드 아이콘을 클릭한 다음, 전역 z 평면(z=0)을 사용하여 필드를 정의하여 필드를 생성했습니다.



필드 기반 디자인은 엔지니어링 가치와 미적 측면에서 지오메트리에 대한 제어 수준을 대폭 향상시킵니다. 사용법은 무제한입니다. 포괄적이지 않은 간략한 사용 사례 예제 목록은 다음과 같습니다.
  • 래티스 또는 쉘의 국소적인 두께를 구조 시뮬레이션 데이터와 연결함으로써 필요한 곳에 재질을 신중하게 배치
  • 해당 위치에서 발생하는 응력 수준에 따라 모델 전체의 필렛 반경을 자동으로 제어함으로써 국소적 응력 상승 요인을 효율적으로 완화
  • 선호하는 경로를 통해 의도적으로 힘을 전달하기 위해 스트럭쳐를 국소적으로 강화하거나 약화하여 충격을 안전하게 흡수
  • 비구조적 특성예 전자기적 작동, 유체 흐름의 투과성 또는 압력 강하, 음향 성능, 열전달 계수 등)을 변경할 수 있도록 래티스 구조의 크기를 국소적으로 변경
  • 하나의 지오메트리 유형에서 다른 유형으로 완벽하게 병합하여 특정 위치에 서로 다른 (메타) 재질 속성을 생성(예: 동일한 객체 내에서 각각의 장점을 활용할 수 있도록 하나의 래티스 유형에서 다른 래티스 유형으로 변형)

암묵적 모델링 작업 시 흔히 발생하는 오해와 함정

"저는 스케치 작업에 익숙합니다."기존 CAD 워크플로우는 제조 공정(압출, 회전 등)에 느슨하게 매핑되는 몇 가지 도구를 사용함으로써 2D 스케치로 시작하여 3D 피처로 진행하는 경향이 있습니다. Implicit Modeling은 처음부터 볼륨(3D) 형상 표현을 정의, 결합 및 혼합하여 형상을 구축한다는 점에서 다릅니다. 스케치에서 모델을 개발해야 하는 경우 기존 CAD 워크플로우를 따른 다음 적절한 시점에 모델을 암묵적 형식으로 변환해야 합니다.

"개별 기능을 클릭할 수 없는 이유는 무엇입니까?"NURBS 표면에 위해 구동되는 기존 CAD는 모델링된 객체를 감싸는 표면을 명시적으로 정의합니다. 또한 표면과 피처 사이에 적절히 정의된 경계를 형성하는 각 표면의 트리밍 라인을 컨스트럭션에 사용할 수 있습니다. 암묵적 모델링에는 이러한 기능이 없으므로 쉽게 선택, 강조 표시 또는 편집할 수 없습니다. 이는 객체의 전체 표면이 객체 필드의 내부 영역과 외부 영역 사이의 경계로 암시되는 단일 등위면이기 때문입니다. 따라서 표면의 점, 피처를 구분하는 선, 그리고 분리된 면을 선택하기가 어렵습니다. 당분간 이는 복잡하고 견고한 필드 기반 지오메트리를 생성하는 데 있어서 추가적인 유연성을 얻기 위해 지불해야 할 대가입니다.

"치수 도구가 없는 이유는 무엇입니까?"암묵적 모델링은 기존 CAD와 같은 스케치, 피처 및 구속조건 기반이 아니기 때문에 치수 측정 도구의 유용성에 한계가 있습니다. 대신, 생성 시점에 지오메트리 크기와 위치를 신중하게 입력해야 하며, 유연성을 높이기 위해 변수나 필드로 제어할 수도 있습니다.

암묵적 모델링을 NURBS(파라메트릭 CAD)로 변환하고/내보내고 싶습니다.거의 모든 지오메트리 표현은 어려움 없이 암묵적 형식으로 변환될 수 있습니다. 이 변환 프로세스는 객체에 대한 SDF를 출력합니다. 그러나 암묵적 지오메트리는 항상 쉽게 다른 형식으로 다시 변환할 수 없습니다. 암묵적 지오메트리는 메쉬하기 쉽고 .STL, .OBJ 및 .3MF 형식으로 출력할 수 있습니다. 매우 복잡한 암묵적 모델은 삼각형 수가 매우 많은 조밀한 메쉬를 생성할 수 있다는 점에 유의해야 합니다. 파라메트릭 CAD로 돌아가는 경로는 PolyNURBS 도구를 통해 이루어집니다. 이 도구는 분할 표면을 암묵적 모델에 맞춰 편집 가능한 CAD 표면으로 만드는 데 사용할 수 있습니다. 다시 말하자면 피팅 프로세스 중에 계산 시간과 정확도를 절충해야 하므로 이러한 단계에서 주의를 기울여야 합니다. 파라메트릭 CAD는 모델을 효율적으로 처리하기에는 너무 많은 표면을 가지고 있어서 매우 복잡한 모델에는 적합하지 않습니다.

"선명한 모서리가 둥글게 보이는 이유는 무엇입니까?" 많은 필드가 기술적으로 무한한 해상도를 갖고 있지만 궁극적으로 3D 격자를 사용하여 샘플링됩니다. 격자의 거칠기 또는 미세함은 '시각화 품질'에 의해 제어됩니다. 격자가 무한하게 미세하다면 선명한 모서리는 완벽히 선명하게 나타날 것입니다. 사용 가능한 계산 역량에 맞도록 격자가 거칠게 되면서 선명한 엣지는 렌더링 및 삼각형 메쉬 등의 후속 변환 모두에서 다소 둥글게 됩니다. 이를 설명하는 두 개의 이미지는 동일한 래티스 구조를 각각 매우 낮음 및 매우 높음 시각화 품질로 보여줍니다. 이러한 영향을 최소화하려면 사용자 정의 품질을 사용해서라도 컴퓨터가 허용할 수 있는 최고의 시각화 품질로 디자인을 완료해야 합니다.





그다지 명확하지 않은 함정: 모든 암묵적 모델링 작업이 SDF 결합 시 거리를 유지하는 것은 아닙니다.

암묵적 모델링의 일반적인 작업은 개별적인 바디를 결합하여 하나의 연결된 바디를 형성하는 것입니다. 이를 종종 부울 합집합 연산이라고 부르지만 암묵적 모델링은 더 짧은 용어인 "결합"을 사용합니다. 각각 SDF로 표현되는 두 개의 바디를 결합하면 또 다른 SDF가 생길 것이라고 생각하는 사람도 있을 것입니다. 그러나, 이 경우 필드에서는 어떤 일이 일어나는지 살펴보겠습니다. 아래 이미지는 다음 단계를 통해 생성되었습니다(첫 번째 이미지는 필드의 단면도를 보여주고 두 번째 이미지는 3D 객체의 단면도를 보여줍니다).

  1. 서로 오프셋되어 있지만 여전히 겹치는 두 개의 직육면체 도형을 만듭니다.
  2. 객체를 결합합니다(부울 합집합).
  3. 결합된 객체의 내부 쉘을 생성하여 벽 두께가 일정한 중공 객체를 생성합니다.




위의 이미지를 주의 깊게 살펴보면 벽 두께가 일정하지 않음을 알 수 있습니다. 구체적으로 말하자면, 벽 두께로 인해 내부 모서리가 닿는 영역은 예상보다 큰 벽 두께를 나타냅니다. 수정된 솔루션은 아래 이미지에 나와 있습니다. 이제 벽 두께가 일정하며 요청한 것처럼 모서리가 적절하게 둥글게 됩니다.



요약하면, 단순히 여러 SDF를 결합한다고 해서 반드시 SDF가 생성되는 것은 아닙니다. 다듬기, 모핑 및 오프셋 작업과 같은 다른 작업에서도 마찬가지입니다. 일반적으로 암묵적 모델링을 사용할 때 이 점을 염두에 두면 좋습니다.

끝 맺는 말

암묵적 모델링의 이면에서 진행되는 작업에 대해 소개했습니다. 소프트웨어를 사용할 때 이러한 정보를 염두에 둔다면 필드 기반 디자인을 비롯하여 암묵적 모델링의 주요 이점을 활용하는 동시에 몇 가지 일반적인 함정을 피할 수 있습니다. 암묵적 모델링 리본 내의 각 도구를 사용하는 방법에 대한 구체적인 내용은 암묵적 모델링 설명서의 나머지 도움말 파일 전반에 절쳐 나와 있습니다.

"필드"는 무엇을 의미합니까?

필드라는 용어는 사람과 분야에 따라 다른 의미를 갖습니다.

명확히 설명하자면 암묵적 모델링의 맥락에서 필드라는 용어는 다음과 같이 정의됩니다. 일반적으로 실제 경계 내에 있는 공간의 모든 좌표에서 필드는 부호화된 스칼라 값(예: 1.0, -3.1, 0.0 등)을 반환합니다. 우리는 보다 완전한 용어인 스칼라 필드를 줄여서 필드라고 부릅니다. 필드에 의해 인코딩된 정보는 {x 좌표, y 좌표, z 좌표, 부호화된 스칼라 값} 형식입니다.

암묵적 모델링은 기하학의 맥락에서 몇 가지 중요한 규칙을 사용합니다. 첫째, 음의 스칼라 값은 모델링된 객체의 내부에 있는 것으로 가정되고 양의 스칼라 값은 외부에 있는 것으로 가정됩니다. 물체의 표면 자체는 스칼라 값 0을 반환하는 공간의 모든 위치에 나타납니다. 따라서, 필드의 부호화된 스칼라 값은 공간의 모든 좌표에 대한 내부/외부를 즉시 확인할 수 있습니다.

다양한 유형의 필드

암묵적 모델링에 유용하고 이 정의의 범위에 속하는 다양한 유형의 필드에 대한 설명입니다.

SDF(Signed Distance Field)

SDF는 스칼라 필드 측면에서 특별한 경우입니다. 각 좌표에서 보고된 스칼라 값은 객체 표면까지의 최단 거리를 인코딩합니다. 표면에서 바깥쪽으로 멀어질수록 스칼라 값이 더 커집니다. 마찬가지로 표면에서 안쪽 방향으로 이동하면서 객체 속으로 더 깊이 이동하면 음의 스칼라 값 크기가 더 커집니다.
그림 1. SDF의 첫 번째 예. SDF의 개념은 이 이미지에서 모델의 외부 영역으로 표현됩니다. 모델링된 객체는 파란색으로 표시되며 다층 레이어는 객체 표면에 일정한 거리를 가진 등위면을 나타냅니다.


그림 2. SDF의 두 번째 예. 이것은 필드를 시각화하는 또 다른 방법입니다. 이 이미지는 녹색 축에 정렬된 원통을 나타내는 필드의 단면도를 보여줍니다(원통 자체는 숨겨져 있습니다). SDF의 내부 및 외부 영역이 모두 표시되며 내부 영역은 파란색과 흰색 띠로 음영 처리되고 외부 영역은 주황색과 흰색 띠로 음영 처리됩니다. 띠는 스칼라 값이 공간에서 어떻게 변하는지 나타냅니다. SDF의 경우 이러한 띠는 여기에 표시된 것처럼 균일한 간격으로 배치되고 왜곡되지 않습니다.


SDF는 내부/외부를 즉시 확인하고 점이 객체 표면에 얼마나 가까운지 알려 주므로 특히 유용합니다. 이 배열은 해당 지오메트리에 대해 정확한 오프셋 표면을 생성하는 데 최적이며 표면 간의 제어된 블렌딩, 필렛 작업 등을 가능하게 합니다.

UDF(Unsigned Distance Field)

UDF는 필드의 모든 스칼라 값이 모델링되는 객체의 내부 또는 외부인지 여부에 관계없이 동일한 부호(+/-)를 갖는다는 점을 제외하면 SDF와 동일한 속성을 모두 공유합니다. 선, 곡선, 점 등과 같은 일부 지오메트리는 구성을 통해 UDF를 생성합니다. 이는 이러한 객체에서 내부와 외부에 대해 적절히 정의된 개념이 없기 때문입니다. 그러나 때로는 SDF 대신 UDF를 구성하는 것이 유용할 수 있습니다. 이는 SDF의 절대값을 취하여 모든 양의 거리를 생성하면 가능합니다.

거리와 유사한 스칼라 필드

일부 필드는 SDF(또는 UDF)와 유사하게 동작하지만 해당 스칼라는 표면까지의 정확한 거리를 인코딩하지 않습니다. 이러한 필드는 표면에서 0이고 표면에서 멀어질수록(안쪽으로 또는 바깥쪽으로) 크기가 증가하는 스칼라 값을 갖는 경우가 많습니다. 그러나 스칼라가 변하는 속도는 실제 SDF의 속도와 다를 수 있습니다. 표면에서 멀어지는 단위 이동 길이당 스칼라 값 변화량 측면에서 이것을 생각해 볼 수 있습니다. SDF에서는 스칼라 값과 표면에서 멀어지는 거리를 비교할 때 스칼라가 1:1 비율로 변경됩니다. 반대로, 거리와 유사한 스칼라 필드의 스칼라는 2:1의 비율로 변하여 표면까지의 거리를 인코딩하지 않을 수 있습니다.
그림 3. 거리와 유사한 스칼라 필드의 예. 예를 들어 자이로이드 래티스 필드의 단면도를 보여주는 이 이미지를 고려해 보십시오. 거리와 같은 속성을 개선하기 위해 필드의 배율을 조정했지만 주의 깊게 조사해 보면 띠(예: 파란색과 흰색)의 간격이 균일하지 않고 표면에서 멀어질수록 왜곡되는 것으로 나타났습니다. 이는 자이로이드 래티스의 기본 방정식이 SDF가 아닌 거리와 유사한 스칼라 필드를 생성하기 때문입니다.


주: 많은 암묵적 모델링 함수는 거리와 같은 스칼라 필드에서도 동일하게 작동합니다. 그러나 이러한 필드를 블렌딩, 필렛 및 오프셋할 때는 필요한 정확한 두께나 반경을 생성하지 못할 수 있으므로 주의해야 합니다.

이진 및 조각별 상수 필드

관례적으로 객체 표면 외부와 표면의 모든 곳에서는 0이고 표면 내부의 모든 곳에서는 1인 이진 필드를 생성하는 것이 가능합니다. 이러한 필드는 공간의 영역을 마스킹하여 다운스트림 작업의 범위를 제한하는 데 매우 유용할 수 있습니다. 예를 들어, 지오메트리 편집 내용을 다른 곳에 적용하지 않고 특정 영역 내에서만 적용하려는 경우가 있습니다. 간략하게 말하자면 “이 모든 위치에서 작업을 수행하되 다른 위치에서는 작업을 하지 마십시오”라고 말하는 것과 같습니다.

이진 필드와 마찬가지로 상수 필드를 만드는 것이 유용할 수 있습니다. 일반적으로 이러한 필드에는 객체 내부와 객체에 하나의 사용자 정의 값이 있고 객체 외부에는 동일하거나 다른 사용자 정의 값이 있습니다. 예를 들어, 객체 내부와 표면의 스칼라 값이 3이고 객체 외부의 값이 5인 필드를 만들 수 있습니다. 이러한 필드는 다양한 영역의 래티스 요소 두께를 설정하는 데 유용할 수 있습니다.

스칼라 필드 보간

때로는 점 집합과 같은 개별 위치에 있는 필드의 스칼라 값에 대한 정보만 가지고 있는 경우도 있습니다. 암묵적 모델링에서는 포인트 클라우드 데이터와 스칼라 필드 보간을 사용하여 이 경우를 처리합니다. 포인트 클라우드 데이터는 다음과 같은 다양한 소스에서 가져올 수 있습니다.
  • 시뮬레이션 데이터
  • 측정 데이터
  • 수학 함수에서 샘플링된 값
  • 이전 경험에서 얻은 지식
이 정보는 매우 유용하지만 공간의 모든 위치(장면의 경계 상자 내)에서 스칼라 값을 요구하는 암묵적 모델링 요건과는 아직 호환되지 않습니다. 이러한 요구 사항을 해결하기 위해 포인트 클라우드 데이터에서 보간 스칼라 필드를 생성할 수 있습니다. 이러한 상황에서 포인트 클라우드 데이터는 클라우드의 각 포인트에 대한 x, y, z 및 스칼라 정보를 제공해야 합니다. 그 다음에 구름의 점으로 표시되지 않는 필드 위치에 대한 스칼라 값이 보간법을 사용하여 채워집니다. 보간 기술의 예로는 역거리 가중치(Inverse Distance Weighting)와 최근접(Nearest Neighbor)이 있습니다.

역거리 가중치(Inverse Distance Weighting)

역거리 가중치를 사용하는 경우 포인트 클라우드 데이터에 지정되지 않은 위치의 스칼라 값은 포인트 클라우드에 있는 포인트의 스칼라 값의 가중 평균으로 계산됩니다. 포인트 클라우드의 각 포인트에 대한 가중치는 클라우드의 각 포인트까지의 거리에 따라 달라집니다. 포인트 클라우드 데이터에 지정된 포인트의 스칼라 값은 제공된 스칼라 값과 정확히 동일합니다. 다양한 지수 값을 사용하여 거리 가중치에 대한 감소를 제어할 수 있습니다. 아래에 간단한 포인트 클라우드에 대한 두 가지 예시 필드가 있습니다.
그림 4. 역거리 가중치를 사용하여 스칼라 필드를 보간하는 첫 번째 예. 더 낮은 지수(이 경우 2)를 사용하면 각 점의 기여도는 필드를 통해 더 멀리 이동할수록 점진적으로 감소하지만 소스 지점 근처에서는 약해집니다. 이 경우, 소스 지점의 전계 강도는 해당 지점까지 거리의 제곱에 반비례합니다.


그림 5. 역거리 가중치를 사용하여 스칼라 필드를 보간하는 두 번째 예. 지수를 4로 증가시키면 소스 지점 부근에서 영향력이 훨씬 더 커지지만 이 소스에서 멀어질수록 영향력이 급격히 감소합니다. 이 경우 기여도의 강도는 거리의 4제곱에 반비례합니다.


최근접(Nearest Neighbor) 보간법

최근접 보간법은 시각화하기가 더 쉽습니다. 필드의 각 위치는 포인트 클라우드에서 가장 가까운 점의 스칼라 값을 채택합니다. 이 기술은 공간에서 가까운 위치가 다른 스칼라 값으로 "스냅"될 수 있으므로 결과적으로 보간 스칼라 필드에 급격한 변화를 요구하게 됩니다.

그림 6. 최근접 보간법을 사용한 스칼라 필드 보간 예. 이 효과는 동일한 포인트 클라우드 구성에 대해 표시됩니다. 필드에 부드러운 변화가 없기 때문에 색 구성표에 밴딩이 없습니다.


필드를 사용하여 형상 만들기

필드는 필드가 0인 공간의 모든 위치를 통과하는 등위면을 추출하여 지오메트리를 생성하는 데 사용될 수 있습니다.

이제 이것의 작동 방법을 설명하기 위해 간단한 예를 들어보겠습니다.

3D 데카르트 좌표에서 구에 대해 일반적으로 사용되는 방정식은 다음과 같습니다.

x - x 0 2 + y - y 0 2 + z - z 0 2 = r 2 ,

여기서: x 0 , y 0 , z 0 , 는 구의 중심 좌표이고 r 은 반경입니다.

그러나 구를 SDF로 표현하기 위해 구의 방정식을 다음 형식으로 제시합니다.

p - p 0 - r = 0

이 표현식에서, p 0 은 구의 중심 위치를 식별하는 1x3 벡터입니다. 마찬가지로, p 는 공간에서 쿼리 점의 x, y, z 좌표를 나타냅니다. 이전과 마찬가지로, r 은 구의 반경을 정의합니다. 괄호로 사용된 이중 수직선은 유클리드 2-노름(norm)을 나타냅니다. 이 경우 해당 사용법은 쿼리 점과 구심 사이의 벡터 길이를 계산하고 있음을 의미합니다. 이 모든 것을 종합하여 쿼리 점과 구심 사이의 거리에서 구의 반경을 뺍니다. 쿼리 점과 구심 사이의 거리가 반경보다 작으면 이 방정식은 음수를 생성하여 쿼리 점을 구 내부에 배치합니다. 이 방정식에서 반환된 스칼라 값은 항상 쿼리 점에서 구 표면까지의 부호화된 거리를 반환함을 알 수 있습니다.
그림 7. 구 방정식을 사용하여 생성된 필드의 단면도


필드 기반 디자인: 필드를 사용하여 기존 형상의 속성 편집

필드를 사용하여 기존 지오메트리의 특정 매개변수나 크기를 로컬로 변경할 수 있습니다.

다음은 필드 기반 디자인의 간단한 예입니다.

그림 8. 스트럿 래티스의 단면도. 녹색 면은 래티스와 단면 사이의 교차점입니다. 스트럿의 두께는 상단 파란색 평면에서 하단 파란색 평면으로 선형적으로 감소합니다. 필드는 z=0 평면까지의 거리를 기준으로 생성되었는데, 여기서 이 모델의 거리 범위는 z 방향(두 개의 파란색 평면)으로 -50mm에서 +50mm까지 확장됩니다. 크기 조정 확인란 옵션을 사용하여 이 거리를 1mm~4mm의 적절한 두께 범위로 매핑합니다. 명확하게 설명하자면 기준면에서 -50mm일 때 두께가 1mm가 되고, 기준면에서 +50mm일 때 두께가 4mm가 됩니다.


이 원칙은 Implicit Modeling 워크플로우 전반에 걸쳐 두 가지 방법으로 적용될 수 있습니다. 첫 번째 방법은 컨스트럭션 이력에 사용하기 전에 일반적으로 일부 참조 지오메트리를 기반으로 필드를 정의하는 것입니다. 즉, 필드를 사용하여 해당 매개변수 중 하나를 제어하는 지오메트리를 구축하기 전에 필드를 구축합니다. 이렇게 하려면 암묵적 모델링 리본에서 필드 도구를 선택해야 합니다.

두 번째 방법은 궁극적으로 해당 필드를 활용할 지오메트리의 맥락 내에서 필드를 생성하는 것입니다.
그림 9. 스트럿 래티스 매개변수. 위의 스트럿 래티스 사례를 계속 진행하면 스트럿 직경과 단위 셀 크기 모두 필드 기반 디자인을 사용하여 제어할 수 있습니다. 이것은 빨간색으로 강조 표시된 작은 필드 버튼으로 명확해집니다. 이 방법을 사용할 때 필드로 기반이 아닌 모든 매개변수(예: 단위 셀 유형)를 설정한 다음, 관련 필드 버튼을 사용하여 그 자리에서 필드를 생성해야 합니다. 스트럿 래티스에서, 스트럿 직경 옆에 있는 필드 버튼을 클릭한 다음, 전역 z 평면(z=0)을 사용하여 필드를 정의하여 필드를 생성했습니다.


필드 기반 디자인은 엔지니어링 가치와 미적 측면에서 지오메트리에 대한 제어 수준을 대폭 향상시킵니다. 사용법은 무제한입니다. 포괄적이지 않은 간략한 사용 사례 목록은 다음과 같습니다.
  • 래티스 또는 쉘의 국소적인 두께를 구조 시뮬레이션 데이터와 연결함으로써 필요한 곳에 재질을 신중하게 배치
  • 해당 위치에서 발생하는 응력 수준에 따라 모델 전체의 필렛 반경을 자동으로 제어함으로써 국소적 응력 상승 요인을 효율적으로 완화
  • 선호하는 경로를 통해 의도적으로 힘을 전달하기 위해 스트럭쳐를 국소적으로 강화하거나 약화(예: 충격을 안전하게 흡수)
  • 비구조적 특성(예: 전자기적 작동, 유체 흐름의 투과성 또는 압력 강하, 음향 성능, 열전달 계수 등)을 변경할 수 있도록 래티스 구조의 크기를 국소적으로 변경
  • 하나의 지오메트리 유형에서 다른 유형으로 완벽하게 병합하여 특정 위치에 서로 다른 (메타) 재질 속성을 생성(예: 동일한 객체 내에서 각각의 장점을 활용할 수 있도록 하나의 래티스 유형에서 다른 래티스 유형으로 변형)

방법 비디오: 래티스에서 필드 기반 효과 만들기

암묵적 지오메트리, 암묵적 바디, BRep 또는 구성 지오메트리 및 포인트 클라우드 등을 사용하여 래티스에서 필드 기반 효과를 생성하는 방법을 보여주는 몇 가지 비디오입니다.

이 비디오에서는 암묵적 지오메트리와 암묵적 바디를 사용하여 래티스에서 필드 기반 효과를 생성하는 방법을 보여줍니다.

이 비디오에서는 BRep 또는 컨스트럭션 지오메트리를 사용하여 래티스에 필드 기반 효과를 생성할 수 있는 다양한 방법을 보여줍니다.

이 비디오는 시뮬레이션 데이터로부터 생성된 포인트 클라우드를 보여 주며, 이후에 일부 래티스 속성을 구동하는 데 사용됩니다.

암묵적 모델링의 오해와 함정

암묵적 모델링을 사용할 때 일반적이면서도 명확하지 않은 몇 가지 오해와 함정이 있습니다.

암묵적 모델링 작업 시 흔히 발생하는 오해와 함정

"저는 스케치 작업에 익숙합니다."

기존 CAD 워크플로우는 제조 공정(압출, 회전 등)에 느슨하게 매핑되는 몇 가지 도구를 사용함으로써 2D 스케치로 시작하여 3D 피처로 진행하는 경향이 있습니다. Implicit Modeling은 처음부터 볼륨(3D) 형상 표현을 정의, 결합 및 혼합하여 형상을 구축한다는 점에서 다릅니다. 스케치에서 모델을 개발해야 하는 경우 기존 CAD 워크플로우를 따른 다음 적절한 시점에 모델을 암묵적 형식으로 변환해야 합니다.

"개별 기능을 클릭할 수 없는 이유는 무엇입니까?"

NURBS 표면에 위해 구동되는 기존 CAD는 모델링된 객체를 감싸는 표면을 명시적으로 정의합니다. 또한 표면과 피처 사이에 적절히 정의된 경계를 형성하는 각 표면의 트리밍 라인을 컨스트럭션에 사용할 수 있습니다. 암묵적 모델링에는 이러한 기능이 없으므로 쉽게 선택, 강조 표시 또는 편집할 수 없습니다. 이는 객체의 전체 표면이 객체 필드의 내부 영역과 외부 영역 사이의 경계로 암시되는 단일 등위면이기 때문입니다. 따라서 표면의 점, 피처를 구분하는 선, 그리고 분리된 면을 선택하기가 어렵습니다. 당분간 이는 복잡하고 견고한 필드 기반 지오메트리를 생성하는 데 있어서 추가적인 유연성을 얻기 위해 지불해야 할 대가입니다.

"치수 도구가 없는 이유는 무엇입니까?"

암묵적 모델링은 기존 CAD와 같은 스케치, 피처 및 구속조건 기반이 아니기 때문에 치수 측정 도구의 유용성에 한계가 있습니다. 대신, 생성 시점에 지오메트리 크기와 위치를 신중하게 입력해야 하며, 유연성을 높이기 위해 변수나 필드로 제어할 수도 있습니다.

"암묵적 모델링을 NURBS(파라메트릭 CAD)로 변환하고/내보내고 싶습니다."

거의 모든 지오메트리 표현은 어려움 없이 암묵적 형식으로 변환될 수 있습니다. 이 변환 프로세스는 객체에 대한 SDF를 출력합니다. 그러나 암묵적 지오메트리는 항상 쉽게 다른 형식으로 다시 변환할 수 없습니다. 암묵적 지오메트리는 메쉬하기 쉽고 .stl, .obj 및 .3mf 형식으로 출력할 수 있습니다. 매우 복잡한 암묵적 모델은 삼각형 수가 매우 많은 조밀한 메쉬를 생성할 수 있다는 점에 유의해야 합니다. 파라메트릭 CAD로 돌아가는 경로는 PolyNURBS 도구를 통해 이루어집니다. 이 도구는 분할 표면을 암묵적 모델에 맞춰 편집 가능한 CAD 표면으로 만드는 데 사용할 수 있습니다. 다시 말하자면, 피팅 프로세스 중에 계산 시간과 정확도를 절충해야 하므로 이러한 단계에서 주의를 기울여야 합니다. 파라메트릭 CAD는 모델을 효율적으로 처리하기에는 너무 많은 표면을 가지고 있어서 매우 복잡한 모델에는 적합하지 않습니다.

"선명한 모서리가 둥글게 보이는 이유는 무엇입니까?"

많은 필드가 기술적으로 무한한 해상도를 갖고 있지만 궁극적으로 3D 격자를 사용하여 샘플링됩니다. 격자의 거칠기 또는 미세함은 시각화 품질에 의해 제어됩니다. 격자가 무한하게 미세하다면 선명한 모서리는 완벽히 선명하게 나타날 것입니다. 사용 가능한 계산 역량에 맞도록 격자가 거칠게 되면서 선명한 모서리는 렌더링 및 삼각형 메쉬 등의 후속 변환 모두에서 다소 둥글게 됩니다.

이를 설명하는 두 개의 이미지는 동일한 래티스 구조를 각각 매우 낮음매우 높음 시각화 품질로 보여줍니다.
그림 10. 매우 낮은 시각화 품질의 래티스 구조


그림 11. 매우 높은 시각화 품질의 래티스 구조


이러한 영향을 최소화하려면 사용자 정의 품질을 사용해서라도 컴퓨터가 허용할 수 있는 최고의 시각화 품질로 디자인을 완료해야 합니다.

그다지 명확하지 않은 함정: 모든 암묵적 모델링 작업이 SDF 결합 시 거리를 유지하는 것은 아닙니다.

암묵적 모델링의 일반적인 작업은 개별적인 바디를 결합하여 하나의 연결된 바디를 형성하는 것입니다. 이를 종종 부울 합집합 연산이라고 부르지만 암묵적 모델링은 더 짧은 용어인 "결합"을 사용합니다. 각각 SDF로 표현되는 두 개의 바디를 결합하면 또 다른 SDF가 생길 것이라고 생각하는 사람도 있을 것입니다. 그러나, 이 경우 필드에서는 어떤 일이 일어나는지 살펴보겠습니다. 아래 이미지는 다음 단계를 통해 생성되었습니다.

  1. 서로 오프셋되어 있지만 여전히 겹치는 두 개의 직육면체 도형을 만듭니다.
  2. 객체를 결합합니다(부울 합집합).
  3. 결합된 객체의 내부 쉘을 생성하여 벽 두께가 일정한 중공 객체를 생성합니다.
그림 12. 필드의 단면도


그림 13. 3D 객체의 단면도


위의 이미지를 주의 깊게 살펴보면 벽 두께가 일정하지 않음을 알 수 있습니다. 구체적으로 말하자면, 벽 두께로 인해 내부 모서리가 닿는 영역은 예상보다 큰 벽 두께를 나타냅니다.

수정된 솔루션은 아래 이미지에 나와 있습니다. 이제 벽 두께가 일정하며 요청한 것처럼 모서리가 적절하게 둥글게 됩니다.
그림 14. 수정된 필드의 단면도


그림 15. 수정된 3D 객체의 단면도


요약하면, 단순히 여러 SDF를 결합한다고 해서 반드시 SDF가 생성되는 것은 아닙니다. 다듬기, 모핑 및 오프셋 작업과 같은 다른 작업에서도 마찬가지입니다. 일반적으로 암묵적 모델링을 사용할 때 이 점을 염두에 두면 좋습니다.

필드 기반 디자인에 대한 결론

이제 Inspire 암묵적 모델링의 이면에서 진행되는 작업에 대해 소개했습니다. 응용 프로그램을 사용할 때 이러한 정보를 염두에 둔다면 필드 기반 디자인을 비롯하여 암묵적 모델링의 주요 이점을 활용하는 동시에 몇 가지 일반적인 함정을 피할 수 있습니다.

암묵적 모델링 리본 내의 각 도구를 사용하는 방법에 대한 구체적인 내용은 암묵적 모델링 설명서의 나머지 부분에 나와 있습니다.