불균일 유리 B-스플라인

Non-uniform rational B-spline
Green-shaded NURBS surface
NURBS 표면

NURBS(Non-Uniform real basis spline)는 곡선과 표면을 나타내기 위해 컴퓨터 그래픽에서 일반적으로 사용되는 베이스 스플라인(B-spline)을 사용하는 수학적 모델입니다.해석적(일반적인 수학 공식에 의해 정의됨)과 모델링된 형상을 모두 처리할 수 있는 뛰어난 유연성과 정밀도를 제공합니다.다각형 모델링이나 디지털 조각과는 달리 곡선 모델링의 한 종류입니다.NURBS 곡선은 일반적으로 CAD, 제조(CAM) 및 엔지니어링(CAE)에서 사용됩니다.IGES, STEP, ACIS, PHIGS 등 다양한 업계 표준의 일부입니다.NURBS 표면을 만들고 편집하는 도구는 다양한 3D 그래픽 및 애니메이션 소프트웨어 패키지에 있습니다.

그것들은 컴퓨터 프로그램에 의해 효율적으로 처리될 수 있지만, 인간과의 상호작용이 용이합니다.NURBS 표면은 3차원 공간의 표면에 매핑되는 두 파라미터의 함수입니다.지표면의 모양은 제어점에 의해 결정됩니다.콤팩트한 형태에서 NURBS 표면은 단순한 기하학적 형상을 나타낼 수 있습니다.복잡한 유기 형상의 경우 NURBS 표면에 비해 제어점 수가 절반으로 줄어들기 때문에 T-스플라인분할 표면이 더 적합합니다.

일반적으로 NURBS 곡선과 표면을 편집하는 것은 직관적이고 예측 가능합니다.[citation needed]제어점은 항상 곡선 또는 표면에 직접 연결되거나 고무 밴드로 연결된 것처럼 작동합니다.사용자 인터페이스의 유형에 따라 NURBS 곡선과 표면의 편집은 제어점(베지어 곡선과 유사) 또는 스플라인 모델링계층 편집과 같은 고급 도구를 통해 수행할 수 있습니다.

이력

수학 개념으로서의 스플라인의 물리적 표현인 플랫 스플라인

컴퓨터 이전에는 다양한 제도 도구를 사용하여 종이에 손으로 디자인을 그렸습니다.눈금자는 직선, 나침반은 원, 그리고 각도는 굴절기에 사용되었습니다.그러나 뱃머리의 자유 형태 곡선과 같은 많은 모양들은 이 도구들로 그릴 수 없었다.이러한 곡선은 제도판에서 자유롭게 그릴 수 있었지만, 조선업체들은 손으로 그릴 수 없는 실물 크기 버전이 종종 필요했다.그러한 큰 그림은 스플라인이라고 불리는 유연한 나무 조각의 도움으로 그려졌다.스플라인은 "ducks"라고 불리는 미리 정해진 여러 지점에서 고정되었습니다. 오리들 사이에서 스플라인 재료의 탄성으로 인해 스트립이 구부러지는 에너지를 최소화하는 형태를 띠게 되었고, 따라서 구속조건에 맞는 가장 매끄러운 형태를 만들었습니다.[1]모양은 오리를 움직여서 조절할 수 있었다.

1946년에 수학자들은 스플라인 모양을 연구하기 시작했고 스플라인 곡선 또는 스플라인 함수로 알려진 부분 다항식 공식을 도출했다.I. J. Schoenberg는 스플라인 함수가 제도사가 사용하는 [2]기계적 스플라인과 유사하다고 해서 스플라인 함수라는 이름을 붙였습니다.

컴퓨터가 설계 프로세스에 도입됨에 따라 이러한 스플라인의 물리적 특성을 조사하여 수학적 정밀도로 모델링하고 필요에 따라 재현할 수 있게 되었습니다.르노 엔지니어 피에르 베지에와 시트로엥의 물리학자이자 수학자인 폴 드 카스텔주의해 프랑스에서 선구적인 작업이 이루어졌다.그들은 서로 거의 평행하게 작용했지만, 베지에가 그의 연구 결과를 발표했기 때문에, 베지에 곡선은 그의 이름을 따서 명명되었고, 데 카스텔주의 이름은 관련된 알고리즘과 연관되었을 뿐이다.

처음에 NURBS는 자동차 회사의 독점 CAD 패키지에만 사용되었습니다.나중에 그것들은 표준 컴퓨터 그래픽 패키지의 일부가 되었다.

NURBS 곡선과 표면의 실시간 인터랙티브 렌더링은 1989년 Silicon Graphics 워크스테이션에서 처음 상용화되었습니다.1993년, 최초의 PC용 인터랙티브 NURBS 모델러인 NöRBS는 베를린 공과대학과 협력하는 소규모 스타트업 회사인 CAS Berlin에 의해 개발되었습니다.

연속성

모터 요트의 선체와 같이 건설 중인 표면은 일반적으로 NURBS 패치(또는 패치)로 알려진 여러 개의 NURBS 표면으로 구성됩니다.이러한 표면 패치는 경계가 보이지 않도록 함께 장착해야 합니다.이것은 기하학적 연속성의 개념으로 수학적으로 표현된다.

다양한 수준의 기하학적 연속성을 만들고 확립하는 NURBS의 기능을 활용하는 상위 수준의 도구가 존재합니다.

  • 위치 연속성(G0)은 두 개의 곡선 또는 표면의 끝 위치가 일치할 때마다 유지됩니다.곡선 또는 표면이 여전히 각도로 만나 날카로운 모서리 또는 모서리가 생기고 강조 표시가 깨질 수 있습니다.
  • 접선 연속성(G))을 사용하려면 곡선 또는 표면의 끝 벡터가 평행하고 동일한 방향을 가리켜 날카로운 모서리를 제외해야 합니다.접선 연속 에지에 떨어지는 하이라이트는 항상 연속적이며 따라서 자연스럽게 보이므로 이 연속성 수준이면 충분할 수 있습니다.
  • 곡률 연속성(G²)은 또한 끝 벡터의 길이와 길이 변화율이 같아야 합니다.곡면 연속 모서리에 떨어지는 강조 표시는 변경 사항을 표시하지 않으므로 두 표면이 하나로 나타납니다.이것은 시각적으로 "완벽하게 매끄럽다"고 인식될 수 있습니다.이 연속성 수준은 하나의 연속 표면을 구성하는 다수의 바이 큐빅 패치를 필요로 하는 모델을 만들 때 매우 유용합니다.

기하학적 연속성은 주로 결과 표면의 형태를 나타낸다. NURBS 표면은 함수이기 때문에 매개변수에 대한 표면의 도함수를 논할 수도 있다.이를 파라미터 연속성이라고 합니다.주어진 정도의 파라메트릭 연속성은 그 정도의 기하학적 연속성을 의미합니다.

제1 및 제2레벨 파라메트릭 연속성(C0 및 C))은 실질적으로 위치 및 접선(G0 및 G)) 연속성과 동일하다.그러나 세 번째 레벨 파라미터 연속성(C²)은 파라미터화도 연속적이라는 점에서 곡률 연속성과 다릅니다.실제로 균일한 B-스플라인을 사용하면 C² 연속성을 달성하는 것이 더 쉽습니다.

C 연속성의 정의에서는n 인접한 곡선/표면의 n번째 도함수( n () / n ( dC ( / du )가 [3]조인트에서 동일해야 합니다.곡선과 표면의 (부분) 도함수는 방향과 크기를 가진 벡터이며, 둘 다 같아야 합니다.

하이라이트 및 반사를 통해 완벽한 평활이 드러날 수 있습니다. 그렇지 않으면 최소 G²의 연속성을 가진 NURBS 표면이 없으면 실제로 불가능한 작업입니다.이 원리는 반사하는 흰색 줄무늬가 있는 표면의 광선 추적 또는 반사 매핑된 이미지가 표면 또는 표면 세트에서 가장 작은 편차를 나타내는 표면 평가 방법 중 하나로 사용됩니다.이 방법은 자동차 표면의 네온라이트 천장의 반사 품질을 확인하여 표면 품질을 검사하는 자동차 프로토타이핑에서 파생되었습니다.이 방법은 "Zebra 분석"이라고도 합니다.

기술사양

Surface modelling.svg

NURBS 곡선은 그 순서, 가중치 제어점 세트 및 매듭 [4]벡터에 의해 정의된다.NURBS 곡선과 표면은 B-스플라인Bézier 곡선과 표면 모두의 일반화이며, 주요 차이점은 NURBS 곡선을 합리적으로 만드는 것이다. (비합리적이고 단순하며 B-스플라인은 이성적인 B-스플라인의 특수한 경우/하위 세트이며, 여기서 각 제어점은 규칙적인 비동질적인 좌표이다.동종 [5]좌표보다 'w'가 없습니다.이는 각 제어점에 가중치가 "1"인 것과 같습니다. Rational B 스플라인은 각 제어점의 "w"를 가중치로 사용합니다.)[6]제어점의 2차원 그리드를 사용함으로써 평면 패치 및 구면 단면을 포함한 NURBS 표면을 작성할 수 있다.이들 파라미터는 2개의 변수(일반적으로 s와 t 또는 u와 v)로 파라미터화 됩니다.이것은 임의의 치수로 확장하여 NURBS R n \ \{R}n 을 생성할 수 있습니다.

NURBS 곡선과 표면은 여러 가지 이유로 유용합니다.

  • 주어진 순서에 대한 NURBS 세트는 아핀 [7]변환에서는 변하지 않습니다.회전 및 변환과 같은 연산은 NURBS 곡선과 표면에 제어점에 적용함으로써 적용할 수 있습니다.
  • 표준 해석 형태(예: 원뿔)와 자유 형태 형태 형태 모두에 대해 하나의 공통 수학 형식을 제공합니다.
  • 다양한 모양을 설계할 수 있는 유연성을 제공합니다.
  • 형상 저장 시 메모리 소비량을 줄입니다(단순한 방법보다).
  • 수치적으로 안정적이고 정확한 알고리즘을 통해 합리적으로 신속하게 평가할 수 있습니다.

여기서 NURBS는 대부분 1차원(곡선)으로 설명되며, 2차원(표면) 또는 그 이상의 차원으로 일반화할 수 있습니다.

주문

NURBS 곡선의 순서는 곡선의 특정 점에 영향을 미치는 인근 제어점의 수를 정의합니다.곡선은 곡선의 순서보다 1도 적은 다항식으로 수학적으로 표현됩니다.따라서 2차 곡선(선형 다항식으로 표시됨)은 선형 곡선, 3차 곡선은 2차 곡선, 4차 곡선은 입방 곡선이라고 합니다.관리점의 수는 곡선의 순서보다 크거나 같아야 합니다.

실제로는 입방체 곡선이 가장 일반적으로 사용됩니다.5차 및 6차 곡선은 특히 연속적인 고차 도함수를 얻는 데 유용하지만, 고차 곡선은 내부 수치 문제를 초래하고 불균형적으로 큰 계산 시간을 필요로 하는 경향이 있기 때문에 실질적으로 사용되지 않는다.

제어점

3차원 NURBS 표면은 복잡하고 유기적인 형태를 가질 수 있습니다.제어점은 지표면이 향하는 방향에 영향을 미칩니다.컨트롤 케이지 아래에 있는 별도의 정사각형은 표면의 X 및 Y 범위를 나타냅니다.

제어점에 따라 [8]곡선의 모양이 결정됩니다.일반적으로 곡선의 각 점은 여러 제어점의 가중 합계를 취함으로써 계산된다.각 점의 가중치는 지배 모수에 따라 달라집니다.d도 곡선의 경우 모수 공간의 d+1 구간에서 제어점의 가중치는 0이 아닙니다.이 구간 내에서 가중치는 d도의 다항함수(기본함수)에 따라 변화한다.구간의 경계에서는 기본함수가 0으로 부드럽게 진행되며 평활도는 다항식의 정도에 따라 결정된다.

예를 들어, 1차원의 기본 함수는 삼각형 함수이다.0에서 1로 올라갔다가 다시 0으로 내려갑니다.상승하는 동안 이전 제어점의 기본 함수는 하강합니다.이와 같이 곡선은 두 점 사이를 보간하며, 결과 곡선은 연속적이지만 구간 경계에서 구분할 수 없는 다각형 또는 매듭입니다.고차 다항식은 그에 따라 더 많은 연속 도함수를 갖는다.구간 내에서는 기본 함수의 다항식 특성과 구성의 선형성이 곡선을 완벽하게 매끄럽게 만들기 때문에 불연속성이 발생할 수 있는 것은 매듭뿐이라는 점에 유의하십시오.

많은 애플리케이션에서 단일 제어점이 활성화되는 간격에만 영향을 준다는 사실은 로컬 지원으로 알려진 매우 바람직한 속성입니다.모델링에서는 표면의 한 부분을 변경하고 다른 부분은 변경하지 않습니다.

제어점을 더 추가하면 특정 등급의 곡선만 제한된 수의 제어점으로 정확하게 나타낼 수 있지만 주어진 곡선에 더 나은 근사치를 제공할 수 있습니다.NURBS 곡선에는 각 제어점에 대한 스칼라 가중치도 있습니다.이렇게 하면 제어점 수를 과도하게 늘리지 않고도 곡선의 모양을 더 잘 제어할 수 있습니다.특히 정확하게 나타낼 수 있는 곡선 세트에 원뿔 단면(원형 및 타원형)을 추가합니다.NURBS에서 합리적이라는 용어는 이러한 가중치를 나타냅니다.

제어점은 모든 차원을 가질 수 있습니다.1차원 점은 파라미터의 스칼라 함수를 정의합니다.일반적으로 이러한 색상은 이미지 처리 프로그램에서 밝기와 색 곡선을 조정하기 위해 사용됩니다.3차원 제어점은 3D 모델링에서 3D 공간의 위치인 '포인트'라는 단어의 일상적인 의미로 많이 사용됩니다.다차원 지점은 예를 들어 로봇 암의 다양한 위치 및 회전 설정 등 시간 구동 값 집합을 제어하는 데 사용될 수 있습니다.NURBS 표면은 단지 이것의 적용일 뿐입니다.각 컨트롤 '점'은 실제로 곡선을 정의하는 컨트롤 포인트의 전체 벡터입니다.이러한 곡선은 각 정도와 제어점 수를 공유하며 매개변수 공간의 한 차원에 걸쳐 있습니다.이들 제어 벡터를 파라미터 공간의 다른 차원에 보간함으로써 표면을 정의하는 연속된 곡선 세트를 얻는다.

매듭 벡터

매듭 벡터는 제어점이 NURBS 곡선에 영향을 미치는 위치와 방법을 결정하는 일련의 파라미터 값입니다.매듭 수는 항상 제어점 수에 곡선 도를 더한 값(즉, 제어점 수에 곡선 순서)을 더한 값과 동일합니다.매듭 벡터는 앞에서 언급한 간격(일반적으로 매듭 스팬이라고 함)으로 매개변수 공간을 나눕니다.파라미터 값이 새로운 매듭 범위에 들어갈 때마다 새로운 제어점이 활성화되고 오래된 제어점은 폐기됩니다.따라서 노트 벡터의 값은 비감소 순서로 해야 합니다.따라서 (0, 0, 1, 2, 3, 3)는 유효하지만 (0, 0, 2, 1, 3, 3)은 유효하지 않습니다.

연속된 노트의 값은 같을 수 있습니다.그런 다음 길이 0의 매듭 범위를 정의합니다. 이는 두 개의 제어점이 동시에 활성화됨을 의미합니다(물론 두 개의 제어점이 비활성화됨).이는 결과 곡선의 연속성 또는 더 높은 파생상품에 영향을 미칩니다. 예를 들어, 부드러운 NURBS 곡선에 모서리를 만들 수 있습니다.일치하는 매듭의 수를 특정 다중성을 가진 매듭이라고 부르기도 합니다.다중도가 2 또는 3인 노트는 이중 또는 3중 노트로 알려져 있습니다.매듭의 다중성은 곡선의 정도에 따라 제한됩니다. 다중성이 높으면 곡선이 분리된 부분으로 분할되고 제어점이 사용되지 않게 되기 때문입니다.1차 NURBS의 경우 각 매듭은 제어점과 쌍을 이룹니다.

매듭 벡터는 보통 순서와 동일한 다중성을 갖는 매듭으로 시작합니다.이렇게 하면 첫 번째 매듭 범위에 영향을 미치는 제어점이 활성화되므로 의미가 있습니다.마찬가지로 매듭 벡터는 보통 그 다중성의 매듭으로 끝납니다.이러한 매듭 벡터가 있는 곡선은 제어점에서 시작하고 끝납니다.

nots 값은 입력 파라미터와 대응하는 NURBS 값 간의 매핑을 제어합니다.예를 들어 NURBS가 시간 경과에 따른 공간 통과 경로를 기술하는 경우, 노트는 함수가 제어 지점을 통과하는 시간을 제어합니다.그러나 도형을 표현하기 위해서는 매듭 값 간의 차이 비율만 중요합니다. 이 경우 매듭 벡터(0, 0, 1, 2, 3, 3)와 (0, 0, 2, 4, 6, 6)는 동일한 곡선을 생성합니다.매듭 값의 위치는 매개변수 공간과 곡선 공간의 매핑에 영향을 미칩니다.NURBS 곡선을 렌더링하려면 일반적으로 파라미터 범위를 고정 보폭으로 스텝합니다.매듭 스팬 길이를 변경하면 곡률이 높은 영역에서 더 많은 샘플 포인트를 사용할 수 있습니다.또 다른 용도는 파라미터가 시간이고 곡선이 로봇 암의 움직임을 설명하는 경우 등 파라미터 값이 물리적으로 어느 정도 중요한 상황에서 사용됩니다.그런 다음 매듭 스팬 길이는 속도와 가속도로 변환되며, 로봇 암 또는 로봇 환경의 손상을 방지하기 위해 올바른 위치에 도달하는 데 필수적입니다.매핑의 유연성은 NURBS에서 균일하지 않은 문구가 나타내는 것입니다.

내부 계산에만 필요한 매듭은 일반적으로 모델링 소프트웨어 사용자에게 도움이 되지 않습니다.따라서 많은 모델링 응용 프로그램에서는 매듭을 편집하거나 표시할 수 없습니다.일반적으로 제어점의 변동을 보고 합리적인 매듭 벡터를 설정할 수 있습니다.최신 버전의 NURBS 소프트웨어(예: Autodesk Maya 및 Rhinoceros 3D)에서는 매듭 위치를 대화형 편집할 수 있지만, 이는 제어점 편집보다 훨씬 덜 직관적입니다.

기본 기능의 구축

NURBS 곡선 구성에 사용되는 B 스플라인 기준 함수는 일반적으로 N , ( { 되며, 여기서 {i}는 {i} th 대응하고 n { n 기본 함수의 [9]정도에 대응합니다.파라미터 의존성은 생략되는 경우가 많기 때문에 n이라고 수 있습니다.이러한 기본함수의 정의는 n n에서 재귀적입니다.degree-0 구간상 상수 함수입니다.대응하는 매듭의 스팬에 1이 있고, 그 외의 모든 곳에 0이 있습니다.실제로 ({ N_ +, 보간입니다.후자의 두 기능은 n개 n 매듭 스팬에 0이 아니며 n -(\ 매듭 스팬에 중복됩니다. n})은 다음과 같이 계산됩니다.

위에서 아래로:선형 기준 ) 녹색)( N2위)은 무게 f 는 무게 함수 f, g아래쪽)는 2차 기준 함수(아래쪽)입니다.매듭은 0, 1, 2, 2.5입니다.

0이 아닌 에서는 (\ 직선적으로 합니다.앞에서 설명한 바와 같이 N_ 삼각함수이며, 2개의 매듭스팬에 걸쳐 0이 아닌 것이 첫 번째 매듭스팬에서 1로 상승하고 두 번째 매듭스팬에서 0으로 하강합니다.고차 기준 함수는 대응하는 더 많은 매듭 간격에 대해 0이 아니며 그에 따라 더 높은 차수를 가진다.u{ u}가 이고 i { i 매듭인th f{ f { g 함수를 과 같이 쓸 수 있습니다.

그리고.

f f g g 해당 하위 기준 함수가 0이 아닐 때 양수입니다.n에 유도하면n 및 u의 값에 음이 아닙니다이를 통해 기본 함수의 계산이 수치적으로 안정적입니다.

다시 유도에 의해 파라미터의 특정 값에 대한 기저함수의 합계가 통일성이라는 것을 증명할 수 있다.이를 기본 함수의 유니티 속성 파티션이라고 합니다.

선형 기저 함수
2차 기저 함수

그림에서는 매듭 {..., 0, 1, 2, 3, 4, 4.1, 5.1, 6.1, 7.1, ...에 대한 선형 및 2차 기저 함수를 보여 줍니다.}

한쪽 매듭 스팬이 다른 쪽 매듭 스팬보다 상당히 짧습니다.이 매듭 스팬에서는 2차 기준 함수의 피크가 더 뚜렷하여 거의 1에 도달합니다.반대로 인접 기본 함수는 더 빨리 0으로 떨어집니다.기하학적 해석에서 이는 곡선이 해당 제어점에 근접한다는 것을 의미합니다.이중 매듭의 경우 매듭 스팬의 길이가 0이 되고 피크가 정확히 1에 도달한다.기본 함수는 그 시점에서 더 이상 미분할 수 없습니다.인접 제어점이 공선화되지 않으면 곡선의 모서리가 날카로워집니다.

NURBS 곡선의 일반적인 형태

전항의 기본 Ni 정의를 사용하여 NURBS 곡선은 다음과 같은 형태를 [9]취합니다.

여기서 kk)는 (\})의 이고w(\i})는 대응하는 가중치이다.분모는 모든 가중치가 1인 경우 1로 평가되는 정규화 요인입니다.이는 기본 함수의 유니티 속성 파티션에서 확인할 수 있습니다.이것을 이라고 쓰는 것이 관례이다.

그 기능이

는 합리적 기초함수로 알려져 있습니다.

NURBS 표면의 일반적인 형태

NURBS 표면은 두 개의 NURBS 곡선의 텐서 곱으로 구하며, 따라서 두 개의 독립 u v각각 i\ i j를 사용한다.[9]

와 함께

합리적인 기초 함수로서.

NURBS 오브젝트 조작

NURBS 표면을 이용한 모터요트 설계

NURBS 오브젝트에는 다수의 변환을 적용할 수 있습니다.예를 들어 어떤 곡선이 어느 정도와 N개의 제어점을 사용하여 정의되어 있는 경우에는 동일한 정도와 N+1의 제어점을 사용하여 동일한 곡선을 표현할 수 있다.이 과정에서 다수의 제어점이 위치를 바꾸고 매듭 벡터에 매듭을 삽입한다.이러한 조작은 인터랙티브 설계에서 광범위하게 사용됩니다.제어점을 추가할 때 곡선의 모양이 동일하게 유지되어 추가 조정을 위한 시작점이 됩니다.이러한 조작의 몇 가지에 대해 [9][10]이하에 설명합니다.

매듭 삽입

용어에서 알 수 있듯이, 매듭 삽입은 매듭 벡터에 매듭을 삽입합니다.곡선의 정도가 n n인 경우 - displaystyle 제어점은 n n개의으로 대체됩니다.곡선의 모양은 그대로 유지됩니다.

매듭은 여러 번 삽입할 수 있으며, 최대 다중까지 삽입할 수 있습니다.이는 매듭 미세화라고도 하며 반복 매듭 삽입보다 더 효율적인 알고리즘에 의해 달성될 수 있습니다.

매듭 제거

매듭 제거는 매듭 삽입의 반대입니다.그 목적은 매듭과 관련 제어점을 제거하여 보다 콤팩트한 표현을 얻는 것이다.분명히, 곡선의 정확한 형태를 유지하면서 이것이 항상 가능한 것은 아닙니다.실제로 매듭을 제거할 수 있는지 여부를 결정하기 위해 정확도의 공차를 사용합니다.이 프로세스는 제어점이 수동으로 추가되었을 수 있는 대화형 세션 후 또는 다른 표현에서 곡선을 가져온 후 직접 변환 프로세스가 중복 제어점으로 이어지는 경우 청소하는 데 사용됩니다.

도수 상승

특정 차수의 NURBS 곡선은 항상 높은 차수의 NURBS 곡선으로 나타낼 수 있다.이는 개별 NURBS 곡선을 결합할 때, 예를 들어 일련의 NURBS 곡선 사이에 보간하는 NURBS 표면을 만들거나 인접 곡선을 통합할 때 자주 사용됩니다.이 과정에서 서로 다른 곡선은 동일한 정도(일반적으로 곡선 집합의 최대 정도)로 가져와야 합니다. 과정을 도 상승이라고 합니다.

곡률

미분기하학에서 가장 중요한 특성로, 국소 특성(에지, 모서리 등)과 제1도함수와 제2도함수 사이의 관계, 즉 정확한 곡선 형태를 기술합니다.도함수를 구하면 = × ) r { = r r'(t) ^{3}}}}}} display display rstyledisplaystyledispones= ' oyle = r's하여 쉽게 계산할 수 있다.t 이러한 방정식을 사용한 곡률(\ 계산은 폴리곤 표현에 대한 파라미터화된 곡선의 큰 장점이다.

예: 원

NURBS는 원을 정확하게 묘사하는 능력이 있다.여기서 검은색 삼각형은 NURBS 곡선의 제어 폴리곤(w=1)이다.파란색 점선은 NURBS에 해당 가중치를 곱하여 형성된 B-스플라인 곡선의 해당 제어 폴리곤을 3D 균질 좌표로 표시합니다.파란색 포물선은 3D로 구성된 해당 B-스플라인 곡선입니다.NURBS 제어점과 가중치를 선택하면 포물선이 회색 원뿔의 반대면(3D 원점에 팁이 있음)과 평행하므로 w로 나누면 포물선이 w=1 평면에 투영되면 원호(빨간색 원, 원뿔 단면 참조)가 됩니다.

비합리적인 스플라인 또는 베지어 곡선은 원에 가까울 수 있지만 정확하게 나타낼 수는 없습니다.유리 스플라인은 원을 포함한 원추형 섹션을 정확하게 나타낼 수 있습니다.이 표현은 고유하지는 않지만 다음과 같은 한 가지 가능성이 있습니다.

x y z 체중
1 0 0 1
1 1 0
0 1 0 1
-1 1 0
-1 0 0 1
-1 -1 0
0 -1 0 1
1 -1 0
1 0 0 1

원은 2차 곡선이고 스플라인의 순서는 부분 다항식 세그먼트의 정도보다 하나 더 많으므로 순서는 3입니다.매듭 벡터는{ , , 0, ,/,, ,, , , , , , ,, , , , , , , , , , , , , ,,, , , , , , , , , , , , , \ {, , 0 , 0 , , , \/2 \2, , 3차 NURBS 곡선의 이중 매듭은 일반적으로 1차 파생상품의 연속성을 상실하지만, 제어점은 1차 파생상품이 연속적이도록 배치되어 있다.사실, 곡선은 어디에서나 무한히 구별될 수 있습니다. 정확히 원을 나타내야 하기 때문입니다.

곡선은 정확하게 원을 나타내지만 원의 호 길이에서 정확히 매개변수가 지정되지는 않습니다.즉, 예를 들어t \ 은 ( sin(t ) , cos(t )) {( \) } (각 쿼터 원의 시작점, 중간점 은 대칭이므로 제외) 에 있지 않습니다.이는 원의 x 좌표가 cos (t)\t에 대해 정확한 합리적 다항식을 제공하기 때문에 불가능할 것이다. 파라미터 t t †({2이므로 1회전합니다만, 이것은 매듭 벡터가 임의로 /의 배수로서 선택되었기 때문입니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Schneider, Philip. "NURB Curves: A Guide for the Uninitiated". MACTECH. Retrieved 26 September 2014.
  2. ^ Schoenberg, I. J. (August 19, 1964). "Spline Functions and the Problem of Graduation". Proceedings of the National Academy of Sciences of the United States of America. National Academy of Sciences. 52 (4): 947–950. doi:10.1073/pnas.52.4.947. PMC 300377. PMID 16591233.
  3. ^ Poley, van Dam, Feiner & Hughes: 컴퓨터 그래픽스: 원칙과 실천, 섹션 11.2, Adison-Wesley 1996 (2판).
  4. ^ Bio-Inspired Self-Organizing Robotic Systems. p. 9. Retrieved 2014-01-06.
  5. ^ "Rational B-splines". www.cl.cam.ac.uk.
  6. ^ "NURBS: Definition". www.cs.mtu.edu.
  7. ^ 데이비드 F.로저스:이력 관점에서 NURBS의 개요, 섹션 7.1
  8. ^ Gershenfeld, Neil (1999). The Nature of Mathematical Modeling. Cambridge University Press. p. 141. ISBN 0-521-57095-6.
  9. ^ a b c d Piegl, Les; Tiller, Wayne (1997). The NURBS Book (2. ed.). Berlin: Springer. ISBN 3-540-61545-8.
  10. ^ Piegl, L. (1989). "Modifying the shape of rational B-splines. Part 1: curves". Computer-Aided Design. 21 (8): 509–518. doi:10.1016/0010-4485(89)90059-6.

외부 링크