ortools.packing.multiple_dimensions_bin_packing_pb2

@generated by mypy-protobuf. Do not edit manually! isort:skip_file Copyright 2010-2025 Google LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

 1# -*- coding: utf-8 -*-
 2# Generated by the protocol buffer compiler.  DO NOT EDIT!
 3# NO CHECKED-IN PROTOBUF GENCODE
 4# source: ortools/packing/multiple_dimensions_bin_packing.proto
 5# Protobuf Python Version: 6.31.1
 6"""Generated protocol buffer code."""
 7from google.protobuf import descriptor as _descriptor
 8from google.protobuf import descriptor_pool as _descriptor_pool
 9from google.protobuf import runtime_version as _runtime_version
10from google.protobuf import symbol_database as _symbol_database
11from google.protobuf.internal import builder as _builder
12_runtime_version.ValidateProtobufRuntimeVersion(
13    _runtime_version.Domain.PUBLIC,
14    6,
15    31,
16    1,
17    '',
18    'ortools/packing/multiple_dimensions_bin_packing.proto'
19)
20# @@protoc_insertion_point(imports)
21
22_sym_db = _symbol_database.Default()
23
24
25
26
27DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5ortools/packing/multiple_dimensions_bin_packing.proto\x12\x1boperations_research.packing\"7\n!MultipleDimensionsBinPackingShape\x12\x12\n\ndimensions\x18\x01 \x03(\x03\"\x81\x01\n MultipleDimensionsBinPackingItem\x12N\n\x06shapes\x18\x01 \x03(\x0b\x32>.operations_research.packing.MultipleDimensionsBinPackingShape\x12\r\n\x05value\x18\x02 \x01(\x03\"\xc6\x01\n#MultipleDimensionsBinPackingProblem\x12Q\n\tbox_shape\x18\x01 \x01(\x0b\x32>.operations_research.packing.MultipleDimensionsBinPackingShape\x12L\n\x05items\x18\x02 \x03(\x0b\x32=.operations_research.packing.MultipleDimensionsBinPackingItemB\x02P\x01\x62\x06proto3')
28
29_globals = globals()
30_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ortools.packing.multiple_dimensions_bin_packing_pb2', _globals)
32if not _descriptor._USE_C_DESCRIPTORS:
33  _globals['DESCRIPTOR']._loaded_options = None
34  _globals['DESCRIPTOR']._serialized_options = b'P\001'
35  _globals['_MULTIPLEDIMENSIONSBINPACKINGSHAPE']._serialized_start=86
36  _globals['_MULTIPLEDIMENSIONSBINPACKINGSHAPE']._serialized_end=141
37  _globals['_MULTIPLEDIMENSIONSBINPACKINGITEM']._serialized_start=144
38  _globals['_MULTIPLEDIMENSIONSBINPACKINGITEM']._serialized_end=273
39  _globals['_MULTIPLEDIMENSIONSBINPACKINGPROBLEM']._serialized_start=276
40  _globals['_MULTIPLEDIMENSIONSBINPACKINGPROBLEM']._serialized_end=474
41# @@protoc_insertion_point(module_scope)
DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = <google._upb._message.FileDescriptor object>
class MultipleDimensionsBinPackingShape(google._upb._message.Message, google.protobuf.message.Message):

A Multiple Dimension BinPacking problem.

It supports the following file format:

The generated problems have the following characteristics:

You have identical boxes with n dimensions. The size of one box is stored in the field box_shape(). You need to fit all items into the minimum number of boxes. Each item has the same number of dimensions and one or more possible shapes (this usually means that you can rotate the item). Each item must not overlap (in n dimensions) with any other item.

The shape of one item. each edge is parallel to one axis of a dimension. One shape cannot be rotated, the item itself will contain multiple rotated shapes.

DESCRIPTOR: google.protobuf.descriptor.Descriptor = <google._upb._message.Descriptor object>
class MultipleDimensionsBinPackingItem(google._upb._message.Message, google.protobuf.message.Message):

Items with multiple shapes often means that they can be rotated.

DESCRIPTOR: google.protobuf.descriptor.Descriptor = <google._upb._message.Descriptor object>
class MultipleDimensionsBinPackingProblem(google._upb._message.Message, google.protobuf.message.Message):

The full problem: the enclosing box and the list of items.

DESCRIPTOR: google.protobuf.descriptor.Descriptor = <google._upb._message.Descriptor object>