MinieExamples/src/main/java/jme3utilities/minie/test/RopeDemo.java
/**
     * Initialization of the latest DynamicAnimControl that takes place once all
     * its links are ready for dynamic mode: add pinning joints and splices.
     */
Initialization of the latest DynamicAnimControl that takes place once all
its links are ready for dynamic mode: add pinning joints and splices.
Initialization of the latest DynamicAnimControl that takes place once all its links are ready for dynamic mode : add pinning joints and splices .
private void initWhenReady() {
        assert dacs.peekLast().isReady();
        /*
         * Force a software skin update
         * before invoking DacLinks.findManagerForVertex().
         */
        Spatial spatial = dacs.peekLast().getSpatial();
        SkinningControl sControl = spatial.getControl(SkinningControl.class);
        sControl.render(renderManager, viewPort);
        RopeShape latestShape = shapes.peekLast();
        switch (latestShape) {
            case Cross:
                pinEnd(0);
                pinEnd(1);
                pinEnd(2);
                pinEnd(3);
                break;
            case Noose:
            case NooseSpliced:
                pinEnd(0);
                spliceEnds(1, 2);
                break;
            case Ring:
            case RingSpliced:
                spliceEnds(0, 1);
                break;
            case Slackline:
                pinEnd(0);
                pinEnd(1);
                break;
            default:
                throw new IllegalArgumentException(shapes.toString());
        }
    }
private void initWhenReady ( ) { assert dacs . peekLast ( ) . isReady ( ) ; /*
         * Force a software skin update
         * before invoking DacLinks.findManagerForVertex().
         */ Spatial spatial = dacs . peekLast ( ) . getSpatial ( ) ; SkinningControl sControl = spatial . getControl ( SkinningControl . class ) ; sControl . render ( renderManager , viewPort ) ; RopeShape latestShape = shapes . peekLast ( ) ; switch ( latestShape ) { case Cross : pinEnd ( 0 ) ; pinEnd ( 1 ) ; pinEnd ( 2 ) ; pinEnd ( 3 ) ; break ; case Noose : case NooseSpliced : pinEnd ( 0 ) ; spliceEnds ( 1 , 2 ) ; break ; case Ring : case RingSpliced : spliceEnds ( 0 , 1 ) ; break ; case Slackline : pinEnd ( 0 ) ; pinEnd ( 1 ) ; break ; default : throw new IllegalArgumentException ( shapes . toString ( ) ) ; } }
Initialization of the latest DynamicAnimControl that takes place once all
 its links are ready for dynamic mode: add pinning joints and splices.
Initialization of the latest DynamicAnimControl that takes place once all its links are ready for dynamic mode : add pinning joints and splices .