2013-10-21 5 views
2

나는 일정한 두께의 곡선을 그리는 법을 배웠다. (베 지어 또는 비슷한 모델들).뚱뚱한 곡선 (가변 두께의 곡선)을 설명하는 방법?

가변 두께의 곡선이있는 일반적인 모델이 있습니까?

저는 베지에와 비슷한 비슷한 것을 상상하고 있습니다. 예를 들어 각 노드에는 두께 값과 두께가 포함될 수 있으므로 렌더러는 곡선을 따라 두께를 보간합니다.

구현 및 설명이 있습니까?

UPDATE 더 정확하게 질문은

은 다음과 같습니다.

우리는 더 이상 우리는 벡터가 다음 긴 곡선 AB 방향을 따라, AB 말, 베지에

enter image description here

ABCD 4 점에 의해 제어되는, 큐빅 베 지어 세그먼트를 가정하자. 위의 그림에서 우리는 raltively long follow를 가지고 있습니다. AB와 CD가 긴 경우

그래서, 나는 그 thinkness 최종 노드 아래

enter image description here

처럼 긴 thinkness 빠른 다른 두께로 변경 따라야 제어 노드 B와 C와 동 기적으로 작동 thikness합니다 제어 벡터 짧으면

는, 그때 thinkness 원활

enter image description here

답변

1

Metafont 아래와 같이, 하나에서 다른 변경하고 있어야 후속 모델 MetaPost 은 모양이있는 펜의 형태로 다양한 두께를 지원합니다.

도 참조

LM Mestetskii, 지방 곡선과 평면 그림의 표현, 컴퓨터 & 그래픽, 24 : 1 (2000) 9-21 도이 : 10.1016/S0097-8493(99)00133-8

0

당신이 원하는 경우 "디스크 기반"접근 방식을 사용하려면 모든 제어점 주위에 원을 그린 다음 "옵셋"을 나타내는 해당 원에서 점을 찾아야합니다 (접선의 법선, 커브상의 점, 오프 커브 점에 대한 투영). 그런 다음 새로운 점을 베 지어 함수에 연결하여 "옵셋 커브"를 얻습니다.

경우에 따라 가변 폭을 갖는 곡선 상쇄는 본질적으로 단일 커브가 아닌 개요를 찾는 속임수입니다. 베 지어 곡선의 경우 http://pomax.github.io/bezierinfo/#offsetting에서 전체 설명을 찾을 수 있으며 가변 너비 설명은 http://pomax.github.io/bezierinfo/#offsetting에 있습니다 (후자에 관심이 있지만 특별한 경우를보기 전에 기본 사항을 이해해야합니다 =)

+0

찾기 개요는 두 번째 단계입니다. 현재 커브 자체를 표현하는 방법을 알 수 없습니다. 각 베 지어 조절 점에 반지름을 지정하면 너무 매끄러운 두께를 보입니다 ... –

+0

너비를 다르게 변경하려는 각 점에서 다각형으로 분할하고 각 세그먼트를 개별적으로 오프셋하고 조인을 삽입 할 수 있습니다. –

+0

2 차 또는 3 차 세그먼트와 같은 하나의 베 지어 세그먼트에 대한 가장 간단한 설명이 필요합니다. –