INDEXEDLINESET
Документы VRML используют узел IndexedLineSet для того, чтобы представлять трехмерные формы путем построения полилиний (polylilines), т. е. формировать «проволочные» многогранники, используя вершины, расположенные в текущих координатах. Другими словами, полилинии показывают грани, которые не являются сплошными. Следующее выражение иллюстрирует имена полей и их значения по умолчанию для IndexedLineSet:
IndexedLineSet | { | |
coordIndex | 0 | # MFLong |
materialIndex | -1 | # MFLong |
normalIndex | -1 | # MFLong |
textureCoordIndex | -1 | # MFLong |
} |
Поле coordlndex
определяет координаты вершин узлов
полилиний, где значение индекса
начинается с 0. Неотрицательные
значения индекса соответствуют
трехмерным точкам (х, у, z).
Поскольку полилиния является
формой многогранника, она должна по
определению иметь три или
более линии, которые ограничивают
воображаемую грань. Необходимо
определить как минимум
три координатных индекса, т. е. три
трехмерных точки для каждой грани
полилинии. Значение
индекса, равное -1 в поле Coordlndex,
указывает на конец текущей грани.
Если многоугольник
имеет более одной грани, то каждая
из них отделена от другой величиной
-1. После последней
грани также должно идти значение
"1.
Поле materiallndex определяет индекс
материалов, который броузер будет
использовать для каждой
вершины полилинии. Поле normallndex
определяет индексы нормалей,
которые броузер использует
для вершин, входящих в состав
класса узлов простой геометрии.
Поле textureCoordlndex
определяет индексы для каждой
текстуры, которую броузер
связывает с заданными координатами
(вершинами).
Документы VRML используют индексы
IndexedLineSet в поле Coordlndex для того, чтобы
задать
вершины полилинии. Броузер
преобразует вершины, используя
текущие преобразования.