<p>Bézier curves are mathematical entities and have no clearly defined center. One can in fact define many different things as the center of the Bézier curve. I have tried to depict some of the possible centers in image 1. More than this do exist.</p>

<p><a href="https://i.sstatic.net/N7tQj.png" rel="noreferrer"><img src="https://i.sstatic.net/N7tQj.png" alt="enter image description here"></a></p>

<p><strong>Image 1</strong>: Some of the possible centers of a single span Bézier curve</p>

<p>In practice nearly all graphics applications geared for drawing use the center of the local bounding box (BB) as their center. Animation software usually have an additional concept of pivot so they use the ask user approach, if no input is made they often revert to BB center or simply local coordinate center. This is probably because the BB needs to be calculated anyway and getting its center is pretty easy to do (see <a href="http://pomax.github.io/bezierinfo/#boundingbox" rel="noreferrer">A Primer on Bézier Curves</a>). </p>

<p>The center of gravity metrics are also somewhat natural especially in an animation context, though nastier to compute. Easiest being to discretize the data and do the computation on the discrete input. This said some closed form solutions are possible for the curve center of gravity, but it's not a very nice equation to formulate and simplify.</p>

<p>Then we have the on the curve points: the midpoint by arc length and the point where the $t$ parameter is 0.5. In my mind the $t$ param is often problematic though easy to compute, and it loses meaning when you chain multiple Béziers after each other for a polybézier. The center of length of course is only natural as long as the curve is not closed.</p>

<p>We also define other possible centers, the center could be at the curve center of gravity of the hull, the average of the control points or the control cage BB center. Although in practice these do not seem to work out very well.</p>

<p><strong>Please note</strong>: Although the curve in picture 1 shows the BB center quite near to some natural centers this this is not always the case for more complex curves and especially polybéziers.</p>

CC BY-SA 3.0
2016-06-28T14:00:40.993Z
I wouldn't call this a comment. I'd call it an excellent answer that addresses the asker's current level of knowledge, explains fully why the question is broader than expected, and opens the way for new questions.
trichoplax is on Codidact now
CC BY-SA 3.0
2016-06-28T15:24:46.537Z
@trichoplax though could be summarized as "define center" by the less polite.
ratchet freak
CC BY-SA 3.0
2016-06-28T17:56:16.807Z
@ratchetfreak I prefer answers that try to identify the knowledge gap of the asker rather than expecting them to fully understand the topic they are asking about.
trichoplax is on Codidact now
CC BY-SA 3.0
2016-12-14T20:59:39.803Z
I'm looking for a way to get the DISTANCE MIDPOINT for my quad and cubic bezier curves. I was using t value 0.5 and as you said I just realized it's problematic. What I'm trying to do now with the bezier calculation is moving balls at even speed. But using t value makes it so hard.. I think I need to find proper t values depending on the arc length. Any resource or a small hint for me, please?
Jenix
CC BY-SA 3.0
2016-12-14T21:06:55.993Z
Unfortunately no sinple general closed form solution exists for beziers but a good resource that covers numerically doing this and more can be found [Here](https://pomax.github.io/bezierinfo/) tough i read today at work a even better resource should link to it but i havent got the link on my phone. But perhaps this is enough @Jenix
joojaa
CC BY-SA 3.0
2016-06-28T12:27:57.410Z
2016-06-28T14:15:23.593Z
2016-06-28T14:15:23.593Z
joojaa
<p>Since we're not told what defintion of "center" to use, we may as well use the easiest. This would be 
$$
\text{Center} = \frac14( \mathbf{P}_0 + \mathbf{P}_1 + \mathbf{P}_2 + \mathbf{P}_3)
$$
where $\mathbf{P}_0$, $\mathbf{P}_1$,  $\mathbf{P}_2$,  $\mathbf{P}_3$ are the control points of the curve. </p>

CC BY-SA 3.0
2017-07-09T10:22:58.737Z
2017-12-22T01:38:11.077Z
2017-12-22T01:38:11.077Z
bubba
<p>I need to find the center of a Bezier curve to rotate it. I have a list of all points (control points, beginning and end, all points on the curve itself). How would I go about finding it's center?</p>

CC BY-SA 3.0
2016-06-27T21:41:51.703Z
Curves are mathematical entities they do not have centers as such. However you might be looking for bouding box center, minimum bounding box center, center of gravity of the enclosed area underlying the curve when endpoints are connected, center of gravity of closed polybeziers, curve midpoint, control point average etc.
joojaa
CC BY-SA 3.0
2016-06-28T06:12:10.427Z
@joojaa there are definitely 2 natural centers I can think of, one is the `t=0.5` point. and two is the geometric midpoint regarding travel cartesian distance along the line.
v.oddou
CC BY-SA 3.0
2016-06-28T06:44:21.133Z
@v.oddou yes in fact there are many more thats why the question needs clarification. All vector applications that i have used (Illustrator, xara, corel, sketch, etc..) Use the local bounding box center to rotate objects, so its rare to see the other center definitions used at all.
joojaa
<algorithm><bezier-curve>
Algorithm to find the center of a Bezier curve
user4656
# Algorithm to find the center of a Bezier curve

(Asked by: username_0 on 2016-06-27)

I need to find the center of a Bezier curve to rotate it. I have a list of all points (control points, beginning and end, all points on the curve itself). How would I go about finding it's center?

**Tags:** algorithm, bezier-curve

> **Comments:**
> **username_1**: Curves are mathematical entities they do not have centers as such. However you might be looking for bouding box center, minimum bounding box center, center of gravity of the enclosed area underlying the curve when endpoints are connected, center of gravity of closed polybeziers, curve midpoint, control point average etc.  
> **username_2**: @username_1 there are definitely 2 natural centers I can think of, one is the `t=0.5` point. and two is the geometric midpoint regarding travel cartesian distance along the line.  
> **username_1**: @username_2 yes in fact there are many more thats why the question needs clarification. All vector applications that i have used (Illustrator, xara, corel, sketch, etc..) Use the local bounding box center to rotate objects, so its rare to see the other center definitions used at all.  

---

## 2 answers

### Answer by username_1 on 2016-06-28. Score: 15

Bézier curves are mathematical entities and have no clearly defined center. One can in fact define many different things as the center of the Bézier curve. I have tried to depict some of the possible centers in image 1. More than this do exist.

[![enter image description here](https://i.sstatic.net/N7tQj.png)](https://i.sstatic.net/N7tQj.png)

**Image 1**: Some of the possible centers of a single span Bézier curve

In practice nearly all graphics applications geared for drawing use the center of the local bounding box (BB) as their center. Animation software usually have an additional concept of pivot so they use the ask user approach, if no input is made they often revert to BB center or simply local coordinate center. This is probably because the BB needs to be calculated anyway and getting its center is pretty easy to do (see [A Primer on Bézier Curves](http://pomax.github.io/bezierinfo/#boundingbox)).

The center of gravity metrics are also somewhat natural especially in an animation context, though nastier to compute. Easiest being to discretize the data and do the computation on the discrete input. This said some closed form solutions are possible for the curve center of gravity, but it's not a very nice equation to formulate and simplify.

Then we have the on the curve points: the midpoint by arc length and the point where the $t$ parameter is 0.5. In my mind the $t$ param is often problematic though easy to compute, and it loses meaning when you chain multiple Béziers after each other for a polybézier. The center of length of course is only natural as long as the curve is not closed.

We also define other possible centers, the center could be at the curve center of gravity of the hull, the average of the control points or the control cage BB center. Although in practice these do not seem to work out very well.

**Please note**: Although the curve in picture 1 shows the BB center quite near to some natural centers this this is not always the case for more complex curves and especially polybéziers.

> **Comments:**
> **username_3**: I wouldn't call this a comment. I'd call it an excellent answer that addresses the asker's current level of knowledge, explains fully why the question is broader than expected, and opens the way for new questions.  
> **username_4**: @username_3 though could be summarized as "define center" by the less polite.  
> **username_3**: @username_4 I prefer answers that try to identify the knowledge gap of the asker rather than expecting them to fully understand the topic they are asking about.  
> **username_5**: I'm looking for a way to get the DISTANCE MIDPOINT for my quad and cubic bezier curves. I was using t value 0.5 and as you said I just realized it's problematic. What I'm trying to do now with the bezier calculation is moving balls at even speed. But using t value makes it so hard.. I think I need to find proper t values depending on the arc length. Any resource or a small hint for me, please?  
> **username_1**: Unfortunately no sinple general closed form solution exists for beziers but a good resource that covers numerically doing this and more can be found [Here](https://pomax.github.io/bezierinfo/) tough i read today at work a even better resource should link to it but i havent got the link on my phone. But perhaps this is enough @username_5  

---

### Answer by username_6 on 2017-07-09. Score: 1

Since we're not told what defintion of "center" to use, we may as well use the easiest. This would be
$$
\text{Center} = \frac14( \mathbf{P}\_0 + \mathbf{P}\_1 + \mathbf{P}\_2 + \mathbf{P}\_3)
$$
where $\mathbf{P}\_0$, $\mathbf{P}\_1$, $\mathbf{P}\_2$, $\mathbf{P}\_3$ are the control points of the curve.


---

