这些例子展示了如何创建基于MATLAB的实体自定义可视化。这个示例演示了餐馆布局的可视化,其中有顾客实体进入、就餐和离开。
该模型包含以下主要组件:
资源池块对餐馆中的桌子进行建模。因为餐厅有10张桌子,所以资源量是10。
实体生成器块(Patron Enter)生成代表客户的实体。他们进入一个等待区域,以资源获取为代表。他们在这里等着空桌。
当有一张桌子可供顾客使用时,他可以移动到实体服务器块,该块为用餐的持续时间建模。
当顾客吃完后,他把桌子放回泳池并离开餐厅。
modelname =“seCustomVisualization”;open_system (modelname);
seRestaurantAnimator将餐厅可视化如下:
seRestaurantAnimator为模型提供了餐馆布局的可视化。
它生成了一个包含入口、等候区、10张餐桌和出口的餐厅布局图。
当实体在模拟过程中移动时,它为图中的每个实体创建一个标记(符号),并为标记编写运动程序,以便它看起来从一个点移动到另一个点。
动画师为每个等待的客户分配一个表ID,并显示客户移动到表中。
若要检查客户实体的属性,请暂停模型并单击客户实体符号。该图显示了TimeToDine属性。
为了使运动看起来是连续的,它使用MATLAB定时器周期性地执行一个函数,将每个实体增量地移动到其目的地。
它使用MATLAB图形显示关于进入、等待和离开实体数量的统计数字。
单击可视化中的实体将显示其包含的属性。它使用MATLAB图形回调程序在每个实体标记上编写ButtonDownFcn。
动画师= seRestaurantAnimator;
要模拟该模型,输入:
sim (modelname);
关闭(animator.getFigureHandle);bdclose所有;清晰的modelname动画师