- Timestamp:
- 02/12/04 02:15:37 (9 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/examples/osgspheresegment/osgspheresegment.cpp
r2215 r2740 31 31 // { 32 32 // if(osgSim::SphereSegment* ss=dynamic_cast<osgSim::SphereSegment*>(n)) 33 // {34 // osg::Vec3 vec;35 // float azRange, elevRange;36 // ss->getArea(vec,azRange,elevRange);33 // { 34 // osg::Vec3 vec; 35 // float azRange, elevRange; 36 // ss->getArea(vec,azRange,elevRange); 37 37 // 38 // float azRangeDeg = osg::RadiansToDegrees(azRange);38 // float azRangeDeg = osg::RadiansToDegrees(azRange); 39 39 // 40 // static bool azAscending = false;40 // static bool azAscending = false; 41 41 // 42 42 // if(azAscending){ 43 // azRangeDeg += 1.0f;44 // if(azRangeDeg>89.0f) azAscending = false;45 // }else{46 // azRangeDeg -= 1.0f;47 // if(azRangeDeg<2.0f) azAscending = true;48 // }43 // azRangeDeg += 1.0f; 44 // if(azRangeDeg>89.0f) azAscending = false; 45 // }else{ 46 // azRangeDeg -= 1.0f; 47 // if(azRangeDeg<2.0f) azAscending = true; 48 // } 49 49 // 50 // ss->setArea(vec,osg::DegreesToRadians(azRangeDeg),elevRange);50 // ss->setArea(vec,osg::DegreesToRadians(azRangeDeg),elevRange); 51 51 // 52 // }52 // } 53 53 // traverse(n,nv); 54 54 // } … … 57 57 { 58 58 if(osgSim::SphereSegment* ss=dynamic_cast<osgSim::SphereSegment*>(n)) 59 {60 osg::Vec3 vec;61 float azRange, elevRange;62 ss->getArea(vec,azRange,elevRange);59 { 60 osg::Vec3 vec; 61 float azRange, elevRange; 62 ss->getArea(vec,azRange,elevRange); 63 63 64 64 static float angle = 0.0f; 65 if(++angle > 359.0f) angle = 0.0f;66 vec.set(sin(osg::DegreesToRadians(angle)),cos(osg::DegreesToRadians(angle)),0.0f);65 if(++angle > 359.0f) angle = 0.0f; 66 vec.set(sin(osg::DegreesToRadians(angle)),cos(osg::DegreesToRadians(angle)),0.0f); 67 67 68 68 std::cout<<"angle "<<angle<<" degrees, vec is "<<vec 69 <<", azRange is "<<osg::RadiansToDegrees(azRange)70 <<", elevRange is "<<osg::RadiansToDegrees(elevRange)71 <<std::endl;69 <<", azRange is "<<osg::RadiansToDegrees(azRange) 70 <<", elevRange is "<<osg::RadiansToDegrees(elevRange) 71 <<std::endl; 72 72 73 ss->setArea(vec,azRange,elevRange);74 }73 ss->setArea(vec,azRange,elevRange); 74 } 75 75 traverse(n,nv); 76 76 } … … 78 78 osg::Node* createSphereSegment() 79 79 { 80 SphereSegment* ss = new SphereSegment(osg::Vec3(0.0f,0.0f,0.0f), 1.0f,81 osg::Vec3(0.0f,1.0f,0.0f),82 osg::DegreesToRadians(90.0f),83 osg::DegreesToRadians(45.0f),84 60);85 ss->setAllColors(osg::Vec4(1.0f,1.0f,1.0f,1.0f));86 ss->setSideColor(osg::Vec4(0.0f,0.0f,1.0f,0.1f));87 //ss->setDrawMask(SphereSegment::DrawMask(SphereSegment::SPOKES | SphereSegment::EDGELINE));80 SphereSegment* ss = new SphereSegment(osg::Vec3(0.0f,0.0f,0.0f), 1.0f, 81 osg::Vec3(0.0f,1.0f,0.0f), 82 osg::DegreesToRadians(90.0f), 83 osg::DegreesToRadians(45.0f), 84 60); 85 ss->setAllColors(osg::Vec4(1.0f,1.0f,1.0f,0.5f)); 86 ss->setSideColor(osg::Vec4(0.0f,0.0f,1.0f,0.5f)); 87 //ss->setDrawMask(SphereSegment::DrawMask(SphereSegment::SPOKES | SphereSegment::EDGELINE)); 88 88 89 89 //ss->setUpdateCallback(new MyNodeCallback);
