【问题标题】:To define a color for every pallet type为每种托盘类型定义颜色
【发布时间】:2020-06-12 17:04:00
【问题描述】:

我有一个数据库,其中包含具有 ID 的不同托盘类型。现在我想为每个 ID 分配一种颜色。因此,例如在上午 10 点,应将 54 个 ID 为 6(蓝色)的托盘插入到我的源代码块中。所以唯一的问题是将颜色分配给ID。 我有一个 3D 和一个 2D 模拟。我有不同的色块和 ID,但现在不知道该怎么做。

pallets_2dsimulation

pallettype_2D

dbase

dbase_pallet_id

source_block

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    如果你的 id 少于 140,你可以使用这个:

    getStandardColor(id)
    

    其中 id 可以是 0 到 139 之间的任何整数 否则使用本杰明的技术

    如果您的对象是 3D,那么您可以使用

    object.setColor("Material__1__Surf", getStandardColor(id));
    

    您可以检查 3D 对象属性,其中“Material__1__Surf”是 3D 对象该部分颜色的可能标识符... 3D 对象通常不止一种颜色。

    如果它是一个 2D 对象,它们通常由许多不同的形状组成...因此您需要使用 getStandardColor(id) 作为与该颜色相关的形状中的颜色。

    【讨论】:

    • 首先谢谢。我附上了 3 张截图,我是如何做到的。 id怎么知道是什么颜色的?目前我在处理过程中拥有所有颜色,因此 54 个不同颜色的托盘
    • 查看帮助文档中的 getStandardColor 以发现它的魔力
    • 是的“返回具有给定索引的标准颜色”,对不起,但不知道我应该做什么。我现在不擅长任何逻辑,因此我经常需要软件社区的帮助。问题是我在给定的书中也没有找到关于这些东西的东西。
    • 最好的办法是请一位导师……否则当你做的项目太难时,你会经常遇到障碍,直到你自己学会如何做事……书上没有老实说,作为自定义模型的参考非常有用。
    • 你是对的。你能帮我解决这个我必须解决的问题吗?如果我有不同的类型,我的模拟将完美运行,所以这是我的最后一个大问题。
    【解决方案2】:

    只需创建一个函数“getMyColor”,它接受参数“id”(int 类型)并返回“Color”类型的内容。

    在代码内部,这将映射 i:

    If(id>=0 && id <5) {
        return green;
    }
    else if... 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多