Метод Shape.DrawNURBS (Visio)
Создает новую фигуру, путь которой состоит из одного сегмента NURBS (неуниформного рационального B-сплайна).
Синтаксис
выражение. DrawNURBS
( _degree_
, _Flags_
, _xyArray()_
, _knots()_
, _weights_
)
Выражение Переменная, представляющая объект Shape .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Степени | Обязательный | Integer | Степень сплайна; целое число от 1 до 25. |
Flags | Обязательный | Integer | Флаги, влияющие на то, как рисуется фигура. |
xyArray() | Обязательный | Double | Массив чередующихся значений x и y , определяющих координаты контрольных точек; использовать внутренние единицы рисования (дюйма). |
knots() | Обязательный | Double | Массив узлов. |
Веса | Необязательный | Variant | Массив весовых значений. |
Возвращаемое значение
Shape
Примечания
Метод DrawNURBS создает новую фигуру, путь которой состоит из одного сегмента NURBS, указанного аргументами.
Контрольные точки должны находиться во внутренних единицах рисования (дюймах) по отношению к координатам страницы, образца или группы, в которой создается новая фигура. Массивы xyArray, узлов и весов должны иметь тип SAFEARRAY из 8-байтовых значений с плавающей запятой, передаваемых по ссылке (VT_R8| VT_ARRAY| VT_BYREF). Таким образом Microsoft Visual Basic передает массивы в объекты службы автоматизации.
Аргумент knots меньше единицы. Последовательность узлов не должна уменьшаться. Другими словами, узлы( i +1) <knots( i ) недопустимы. knots( i + 1) = knots( i ) разрешено, а затем значение повторяется, но применяются следующие ограничения.
- Первый узел не может повторяться более градуса +1 раз.
- Последний узел не может быть повторен.
- Любой узел между первым и последним не может повторяться более градусов раз.
- Если первый узел повторяется меньше, чем градус + 1 раз, сплайн является периодическим.
- Список весовых коэффициентов необязателен. Его отсутствие сигнализирует о том, что сплайн не является рациональным. Весовые коэффициенты без единиц измерения.
Следующие правила применяются к размерам списков. Для сплайна с n контрольных точек
- Если сплайн является периодическим, n> 2. В противном случае — n>градуса.
- Размер xyArray составляет 2 n.
- Размер массива весов равен n (если он имеется).
- Размер массива узлов равен n + 1.
Обычный не периодический сплайн требует n + градус + 1 узел, но применение подразумевает повторяющиеся узлы в конце. Например, список узлов степени 2 (0,0,0,2,5,8) интерпретируется в приложении как обычная последовательность узлов (0,0,0,2,5,8,8,8).
Параметр Flags — это битовая маска, указывающая параметры для рисования новой фигуры. Его значение должно быть равно нулю (0) или visSpline1D (8). Если flags имеет значение visSpline1D и если первая и последняя точки в xyArray не совпадают, метод DrawNURBS создает фигуру с одномерным (1D) поведением; В противном случае создается фигура с двумерным (2D) поведением.
Если первая и последняя точки в xyArray совпадают, метод DrawNURBS создает заполненную фигуру.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.