Открыть боковую панель
nikitronn
sverchok
Коммиты
a50195d7
Коммит
a50195d7
создал
Авг 22, 2022
по автору
Ilya Portnov
Просмотр файлов
Refine nurbs curve node documentation.
владелец
d2d8abab
Изменения
2
Скрыть пробелы
Построчно
Рядом
docs/nodes/curve/curve_index.rst
Просмотр файла @
a50195d7
...
...
@@ -53,6 +53,7 @@ Curves
interpolate_nurbs_curve
insert_knot
remove_knot
refine_nurbs_curve
remove_excessive_knots
adaptive_plot_nurbs
catenary_curve
...
...
docs/nodes/curve/refine_nurbs_curve.rst
0 → 100644
Просмотр файла @
a50195d7
Refine NURBS Curve
==================
Functionality
-------------
This node performs "refinement" procedure on a NURBS curve, i.e. inserts a
number of knots in order to make it easier to manipulate with curve's shape.
Each knot can be inserted once or multiple times. Knots are distributed
according to one of algorithms, in order to make knots distribution more even.
After some modifications to refined curve shape were done, unneded knots can be
removed by use of "Remove excessive knots (Curve)" node.
Inputs
------
This node has the following inputs:
* **Curve**. The NURBS Curve object to be refined. This input is mandatory.
* **NewKnots**. The number of knots to be inserted. The default value is 10.
* **Resolution**. Resolution of the algorithm which is used to calculate curve
arc lengths (see the documentation of "Curve Length" node, for example).
Larger values correspond to better precision, but worse performance. The
default value is 50. This input is only available when the **Distribution**
parameter is set to **Distribute Length** or **Bisect Length**.
* **TMin**, **TMax**. Minimum and maximum values of curve's T parameters,
between which the new knots are to be inserted. These inputs are available
only when the **Specify Segment** parameter is checked. The default values
are 0.0 and 1.0, correspondingly.
Parameters
----------
This node has the following parameters:
* **Distribution**. The algorithm used to distribute curve's knots evenly. The available options are:
* **Even T**. New knots are distributed evenly in curve's T space, not taking
into account the fact that previously existing curve knots can lie near to
newly inserted knots. This option is the default.
* **Distribute T**. New knots are inserted into each segment between existing
curve knots, distributed evenly (in curve's parameter space) inside each
segment. The number of knots inserted into each segment is proportional to
the span of curve's T parameter, corresponding to the segment.
* **Distribute Length**. New knots are inserted into each segment between
existing curve knots, distributed evenly (according to curve arc length)
inside each segment. The number of knots inserted into each segment is
proportional to the curve arc length within the segment.
* **Bisect T**. New knot is inserted in the middle (in curve's parameter
space) of the segment between existing curve knots, which has the maximum
span of curve's T parameter; thus, this segment is subdivided in two
smaller ones. The following knot is similarly inserted into the segment
which is now largest. The procedure is repeated until the required number
of knots is inserted.
* **Bisect Length**. New knot is inserted in the middle (in terms of curve arc
length) of the segment between existing curve knots, which has the maximum
curve arc length; thus, this segment is subdivided in two smaller ones. The
following knot is similarly inserted into the segment which is now largest.
The procedure is repeated until the required number of knots is inserted.
* **Insert each knot**. This defines the number of times each knot is inserted. The available options are:
* **Once**. Each knot is inserted one time.
* **As possible**. Each knot is inserted as many times as possible; that is,
`p-1` times, where `p` is the degree of the curve - if the new knot does
not coincide with any of existing knots; or smaller number of times, if the
new knot hapens to coincide with previously existing knot. This option is
the default.
* **Specify Segment**. If checked, the node allows you to specify the range of
curve's T parameter, into which all new knots are inserted. The range is
specified by **TMin**, **TMax** inputs. If the parameter is not checked, then
new knots will be inserted along the whole curve. Unchecked by default.
Outputs
-------
This node has the following outputs:
* **Curve**. The resulting NURBS Curve object.
* **NewKnots**. The values of newly inserted knots.
Example of Usage
----------------
.. image:: https://user-images.githubusercontent.com/284644/126066221-95589c16-c04d-4b9c-add7-19c6ad4ab906.png
Редактирование
Предварительный просмотр
Поддерживает Markdown
0%
Попробовать снова
или
прикрепить новый файл
.
Отмена
You are about to add
0
people
to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Отмена
Пожалуйста,
зарегистрируйтесь
или
войдите
чтобы прокомментировать