<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Immersive'  version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation =' https://www.web3d.org/specifications/x3d-3.0.xsd ' >
<head>
<meta name='titlecontent=' AdditiveSubtractiveLight.x3d '/>
<meta name='descriptioncontent='This example tests various color combination capabilities, and also demonstrating that filtering (negative colors) are not supported in the X3D/VRML color model. Discussion follows. There are 2 ways to combine colors: Additive (e.g. a TV screen, overlapping spotlights, or pointillist art), for example [red + green = yellow] [1 0 0 + 0 1 0 = 1 1 0]. Subtractive (e.g. mixing paints or stacking filters), for example [white background + yellow filter + cyan filter = green] [1 1 1 + 0 0 -1 + -1 0 0 = 0 1 0].'/>
<meta name='creatorcontent='Miriam English'/>
<meta name='translatorcontent=' Xeena VRML importer, X3D-Edit 3.1, https://www.web3d.org/x3d/content/README.X3D-Edit.html '/>
<meta name='translatorcontent='Don Brutzman and MV4205 class'/>
<meta name='createdcontent='6 May 2003'/>
<meta name='translatedcontent='6 May 2003'/>
<meta name='modifiedcontent='20 October 2019'/>
<meta name='referencecontent=' additive-subtractiveLight2.7May2003.x3d '/>
<meta name='referencecontent=' http://www.rgbworld.com/color.html '/>
<meta name='Imagecontent='AdditiveSubtractiveLight.png' />
<meta name='subjectcontent='additive subtractive light examples'/>
<meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Basic/development/AdditiveSubtractiveLight.x3d '/>
<meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
<meta name='generatorcontent=' Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html '/>
<meta name='licensecontent=' ../license.html'/>
</head>
<!--

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2
-->
<Scene>
<WorldInfo title='AdditiveSubtractiveLight.x3d'/>
<NavigationInfo headlight='falsetype='"EXAMINE"'/>
<Viewpoint description='entryjump='falseposition='0.0 -1.0 14.0'/>
<Viewpoint description='sidejump='falseorientation='0.0 1.0 0.0 -0.7position='-5.0 -1.0 3.0'/>
<Transform translation='-6.2 0.0 -1.0'>
<Transform rotation='1.0 0.0 0.0 1.57translation='-3.0 2.8 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='1.0diffuseColor='1.0 1.0 1.0'/>
</Appearance>
<ElevationGrid xDimension='20xSpacing='0.3zDimension='20zSpacing='0.3height='0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0'/>
</Shape>
</Transform>
<Transform translation='0.0 -4.1 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 1.0 1.0emissiveColor='0.5 0.5 0.5'/>
</Appearance>
<Text string='"additive" "(correct)"'>
<FontStyle justify='"MIDDLE" "MIDDLE"'/>
</Text>
</Shape>
</Transform>
<Transform translation='0.0 0.6 0.3'>
<Transform translation='-0.6 0.0 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0emissiveColor='1.0 0.0 0.0'/>
</Appearance>
<Sphere radius='0.2'/>
</Shape>
<PointLight ambientIntensity='0.5attenuation='0.0 1.0 0.0color='1.0 0.0 0.0'/>
</Transform>
<Transform translation='0.0 -1.2 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0emissiveColor='0.0 1.0 0.0'/>
</Appearance>
<Sphere radius='0.2'/>
</Shape>
<PointLight ambientIntensity='0.5attenuation='0.0 1.0 0.0color='0.0 1.0 0.0'/>
</Transform>
<Transform translation='0.6 0.0 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0emissiveColor='0.0 0.0 1.0'/>
</Appearance>
<Sphere radius='0.2'/>
</Shape>
<PointLight ambientIntensity='0.5attenuation='0.0 1.0 0.0color='0.0 0.0 1.0'/>
</Transform>
</Transform>
</Transform>
<Transform translation='3.0 -0.1 -1.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 1.0 1.0emissiveColor='1.0 1.0 1.0'/>
</Appearance>
<Box size='13.0 6.0 0.01'/>
</Shape>
<Transform translation='0.0 -4.1 0.1'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 1.0 1.0emissiveColor='0.5 0.5 0.5'/>
</Appearance>
<Text string='"subtractive" "(incorrect)"'>
<FontStyle justify='"MIDDLE" "MIDDLE"'/>
</Text>
</Shape>
</Transform>
</Transform>
<Transform translation='-1.0 1.0 0.0'>
<Transform translation='0.0 -3.0 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0'/>
</Appearance>
<Text string='"diffuse only"'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.6'/>
</Text>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57translation='-0.5 0.2 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 1.0 1.0shininess='0.0transparency='0.5'/>
</Appearance>
<Cylinder height='0.01'/>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57translation='0.5 0.2 -0.01'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 0.0 1.0shininess='0.0transparency='0.5'/>
</Appearance>
<Cylinder height='0.01'/>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57translation='0.0 -0.68 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 1.0 0.0shininess='0.0transparency='0.5'/>
</Appearance>
<Cylinder height='0.01'/>
</Shape>
</Transform>
</Transform>
<Transform translation='2.5 1.0 0.0'>
<Transform translation='0.0 -3.0 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0'/>
</Appearance>
<Text string='"emissive only"'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.6'/>
</Text>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57translation='-0.5 0.2 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0emissiveColor='0.0 1.0 1.0shininess='0.0transparency='0.5'/>
</Appearance>
<Cylinder height='0.01'/>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57translation='0.5 0.2 -0.01'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0emissiveColor='1.0 0.0 1.0shininess='0.0transparency='0.5'/>
</Appearance>
<Cylinder height='0.01'/>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57translation='0.0 -0.68 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0emissiveColor='1.0 1.0 0.0shininess='0.0transparency='0.5'/>
</Appearance>
<Cylinder height='0.01'/>
</Shape>
</Transform>
</Transform>
<Transform translation='6.0 1.0 0.0'>
<Transform translation='0.0 -2.5 0.0'>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0'/>
</Appearance>
<Text string='"how it" "should look" "(faked)"'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.6'/>
</Text>
</Shape>
</Transform>
<Transform rotation='1.0 0.0 0.0 1.57scale='2.0 2.0 2.0'>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 1.0 1.0emissiveColor='0.0 1.0 1.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='3 4 5 -1 3 5 2 -1 2 5 1 -1 1 5 0 -1 0 5 13 -1 13 5 14 -1 14 5 15 -1 15 5 16 -1 16 5 17 -1 17 5 18 -1 18 5 19 -1 19 5 20 -1 20 5 21 -1 21 5 22 -1 12 23 22 -1 12 5 11 -1 11 5 10 -1 10 5 9 -1 9 5 8 -1 8 5 7 -1 5 6 7 -1 5 12 22 -1'>
<Coordinate point='0.0013 0.0 -0.5314 -0.1193 0.0 -0.5813 -0.2487 0.0 -0.5983 -0.3781 0.0 -0.5813 -0.4987 0.0 -0.5314 -0.6023 0.0 -0.4519 -0.6818 0.0 -0.3483 -0.7317 0.0 -0.2277 -0.7487 0.0 -0.0983 -0.7317 0.0 0.0311 -0.6818 0.0 0.1517 -0.6023 0.0 0.2552 -0.4987 0.0 0.3347 0.0029 0.0 -0.5301 -0.099 0.0 -0.4519 -0.1785 0.0 -0.3483 -0.2284 0.0 -0.2277 -0.2455 0.0 -0.0983 -0.2453 0.0 -0.0967 -0.3478 0.0 -0.018 -0.4272 0.0 0.0855 -0.4772 0.0 0.2061 -0.4942 0.0 0.3355 -0.4941 0.0 0.3366'/>
</IndexedFaceSet>
</Shape>
</Transform>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 0.0 1.0emissiveColor='1.0 0.0 1.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='16 4 17 -1 17 6 18 -1 18 12 19 -1 19 12 20 -1 12 21 20 -1 12 18 13 -1 13 7 14 -1 8 15 14 -1 8 14 7 -1 7 18 6 -1 6 17 5 -1 5 17 4 -1 4 16 3 -1 3 16 2 -1 2 16 1 -1 1 16 0 -1 0 16 11 -1 11 16 10 -1 16 9 10 -1 18 7 13 -1'>
<Coordinate point='0.7545 0.0 -0.0983 0.7375 0.0 -0.2277 0.6875 0.0 -0.3483 0.6081 0.0 -0.4519 0.5045 0.0 -0.5314 0.3839 0.0 -0.5813 0.2545 0.0 -0.5983 0.1251 0.0 -0.5813 0.0045 0.0 -0.5314 0.6081 0.0 0.2552 0.6875 0.0 0.1517 0.7375 0.0 0.0311 0.2342 0.0 -0.2277 0.1843 0.0 -0.3483 0.1048 0.0 -0.4519 0.0029 0.0 -0.5301 0.5056 0.0 0.3339 0.4887 0.0 0.2061 0.4388 0.0 0.0855 0.3593 0.0 -0.018 0.2558 0.0 -0.0975 0.2511 0.0 -0.0994'/>
</IndexedFaceSet>
</Shape>
</Transform>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 1.0 0.0emissiveColor='1.0 1.0 0.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='12 8 13 -1 13 10 14 -1 14 19 15 -1 15 18 16 -1 18 17 16 -1 18 15 19 -1 19 14 20 -1 20 11 21 -1 21 0 22 -1 0 23 22 -1 0 21 11 -1 11 14 10 -1 10 13 9 -1 6 12 5 -1 5 12 4 -1 4 12 3 -1 3 12 2 -1 12 1 2 -1 7 8 12 -1 6 7 12 -1 8 9 13 -1 14 11 20 -1'>
<Coordinate point='0.5058 0.0 0.3355 -0.4772 0.0 0.4649 -0.4272 0.0 0.5855 -0.3478 0.0 0.6891 -0.2442 0.0 0.7685 -0.1236 0.0 0.8185 0.0058 0.0 0.8355 0.1352 0.0 0.8185 0.2558 0.0 0.7685 0.3593 0.0 0.6891 0.4388 0.0 0.5855 0.4887 0.0 0.4649 -0.4941 0.0 0.3366 -0.3781 0.0 0.3846 -0.2487 0.0 0.4017 -0.1193 0.0 0.3846 0.0013 0.0 0.3347 0.0029 0.0 0.3334 0.0045 0.0 0.3347 0.1251 0.0 0.3846 0.2545 0.0 0.4017 0.3839 0.0 0.3846 0.5045 0.0 0.3347 0.5056 0.0 0.3339'/>
</IndexedFaceSet>
</Shape>
</Transform>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='1.0 0.0 0.0emissiveColor='1.0 0.0 0.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='9 8 7 -1 9 7 15 -1 15 7 12 -1 12 7 13 -1 13 7 14 -1 14 7 11 -1 4 10 11 -1 4 7 3 -1 3 7 2 -1 2 7 1 -1 1 7 0 -1 0 7 5 -1 7 6 5 -1 7 4 11 -1'>
<Coordinate point='0.5056 0.0 0.3339 0.4887 0.0 0.2061 0.4388 0.0 0.0855 0.3593 0.0 -0.018 0.2558 0.0 -0.0975 0.5045 0.0 0.3347 0.3839 0.0 0.3846 0.2545 0.0 0.4017 0.1251 0.0 0.3846 0.0045 0.0 0.3347 0.2511 0.0 -0.0994 0.2513 0.0 -0.0983 0.1048 0.0 0.2552 0.1843 0.0 0.1517 0.2342 0.0 0.0311 0.0029 0.0 0.3334'/>
</IndexedFaceSet>
</Shape>
</Transform>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 1.0 0.0emissiveColor='0.0 1.0 0.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='8 1 9 -1 9 2 10 -1 10 2 11 -1 3 12 11 -1 3 11 2 -1 2 9 1 -1 1 8 0 -1 0 8 13 -1 13 8 7 -1 7 8 6 -1 6 8 5 -1 8 4 5 -1'>
<Coordinate point='-0.3781 0.0 0.3846 -0.2487 0.0 0.4017 -0.1193 0.0 0.3846 0.0013 0.0 0.3347 -0.3478 0.0 -0.018 -0.4272 0.0 0.0855 -0.4772 0.0 0.2061 -0.4942 0.0 0.3355 -0.2453 0.0 -0.0967 -0.2284 0.0 0.0311 -0.1785 0.0 0.1517 -0.099 0.0 0.2552 0.0029 0.0 0.3334 -0.4941 0.0 0.3366'/>
</IndexedFaceSet>
</Shape>
</Transform>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 1.0emissiveColor='0.0 0.0 1.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='1 2 11 -1 1 11 0 -1 0 11 12 -1 12 11 7 -1 7 11 8 -1 8 11 9 -1 9 11 10 -1 10 11 13 -1 13 11 6 -1 6 11 5 -1 5 11 4 -1 11 3 4 -1'>
<Coordinate point='0.2342 0.0 -0.2277 0.1843 0.0 -0.3483 0.1048 0.0 -0.4519 -0.099 0.0 -0.4519 -0.1785 0.0 -0.3483 -0.2284 0.0 -0.2277 -0.2455 0.0 -0.0983 0.1352 0.0 -0.1475 0.0058 0.0 -0.1645 -0.1236 0.0 -0.1475 -0.2442 0.0 -0.0975 0.0029 0.0 -0.5301 0.2511 0.0 -0.0994 -0.2453 0.0 -0.0967'/>
</IndexedFaceSet>
</Shape>
</Transform>
<Transform>
<Shape>
<Appearance>
<Material ambientIntensity='0.0diffuseColor='0.0 0.0 0.0shininess='0.0'/>
</Appearance>
<IndexedFaceSet coordIndex='5 6 7 -1 5 7 4 -1 4 7 13 -1 13 7 11 -1 11 7 10 -1 10 7 9 -1 9 7 8 -1 8 7 12 -1 12 7 0 -1 0 7 3 -1 3 7 2 -1 7 1 2 -1'>
<Coordinate point='0.2513 0.0 -0.0983 0.1048 0.0 0.2552 0.1843 0.0 0.1517 0.2342 0.0 0.0311 -0.2284 0.0 0.0311 -0.1785 0.0 0.1517 -0.099 0.0 0.2552 0.0029 0.0 0.3334 0.1352 0.0 -0.1475 0.0058 0.0 -0.1645 -0.1236 0.0 -0.1475 -0.2442 0.0 -0.0975 0.2511 0.0 -0.0994 -0.2453 0.0 -0.0967'/>
</IndexedFaceSet>
</Shape>
</Transform>
</Transform>
</Transform>
</Scene>
</X3D>
<!--

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2
-->
-->

<!-- Online at
https://www.web3d.org/x3d/content/examples/Basic/development/AdditiveSubtractiveLightIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/development/AdditiveSubtractiveLight.x3d -->

<!-- Color legend: X3D terminology <X3dNode field='value'/> matches XML terminology <XmlElement attribute='value'/>
(Light-blue background: event-based behavior node or statement) (Grey background inside box: inserted documentation) (Magenta background: X3D Extensibility)
-->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->