text:
Talk:Bézier curve

G1 continuity
What is G1 continuity? --AxelBoldt

Continuous curves with tangents pointing in the same direction. Used by graphics/font workers http://www.google.com/search?q=g1.continuity

What is the point on the cubic curve in the recursive algorithm?

What does "A truly parallel Bézier curve cannot be derived mathematically" mean?

 * Good question... I have no idea. Κσυπ Cyp  21:59, 15 Sep 2004 (UTC)

 * It means you can't derive a second curve that is parallel to the first by mathematical operations on the control points of the first. It works for some cases, but not in general. Maybe the phrasing could be better, but it seemed clear enough to me.Graham 22:57, 15 Sep 2004 (UTC)

 * What does parallel mean, when it's about curves? Is it a relation between two Bézier curves? Κσυπ Cyp  23:09, 15 Sep 2004 (UTC)

 * Well strictly speaking parallel refers to straight lines or planes, so if we are speaking strictly, then 'parallel curves' is an oxymoron. However, in everyday language it should be clear what this means - a second curve that maintains a constant distance from the first at every similar point, like a pair of railway tracks rounding a bend. If there is a "proper" word for this I don't know what it is. The ability to do this is actually rather important in the real world, where bezier curves are not just mathematical curiosities but are a practical way of implementing computer graphics, etc. Creating a curve 'parallel' to another is often needed, but coming up with an algorithm for it requires some cunning, because of the mentioned limitation of the curve's essential properties. I made a stab at rewording the sentence, but 'parallel' is still in there ;-) Graham 23:47, 15 Sep 2004 (UTC)

Wow, if only there was an explanation for the layman. Someone below claims this is it: I did maths to the end of school and have no idea about this, and in particular the use of these curves in Illustrator remains a mystery to me. Please help!

Merging Bezier curve & Bernstein polynomial
I want to merge Bézier curve and Bernstein polynomial. I do not care what the resulting article is called. The two article are talking about the same subject and so there is a lot of duplicated material and inconsistent notation. Any comments ?MathMartin 12:52, 19 Sep 2004 (UTC)

I changed my opinion. The material should stay on separate pages, although the notation should be more consistent. What is the term for splines that are patched together using polynomials in Bézier form ? And what exactly is a Bezigon ? Is the term common ? What I was trying to do when rewriting Bézier curve and Bernstein polynomial was to make the connection between the two topics clearer. At the moment I think the articles should be structured like this
 * Bernstein polynomial mathematical treatment of Bernstein polynomials.
 * Bézier curve a Bernstein polynomial restricted to [0,1], cubic and quartic curves as examples
 * Bezigon or ?? a spline composed of polynomials in Bezier form, application in industry

It is not clear to me what the last two pages should be called, perhaps someone with more knowledge can propose some naming. MathMartin 10:20, 20 Sep 2004 (UTC)

✅. Currently there are 3 articles exactly as you suggested. The article about "a spline composed of polynomials in Bezier form" is titled Bézier spline, with Bezigon as a redirect to that article, which I think is appropriate. --DavidCary (talk) 04:48, 21 February 2013 (UTC)

Removed from page

 * Generalizing the cubic case leads to higher order curves which require more than four control points. The use of high order Bezier curves and surfaces has been limited to a few highly specialized and expensive surface modeling and industrial design applications.

 * For most applications, complicated curves are pieced together from cubic curves to form bezigons: the first Bézier curve has control points A, B, C, and D, the second has control points D, E, F, and G, and if G1 continuity (i.e. smoothness of the curve) at D is required, then the direction of C-D needs to equal the direction of D-E.

I removed the following two paragraphs from the page. The first does not contain information, and the second is a bit obscure. MathMartin 17:09, 19 Sep 2004 (UTC)

 * I would hazard a guess from your user name that you're a mathematician rather than one who soils his hands on real-world applications ;-) If that's the case then I'd gently put you straight about the second part being "a bit obscure". This is how bezier curves are almost always used in practice for computer graphics, etc. Cubic curves are relatively fast to compute, higher order ones are not, so chaining the cubic segments together to form a desired shape is done in every case I've ever come across. And to ensure a smooth "join" between segments, the end point tangents are made the same, which is what that statement is saying. Another reason higher order curves ar not generally used is because most graphics programs need to implement the "find closest point on the curve to an arbitrary point" functionality, and that requires finding the roots of a fifth order polynomial - which can be done. But higher orders have no known algorithm. I really think that the article would be of most interest and use to BOTH mathematicians and as in an introduction for graphics. Therefore these real-world aspects should definitely be included.Graham 23:50, 19 Sep 2004 (UTC)

You misunderstood me, perhaps because my comment was too cryptic. I understand the sentence
 * Generalizing the cubic case leads to higher order curves which require more than four control points. The use of high order Bezier curves and surfaces has been limited to a few highly specialized and expensive surface modeling and industrial design applications.

I put the mathematical definition at the top, so there is no need to generalize form the cubic case to higher order curves. Stating that only low order curves are used in the industry without any reason is not very useful.

 * Another reason higher order curves ar not generally used is because most graphics programs need to implement the "find closest point on the curve to an arbitrary point" functionality, and that requires finding the roots of a fifth order polynomial - which can be done

Now that is a good reason not to use high order Bezier curves, you should have put it in the article. I intend to expand the article in the next few days and will include it. Just a short correction, even roots of a fifth order polynomial can generally not be found analytically.

 * For most applications, complicated curves are pieced together from cubic curves to form bezigons: the first Bézier curve has control points A, B, C, and D, the second has control points D, E, F, and G, and if G1 continuity (i.e. smoothness of the curve) at D is required, then the direction of C-D needs to equal the direction of D-E.

I understand the need to patch together low degree Bezier curves to form splines, and that one must observe certain smoothness conditions when patching the curves together. But I think Bezier curve article is the wrong place to talk about splines, (to some extend I already talked about splines in the introduction) and the paragraph was very badly written. What is the direction C-D ? What is G1 continuity ? You do not have to explain those terms to me, I know them or can guess them. But for the reader who does not know the material, who just wants to look up some information, the paragraph is obscure.

To sum up the gist of my arguments. Yes I am a mathematician. I believe there should be formal mathematical definition even if they scare the laymen. But there should be real world explanations and examples too. But the math definitions and the laymen explanations should not be mixed, they should be put in separate sections. In an encylopaedia it is better to provide a general definition and then give examples then to give an example and then generalize form this example.

On a different note perhaps you can shed some light on the notation used on the page. What is the deal with the upper case Bézier coefficients (A, B etc.) written in bold ? Why not call them p_0, p_1 ..?MathMartin 10:20, 20 Sep 2004 (UTC)

 * MathMartin wrote: "Stating that only low order curves are used in the industry without any reason is not very useful." Sure it's useful, it's a fact about the real world that is good to know!  Luckily this fact is now in the article, perhaps in a more appropriate place.  The math explanation is not the place for these facts about the real world.  John Baez (talk) 01:21, 16 September 2014 (UTC)

Removed some more paragraphs
Points on a quadratic Bézier curve can be computed recursively:
 * 1) Let A, B and C be the startpoint, control point and endpoint of the curve respectively.
 * 2) Let D be the midpoint of the line AB.
 * 3) Let E be the midpoint of the line BC.
 * 4) Let F be the midpoint of the line DE. F is a point on the curve.
 * 5) Recurse with A = A, B = D and C = F.
 * 6) Recurse with A = F, B = E and C = C.

The points on a Bézier curve can be quickly computed using a recursive procedure which uses division by two as its fundamental operation and avoids floating point arithmetic altogether;
 * $$\begin{vmatrix}

A' \\ B' \\ C' \\ D' \end{vmatrix} = \begin{vmatrix} 1 &  0  &  0  &  0 \\  1/2 & 1/2 &  0  &  0 \\  1/4 & 2/4 & 1/4 &  0 \\  1/8 & 3/8 & 3/8 & 1/8 \end{vmatrix} \cdot \begin{vmatrix} A \\ B \\ C \\ D \end{vmatrix}$$

 * or

D:=(C+D)/2, C:=(B+C)/2, D:=(C+D)/2, B:=(A+B)/2, C:=(B+C)/2, D:=(C+D)/2    (No language in particular)

I removed the above paragraphs from the article. They don't make any sense to me. MathMartin 15:00, 20 Sep 2004 (UTC)

 * Not sure who wrote what in there (know I wrote the matrix), but reading it (the removed paragraphs, that is) now, it doesn't make any sense to me either... It was supposed to mean that, given a Bézier curve with points A, B, C, D, the Bézier curve can be cut into two separate Bézier curves, one with points A', B', C' and D', and the other with points 'A, 'B, 'C and 'D, where $$\begin{vmatrix}

A' \\ B' \\ C' \\ D' \end{vmatrix} = \begin{vmatrix} 1 &  0  &  0  &  0 \\  1/2 & 1/2 &  0  &  0 \\  1/4 & 2/4 & 1/4 &  0 \\  1/8 & 3/8 & 3/8 & 1/8 \end{vmatrix} \cdot \begin{vmatrix} A \\ B \\ C \\ D \end{vmatrix}$$ and $$\begin{vmatrix} 'A \\ 'B \\ 'C \\ 'D \end{vmatrix} = \begin{vmatrix} 1/8 & 3/8 & 3/8 & 1/8 \\  0  & 1/4 & 2/4 & 1/4 \\   0  &  0  & 1/2 & 1/2 \\   0  &  0  &  0  &  1 \end{vmatrix} \cdot \begin{vmatrix} A \\ B \\ C \\ D \end{vmatrix}$$. (Equivalent of substituting t:=2t and t:=2t-1. (Where := is assignment.)) Instead of using matrices, it is possible to cut the curve in half by setting the points to the average of neighbouring points several times in the right order, where the talk of a mysterious division by two comes in. Κσυπ Cyp  01:00, 21 Sep 2004 (UTC) and 00:27, 21 Sep 2004 (UTC)

 * The article is much better for Martin's edits I think. I didn't follow the mtraix stuff either since there's no context for it - I've added a simple C example in the applications section which does give a practical method for computing a cubic curve. I hope it's not too long, and reasoanably correct (untested). Feel free to fix any bugs! Graham 00:36, 21 Sep 2004 (UTC).

Is it possible to return structures in C? (Haven't tried testing the code.)

Here's something like what I'd write (which isn't quite as long), to do the same thing. Haven't tested. Not sure whether 2 multiplies or 6 add/subtracts are faster.

 * 1) define ComputeBezier(a,b,c) computebezier((float *)(a),(b),(float *)(c))

void computebezier(float *cp, int n, float *res) { float s, s2, s3, t, t2, t3, st2, s2t, ds; float ax, ay, bx, by, cx, cy, dx, dy; ax=*cp++; ay=*cp++; bx=3**cp++; by=3**cp++; cx=3**cp++; cy=3**cp++; dx=*cp++; dy=*cp; ds=1./(n-1); s=0; t=1; while(n--) { s+=ds; s2=s*s; s3=s*s2; t-=ds; t2=t*t; t3=t*t2; st2=s*t2; s2t=s2*t; *res++=ax*t3+bx*st2+cx*s2t+dx*s3; *res++=ay*t3+by*st2+cy*s2t+dy*s3; } } Κσυπ Cyp  11:03, 21 Sep 2004 (UTC)
 * It's for quadratic curve? Here is example in Java. Method draws quadratic curve on specified Graphics object in n steps.

private void bezier(Graphics g, int n, double x1, double y1, double x2, double y2, double x3, double y3){ double sx1=(x2-x1)/n, sx2=(x3-x2)/n, sy1=(y2-y1)/n, sy2=(y3-y2)/n; for(int i=0;i<n;++i){ g.drawLine((int)(x1+i*sx1+i*i*(sx2+sx1)/n),                  (int)(y1+i*sy1*2+i*i*(sy2-sy1)/n),                   (int)(x1+(i+1)*sx1+(i+1)*(i+1)*(sx2+sx1)/n),                   (int)(y1+(i+1)*sy1*2+(i+1)*(i+1)*(sy2-sy1)/n)); } }
 * You can return structs at least from ANSI C 99, not sure when this came in, I know that old dialects couldn't. My code is meant to serve as a clear example, not necessarily what a software engineer would actually write as optimum code. I believe it's easier to relate the code to the maths in the article than your example, which is no doubt faster... we must remember that this is an encyclopaedia, not a code text book - maybe even C is too technical here, a BASIC (shudder) or Pascal example might be better for readability.Graham 23:46, 21 Sep 2004 (UTC)

Dimension
Just a short note on the introduction.

Generalizations of Bézier curves to three (or more) dimensions are called a Bézier surface and a Bézier triangle.

This is not a very clear formulation. In mathematics a curve is a 1 dimensional object because it depends on one parameter t. A Bézier surface would be a 2 dimensional object because it depends on 2 parameters. Consider this explanation: a curve can be drawn in a 2 dimensional space or in a 3 dimensional space (or any dimension for this matter) but it still is a curve, a 1 dimensional object.

For me this is clear. But other people may not know this. Perhaps someone can reformulate the sentence to make it clearer. Until then I will just remove the exact dimension number and speak about higher dimension. MathMartin 12:22, 21 Sep 2004 (UTC)

 * Again this may be a layman vs. mathematician situation. Mathematically the bezier curve may be one dimensional, but intuitively it's two dimensional because it produces a point (x,y). I agree that the maths should be rigorous but I also think we musn't lose sight of the audience - which in general are not other mathematicians (who will have better references to work from than this), or even computer graphics programmers, but just people who are interested and looking for a simple introduction to the topic, but with enough info to go away and do something useful with it if they want to. That's my opinion anyway. Graham 23:52, 21 Sep 2004 (UTC)

Mathematically the bezier curve may be one dimensional, but intuitively it's two dimensional because it produces a point (x,y).

I rewrote the defininition to clear this up. How many points the curve produces is dependend on the dimension of the control points. If I choose control points in 3 dimensional space I get a curve in 3 dimensional space. If this is not clear I will expand the material in the article.

mathematicians (who will have better references to work from than this)

You should not make assumptions about the audience :) Even mathematicians need to look stuff up, and start from the beginning when learning a new topic. Most math books are crap because they do not contain enough examples and motivation.

An encyclopaedia should be accessible to a wide range of people. I think at the moment the article is well balanced. The laymen can read and understand the history section (should be expanded) and the applications in computer graphics sections. The programmer can grab the examples and implement them. And the mathematician (or any person with some training in math) can lookup the definition.

''I believe it's easier to relate the code to the maths in the article than your example, which is no doubt faster... we must remember that this is an encyclopaedia, not a code text book - maybe even C is too technical here, a BASIC (shudder) or Pascal example might be better for readability''

I agree. The code should match the math in the article and perhaps C is not the best choice. But as far as I know there is no standard computer language on wikipedia for examples, so whoever writes the code gets to choose the language. In my opinion code should only be used the make algorithms clearer. Complete implementations should be put at http://wikisource.org/wiki/Wikisource:Source_code and linked form the article.

MathMartin 12:11, 22 Sep 2004 (UTC)

source code
should be put here http://wikisource.org/w/index.php?title=Beizer_Curve&action=edit preferred language should be Python cause it's a high level, easily readable, used by mathematicians worldwide language that has bright future (pascal/fortran/basic are dead)

 * Well feel free to do that then. However, I think you'll find that C is more universally understood by programmers since most other languages that are commonly used now are based on it - C, C++, Java, Javascript, etc etc. Perhaps Python is for all I know but I don't know Python - but I do know C which is why I wrote the Bezier code in that language. I think we should guard against just using a language because it's "flavour of the month" - let's give it a chance to establoish itself as C has in the last 30+ years. Graham 06:24, 26 Dec 2004 (UTC)

The coefficients for the cubic curive are calculated wrong in the example source code given. This can easily be verified by drawing lines between the control points and see that the points on the curve calculated by the example code goes outside the lines between the control points.

The correct coefficients should be (easily expanded from the parametric form):

$$a = -A + 3B - 3C + D$$ $$b = 3A - 6B + 3C$$ $$c = 3B - 3A$$

such as:

$$B(t) = at^3 + bt^2 + ct + A$$

The code for generating this (in Java) is:

private Point pointOnCubic(float t) { Point res = new Point;

float t2 = t * t;     float t3 = t2 * t;

// cp[] is an array of Point's specifying the control points float ax = -cp[0].x + 3*cp[1].x - 3*cp[2].x + cp[3].x;     float bx = 3*cp[0].x - 6*cp[1].x + 3*cp[2].x;      float cx = 3*cp[1].x - 3*cp[0].x;

float ay = -cp[0].y + 3*cp[1].y - 3*cp[2].y + cp[3].y;     float by = 3*cp[0].y - 6*cp[1].y + 3*cp[2].y;      float cy = 3*cp[1].y - 3*cp[0].y;

res.x = (int) ((ax * t3) + (bx * t2) + (cx * t) + cp[0].x); res.y = (int) ((ay * t3) + (by * t2) + (cy * t) + cp[0].y);

return res; }

-- netd

 * I will check it and try and set up a place where I can actually run it. The code is derived from some I'm using in a project and it draws Bezier's correctly - as far as I can see it looks right here but I may be missing something. Certainly the actual code I'm using (which is far too complex to use directly as an example here) does not draw outside the control point bounds.

 * Please note that when adding comments to a talk page, you should always add them to the bottom of the page (not the top) if they are a new toic, or appended to an existing section if it's an already open topic. You should always sign and date your comment using four tildes (~) following the comment, otherwise it's very hard to see whan something was added. I had to use the history and diffing the file to pick out your comment, so you're lucky I even noticed it. I have moved it to the right place on the page. Graham 00:51, 17 Apr 2005 (UTC)

 * I have just now tested the code posted here exactly as given. It works exactly correctly as far as I can see, and does not draw outside the control point tangent lines. This isn't much of a surprise, since I've been using very similar code for quite a while with no problems, but it might help to reassure others who don't trust it having read the above. While I don't necessarily dispute the analysis, I'm a practical guy and the code as given works well. I stick by it! Graham 04:06, 26 October 2005 (UTC)

History
The history section says that Pierre Bézier just used the curve, but [here] I found that he actually discovered the curve independently: "This set of curves was discovered around the same time by two people: Bezier and de Casteljau. Bezier discovered it using the Berstein polynomials, while de Casteljau found a geometric representation". Is it right? Rodrigo Rocha 02:05, 16 Jun 2005 (UTC)

 * It is right. Due to the fact they didn't come from the same engenieer school, it is still a French issue to know who found that the first one. Generally people say that Bezier discovered the mathematical form and de Casteljau invented the algorithm - the only reason which made bezier surfaces so usefull -.   Celui from french wikipedia.

00
Am I missing something or should we adopt the convention that 00 = 1? Say we need to calculate the following Bernstein polynomial (for a given n, with i=0 and t=0):

 * $$b_{i,n}(t):= {n \choose i} t^i (1-t)^{n-i} \qquad$$
 * $$b_{0,n}(0):= {n \choose 0} 0^0 (1-0)^{n-0} \qquad$$

Here we have 00.

 * Of course 00 = 1 !!

00 = 0*0-1 = (1-1)*0-1 = 0-1-0-1 = 0

=> 0=1

(Which would be a valid argument if 0-1 were an element of *any* number field...)94.0.147.195 (talk) 04:11, 23 September 2010 (UTC)

Dropped roots comment
I dropped "and there is no analytic formula to calculate the roots of polynomials of degree 5 and higher" for 2 reasons : Firstly, in most cases numerical approximations can be used instead of analytical solutions. But more importantly, it is seldom necessary to compute t. The most frequent operation is to compute the coeficients with Gaussian elimination if not directly. -- Nic Roets 09:18, 30 July 2005 (UTC)

I'd second dropping that phrase. There is no *algebraic* formula for the roots of a quintic, but there is a closed form solution in terms of hypergeometric functions (which are analytic). That is, there is no formula for the roots in terms of the coefficients using a finite number of additions, multiplications, and root takings (for quintic and higher order polynomials). There is, however, a formula involving a finite number of additions, multiplications, root takings, and evaluations of hypergeometric functions (for polynomials of degree greater than five, one needs generalizations of the hypergeometric functions). -- jimbo 00:44, 12 October 2005 (CDT)

Circle description
Some curves that seem simple, like the circle, cannot be described by a Bézier curve or a piecewise Bézier curve I have a different opinion. If you create a cubic Bezière curve which starts at [0,1],goes through [sqrt(1/2),sqrt(1/2)] and ends at [1,0] (its control points are [0,1],[x,1],[1,x],[1,0] where x=0.552285), the resulting curve is equivalent to a circle - the point distance from radius only differs in tenths of permille of the radius.--janndvorakk 10:13, 1 January 2006 (UTC)

If there is some difference in radius, no matter how miniscule, then the curve cannot describe the circle. Dysprosia 10:24, 1 January 2006 (UTC)

 * The Bézier spline article and its corresponding talk page is a better place for describing a Bézier spline that looks like a circle. --DavidCary (talk) 22:03, 8 August 2011 (UTC)

Constructing Bézier curves
I've added a section on constructing Bézier curves including some animated GIFs, because I think it helps to visualise Bézier curve formulae. I thought about adding a derivation so you can see from the construction how the Bézier formula comes about because someone was complaning "Wow, if only there was an explanation for the layman". For example something like this for a quadratic curve:

$$\mathbf{Q}_0(t) = (1 - t)\mathbf{P}_0 + t\mathbf{P}_1 \mbox{, } t \in [0,1]$$

$$\mathbf{Q}_1(t) = (1 - t)\mathbf{P}_1 + t\mathbf{P}_2 \mbox{, } t \in [0,1]$$

$$\mathbf{B}(t) = (1 - t)\mathbf{Q}_0 + t\mathbf{Q}_1 \mbox{, } t \in [0,1]$$

So doing some substitution...

$$\mathbf{B}(t) = (1 - t)((1 - t)\mathbf{P}_0 + t\mathbf{P}_1) + t((1 - t)\mathbf{P}_1 + t\mathbf{P}_2) \mbox{, } t \in [0,1]$$

$$\mathbf{B}(t) = (1 - t)^{2}\mathbf{P}_0 + t(1 - t)\mathbf{P}_1 + t(1 - t)\mathbf{P}_1 + t^{2}\mathbf{P}_2) \mbox{, } t \in [0,1]$$

$$\mathbf{B}(t) = (1 - t)^{2}\mathbf{P}_0 + 2t(1 - t)\mathbf{P}_1 + t^{2}\mathbf{P}_2 \mbox{, } t \in [0,1]$$

I decided this was more appropriate to a high school textbook than an encyclopedia so I left it out. Twirlip 16:43, 27 August 2006 (UTC)
 * Wow, your section rocks. The article was understandable enough, but your section really finished the deal (especially the sexy animations.) Thank you JakeParker 02:07, 2 September 2006 (UTC)

In main page I have change these formulae:

$$\mathbf{B}(t) = \mathbf{B}_{\mathbf{P}_0\mathbf{P}_1\ldots\mathbf{P}_n}(t) = (1-t)\mathbf{B}_{\mathbf{P}_0\mathbf{P}_1\ldots\mathbf{P}_{n-1}}(t) + t\mathbf{B}_{\mathbf{P}_0\mathbf{P}_1\ldots\mathbf{P}_n}(t)$$

Correct formulae (Bézier curve is an interpolation between two degree $$n-1$$ Bézier curves):

$$\mathbf{B}(t) = \mathbf{B}_{\mathbf{P}_0\mathbf{P}_1\ldots\mathbf{P}_n}(t) = (1-t)\mathbf{B}_{\mathbf{P}_0\mathbf{P}_1\ldots\mathbf{P}_{n-1}}(t) + t\mathbf{B}_{\mathbf{P}_1\mathbf{P}_2\ldots\mathbf{P}_n}(t)$$

Animations
The animations for the curves are too fast for anyone who actually wants to study them. Perhaps slow them down by about fifty percent or so.

Radical 05:34, 10 September 2006 (UTC)

 * How's that? Twirlip 20:15, 12 September 2006 (UTC)

These animations are great! Someone should nominate one as a featured animation. I never really understood bézier curves as fully as I should have before, but all the math is clear, without even reading the math. --jacobus (t) 17:53, 12 October 2006 (UTC)

I agree, the animations are incredibly helpful. 70.22.140.232 22:09, 3 February 2007 (UTC)

 * I also agree, and have suggested the animations for WP:FPC at WP:PPR (Picture peer review/Bézier curve animations). --Lph 01:09, 11 February 2007 (UTC)

 * This animations finally helped me understand what is so special about Bezier curves. The small size of the sample C code also gives a hint to its importance, they are much easier than the formula that appear so prominent at the beginning of the article.  I would even add that I was lucky to skip over those formula and got to the animation and code section before dismissing the article and remain in the dark.

As it turns out, the animations seem to indicate that the figures made with nails and string, as shown, for example, at http://www.stitchingcards.com/section.php?xSec=25 make the contour of a Bezier curve. (You'll probably think the next think I'll do is promote lava-lamps in articles related to convection or materials density change with temperature)

As for the layman understanding of what Beziers curves are or why are they so useful, I would like to suggest to change the order of the article so the explanations easier for the laymen go first. After all, few of us would have never learned there was something called a Bezier curve if it wasn't for their simple construction. --DevaSatyam 12:07, 19 August 2007 (UTC)

New links
I added a few links to my pages on how to construct Bezier curves geometrically. If you want to incorporate that into the main article, go right ahead. -SharkD 21:45, 30 October 2006 (UTC)

a bit of doubt... would be thankfull if answered
well.. i'm into high school, so i don't really have much understanding about bezier curves. But i was trying to plot a bezier curve in PowerToy Calc. I used the formula given in the talk section "Construction Bezier curves". This was what i used:

B(t) = ((1 - t)^2)*p + (2*t*(1 - t))*q + (t^2)*r

here, p, q and r were integral variables which i gave different values later. Now my doubt was.. whatever it is that i'm doing, is it right?? coz the curves which were plotted.. didn't really seem like bezier curves to me. If i'm not doing it right.. how is it done right?? i'd be grateful for the help.

Rohan2kool 10:47, 11 April 2007 (UTC)

In order to get a curve, p,q, and r need to be 2 dimensional vectors (i.e. points). If you just use scalar values, you'll probably end up with a parabola. I'm not familiar with PowerToy Calc, so I don't know what kind of support it has for parametric equations. Hope that helps.

mistercow (talk) 01:11, 26 January 2008 (UTC)

Reference link in doubt
The first reference Bézier curves,, redirects to , which is about Bézier surfaces. I wonder if perhaps this page on Bézier curves was intended.--Jwwalker 18:11, 10 August 2007 (UTC)

The code for rendering
The C code we give for rendering cubic Béziers is very inefficient. Why don't we present the standard technique of repeatedly dividing the curve into two until each part is sufficiently close to a straight line? --Doradus 14:55, 19 August 2007 (UTC)

 * I have removed it. De Casteljau's algorithm is much more efficient.  --Doradus (talk) 01:22, 14 December 2007 (UTC)

Cubic beziers in fonts
Should say that one reason that cubic beziers are convenient in fonts (such as in PostScript Type 1 etc.) is that you can require that a cubic curve has two specified endpoints, and a specified tangent angle at each endpoint, and still have some further control over the shape of the curve between the endpoints. By contrast, if you use quadratic beziers, then specifying two endpoints and two corresponding tangent angles completely specifies the shape of the curve -- if you then want to change the shape of the curve, the only way is to recut it (using different endpoints), and this may have a further chain-reaction effect on neighboring quadratic curve segments (the dreaded non-locality problem when attempting to edit Truetype fonts in native format, i.e. without converting them). AnonMoos 18:47, 1 September 2007 (UTC)

PostScript?
Considering the Bezier curve was digitally popularized prior to Illustrator, etc. with PostScript, doesn't PostScript deserve a mention? Particularly as PostScript offers first-class citizen language entities for defining these curves. —Preceding unsigned comment added by 70.68.70.186 (talk) 00:20, 16 August 2008 (UTC)

Yeah, just one more example of how PostScript just *might* be one of the most underrated and overlooked of all computer languages. Toddcs (talk) 06:13, 31 August 2009 (UTC)

 * Does anyone know why Bezier curves were chosen for Postscript originally? (Would that be "DAK" in text-speak?) Are they mathematically easier to evaluate (less computation intensity) than other polynomial curves, or allow a better "detail/graphic-ability/computation-load" ratio?  Or were they already used in specialized applications when Adobe created the Postscript standard?  A citeable source would be nice, but would probably be hard to come by.  Maybe something on folklore.org.  (Probably not citeable, but as an external link maybe)  Thanks. Jimw338 (talk) 18:17, 29 September 2019 (UTC)

Cubic Bezier, corrected formula
Hello, I corrected(niels@degooier.net) the Bezier Cubic formula from: B(t) = (1-t)3P0 + 3t(1-t)2P1 + 3t2(1-t)P2, t3P3, tE[0,1] to:  B(t) = (1-t)3P0 + 3t(1-t)2P1 + 3(1-t)t2P2, t3P3, tE[0,1] Greetings from Holland :) —Preceding unsigned comment added by 212.29.183.137 (talk) 12:30, 30 December 2008 (UTC)

Names of the Curves
Hi, is the headings for cubic and quadratic curves backwards? —Preceding unsigned comment added by 81.167.94.214 (talk) 19:24, 7 May 2009 (UTC)
 * You missed a heading, so I added one. No, the names are not backwards, although it does sound like they are. The equations are polynomials, and the names come from their degree - linear, quadratic, cubic, quartic etc. I can see how "quadratic" sounds like it should mean "of degree 4", but it doesn't, it means "of degree 2". To quote the Wikipedia disambiguation page:"In mathematics, the term quadratic describes something that pertains to squares, to the operation of squaring, to terms of the second degree, or equations or formulas that involve such terms. Quadratus is Latin for square."192.171.3.126 (talk) 11:55, 12 May 2009 (UTC)

Low Importance?
I don't think that this should be low importance- it is both heavily visited and important to Grasphics Editors like Inkscape and GIMP.Resident Mario (talk) 18:55, 18 January 2009 (UTC)
 * It's the math project that has rated it low, meaning it has a low priority with respect to the goals of the project. Other projects are free give it a different priority.--RDBury (talk) 22:25, 6 June 2010 (UTC)

Please illustrate concepts a bit more.
For example: To guarantee smoothness, the control point at which two curves meet must be on the line between the two control points on either side.

It would be nice to actually show "2 curves meeting" and the control point "at which they meet". Smoothness may possibly be intuited after illustrating the above.

I do see an illustration captioned "Example of two cubic Bézier curves patched together..", but it is not clear that there are 2 curves within. Am I just slow?

Jgsack (talk) 20:07, 30 June 2009 (UTC)jim

Derivative
The following text was removed: "In other words, the tangents in P0 and P2 both pass through P1". However that text is correct. The tangent lines to the Bezier curve at each of the end-points are lines through P1. Please explain why you think this is not true. −Woodstone (talk) 00:05, 13 April 2010 (UTC)

 * Shouldn't the dots be removed, as this is regular products, not dot-products? I'm reluctant to do it, since this i s not my area of expertise, but it baffled me. Have I overlooked something? 72.48.211.208 (talk) 04:31, 20 February 2014 (UTC)

 * Dots can also be used for scalar multiplication, but scalars should not have been boldface. −Woodstone (talk) 16:19, 20 February 2014 (UTC)

Spiro Spline
Is a spiro spline a special bézier curve?--92.227.184.234 (talk) 16:45, 21 July 2010 (UTC)

Removed section
{{hidden|Closed form for quadratic 2D bezier|

Closed form for quadratic 2D bezier
Using $$(x_0,y_0)$$, $$(x_1,y_1)$$ and $$(x_2,z_2)$$, the 2D bezier can be written in the form of:

x_0(1-t)^2+2x_1(1-t)t+x_2 t^2=x $$ and

y_0(1-t)^2+2y_1(1-t)t+y_2 t^2=y $$                                                                                or

\alpha t^2 +\beta t = \gamma $$ and

\delta t^2 +\xi t = \eta $$                                                                                where

\alpha=x_0+x_2-2x_1, $$

\beta=2x_1-2x_0, $$

\gamma=x-x_0, $$

\delta=y_0+y_2-2y_1, $$

\xi=2y_1-2y_0, $$ and

\eta=y-y_0. $$                                                                                We can find $$t$$ from the above equations:

t=\frac{\gamma\delta-\eta\alpha}{\beta\delta-\xi\alpha} $$ By filling in $$t$$ into one of the two equations we find for the closed form:

\gamma^2\delta^2+\eta^2\alpha^2-2\gamma\eta\delta\alpha+(\beta\delta-\xi\alpha)(\xi\gamma-\eta\beta)=0 $$ or

(x-x_0)^2 \delta^2+(y-y_0)^2\alpha^2-2(x-x_0)(y-y_0)\delta\alpha+(x-x_0)\xi(\beta\delta-\xi\alpha) -(y-y_0)\beta (\beta\delta-\xi\alpha)  =0. $$ We can see that we have written the bezier curve into a single equation.|headerstyle=background:#dddddd}}

I just removed the above section as it has a number of problems. It's a straightforward piece of algebraic manipulation, but even in the simplest case results in a far more complex expression for the curve that loses information from the x(t), y(t) form, such as the points given by t = 0, t = 1, etc., And is hardly worth doing as it's only one special case: 2D and quadratic. Therefore I suspect it's not from any source but is OR. It's unencyclopaedically written (too much first person mostly) and has at least two errors: trivial one in the first line and a more serious one that it doesn't handle a number of cases. There could be more as I can't check any source and can't be bothered to reproduce the steps for the last overly complex expression (which isn't even fully expanded which would make it even more complex). -- JohnBlackburne wordsdeeds 14:30, 13 August 2010 (UTC)

 * Well, it's useful for showing that a quadratic Bezier curve is a segment of a parabola, since the discriminant of the conic section is 0. And since any 3 points lie on some plane, even in higher dimensions, we can find a plane that the 3 points as well as the quadratic Bezier curve lie on, so the properties still hold. --24.130.148.132 (talk) 21:07, 27 April 2013 (UTC)

closed form
I added a closed form solution for a quadratic bezier curve. However within minutes JohnBlackburne reverted my contribution as: Rv unsourced, non-notable result (OR?), unencyclopaedically written with trivial and non-trivial errors.

Let me comment to that.

Unsourced: It is unsourced as i derived it myself, seeing as i couldnt find the solution on the web. I can provide some more solution such that even you might be able to follow it.

Non-notable: Might be so, but nowhere on the internet I could find the solution or a clue to the solution. So at least I was looking for the answer. So there might be other ppl as well, so i thought id help other ppl out. Also you cannot both say its unsourced and non-notable. If its non-notable it shouldnt need a source.

unencyclopaedically written with trivial and non-trivial errors: Well unechyclopaedical maybe, maybe not. If you think you can improve my piece go ahead; trivial and nontrivial errors, please point em out to me or correct them.

On a side note, what is it with ppl that if they see some new addition that they want their mark as "I know what is best" and immediately remove it...Geez I try to contribute to the community and it gets removed within minutes. Next time i wont bother. Thank you very much. Good job —Preceding unsigned comment added by 88.159.78.227 (talk) 14:34, 13 August 2010 (UTC)
 * See my comments above for my expanded reasons. You say it is unsourced and you derived it yourself. That would make it original research and Wikipedia has a very clear policy on original research, at No original research. By non-notable I mean even though you've not provided a source I don't think I'd be able to find one as it looks unlike anything anyone would bother doing and publishing. The errors also indicated that.
 * Any of us could do mathematics and add it to Wikipedia: I could derive a rather more complex formula for e.g. cubic curves, and add it. Then another editor could add another self-derived result, then another, etc.. To stop this, which would cause chaos in many articles, editors should only add content to articles that appears reliable sources. They should use their own words, and can do simple calculations of their own where appropriate, but lengthy algebraic derivations like this must be sourced. -- JohnBlackburne wordsdeeds 14:46, 13 August 2010 (UTC)
 * Better yet, lengthy algebraic derivations like this should be avoided altogether. This is an encyclopedia, not an algebra exercise sheet.—Emil J. 14:55, 13 August 2010 (UTC)
 * I agree any of us could do it and in no way would i publish this in a scientific journal, hence its not OR, it was meant as a helpful adittion. Sorry, that i added the derivation, thought it might help somebody. And to be honest a lot of this page has trivial expansions ("examination of cases", n=5 example in "generalization", "degree of elevation" etc) that are still useful. But if needed I can provide a one line version. About it being not useful. It was useful to me, for calculating line intersections. And Im sure if it was helpful to me, it will be helpful to somebody else. Also the 3D case can be easily found. Higher than quadratic can also easily be done in the same way. I just posted the 2D quadratic as this show the method. About the first person form, well thats a matter of style. A _Lot_ of research is written in the "we" form. You must know that. Generally it is thought that the "we" form reads more easily, but it is matter for debate.

To conclude, if you think its "own research" then fine leave it out. If you think its not-useful then thats your oppinion, somebody else might have another one. I think the closed form at least deserves a mention. —Preceding unsigned comment added by 88.159.78.227 (talk) 15:35, 13 August 2010 (UTC)

Awesome animations

 * I've logged on just to stay that Twirlip's animations are simply awesome. Kudos for your contributions, Twirlip.  Great stuff indeed. -- Mecanismo | Talk

 * You're welcome :) Twirlip (talk) —Preceding undated comment added 19:05, 24 February 2011 (UTC).

Bezier curve in Universe
After reading through the comments I want to know if an example of 3D Bezier curve is possible. To my mind a helix is an example of 3D Bezier curve, my other observation suggests to me that all lines in the universe (space) are 3D Bezier curves and so can I say that there is no straight line possible in space? This is based on my understanding that a point in this Universe has always three dimensions. Comments please. Pathare Prabhu (talk) 03:35, 3 April 2012 (UTC)

 * Yes 3D Bézier curves are possible. Their definition is identical to the ones given, but the vectors Pi should then be points in 3D space. A circle, or part thereof cannot be written as a Bézier curve, so neither can be a helix. On the contrary, a straight line segment can be represented by a Bézier curve of any order, by having all control points on the line. −Woodstone (talk) 08:51, 3 April 2012 (UTC)

Examination of cases
Could some mathematician add to this section an explanation of how a lower order curve changes as more points are added (i.e. quadratic curve through 6 points)? I went through many websites before I could finish my program, which is still ad-hoc. I suspect there is a very pretty explanation of how different bernstein polynomials are chosen in this case, and this math would help programmers from going astray. Thanks. — Preceding unsigned comment added by Greg Fichter (talk • contribs) 15:36, 30 December 2013 (UTC)

 * The question is rather vague. Could you be more explicit what you mean? How do you want to "add more points". Are your aware that the curve does not go "through" many of the control points? −Woodstone (talk) 16:31, 30 December 2013 (UTC)

 * Greg, This may be a fundamental misunderstanding of the piecewise curve method. For a Quadraric Bezier/Bernstein curve (or any of these types of curves), different polynomials are not "selected" when using more points, you only add curve segments of the same type and must add points in the required increment (three at a time for quadratic).  If you increase the order and go to cubic, then the polys change and you need four points for each segment.  My book is designed to help understand things like this and I believe it will help you to understand this concept.  You may download my book for free here:
 * http://k9dci.home.comcast.net/~k9dci/site/?/page/Piecewise_Polynomial_Interpolation/
 * If that link is not allowed here, go to my user page and click half way down, where it says "The full text, The Fundamentals of Piecewise Polynomial Interpolation...download on this site."
 * Because I can't quite tell what you're thinking, I'm not sure where to point you. You may need to start early in the book, but try pages 12 on degree/Order, 28 on Degree/Shape, then Chapter 6 is on the Bezier itself.  You may also contact me via that site if you need more help, but I spent years editing the book to be clear at this fundamental level.  I'd have to review the article to see if the concept of piecewise segmentation is not explicit enough...
 * Best Regards,  -- Steve -- (talk) 16:01, 31 December 2013 (UTC)
 * Thinking about this, perhaps the answer to your question is simply that when you add a segment, the shape of the new segment is set in the same way as it is on the first segment, but by the new set of control points. They are independently shaped (for Bezier).  It is another segment just like the first.  That is the whole purpose of these methods.  You have local control of parts of a complex curve by a small set of control points.  These segments are simply stacked end-to-end to obtain a more complex curve. -- Steve --  (talk) 16:12, 31 December 2013 (UTC)
 * Email test - IGNORE THIS. Wasn't getting email, ESteve. — Preceding unsigned comment added by 67.162.42.48 (talk) 17:00, 31 December 2013 (UTC)

subcurves are at least the order of the parent i guess, but not sure from this quote.
A curve can be split at any point into two subcurves, or into arbitrarily many subcurves, each of which is also a Bézier curve.

Modernizing the terminology a bit
I would like to modernize the terminology in the article in a few places. In particular, I would like to replace references to "straight line" with simply "line," since lines are always straight in modern terminology, and seeing the term "straight line" can give readers the confusing idea that lines may not always be straight. But I don't want to do this without giving the custodians a chance to comment ... Eleuther (talk) 00:51, 13 September 2016 (UTC)

 * Lines are not always straight in “modern terminology”. They are straight in the domain of modern Euclidean geometry. They are not even “straight” in mathematics in general, and they’re certainly not straight without qualification in general English. Thinking lines may not be straight doesn’t mean someone is confused. It means they speak plain English.

 * From New Oxford American dictionary:
 * A long, narrow mark or band: ''A row of closely spaced dots will look like a continuous line. | I can’t draw a straight line.
 * Mathematics: A straight or curved continuous extent of length without breadth.
 * (on a map or graph) a curve connecting all points having a specified common property.
 * … and so on.
 * … and so on.

 * The article is for the general English reader, not geometrists. I oppose this change. It makes the article less understandable for some people. Leaving it as “straight line” confuses no one. Strebe (talk) 05:55, 17 September 2016 (UTC)

 * Well, I disagree with almost everything you just said, but there's no need to get passionate about it. Since you hate my changes so much, I have reverted them.  I think you're being stupid, but I won't fight it. Eleuther (talk) 07:17, 19 September 2016 (UTC)

 * I've always been most persuaded by ad hominem. Its invocation clearly demonstrates that the purveyor sees no need to get passionate. Strebe (talk) 18:28, 19 September 2016 (UTC)

 * Whatever that means. By "being stupid," I meant that you seem to be arguing, fairly explicitly, for dumbing down the language at the cost of precision. I should have said that more precisely. Eleuther (talk) 07:29, 21 September 2016 (UTC)

 * There is a balance to be struck between using a precise technical meaning of words, and writing in a manner that can be understood. These pages can be used to discuss that balance. Ideally, that discussion would AGF, and be generally charming. The sentence “I think you're being stupid” falls a short of that technical standard. JDAWiseman (talk) 07:35, 21 September 2016 (UTC)

 * Thanks, JDA. I have already apologized for using the word stupid, but I do so now again. The thing that set me off was Strebe's insulting use of the word geometrist. Eleuther (talk) 09:13, 21 September 2016 (UTC)

 * My undergraduate degree in mathematics is over a quarter of a century stale, so I might be missing something, but ‘geometrist’ is not obviously insulting. And Strebe didn’t even call you the g— word: it was said of your apparent audience. JDAWiseman (talk) 09:24, 21 September 2016 (UTC)

 * Mine is even older, but I try to keep up with things, as far as I can. The usual word is geometer. Geometrist is a rarely used synonym. Strebe is clearly using this obscure term to add insult to his assertion that modern abstract geometry is irrelevant for general readers. Eleuther (talk) 14:54, 23 September 2016 (UTC)

 * Wow. Just… wow. Strebe (talk) 20:57, 23 September 2016 (UTC)

 * What are you trying to say? Please elucidate it a bit. Or are you just trying to let us know that you're stoned? Eleuther (talk) 18:41, 25 September 2016 (UTC)

Even in the field of mathematics a line is simply a one-dimensional entity. Not necessarily straight.−Woodstone (talk) 09:19, 19 September 2016 (UTC)

 * I didn’t feel strongly, but on balance thought that the ‘straight’, even if technically redundant, added clarity. JDAWiseman (talk) 14:06, 19 September 2016 (UTC)

"Applicability to graphics" in 1912-1962
I have removed the second part of the sentence "The mathematical basis for Bézier curves—the Bernstein polynomial—has been known since 1912, but its applicability to graphics was not realized for another half century." -- this is a triviality of the same kind as in "Cryptography has been known since 1900 BCE, but its applicability to internet banking was not realised for another 38 centuries." --Alexey Muranov (talk) 16:21, 25 September 2017 (UTC)

 * Why are you so obsessed with removing this harmless and informative remark, on such senseless grounds? You seem to object to it based on a willful and obtuse misreading of what it actually says. In particular, you seem to think that, because there were no computers in 1912, there was no graphics in 1912. But people had been creating graphics based on mathematical formulas for centuries before 1912. The remark simply says that Bernstein polynomials weren't considered in this role until ~50 years after they were first defined. Eleuther (talk) 14:23, 28 September 2017 (UTC)

 * Mentioning a purpose a specific tool was not used for at some time, is an open door to infinite expansion. Save it till the point where it is used. −Woodstone (talk) 12:19, 29 September 2017 (UTC)

 * Thanks, Woodstone, I will re-apply the remark in a form that I hope will satisfy everyone involved. Eleuther (talk) 13:23, 30 September 2017 (UTC)

 * I didn't find any application of Bézier curves to any graphics, except computer graphics. (If i understood correctly, their use by Pierre Bézier was computer graphics.)  I will appreciate any references to any examples where someone drawn some Bézier curves by hand, without using computers.  I mean in the last half century, when their application to "graphics" is well known. --Alexey Muranov (talk) 21:29, 15 May 2018 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified 2 external links on Bézier curve. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20110718131613/http://www.xlrotor.com/resources/files.shtml to http://www.xlrotor.com/resources/files.shtml
 * Added archive https://web.archive.org/web/20090719011857/http://local.wasp.uwa.edu.au/~pbourke/geometry/bezier/index.html to http://local.wasp.uwa.edu.au/~pbourke/geometry/bezier/index.html

When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.

Cheers.— InternetArchiveBot  (Report bug) 20:52, 1 December 2017 (UTC)

Image from this article to appear as POTD soon
Hello! This is a note to let the editors of this article know that File:Bézier 2 big.gif will be appearing as picture of the day on 2018-10-23. You can view and edit the POTD blurb at Template:POTD/2018-10-23. If this article needs any attention or maintenance, it would be preferable if that could be done before its appearance on the Main Page. Thanks — Amakuru (talk) 12:47, 16 October 2018 (UTC)

Matrix Representation
When originally viewing this page, I had hoped to see information related to the matrix representation of the spline. See: Bézier curvatures as matrix operations. --SomeTimeLater (talk) 17:40, 24 December 2021 (UTC)

Introduction
Introduction needs to be clearer, for the general (non-computer scientist) reader. I think it is important to mention right at the start that the curve is found using a computer algorithm, with the control points as the input. Hence the previous version saying: "A set of discrete control points defines a smooth continuous curve, found by an algorithm."

Saying simply the curves are defined by control points is incomplete. How these control points define a smooth curve is left as a mystery, for non-computer scientists (computer scientists may assume it is done by a code).

Regarding "in any case, control points can simply be chosen to define a curve, rather than vice versa.' All continuous curves are not strictly Bezier (i.e. you can 't find finite number of control points for any given curve- though you can find very good fits). Maybe it should be mentioned that most curves can be approximated very accurately with Bezier curves. Pskuri (talk) 00:52, 17 February 2022 (UTC)

Pskuri (talk) 00:52, 17 February 2022 (UTC)

 * I think I understand one of your points, but I’m not sure how to convey what you mean without causing more confusion. In particular, using the term “algorithm” can be misleading. The curve is related to the points through a formula, not an algorithm. It is true that an algorithm is used, in practice, to figure out what the control points need to be in order to approximate a curve, given that there is no closed-form formula for the inverse (curve-to-points). However, it is not true that only the inverse is useful and important, and it is not true that an “algorithm” is the relationship. An algorithm is only a computational method. Concerning your other points, I disagree that “how these control points define a smooth curve is left as a mystery”: the rest of the article explains it, as do the diagrams. Sometimes details like that are not suited to the brevity of the lede. I’ll give it a try, though. Strebe (talk) 18:11, 17 February 2022 (UTC)

My latest version was:

" Discrete "control points" determine a formula (a vector function) that defines a smooth continuous curve. Bézier curves can approximate a wide variety of shapes including those found in the real-world that have complicated or unknown mathematical representations."

I think my version is a) More succinct. b) I am not sure they are "usually intended" to approximate real world shapes, though they ofc they can be used for that. c) All the equations that define the curve used in the article are vector functions that are determined by the control points (see: https://en.wikipedia.org/wiki/B%C3%A9zier_curve#General_definition)

Ignoring c), I thought a prior edit was just a more succinct version of yours:

"Discrete "control points" with a formula defines a smooth continuous curve. Bézier curves can approximate a wide variety of shapes including those found in the real-world that have complicated or unknown mathematical representations."

Thanks Pskuri (talk) 21:36, 17 February 2022 (UTC)

An alternative more succinct version (accepting my point regarding c)

" Discrete "control points" determine a vector function that defines a smooth continuous curve. Bézier curves can approximate a wide variety of shapes including those found in the real-world that have complicated or unknown mathematical representations."Pskuri (talk) 21:41, 17 February 2022 (UTC)

 * The function is not determined by the control points; the function is parameterized by the control points. The function itself is the same regardless of the control points and “exists” irrespective of any particular control points. Hence, I found your verbiage confusing. Bézier curves are generally used to model shapes (more generally, functions) that are not, themselves, Bézier curves. Sometimes they are used for interpolating. But, given that almost any vector art/modeling program and all modern fonts use Bézier curves to represent shapes that are not, inherently, Bézier curves, I don’t think it should be controversial to state what they are usually intended for. Strebe (talk) 22:33, 17 February 2022 (UTC)

I don't think "usually intended" is appropriate since we don't know what drafters intentions are. Also in many cases like cars for instance they are not trying to approximate real world objects. They are creating new curves.

I spent a long time make those two sentences succinct and clear. Shall assume you weren't belittling my sincere efforts by calling it "verbiage"?

All the equations that define bezier curves are vector functions. Each bezier curve has its own vector function which is written in terms of the position vector of the control points.

I propose for now use my prior version:

"Discrete "control points" with a formula defines a smooth continuous curve. Bézier curves can approximate a wide variety of shapes including those found in the real-world that have complicated or unknown mathematical representations."

This uses fewer words than current version and also gets rid of the problem of asserting usual intent.

I suggest having another editor with mathematics background to review my proposed definition:

"Discrete "control points" determine a vector function that defines a smooth continuous curve."

The reason I prefer this is because I found "formula" too vague, also I believe this is a very simple summary of the equations on the page. Many thanks Pskuri (talk) 23:29, 17 February 2022 (UTC)

 * Shall assume you weren't belittling my sincere efforts by calling it "verbiage"? Why would you assume that?
 * I don’t think “real-world” implies “already existing”; I think a car that may or may not get built is a real-world example. What is not “real-world” is, for example, using a Bézier curve to approximate a function that isn’t intended to represent anything physical in the context in which it is used. However, if this usage of “real-world” confused you, then I agree we should find something clearer.
 * "Discrete "control points" with a formula defines a smooth continuous curve. Again, this seems vague to me at best; if I were to read this (as someone who does a lot of math) I wouldn’t be sure what it meant. This verbiage seems relatively complete and unambiguous to me: “Discrete control points used as parameters to a Bézier generating function define a smooth, continuous curve.”
 * "Discrete "control points" determine a vector function that defines a smooth continuous curve." The term “vector function” is used nowhere else on the page, and I do not believe there is a good reason to introduce it here. Much more important is that the curve is parametric, which is already stated. I also disagree with “determines” as I already noted and gave reason for.
 * If you think “usually” is problematic, then I suggest “commonly”. The point is so to inform readers why they might even bother caring about the topic.
 * Strebe (talk) 00:33, 18 February 2022 (UTC)

The part about approximating "real world" shapes applies to Bézier splines (a chain of Bézier curves), not so much to individual Bézier curves. Therefore that sentence in the lead may be confusing. Not all Bézier curves are "smooth". A third order Bézier curve may have cusp. What is left may be stated as: "A formula applied to a discrete set of control points defines a continuous curve."−Woodstone (talk) 04:08, 18 February 2022 (UTC)

 * Thanks for your input. I believe Strebe may be using "verbiage" wrong. It means:"the excessive and often meaningless use of words", and hence can cause offense (inadvertantly).

 * I took 'real-world' to mean the physical world (i.e. not virtual world nor the imagination of the drafter).

 * There are some issues with this: “Discrete control points used as parameters to a Bézier generating function define a smooth, continuous curve.”

The parameter in the vector functions that define the curves (in the article) is 't'. The position vectors act in a similar way to coefficients in scaler equations. (The sentence would be ok I think if we said "the control points are parameters to a Bezier generating algorithm", i.e. parameters in a computer programming sense)

 * Regarding, "Discrete "control points" determine a vector function that defines a smooth continuous curve.": I still think this is accurate, Ofc, the reader will need to know or look up vector functions (a useful exercise to understand the maths later on). Currenlty what exactly we mean by 'formula' is a vague. In this  case it refers to the vector functions that defines the curve.

Taking into account above Woodstone comments I would propose, for time being:

"Discrete "control points" with a formula defines a continuous curve. Bézier curves can approximate a wide variety of curves including those found in the real-world, that have complicated or unknown mathematical representations."

Pskuri (talk) 05:34, 18 February 2022 (UTC)

 * I'm not sure what "discrete" means for a control point. A point is always discrete. What is meant here is a "discrete set" of control points (as opposed to the infinite number of points on the curve). I would still prefer the slightly more precise: "A formula is applied to a discrete set of control points to define a continuous curve."
 * The sentence on approximation should be moved a few lines down to apply to B-splines.
 * −Woodstone (talk) 05:55, 18 February 2022 (UTC)

How about ""Control points" with a formula defines a continuous curve'. This phrasing has fewer words than "A formula is applied...". I don't think 'set of discrete' is needed, since the default is to assume the number of control points will be finite.  Regarding the point about Bezier-splines (I assume you meant Bezier splines not B-splines), how about this for opening paragraph

So how about:

A Bézier curve is a parametric curve used in computer graphics and related fields. "Control points" with a formula defines a continuous curve. Bézier curves can be combined to form a Bézier spline, which are used to approximate a wide variety of curves including those found in the real-world, that have complicated or unknown mathematical representations. Bézier curves can also be generalized to higher dimensions to form Bézier surfaces. The Bézier triangle is a special case of the latter. Bézier curve is named after French engineer Pierre Bézier, who used it in the 1960s for designing curves for the bodywork of Renault cars. Other uses include the design of computer fonts and animation.

Pskuri (talk) 16:40, 18 February 2022 (UTC)

 * The ultrashort rephrase loses the idea that the formula is always the same (per order). An intermediate shortening could be: "A formula applied to a number of control points defines a continuous curve." The rest of above proposal look fine (I did mean Bézier spline).−Woodstone (talk) 07:01, 19 February 2022 (UTC)

Featured picture scheduled for POTD
Hello! This is to let editors know that File:Bézier 1 big.gif, a featured picture used in this article, has been selected as the English Wikipedia's picture of the day (POTD) for December 13, 2023. A preview of the POTD is displayed below and can be edited at Template:POTD/2023-12-13. For the greater benefit of readers, any potential improvements or maintenance that could benefit the quality of this article should be done before its scheduled appearance on the Main Page. If you have any concerns, please place a message at Wikipedia talk:Picture of the day. Thank you! — Amakuru (talk) 10:35, 8 December 2023 (UTC)

Number of lerps in De Castlejau's algorithm
Your [jacobolus] reversion [special:diff/1228623498] of my edit in Bezier curve was on incorrect grounds. The number of lerps is not a triangular number. The evaluation requires O(2^n) lerps because of the simple facts that it calls itself twice at each level and the problem size is reduced by 1 at each level, making it very inefficient and that should be noted. I would appreciate you un-reverting. Curtmcd (talk) 23:11, 12 June 2024 (UTC)

 * @Curtmcd This is incorrect. We do n lerps at the first level, then n-1 lerps at the next level, etc., down to one final lerp. The total number of lerps is the nth triangular number. If your implementation of this needs 2^n lerps, something is going very, very wrong. –jacobolus (t) 23:51, 12 June 2024 (UTC)
 * No, it is 2^n, because each level calls the next lower level of recursion B(t) *twice*. Given n control points, it takes exactly 2^n - 1 lerps to evaluate a single point of the curve. This ease of misunderstanding is an obvious justification for including this information in the Recursive definition section. For that reason, I ask that you undo the revert. Curtmcd (talk) 07:10, 20 June 2024 (UTC)
 * It looks like $\mathbf{B}_{\mathbf{P}_j\mathbf{P}_{j+1}\ldots\mathbf{P}_{k-1}\mathbf{P}_k}(t)$ is computed only for ranges $j$ through $k$ rather than for all subsets of $\{0, ..., n\}$.  As such, there are only $O(n2)$ values to compute, not $O(2n)$.  The amount of computation for each one is $O(1)$, so the runtime is looking like $O(n2)$.  The memory requirement looks like $O(n)$ if one saves only the values for ranges of length $l$ and $l + 1$ at any given time.  — Q uantling (talk | contribs) 13:37, 20 June 2024 (UTC)
 * @Curtmcd At the first level, you compute exactly $n$ lerps, $\textstyle p_{1,0}(t) = \operatorname{lerp}(p_0, p_1, t)$ through $\textstyle p_{1,n-1}(t) = \operatorname{lerp}(p_{n-1}, p_n, t)$ starting from the $n+1$ control points. At the next level you compute exactly $n-1$ lerps, using the $n$ values you computed at the first level, $\textstyle p_{2,0}(t) = \operatorname{lerp}(p_{1,0}(t), p_{1,1}(t), t)$ through $\textstyle p_{2,n-2}(t) = \operatorname{lerp}(p_{1,n-2}(t), p_{1,n-1}(t), t)$. Then you keep going until you get to one final lerp $\textstyle p(t) = p_{n,0}(t) = \operatorname{lerp}(p_{n-1,0}(t), p_{n-1,1}(t), t)$, computed from the 2 values at the next-to-last level. In total the number of lerps is the triangular number for $n$. If you write this as a naïve recursive function you are recomputing the same quantities over and over again in an absurd waste, akin to calculating a Fibonacci number by recursively calculating each of the two previous Fibonacci numbers at each step without re-using any of your work. Don't do that. –jacobolus (t) 15:33, 20 June 2024 (UTC)
 * For more about this see De Casteljau's algorithm. –jacobolus (t) 16:47, 20 June 2024 (UTC)

title: Talk:Bézier curve


text:
Balochistan, Pakistan

Balochistan (بلۏچستان;, ) is a province of Pakistan. Located in the southwestern region of the country, Balochistan is the largest province of Pakistan by land area but is the least populated one. It is bordered by the Pakistani provinces of Khyber Pakhtunkhwa to the north-east, Punjab to the east and Sindh to the south-east; shares international borders with Iran to the west and Afghanistan to the north; and is bound by the Arabian Sea to the south. Balochistan is an extensive plateau of rough terrain divided into basins by ranges of sufficient heights and ruggedness. It has the world's largest deep sea port, the Port of Gwadar lying in the Arabian Sea.

Although it makes up about 44% of the land area of Pakistan, only 5% of it is arable and it is noted for an extremely dry desert climate. Despite this, agriculture and livestock make up about 47% of Balochistan's economy.

The name "Balochistan" means "the land of the Baloch". Largely underdeveloped, its economy is also dominated by natural resources, especially its natural gas fields. Aside from Quetta, the second-largest city of the province is Turbat in the south, while another area of major economic importance is the port city of Gwadar on the Arabian Sea, an emerging future business hub.

Early history
Balochistan occupies the very southeasternmost portion of the Iranian Plateau, the setting for the earliest known farming settlements in the pre-Indus Valley civilisation era, the earliest of which was Mehrgarh, dated at 7000 BCE, within the province. Balochistan marked the westernmost extent of civilisation. Centuries before the arrival of Islam in the seventh century, parts of Balochistan were ruled by the Paratarajas, an Indo-Scythian dynasty. At certain times, the Kushans also held political sway in parts of Balochistan.

The Hindu Sewa Dynasty ruled parts of Balochistan, chiefly Kalat. The Sibi Division, which was carved out of Quetta Division and Kalat Division in 1974, derives its name from Rani Sewi, the queen of the Sewa dynasty.

The remnants of the earliest people in Balochistan were the Brahui people, a Dravidian speaking people. The Brahuis retained the Dravidian language throughout the millennias.

Although during the Stone and Bronze Age and Alexander the Great's empire an indigenous population existed, the Baloch people themselves did not enter the region until the 14th century CE. A theory of the origin of the Baloch people, the largest ethnic group in the region, is that they are of Median descent.

Arrival of Islam
In 654, Abdulrehman ibn Samrah, governor of Sistan and the newly emerged Rashidun caliphate at the expense of Sassanid Persia and the Byzantine Empire, sent an Islamic army to crush a revolt in Zaranj, which is now in southern Afghanistan. After conquering Zaranj, a column of the army pushed north, conquering Kabul and Ghazni, in the Hindu Kush mountain range, while another column moved through Quetta District in north-western Balochistan and conquered the area up to the ancient cities of Dawar and Qandabil (Bolan). It is documented that the major settlements, falling within today's province, became in 654 controlled by the Rashidun caliphate, except for the well-defended mountain town of QaiQan which is now Kalat.

During the caliphate of Ali, a revolt broke out in southern Balochistan's Makran region. In 663, during the reign of Umayyad Caliph Muawiyah I, his Muslim rule lost control of north-eastern Balochistan and Kalat when Haris ibn Marah and a large part of his army died in battle against a revolt in Kalat.

Pre-modern era
In the 15th century, Mir Chakar Khan Rind became the first Sirdar of Afghan, Iranian and Pakistani Balochistan. He was a close aide of the Timurid ruler Humayun, and was succeeded by the Khanate of Kalat, which owed allegiance to the Mughal Empire. Later, Nader Shah won the allegiance of the rulers of eastern Balochistan. He ceded Kalhora, one of the Sindh territories of Sibi-Kachi, to the Khanate of Kalat. Ahmad Shah Durrani, founder of the Afghan Empire, also won the allegiance of that area's rulers, and many Baloch fought under him during the Third Battle of Panipat. Most of the area would eventually revert to local Baloch control after Afghan rule.

Colonial era
In 1876, northern Baluchistan became one of the Presidencies and provinces of British India in colonial India. During this time from the fall of the Durrani Empire in 1823, four princely states were recognised and reinforced in Balochistan: Makran, Kharan, Las Bela and Kalat. In 1876, Robert Sandeman negotiated the Treaty of Kalat, which brought the Khan's territories, including Kharan, Makran, and Las Bela, under British protection, even though they remained independent princely states. After the Second Afghan War was ended by the Treaty of Gandamak in May 1879, the Afghan Emir ceded the districts of Quetta, Pishin, Harnai, Sibi and Thal Chotiali to British control. On 1 April 1883, the British took control of the Bolan Pass, south-east of Quetta, from the Khan of Kalat. In 1887, small additional areas of Balochistan were declared British territory. In 1893, Sir Mortimer Durand negotiated an agreement with the Amir of Afghanistan, Abdur Rahman Khan, to fix the Durand Line running from Chitral to Balochistan as the boundary between the Emirate of Afghanistan and British-controlled areas. Two devastating earthquakes occurred in Balochistan during British colonial rule: the 1935 Quetta earthquake, which devastated Quetta, and the 1945 Balochistan earthquake with its epicentre in the Makran region. During the time of the Indian independence movement, "three pro-Congress parties were still active in Balochistan's politics apart from Balochistan's Muslim League", such as the Anjuman-i-Watan Baluchistan, which favoured a united India and opposed its partition.

After independence
In British-ruled Colonial India, Baluchistan contained a Chief Commissioner's province and princely states (including Kalat, Makran, Las Bela and Kharan) that became a part of Pakistan. The province's Shahi Jirga (the grand council of tribal elders ) and the non-official members of the Quetta Municipality, according to the Pakistani narrative, agreed to join Pakistan unanimously on 29 June 1947; however, the Shahi Jirga was stripped of its members from the Kalat State prior to the vote. The then-president of the Baluchistan Muslim League, Qazi Muhammad Isa, informed Muhammad Ali Jinnah that "Shahi Jirga in no way represents the popular wishes of the masses" and that members of the Kalat State were "excluded from voting; only representatives from the British part of the province voted and the British part included the leased areas of Quetta, Nasirabad Tehsil, Nushki and Bolan Agency." Following the referendum, on 22 June 1947 the Khan of Kalat received a letter from members of the Shahi Jirga, as well as sardars from the leased areas of Baluchistan, stating that they, "as a part of the Baloch nation, were a part of the Kalat state too" and that if the question of Baluchistan's accession to Pakistan arise, "they should be deemed part of the Kalat state rather than (British) Balochistan". This has brought into question whether an actual vote took place. Political scientist Salman Rafi Sheikh, in locating the origins of the insurgency in Balochistan, says "that Balochistan's accession to Pakistan was, as against the officially projected narrative, not based upon consensus, nor was support for Pakistan overwhelming. What this manipulation indicates is that even before formally becoming a part of Pakistan, Balochistan had fallen a prey to political victimization."

Initially aspiring for independence, the Khan of Kalat finally acceded to Pakistan on 27 March 1948 after period of negotiations with Pakistan. The signing of the Instrument of Accession by Ahmad Yar Khan led his brother, Prince Abdul Karim, to revolt against his brother's decision due to their family rift. in July 1948. Princes Agha Abdul Karim Baloch and Muhammad Rahim refused to lay down arms, leading the Dosht-e Jhalawan in unconventional attacks on the army until 1950. The Prince indulged in Terror activities without any assistance from others. Jinnah and his successors allowed Yar Khan to retain his title until the province's dissolution in 1955.

Insurgencies by Baloch nationalists took place in 1948, 1958–59, 1962–63 and 1973–77, with a new ongoing insurgency by autonomy-seeking Baloch groups since 2003. While many Baloch support the demand for autonomy, the majority are not interested in seceding from Pakistan.

At a press conference on 8 June 2015 in Quetta, Balochistan's Home Minister Sarfraz Bugti accused India's prime minister Narendra Modi of openly supporting terrorism. Bugti implicated India's Research and Analysis Wing (RAW) of being responsible for recent attacks at military bases in Smangli and Khalid, and for subverting the China–Pakistan Economic Corridor (CPEC) agreement.

Gwadar, a region of Balochistan, was a colony of Oman for more than a century, and in the 1960s Pakistan took over the land. Many people in this region are therefore Omani.

Geography
Balochistan is situated in the southwest of Pakistan and covers an area of 347190 km2. It is Pakistan's largest province by area, constituting 44% of Pakistan's total landmass. The province is bordered by Afghanistan to the north and north-west, Iran to the south-west, Punjab and Sindh, and Khyber Pakhtunkhwa and the Federally Administered Tribal Areas to the north-east. To the south lies the Arabian Sea. Balochistan is located on the south-eastern part of the Iranian plateau. It borders the geopolitical regions of the Middle East and Southwest Asia, Central Asia and South Asia. Balochistan lies at the mouth of the Strait of Hormuz and provides the shortest route from seaports to Central Asia. Its geographical location has placed the otherwise desolate region in the scope of competing for global interests for all of recorded history.

The capital city Quetta is located in a densely populated portion of the Sulaiman Mountains in the northeast of the province. It is situated in a river valley near the Bolan Pass, which has been used as the route of choice from the coast to Central Asia, entering through Afghanistan's Kandahar region. The British and other historic empires have crossed the region to invade Afghanistan by this route.

Balochistan is rich in exhaustible and renewable resources; it is the second major supplier of natural gas in Pakistan. The province's renewable and human resource potential has not been systematically measured or exploited. Local inhabitants have chosen to live in towns and have relied on sustainable water sources for thousands of years.

Climate
The climate of the upper highlands is characterised by very cold winters and hot summers. In the lower highlands, winters vary from extremely cold in northern districts Ziarat, Quetta, Kalat, Muslim Baagh and Khanozai, where temperatures can drop to -20 C, to milder conditions closer to the Makran coast. Winters are mild on the plains, with temperatures never falling below freezing point. Summers are hot and dry, especially in the arid zones of Chagai and Kharan districts. The plains are also very hot in summer, with temperatures reaching 50 C. The record highest temperature, 53 C, was recorded in Sibi on 26 May 2010, exceeding the previous record, 52 C. Other hot areas include Turbat and Dalbandin. The desert climate is characterised by hot and very arid conditions. Occasionally, strong windstorms make these areas very inhospitable.

Government and politics
In common with the other provinces of Pakistan, Balochistan has a parliamentary form of government. The ceremonial head of the province is the Governor, who is appointed by the President of Pakistan on the advice of the provincial Chief Minister. The Chief Minister, the province's chief executive, is normally the leader of the largest political party or alliance of parties in the provincial assembly.

The unicameral Provincial Assembly of Balochistan comprises 65 seats of which 11 are reserved for women and 3 reserved for non-Muslims. The judicial branch of government is carried out by the Balochistan High Court, which is based in Quetta and headed by a Chief Justice.

Besides dominant Pakistan-wide political parties (such as the Pakistan Tehreek-e-Insaf, Pakistan Muslim League (N) and the Pakistan Peoples Party), Balochistan nationalist parties (such as the National Party and the Balochistan National Party (Mengal)) have been prominent in the province.

Administrative divisions

For administrative purposes, the province is divided into seven divisions: Kalat, Makran, Nasirabad, Quetta, Sibi, Zhob and Rakhshan. This divisional level was abolished in 2000, but restored after the 2008 election. Each division is under an appointed commissioner. The seven divisions are further subdivided into 36 districts:

As of June 2021, there are eight divisions. The eighth division, Loralai Division was created by bifurcating Zhob Division.

Languages and ethnicities
According to the preliminary results of the 2023 digital census, the languages with the most native speakers in the province are Balochi, spoken by 39.91% of the population (an increase of 4% compared to the 2017 census), and Pashto whose share is at 34.34%. The Pasthuns mainly inhabit the north of Balochistan and form the majority in Quetta. Baloch on the other hand are found throughout Balochistan, but most highly concentrated in the west and south of the province. Brahui is spoken by 17.22% mainly in the central part of Balochistan. Other languages include Sindhi (3.81%), Saraiki (2.19%), Punjabi (0.59%), Urdu (0.53%) and others at (1.5%).

Balochi forms the majority in 21 districts and Pashto forms majority in 9 districts of Balochistan. Brahui has majority in 4 districts. In the Lasbela, Hub districts and in Kachhi plain region a large minority of the population speaks Lasi and Siraiki, which are dialects of Sindhi.

According to the Ethnologue, households speaking Balochi, whose primary dialect is Makrani constitutes 13%, Rukhshani 10%, Sulemani 7%, and Khetrani 3% of the population. Other languages spoken are Lasi, Urdu, Punjabi, Hazargi, Sindhi, Saraiki, Dehvari, Dari, Tajik, Hindko, Uzbek, and Hindki.

The 2005 census concerning Afghans in Pakistan showed that a total of 769,268 Afghan refugees were temporarily staying in Balochistan. However, there are probably fewer Afghans living in Balochistan today as many refugees repatriated in 2013. As of 2015, there are only 327,778 registered Afghan refugees according to the UNHCR.

Religion
According to the 2017 Census, nearly all of the population of Balochistan were Muslims. There were also Hindu and Christian minorities in the province. The Hindu population in the province was approximately 49,133 (including the Scheduled Castes). The Shri Hinglaj Mata mandir which is the largest Hindu pilgrimage centre in Pakistan is situated in Balochistan. There was also a Christian minority of 26,462 individuals in the province.

Education
The literacy rate of the province in 2017 was 43.6%, an increase from 24.8% in 1998.

Medical colleges

 * Bolan University of Medical & Health Sciences
 * Makran Medical College, Turbat

Engineering universities

 * Balochistan University of Engineering and Technology, Khuzdar
 * Balochistan University of Information Technology, Engineering and Management Sciences, Quetta

General universities

 * University of Balochistan, Quetta
 * Al-Hamd Islamic University, Quetta
 * Sardar Bahadur Khan Women's University, Quetta
 * Lasbela University of Agriculture, Water and Marine Sciences, Lasbela
 * University of Turbat, Turbat
 * University of Loralai, Loralai
 * University of Gwadar, Gwadar

Economy
The economy of Balochistan is largely based upon agriculture, livestock, fisheries, production of natural gas, coal and other minerals.

Though agriculture and livestock play a dominant role in the provincial economy by contributing 47% of its GDP, it faced intense damages due to the 2022 Pakistan floods. The floods killed around 500,000 of Balochistan's livestock and damaged cultivation and agricultural output in 32 out of 35 districts of the province. The Lasbela district was the worst hit as the floods washed away fourt-fifth's of the homes, crops and livestock. Due to the floods and severe drought conditions, the province faces food insecurity and is 85% dependent on the Sindh and Punjab provinces for the supply of wheat.

Furthermore, with the exception of Quetta, Balochistan has been called a "neglected province where a majority of population lacks amenities". Although the province is rich in natural resources capable of uplifting its economy, most of them have not been fully utilised for the welfare of the population and are yet to be explored or developed.

Since the mid-1970s the province's contribution to Pakistan's GDP has dropped from 4.9 to 3.7%, and as of 2007 it had the highest poverty rate and infant and maternal mortality rate, and the lowest literacy rate in comparison to other provinces, factors some allege have contributed to the insurgency. However, in seventh NFC awards, Punjab province and Federal contributed to increase Baluchistan share more than its entitled population based share. In Balochistan poverty is increasing. In 2001–2002 poverty incidences were at 48% and by 2005–2006 these were at 50.9%. According to a report on Dawn, the rate of multidimensional poverty in Balochistan had risen to 71% by 2016.

Several major development projects, including the construction of a new deep sea port at the strategically important town of Gwadar, are in progress in Balochistan. The port is projected to be the hub of an energy and trade corridor to and from China, Middle East and the Central Asian republics. The Mirani Dam on the Dasht River, 50 km west of Turbat in the Makran Division, is being built to provide water to expand agricultural land use by 35000 km2 where it would otherwise be unsustainable. In the district Lasbela, there is an oil refinery owned by Byco International Incorporated (BII), which is capable of processing 120,000 barrels of oil per day. A power station is located adjacent to the refinery. Several cement plants and a marble factory are also located there. One of the world's largest ship breaking yards is located on the coast.

Natural resource extraction
Balochistan's share of Pakistan's national income has historically ranged between 3.7% to 4.9%. Since 1972, Balochistan's gross income has grown in size by 2.7 times. Outside Quetta, the resource extraction infrastructure of the province is gradually developing but still lags far behind other parts of Pakistan.

The agreements for royalty rights and ownership of mineral rights were reached during a period of unprecedented natural disasters, economic, social, political, and cultural unrest in Pakistan. The negotiations were widely considered to be insufficiently transparent.

Places of interest
Following is a list of a few tourist attractions and places of interest in Balochistan:

 * Astola Island
 * Bolan Pass
 * Dureji
 * Gadani Beach
 * Gadani Ship Breaking Yard
 * Gwadar
 * Hanna Lake
 * Hazarganji-Chiltan National Park, near Quetta.
 * Hinglaj Mata Temples
 * Hingol National Park
 * Hub Dam
 * Jiwani Coastal Wetland
 * Khuzdar
 * Kund Malir
 * Makran Coastal Highway
 * Mehrgarh
 * Moola Chotok
 * Pir Ghaib Waterfall, Balochistan
 * Quaid-e-Azam Residency
 * Quetta
 * The princess of hope, Balochistan
 * Urak Valley
 * Zhob
 * Ziarat Juniper Forest
 * Ziarat

Villages

 * Kappar
 * Lahor

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: Balochistan, Pakistan