27.08.2007 г. |
4.6. Расширяемость языка Возможность расширения предусмотрена с целью поддержки работы с автоматически определяемыми узлами, которые не являются частью стандарта. Например, если бы в стандарте отсутствовал узел типа "куб", его можно было бы вывести следующим образом: Cube { fields [ SFFloat width, SFPloat height, SFFloat depth ] width 10 height 4 depth 3 } Кроме этого новые типы узлов можно задавать через уже существующие. В этом случае новые узлы определяются путем задания дополнительного параметра 'isA' поля MFStririg. Например, новый тип "Material" под названием "ExtendedMaterial", имеющий особые свойства отражения может быть определен следующим образом:ExtendedMaterial { fields [ MFString isA, MFFloat indexOfRefraction, MFColor ambientColor, MFColor diffuseColor, MFColor specularColor, MFColor emissiveColor, MFFloat shininess, MFFloat transparency ] isA [ "Material" ] indexOfRefraction .34 diffuseColor .8 .54 1 }
|
Последнее обновление ( 15.11.2007 г. )
|