示例#1
0
 @Override
 public void draw(Renderer r) {
   if (hasSelection()) {
     if (r.isProcessingQueue()) {
       {
         setDefaultColor(faceColor);
         WireframeState ws = new WireframeState();
         ws.setEnabled(false);
         setRenderState(ws);
         CullState cs = new CullState();
         cs.setCullFace(com.ardor3d.renderer.state.CullState.Face.None);
         setRenderState(cs);
         BlendState bs = new BlendState();
         bs.setBlendEnabled(true);
         bs.setSourceFunctionAlpha(SourceFunction.SourceAlpha);
         bs.setDestinationFunction(DestinationFunction.One);
         bs.setTestEnabled(false);
         setRenderState(bs);
         updateGeometricState(0);
         super.draw(r);
       }
       {
         setDefaultColor(wireColor);
         WireframeState ws = new WireframeState();
         ws.setEnabled(true);
         ws.setFace(Face.Front);
         setRenderState(ws);
         CullState cs = new CullState();
         cs.setCullFace(com.ardor3d.renderer.state.CullState.Face.Back);
         setRenderState(cs);
         BlendState bs = new BlendState();
         bs.setBlendEnabled(false);
         setRenderState(bs);
         updateGeometricState(0);
         super.draw(r);
       }
       if (bbvn != null) bbvn.draw(r);
     } else {
       super.draw(r);
     }
   }
 }