public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < vertices_.size(); i++) {
        output.writeMessage(1, vertices_.get(i));
      }
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeDouble(2, area_);
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeDouble(3, perimeter_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeMessage(4, center_);
      }
      for (int i = 0; i < holes_.size(); i++) {
        output.writeMessage(5, holes_.get(i));
      }
      getUnknownFields().writeTo(output);
    }