BooleanUnion

도구모음 메뉴

메인
메인2
솔리드 도구

솔리드

합집합

 히스토리 사용

BooleanUnion 명령은 선택된 폴리서피스 또는 서피스의 공통된 영역을 잘라내고, 공유되지 않은 영역을 하나의 폴리서피스로 만듭니다.

과정

  • 개체를 선택하고 Enter 키를 누릅니다.
    개체가 하나의 폴리서피스로 병합됩니다.

명령행 옵션

원래개체_삭제

예를 지정하여 입력 개체를 삭제하거나, 아니요를 지정하여 유지합니다.

 히스토리 사용

원래개체_삭제=아니요 에서 히스토리 기록이 지원됩니다.

BooleanDifference

도구모음 메뉴

솔리드 도구

솔리드

차집합

 히스토리 사용

BooleanDifference 명령은 선택된 폴리서피스 또는 서피스에서, 다른 폴리서피스 또는 서피스와 공통된 영역을 잘라냅니다.

과정

  1. 차집합을 계산할 원래 서피스 또는 폴리서피스를 선택하고, Enter 키를 누릅니다.
  2. 차집합 계산에 사용할 서피스 또는 폴리서피스를 선택하고, Enter 키를 누릅니다.

명령행 옵션

원래개체_삭제

원래 개체를 삭제하거나(예) 또는 유지합니다(아니요).

 히스토리 사용

원래개체_삭제=아니요 에서 히스토리 기록이 지원됩니다.

커터_삭제

원래개체_삭제=예 설정에서는 다른 개체를 빼는 데 사용된 개체가 삭제됩니다.

  • Rhino는 서피스 모델러입니다. 내부가 빈 테니스공 같은 개체를 만들기 위해 한 구 안에서 다른 구를 뺄 수 없습니다.

BooleanIntersection

도구모음 메뉴

솔리드 도구

솔리드

교집합

 히스토리 사용

BooleanIntersection 명령은 선택된 폴리서피스 또는 서피스에서 서로 공통되지 않은 영역을 잘라냅니다.

과정

  1. 개체의 첫 번째 개체 세트 또는 교차하는 개체 세트를 선택하고 Enter 키를 누릅니다.
  2. 첫 번째 개체 세트를 선택했다면, 두 번째 개체 세트를 선택하고 Enter 키를 누릅니다.
원래개체_삭제

원래 개체를 삭제하거나(예) 또는 유지합니다(아니요).

 히스토리 사용

원래개체_삭제=아니요 에서 히스토리 기록이 지원됩니다.

BooleanSplit

도구모음 메뉴

솔리드 도구

솔리드

부울 연산 분할

 히스토리 사용

BooleanSplit 명령은 선택된 polysurfaces 또는 서피스의 공통 영역을 분할하고, 공통의 영역과 그렇지 않은 영역을 별도의 폴리서피스로 만듭니다.

과정

  1. 개체의 첫 번째 개체 세트를 선택하고 Enter 키를 누릅니다.
  2. 절단 개체를 선택하고 Enter 키를 누릅니다.
    절단 개체와 분할할 개체는 같은 개체일 수 있습니다.

명령행 옵션

원래개체_삭제

원래 개체를 삭제하거나(예) 또는 유지합니다(아니요).

 히스토리 사용

원래개체_삭제=아니요 에서 히스토리 기록이 지원됩니다.

Boolean2Objects

도구모음 메뉴

솔리드 도구

솔리드

두 개체 부울 연산

Boolean2Objects 명령은 두 개체 사이에 사용 가능한 부울 연산을 마우스 클릭으로 계속해서 실행합니다.

과정

  1. 두 개체를 선택합니다.
  2. 원하는 개체를 얻을 때까지 뷰포트에서 마우스로 클릭합니다.
    합집합
    교집합
    A 빼기 B
    B 빼기 A
    교집합 반전

명령행 옵션

원래개체_삭제

원래 개체를 삭제하거나(예) 또는 유지합니다(아니요).

부울 연산의 문제 해결

부울 연산 작업이 실패하는 경우에는, 떨어진 가장자리 또는 잘못된 교차가 있는 영역을 나타내는 텍스트 도트가 모델에 있습니다. 이러한 도트를 찾아 문제의 원인인 영역을 다시 한 번 확인합니다.

오류에 대한 자세한 정보는 도트 속성의 보조 텍스트에 있습니다.

부울 연산 명령은 서피스와 열린 폴리서피스에서 사용할 수 있습니다. 결과는 개체 법선 방향에 따라 달라집니다. Dir 명령을 사용하여 방향을 확인합니다. 만약 결과가 사용자가 원하는 것과 반대라면 Dir 명령 또는 Flip 명령을 사용하여 서피스의 방향을 바꿔 다시 실행해 보세요.

서피스에 Join 명령을 먼저 실행합니다.

메쉬 개체의 부울 연산 과정도 NURBS 부울 연산 과정과 동일합니다. 명령의 결과는 입력 개체의 유형과 상관없이 항상 메쉬가 됩니다.

부울 연산이 실패하는 이유는?

부울 연산의 실패에는 다음과 같은 이유를 생각해 볼 수 있습니다:

  • 법선이 사용자가 생각하는 방향을 향하고 있지 않은 경우
  • 제어점이 두 개체가 교차하는 위치에 겹쳐져 있는 경우
  • 개체의 서피스에 겹쳐 있는 영역이 있는 경우

서피스 법선

부울 연산은 서피스 법선을 사용하여 어느 부분을 버리고 취할지를 결정합니다. BooleanDifference(부울 차집합)을 실행할 때, BooleanUnion(부울 합집합)의 결과를 얻었거나, 그 반대의 경우, 이것은 개체의 법선이 사용자가 생각하는 방향의 반대이기 때문입니다. 하나 이상의 개체가 완전히 닫혀 있지 않으면 부울 연산이 잘 실행되지 않는 경향이 있습니다. 개체가 완전히 닫혀 있지 않으면 Rhino는 어느 쪽이 바깥이고 어느 쪽이 안쪽인지 알 수가 없습니다. Dir 명령을 사용하여 해당 개체에서 법선이 어느 쪽을 향하는지 확인하고, 필요에 따라 개체의 바깥쪽이라고 생각하는 쪽으로 법선이 향하게 하려면 반전 옵션을 사용합니다. 완전히 닫힌 개체는 법선이 항상 바깥쪽을 향합니다.

겹쳐 있는 제어점

겹쳐 있는 제어점은 서피스의 가장자리에 있는 제어점이 동일한 위치에 배치된 경우에 발생합니다. 예를 들어, 원뿔의 끝점 또는 세 개의 가장자리가 있는 트림되지 않은 서피스, 또는 구의 극점이 여기에 해당합니다. 또한 사용자가 여러 개의 제어점을 같은 위치에 둘 수 있습니다. 이러한 점을 특이점(singularity)이라고도 합니다.

부울 연산을 하려는 두 개체의 교차점에 이러한 특이점이 위치하는 경우, 부울 연산이 실패할 수 있습니다.

겹쳐 있는 서피스 영역

두 서피스가 동일한 영역을 공유할 때 겹쳐 있는 서피스가 발생합니다. 예를 들어, 두 개의 상자가 한 면에서 서로 접하고 있는 경우, 개체의 합집함, 차집합, 교집합은 실행되지 않습니다.

비다양체 가장자리

겹쳐진 서피스 외에도, 비다양체 가장자리가 실패의 원인이 될 수 있습니다.

하나의 가장자리에 2개보다 많은 수의 면이 결합되어 있는 메쉬 또는 폴리서피스 가장자리가 비다양체(non-manifold)입니다.

대응 방안

개체에 부울 연산을 실행할 수 없는 경우, 다른 대안을 사용하여 원하는 결과를 얻을 수 있습니다.

위의 예에서 원뿔의 끝점이 상자의 모서리에 정확하게 위치하고 있습니다. 이러한 상황에서는 부울 연산이 실패합니다.

이 때, 부울 연산을 실행하는 대신, 필요하다면 Explode 명령을 사용하여 폴리서피스를 단일 서피스로 분리합니다. Intersect 명령을 사용하여 두 서피스가 교차하는 커브를 만듭니다. Trim 및/또는 Split 명령을 사용하여 부분으로 분할한 후, Join 명령으로 다시 결합시킵니다.

PlanarUnion

도구모음

메뉴

평면 부울 연산

서피스 도구

서피스

평면 부울 연산

PlanarUnion 명령은 겹친 평면형 서피스를 하나의 서피스로 병합합니다.

PlanarDifference

도구모음

메뉴

평면 부울 연산

서피스

평면 부울 연산

PlanarDifference 명령은 두 개의 겹친 평면형 서피스를 선택하고 겹친 영역이 트림된 첫 번째 서피스로 서피스를 만듭니다.

PlanarIntersection

도구모음

메뉴

평면 부울 연산

서피스

평면 부울 연산

PlanarIntersection 명령은 두 개의 평면형 서피스에서 겹친 영역을 하나의 서피스로 만듭니다.

참고 항목

Rhino Wiki: 부울 연산 질문과 대답

개체의 부울 연산