저는 imagick으로 PHP를 사용하여 베 지어 커브를 그립니다. 3 x, y 좌표를 받아 중간 XY 점을 반환하여 곡선이 3 점을 통과하는지 확인하는 함수가 있습니다.6 포인트 베 지어 곡선에 대한 점을 계산하십시오.
같은 것을하는 함수를 만들고 싶지만 6 점입니다. 어디서부터 시작해야할지 모르겠습니다. 6 포인트 베 지어 곡선에서 4 개의 중간 점을 계산하는 수학적 방법이 있다고 가정합니다. 여기
는 3 점 코드가 작동하는 방법의 예입니다 : 당신이 포인트를 생성하고 어떻게 완전히 명확하지 않다으로$s1 = array("x" => $var1, "y" => 0);//start
$s2 = array("x" => $var2, "y" => $var3);
$s3 = array("x" => $var4, "y" => $var5);//end
$smp = findControlPoint($s1, $s2, $s3);
$points = array
(
array('x' => $s1['x'], 'y' => $s1['y']),
array('x' => $smp['x'], 'y' => $smp['y']),
array('x' => $s3['x'], 'y' => $s3['y']),
);
$draw->bezier($points);
베 지어 곡선의 "중점"은 무엇입니까? 제어 변수가 0.5 인 지점 (쉬운 경우) 또는 왼쪽 곡선의 길이가 오른쪽 곡선의 길이와 같은 지점? (그렇다면 3 차 이상의 베 지어 곡선을 상징적으로 계산하는 것은 문자 그대로 불가능합니다). 둘째, 6 점으로 구성된 단일 커브 또는 폴리 베 지어 커브 (여러 큐브 커브가 단일 커브로 함께 묶여 있음)를 의미합니까? –
이 질문은 아마도 http://math.stackexchange.com/ – DudeOnRock
@ Ryland22로 이동하면 도움이 될 것입니다. findControlPoint 코드를 게시하는 것을 잊어 버린 것 같습니다. 그러나 대답은 그것에 의존하지 않을 수도 있지만 질문의 매개 변수는 완전히 명확하지 않습니다. – Danack