如何定义可放置对象或框的空间

时间:2014-02-25 04:41:48

标签: c#

我正在做一个基于容器装载问题的项目。我需要将容器定义为加载框的空间。加载的框需要获取放置它的坐标。在这里,我需要有关如何定义空间的帮助。

namespace Get3Dcordinates
{
    class Spacecordinates
    {
        public struct Point3D
        {
            public int x {get;set;}
            public int y {get;set;}
            public int z {get;set;}
            public int value {get;set;}
            //any other properties....
        }
        List<Point3D>ListofPoints=new List<Point3D>();
    }
}

1 个答案:

答案 0 :(得分:1)

根据我的说法,你应该这样建模,

public struct Point3D
{
    public   int x {get;set;}
    public   int y {get;set;}
    public   int z {get;set;}
    public   int value {get;set;}
    //any other properties....
}

public class Box
{
    public int width {get; set;}
    public int length {get; set;}
    public int height {get; set;}
}

public class ContainerItem
{
    public Box box {get; set;}
    public Point3D boxPlacement {get; set;}
    public Container container {get; set;}
}

public class Container
{
    public int width {get; set;}
    public int length {get; set;}
    public int height {get; set;}

    public List<ContainerItem> boxes {get; set;}
}

现在,根据特定框的放置点及其高度 - 宽度 - 长度属性,您可以定义一些方法来获取哪些合并是空的,哪些是占用来决定加载新框或重新组织框的位置。

希望,它会帮助你。