[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
DTD-Version vom 26.7.00
Hallooo!!
Hier ist unsere neueste DTD-Version, die natuerlich noch erweitert,
ueberarbeitet und durchdiskutiert werden muss.
Schoene Gruesse.
<-- erste noch unvollstaendige DTD-Version -->
<!ENTITY % Boolean "(true|false|0|1)"> <!-- Boolean -->
<!ENTITY % UByte "CDATA"> <!-- unsigned number between 0 and 255 -->
<!ENTITY % Float "CDATA"> <!-- Float -->
<!ENTITY % 01Float "CDATA"> <!-- Float between 0 and 1 -->
<!ENTITY % UFloat "CDATA"> <!-- unsigned Float -->
<!ENTITY % 0PiFloat "CDATA"> <!-- Float between 0 and 3.14159 -->
<!ENTITY % UInt "CDATA"> <!-- unsigned integer -->
<!ELEMENT Coordinate (point*)> <!-- Vector of 3D-Coordinates of floats -->
<!ELEMENT point EMPTY> <!-- one coordinate of floats -->
<!ATTLIST point
x %Float; #REQUIRED
y %Float; #REQUIRED
z %Float; #REQUIRED>
<!ELEMENT CoordIndex (polyline*)> <!-- Vector of polylines -->
<!ELEMENT polyline (#PCDATA)> <!-- polyline defined by pointindices -->
<!-- for example: 0 2 1 6 -->
<!ELEMENT Color (color*)> <!-- vector of RGB-Colors -->
<!ELEMENT color EMPTY> <!-- one RGB-Color -->
<!ATTLIST color
r %UByte; #REQUIRED
g %UByte; #REQUIRED
b %UByte; #REQUIRED> <!-- RGB-Color-Values between 0 and 255 -->
<!ELEMENT Material (diffuseColor?, specularColor?>
<!ATTLIST Material
ambientIntensity %01Float; "0.2">
<!ELEMENT diffuseColor EMPTY>
<!ATTLIST diffuseColor
r %UByte; "204"
g %UByte; "204"
b %UByte; "204">
<!ELEMENT specularColor EMPTY>
<!ATTLIST specularColor
r %UByte; "0"
g %UByte; "0"
b %UByte; "0">
<!ELEMENT Normal (normal*)> <!-- Vector of 3D-normals of floats -->
<!ELEMENT normal EMPTY> <!-- one normal of floats -->
<!ATTLIST normal
x %Float; #REQUIRED
y %Float; #REQUIRED
z %Float; #REQUIRED>
<!ELEMENT PointSet (Coordinate, Color?)> <!-- a set of 3D points with color and size -->
<!ATTLIST PointSet
pointsize %Int; "1">
<!ELEMENT IndexedLineSet (Color?, Coordinate, CoordIndex)> <!-- 3D geometry formed by polylines -->
<!ATTLIST IndexedLineSet
linesize %Int; "1">
<!ELEMENT IndexedFaceSet (Color?, Coordinate, CoordIndex, Normal?)> <!-- 3D shape formed by polylines -->
<!-- coordinates orientated against counterclockwise -->
<!ELEMENT Children (Shape|Transform|Viewpoint|DirectionalLight|Spotlight|PointLight)*>
<!ELEMENT Shape (Material,Geometry) >
<!ELEMENT Group (Shape|Transform|Viewpoint|DirectionalLight|Spotlight|PointLight)*)>
<!ELEMENT Geometry (Sphere|PointSet|IndexedLineSet|IndexedFaxeSet)>
<!ELEMENT Viewpoint (Position, Orientation, Description?-->
<!ATTLIST Viewpoint
fieldOfView %0PiFloat; "0.785398"> <!-- angle between [0;3.14159] -->
<!ELEMENT Description (#PCDATA)> <!-- gives a name to the viewpoint/camera -->
<!ELEMENT Position EMPTY> <!--in default-position and orientation the viewer is on the -->
<!-- Z-axis looking down the -Z-axis -->
<!ATTLIST Position
x %Float; "0"
y %Float; "0"
z %Float; "10">
<!ELEMENT Orientation EMPTY> <!--orientation specifies a rotation of the camera -->
<!ATTLIST Orientation
x %Float; "0"
y %Float; "0"
z %Float; "1"
rad %Float; "0">
<!ELEMENT Rotation EMPTY> <!-- (0,0,0) and (x,y,z) define the axis, rad is a radian of the rotation -->
<!ATTLIST Rotation
x %Float #REQUIRED
y %Float #REQUIRED
z %Float #REQUIRED
rad %Float #REQUIRED>
<!ELEMENT Scale EMPTY>
<!ATTLIST Scale
x %UFloat; #REQUIRED
y %UFloat; #REQUIRED
z %UFloat; #REQUIRED>
<!ELEMENT Translation EMPTY>
<!ATTLIST Translation
x %Float; #REQUIRED
y %Float; #REQUIRED
z %Float; #REQUIRED>
<!ELEMENT Transform (Children+, Rotation?, Scale?,Translation?)>
<!ELEMENT DirectionalLight (lightColor?, Direction)>
<!ATTLIST DirectionalLight
ambientIntensity %01Float; "0.0"
intensity %01Float; "1">
<!ELEMENT PointLight (Attenuation?, lightColor?, point)>
<!ATTLIST PointLight
ambientIntensity %01Float; "0.0"
intensity %01Float; "1"
radius %UFloat; "100">
<!-- radius: maximum distance from location that may be illuminated by the light source -->
<!ELEMENT SpotLight (Attenuation?, lightColor?, Direction, point)>
<!ATTLIST SpotLight
ambientIntensity %01Float; "0.0"
beamWidth %0PiFloat; "1.570796"
cutOffAngle %0PiFloat; "0.785398"
intensity %01Float; "1"
radius %UFloat; "100">
<!-- radius: maximum distance from location that may be illuminated by the light source -->
<!-- beamWidth specifies the inner solid angle -->
<!-- cutOffAngle specifies the outer bound of the solid angle -->
<!ELEMENT Attenuation EMPTY>
<!ATTLIST Attenuation
a %UFloat; "1"
b %UFloat; "0"
c %UFloat; "0">
<!ELEMENT lightColor EMPTY>
<!ATTLIST lightColor
r %UByte; "255"
g %UByte; "255"
b %UByte; "255">
<!ELEMENT Direction EMPTY>
<!ATTLIST Direction
x %UFloat; #REQUIRED
y %UFloat; #REQUIRED
z %UFloat; #REQUIRED>