private BranchGroup setApperancePackInBranchGroup(Shape3D shape, Node handle) {
    shape.setUserData(this);

    shape.setCapability(Shape3D.ALLOW_APPEARANCE_WRITE);

    BranchGroup bg = new BranchGroup();
    bg.setCapability(BranchGroup.ALLOW_DETACH);
    bg.addChild(handle);
    bg.compile();
    return bg;
  }
 public void setApperance() {
   Appearance app = null;
   if (state == FILL.POINT) app = new PointAppearance(color);
   else if (state == FILL.GRID) app = new GridAppearance(color);
   else app = new ColorAppearance(color);
   shape.setAppearance(app);
 }