자유 시뮬레이션 로봇 팔 (6)의 다중도

시뮬레이션 전체 리프팅 프로세스 초기 상태 ->에서 암 -> 아래 슬링 -> 수직 리프팅 -> 수평 회전 -> 객체를 저하 -> 수축 밧줄.

OSG :: ref_ptr <OSG :: 노드> createSimple () 
{ 
    OSG :: ref_ptr <OSG :: 오드> = 오드 새로운 OSG :: 오드; 
    OSG :: ref_ptr <OSG :: 기하학> 지리적 = 새로운 OSG :: 기하학; 

    // 申请一些顶点 
    OSG :: ref_ptr <OSG :: Vec3Array> 적이있는 = 새로운 OSG :: Vec3Array; 
    지오 -> setVertexArray (적이있는. ());
# 만약 1 개 
    지역 -> addPrimitiveSet ( 새로운 OSG :: DrawArrays (OSG :: PrimitiveSet :: LINE_LOOP, 0 , 4 )); // 创建一个线圈
#else 
    지오 -> addPrimitiveSet ( :: DrawArrays OSG (OSG는 :: :: 프리미티브를 쿼드 -, 0 , 4. )); // 생성 사각형 
#endif 다음 


                                                                              // 제공하는 버텍스 
    적이있는>와 push_back (OSG : VEC3 (- 15 , 3.0 , - 15 )); 
    Vers에 ->와 push_back (OSG :: VEC3 ( 15 , 3.0 - 15 )); 
    Vers에 ->와 push_back (OSG :: VEC3 ( 15 , 3.0 , 15 )); 
    Vers에 ->와 push_back (OSG :: VEC3 (- 15 , 3.0 , 15 )); 

    // 응용 프로그램의 색상
    OSG :: ref_ptr <OSG :: Vec4Array> 컬러 = 새로운 OSG :: Vec4Array ();  ->와 push_back (OSG :: Vec4 ( 1.0 , 0.0 , 0.0 , 0.5 ));  ->와 push_back (OSG :: Vec4 ( 0.0 , 1.0 , 0.0 , 0.5 ));  ->와 push_back (OSG :: Vec4 ( 0.0 , 0.0 , 1.0 , 0.5 ));  ->와 push_back (OSG :: Vec4 ( 1.0 , 1.0 , 0.0 , 0.5 )); 

    //색상을 설정 
    지리적> setColorArray (컬러는. GET ()); 
    GEO -> setColorBinding (OSG 기하학 : : : : : : BIND_PER_VERTEX을 AttributeBinding); // 컬러 바인드 설정 

                                                                           // 가장 밝은 화면 당분간, 일반 설정을 
    :: ref_ptr OSG <OSG :: Vec3Array 경우> = NORM 새로운 새 OSG Vec3Array이다 :; 
    GEO -> setNormalArray (NORM) 
    GEO -> setNormalBinding (OSG AttributeBinding :: :: :: BIND_OVERALL 기하학) 
    NORM ->와 push_back (OSG : : VEC3 ( 0.0 , - 1.0 , 0.0 )); 

    // 오픈 투명성 
    지역> getOrCreateStateSet () -> setMode (GL_BLEND, OSG :: ::가 stateAttribute 온); 

    //设置线宽 
    OSG :: ref_ptr <OSG :: 선폭> = w 새로운 OSG :: 선폭; 
    w -> setWidth ( 5.0 ); 
    지오 -> getOrCreateStateSet () -> setAttributeAndModes (와트 (), OSG ::가 stateAttribute :: ON) 

    오드 -> addDrawable (지리적. ) () 

    돌아 오드을; 
} 

//代码参考: HTTPS : //blog.csdn.net/wb175208/article/details/80513775

 

추천

출처www.cnblogs.com/herd/p/11420574.html