Node OSG plugin extension: Difference between revisions
Jump to navigation
Jump to search
Short overview of extensions and examples |
Added detailed node info |
||
Line 13: | Line 13: | ||
= Detailed description = | = Detailed description = | ||
== Node == | == Node == | ||
Each node in OSG can have a list of strings attached. | |||
{| style="text-align:left; width:100%; border:1px solid #666666;" cellspacing="0" cellpadding="2" | |||
|- style="background-color:#eeeeee;" | |||
! Element || Type || Comments | |||
|- | |||
! <Descriptions>|| contains a list of <Description> elements || | |||
|- | |||
! <Description> || string || Line of free text | |||
|- | |||
|} | |||
=== Example === | === Example === | ||
<pre> | <pre> |
Revision as of 15:42, 27 November 2008
Overview
The OpenSceneGraph plugin uses extensions to store specific node information used by OpenSceneGraph graphics library. It supports both reading and writing of the extension information. Currently no tools other than OpenSceneGraph based tools exist that are able to generate or reuse the information stored in the OpenSceneGraph node extension.
First of all it is important to note that the OpenSceneGraph profile uses the type attribute in the <extra> element to specify which node information will be available in the <extra>.
A <node> with an extra of profile="OpenSceneGraph" may be extended by a
- <extra type="Node">
and/or one of
- <extra type="LOD">
- <extra type="Switch">
- <extra type="MultiSwitch">
- <extra type="Sequence">
- <extra type="DOFTransform">
Detailed description
Node
Each node in OSG can have a list of strings attached.
Element | Type | Comments |
---|---|---|
<Descriptions> | contains a list of <Description> elements | |
<Description> | string | Line of free text |
Example
<extra type="Node"> <technique profile="OpenSceneGraph"> <Descriptions> <Description>Some info</Description> </Descriptions> </technique> </extra>
LOD
Example
<extra type="LOD"> <technique profile="OpenSceneGraph"> <Center>1 2 3</Center> (optional ) <Radius>-1</Radius> (required if Center is available) <RangeMode>0</RangeMode> <RangeList> <MinMax>0 300</MinMax> <MinMax>300 600</MinMax> </RangeList> </technique> </extra>
Switch
Example
<extra type="Switch"> <technique profile="OpenSceneGraph"> <ValueList>1 0</ValueList> </technique> </extra>
MultiSwitch
Example
<extra type="MultiSwitch"> <technique profile="OpenSceneGraph"> <ActiveSwitchSet>0</ActiveSwitchSet> <ValueLists> <ValueList>1 0</ValueList> <ValueList>0 1</ValueList> </ValueLists> </technique> </extra>
Sequence
Example
<extra type="Sequence"> <technique profile="OpenSceneGraph"> <FrameTime>0 0</FrameTime> <LastFrameTime>0</LastFrameTime> <LoopMode>0</LoopMode> <IntervalBegin>0</IntervalBegin> <IntervalEnd>-1</IntervalEnd> <DurationSpeed>1</DurationSpeed> <DurationNReps>-1</DurationNReps> <SequenceMode>0</SequenceMode> </technique> </extra>
DOFTransform
Example
<extra type="DOFTransform"> <technique profile="OpenSceneGraph"> <MinHPR>0 -0.174533 0</MinHPR> <MaxHPR>0 0.872665 0</MaxHPR> <IncrementHPR>0 0.0174533 0</IncrementHPR> <CurrentHPR>0 0 0</CurrentHPR> <MinTranslate>0 0 0</MinTranslate> <MaxTranslate>0 0 0</MaxTranslate> <IncrementTranslate>0 0 0</IncrementTranslate> <CurrentTranslate>0 0 0</CurrentTranslate> <MinScale>0 0 0</MinScale> <MaxScale>1 1 1</MaxScale> <IncrementScale>0 0 0</IncrementScale> <CurrentScale>1 1 1</CurrentScale> <MultOrder>0</MultOrder> <LimitationFlags>269964960</LimitationFlags> <AnimationOn>0</AnimationOn> <PutMatrix> 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 </PutMatrix> </technique> </extra>