Take the 2-minute tour ×
MathOverflow is a question and answer site for professional mathematicians. It's 100% free, no registration required.

Is there a way to determine if all points of a bezier curve are visible from an endpoint? For instance, if you're given a cubic bezier curve in the plane: $\textbf C(t) = \sum_{i=0}^3 B_i^3(t) \textbf P^i$ would any of the rays from $\textbf P^0$ to $\textbf C(t)$ intersect the curve at any other point?

So I want to know if the following has 0 or >=1 #solutions:

all the rays from the origin: $\textbf L(s) := s { \textbf a}$

$\textbf C(0) = \textbf L(0) = {\textbf 0}$

$\textbf C(t1) = \textbf L(s1) = s1 { \textbf a}$

$\textbf C(t2) = \textbf L(s2) = s2 { \textbf a}$

this appears to have 4 equations in 5 unknowns (${ \textbf a}$ can be normalized)?

where $B_i^3$ is the Bernstein basis: $B_i^3(t) = C(3,i)(1-t)^{3-i}t^i$

thanks!

share|improve this question

1 Answer 1

up vote 0 down vote accepted

WLOG take ${\bf P}^0 = (0,0)$ and ${\bf P}^3 = (1,0)$, and let ${\bf P}^1 = (x_1, y_1)$ and ${\bf P}^2 = (x_2, y_2)$. For $t \ne 0$ the tangent to the curve at ${\bf C}(t)$ is parallel to ${\bf C}(t)-{\bf P}^0$ iff $$ \left( -3x_{{2}}y_{{1}}+3x_{{1}}y_{{2}}-y_{{2}}+2y_{{1}} \right) {t}^{2}-\left( -6x_{{2}}y_{{1}}+2y_{{1}}+6x_{{1}}y_{{2 }} \right) t-3x_{{2}}y_{{1}}+3x_{{1}}y_{{2}} = 0$$ The points will all be visible if this quadratic (as a function of $t$) has no roots in $(0,1)$ or a double root there; if there is at least one simple root in the interval not all points will be visible.

share|improve this answer
    
Robert, thanks for the answer — I was trying to sketch (always dangerous) this approach where we solve for where the derivative is parallel to its chord. In the below picture, the only place I believe this occurs is at t=0 whereas the fan from (0,0) intersects the curve? I feel like I'm missing something here (or just being mislead by my own picture?) ![alt text][1] [1]: postimage.org/image/ypvhuo6nb –  PolyConfused Feb 26 '12 at 19:56
    
No, there is another point where the chord from $(0,0)$ (assuming that's the where the "fan" is coming out of) is tangent to your curve, namely where the angle between that chord and the positive $x$ axis is maximum. –  Robert Israel Feb 27 '12 at 2:16

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.