From 2b112edcb49c2fa28395bca77779bc2b4ff7d229 Mon Sep 17 00:00:00 2001 From: ra30r <66021002+ra30r@users.noreply.github.com> Date: Sun, 2 Jan 2022 10:24:19 -0600 Subject: [PATCH] ru-RU Aligning (#334) * ru-RU Aligning curves translation of Aligning curves chapter to Russian * Automated build * Automated build Co-authored-by: Mammoth Co-authored-by: Bezierinfo CI Co-authored-by: Pomax --- docs/chapters/aligning/content.ru-RU.md | 47 ++++++++++++++++++ docs/index.html | 4 +- docs/ja-JP/index.html | 4 +- docs/news/2020-09-18.html | 2 +- docs/news/2020-11-22.html | 2 +- docs/news/index.html | 2 +- docs/news/rss.xml | 2 +- docs/ru-RU/index.html | 65 +++++++++---------------- docs/uk-UA/index.html | 4 +- docs/zh-CN/index.html | 4 +- package-lock.json | 4 ++ 11 files changed, 87 insertions(+), 53 deletions(-) create mode 100644 docs/chapters/aligning/content.ru-RU.md diff --git a/docs/chapters/aligning/content.ru-RU.md b/docs/chapters/aligning/content.ru-RU.md new file mode 100644 index 00000000..092a943a --- /dev/null +++ b/docs/chapters/aligning/content.ru-RU.md @@ -0,0 +1,47 @@ +# Выравнивание (пересчет) кривых + +В то время как есть бесконечное множество кривых мы можем задать перемещая x и y кооординаты контрольных точек, не все кривые являются различными между собой. К примеру, если мы зададим кривую, затем повернем ее на 90 градусов, это будет все та же кривая, и все свойста, как, к примеру, точки экстримов, будут на тех же ее участках, только зарисованы на полотне координат в другой точке. Таким образом, одним из способов убедится, что мы работаем с "уникальными" кривыми, является выравнивание их с осями координат. + +Выравнивание так же упрощает уравнение кривой. Мы можем транслитерировать (переместить) кривую таким образом, что первая ее точка будет лежать на точке начала координат (0,0), что, в свою очередь, переведет наш полиноминальную функцию *n* порядка, на порядок ниже, *(n-1)*. Последовательность останется такой же, но у нас будет меньше условий. Далее мы развернем кривую так, чтобы последняя точка тоже лежала на оси координат, переводя ее значение в (..., 0). Это далее упрощает ф-цию для ее формулы по Y переводя ее еще на порядок ниже. Так, если у нас была кубическая ф-ция: + +\[ +\left \{ \begin{matrix} + x = BLUE[120] \cdot (1-t)^3 BLUE[+ 35] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[+ 220] \cdot 3 \cdot (1-t) \cdot t^2 BLUE[+ 220] \cdot t^3 \\ + y = BLUE[160] \cdot (1-t)^3 BLUE[+ 200] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[+ 260] \cdot 3 \cdot (1-t) \cdot t^2 BLUE[+ 40] \cdot t^3 +\end{matrix} \right. +\] + +Мы переместим первую точку в начало координат, смещая все значания x на -120 и y на -160: + +\[ +\left \{ \begin{matrix} + x = RED[0] \cdot (1-t)^3 BLUE[- 85] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[+ 100] \cdot 3 \cdot (1-t) \cdot t^2 BLUE[+ 100] \cdot t^3 \\ + y = RED[0] \cdot (1-t)^3 BLUE[+ 40] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[+ 100] \cdot 3 \cdot (1-t) \cdot t^2 BLUE[- 120] \cdot t^3 +\end{matrix} \right. +\] + +Затем, повернем кривую до оси X (новые значания x и y округлены в иллюстративных целях): + +\[ +\left \{ \begin{matrix} + x = RED[0] \cdot (1-t)^3 BLUE[- 85] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[- 12] \cdot 3 \cdot (1-t) \cdot t^2 BLUE[+ 156] \cdot t^3 \\ + y = RED[0] \cdot (1-t)^3 BLUE[- 40] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[+ 140] \cdot 3 \cdot (1-t) \cdot t^2 RED[+ 0] \cdot t^3 +\end{matrix} \right. +\] + +Итак, опуская все нулевые значения, получаем + +\[ +\left \{ \begin{array}{l} + x = BLUE[- 85] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[- 12] \cdot 3 \cdot (1-t) \cdot t^2 BLUE[+ 156] \cdot t^3 \\ + y = BLUE[- 40] \cdot 3 \cdot (1-t)^2 \cdot t BLUE[+ 140] \cdot 3 \cdot (1-t) \cdot t^2 +\end{array} \right. +\] + +Как мы видим, наше изначальное определение кривой было существенно упрощено. Следущие зарисовки демострируют результат выравнивание кривой с осью X. первый рисунок соотвествует приведеному выше примеру кривой. + + + +  + + diff --git a/docs/index.html b/docs/index.html index 70c809c0..e1464154 100644 --- a/docs/index.html +++ b/docs/index.html @@ -38,7 +38,7 @@ - + @@ -134,7 +134,7 @@
  • English  
  • 日本語 (24%)
  • 中文 (22%)
  • -
  • Русский (20%)
  • +
  • Русский (22%)
  • Українська (2%)
  • diff --git a/docs/ja-JP/index.html b/docs/ja-JP/index.html index 5d00a28c..cb7bd18d 100644 --- a/docs/ja-JP/index.html +++ b/docs/ja-JP/index.html @@ -41,7 +41,7 @@ - + @@ -137,7 +137,7 @@

  • English  
  • 日本語 (24%)
  • 中文 (22%)
  • -
  • Русский (20%)
  • +
  • Русский (22%)
  • Українська (2%)
  • diff --git a/docs/news/2020-09-18.html b/docs/news/2020-09-18.html index d93f52c8..19d7a5ae 100644 --- a/docs/news/2020-09-18.html +++ b/docs/news/2020-09-18.html @@ -34,7 +34,7 @@ - + diff --git a/docs/news/2020-11-22.html b/docs/news/2020-11-22.html index 6c190335..b334e7ee 100644 --- a/docs/news/2020-11-22.html +++ b/docs/news/2020-11-22.html @@ -34,7 +34,7 @@ - + diff --git a/docs/news/index.html b/docs/news/index.html index ce0bb96f..07539370 100644 --- a/docs/news/index.html +++ b/docs/news/index.html @@ -33,7 +33,7 @@ - + diff --git a/docs/news/rss.xml b/docs/news/rss.xml index 165d8e48..3cae450f 100644 --- a/docs/news/rss.xml +++ b/docs/news/rss.xml @@ -6,7 +6,7 @@ News updates for the primer on Bézier Curves by Pomax en-GB - Wed Dec 22 2021 16:11:03 +00:00 + Thu Dec 16 2021 18:23:42 +00:00 https://pomax.github.io/bezierinfo/images/og-image.png A Primer on Bézier Curves diff --git a/docs/ru-RU/index.html b/docs/ru-RU/index.html index 310738d3..363c741e 100644 --- a/docs/ru-RU/index.html +++ b/docs/ru-RU/index.html @@ -34,7 +34,7 @@ - + @@ -127,7 +127,7 @@

  • English  
  • 日本語 (24%)
  • 中文 (22%)
  • -
  • Русский (20%)
  • +
  • Русский (22%)
  • Українська (2%)
  • @@ -229,7 +229,7 @@

  • Component functions
  • Finding extremities: root finding
  • Bounding boxes
  • -
  • Aligning curves
  • +
  • Выравнивание (пересчет) кривых
  • Tight bounding boxes
  • Curve inflections
  • The canonical form (for cubic curves)
  • @@ -4559,19 +4559,20 @@ function getCubicRoots(pa, pb, pc, pd) { - Aligning curves + Выравнивание (пересчет) кривых

    - While there are an incredible number of curves we can define by varying the x- and y-coordinates for the control points, not all curves - are actually distinct. For instance, if we define a curve, and then rotate it 90 degrees, it's still the same curve, and we'll find its - extremities in the same spots, just at different draw coordinates. As such, one way to make sure we're working with a "unique" curve is to - "axis-align" it. + В то время как есть бесконечное множество кривых мы можем задать перемещая x и y кооординаты контрольных точек, не все кривые являются + различными между собой. К примеру, если мы зададим кривую, затем повернем ее на 90 градусов, это будет все та же кривая, и все свойста, + как, к примеру, точки экстримов, будут на тех же ее участках, только зарисованы на полотне координат в другой точке. Таким образом, одним + из способов убедится, что мы работаем с "уникальными" кривыми, является выравнивание их с осями координат.

    - Aligning also simplifies a curve's functions. We can translate (move) the curve so that the first point lies on (0,0), which turns our - n term polynomial functions into n-1 term functions. The order stays the same, but we have less terms. Then, we can - rotate the curves so that the last point always lies on the x-axis, too, making its coordinate (...,0). This further simplifies the - function for the y-component to an n-2 term function. For instance, if we have a cubic curve such as this: + Выравнивание так же упрощает уравнение кривой. Мы можем транслитерировать (переместить) кривую таким образом, что первая ее точка будет + лежать на точке начала координат (0,0), что, в свою очередь, переведет наш полиноминальную функцию n порядка, на порядок ниже, + (n-1). Последовательность останется такой же, но у нас будет меньше условий. Далее мы развернем кривую так, чтобы последняя точка + тоже лежала на оси координат, переводя ее значение в (..., 0). Это далее упрощает ф-цию для ее формулы по Y переводя ее еще на порядок + ниже. Так, если у нас была кубическая ф-ция:

    -

    - Then translating it so that the first coordinate lies on (0,0), moving all x coordinates by -120, and all y coordinates - by -160, gives us: -

    - - -

    - If we then rotate the curve so that its end point lies on the x-axis, the coordinates (integer-rounded for illustrative purposes here) - become: -

    - - -

    If we drop all the zero-terms, this gives us:

    +

    Мы переместим первую точку в начало координат, смещая все значания x на -120 и y на -160:

    + +

    Затем, повернем кривую до оси X (новые значания x и y округлены в иллюстративных целях):

    + +

    Итак, опуская все нулевые значения, получаем

    - We can see that our original curve definition has been simplified considerably. The following graphics illustrate the result of aligning - our example curves to the x-axis, with the cubic case using the coordinates that were just used in the example formulae: + Как мы видим, наше изначальное определение кривой было существенно упрощено. Следущие зарисовки демострируют результат выравнивание кривой + с осью X. первый рисунок соотвествует приведеному выше примеру кривой.

    - + @@ -132,7 +132,7 @@
  • English  
  • 日本語 (24%)
  • 中文 (22%)
  • -
  • Русский (20%)
  • +
  • Русский (22%)
  • Українська (2%)
  • diff --git a/docs/zh-CN/index.html b/docs/zh-CN/index.html index 2935ba48..ee496b08 100644 --- a/docs/zh-CN/index.html +++ b/docs/zh-CN/index.html @@ -41,7 +41,7 @@ - + @@ -137,7 +137,7 @@

  • English  
  • 日本語 (24%)
  • 中文 (22%)
  • -
  • Русский (20%)
  • +
  • Русский (22%)
  • Українська (2%)
  • diff --git a/package-lock.json b/package-lock.json index 998a0ab0..e7952777 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3866,6 +3866,7 @@ }, "canvas": { "version": "git+ssh://git@github.com/Pomax/node-canvas.git#20defd4f41e23b9bbcfdf219f304fd49ebcc18f8", + "integrity": "sha512-wIIEeJpcdESW3UvKYjOruWyqLIrwuO22PKxBr9H3kubXgIch/mBWhOrYIPSD3hNqT0pbP7NK8HehLp0WBywxJw==", "dev": true, "from": "canvas@git://github.com/Pomax/node-canvas#master", "requires": { @@ -4645,6 +4646,7 @@ }, "http-server": { "version": "git+ssh://git@github.com/Pomax/http-server.git#ff289661cd759f871c041e8890e1bd4af6c57bdc", + "integrity": "sha512-+XFpqn8b8u4lQgYzAW4UH4DH/+I/OYPIg0j0o94myNxvOjuaEtsu+0tHgMw0ibjIS4b3fBhA2RGwOzBWXsoOwA==", "dev": true, "from": "http-server@git://github.com/Pomax/http-server#patch-1", "requires": { @@ -4878,6 +4880,7 @@ }, "link-checker": { "version": "git+ssh://git@github.com/Pomax/link-checker.git#fba944c64254d524f1256336eba02d809e1f9410", + "integrity": "sha512-Wu1Iy8qpY8cYflZ9ojCOR0beRqApzXvCKnoprZNvBFOUGiFZJXsOXfemgcE1aiwv7TRywg+6KUY1w3JG1n5nHw==", "dev": true, "from": "link-checker@git://github.com/Pomax/link-checker#master", "requires": { @@ -6077,6 +6080,7 @@ }, "svgo": { "version": "git+ssh://git@github.com/Pomax/svgo.git#59e277cc1412d648cbac2602e72820157b9b9a61", + "integrity": "sha512-wlHrPkyM/UtHWsmiEoWyp88zVN6iRxylfK/SiSQRhHFNq385QUyJS0oWqARH7Nt16thxOxCE49Gts0BstUK5EA==", "dev": true, "from": "svgo@git://github.com/Pomax/svgo#dereferenceUses-plugin", "requires": {