Pré. | Proc. |
Créer Objets dans une Simulation
Dans un modèle Simulation , vous pouvez créer des classes et soit créer des instances de celles-ci (objets globaux) pour représenter les objets qui existent dans le processus, soit définir des actions pour générer un ou plusieurs objets à tout moment pendant le processus.
Vous disposez de trois options pour créer des objets dans un modèle Simulation :
- Créer manuellement l' Object
- Créer dynamiquement un Object via un élément Action CreateObject
- Utilisez la fonction JavaScript sim.CreateObject (« nom ») comme « Effet » d'un élément Action , pour créer à nouveau un Object de manière dynamique
Créer un Object manuellement
Créez simplement un élément Object sur un diagramme dans le modèle, soit en :
- Faire glisser un élément Object depuis les pages « Object » de la boîte à outils Diagramme et définir son classificateur, ou
- Faire glisser un élément de classificateur depuis la fenêtre Navigateur et le coller dans le diagramme en tant qu'instance
Créer un Object via une Action CreateObject
Si votre processus génère des objets lors de l'exécution, vous pouvez simuler cela à l'aide d'une Action CreateObject.
Étape |
Action |
Voir aussi |
---|---|---|
1 |
Sur votre diagramme d'activité, faites glisser une icône « Action » depuis la boîte à outils Diagramme et sélectionnez l'option de menu contextuel « Autre | CreateObject » pour la définir comme un élément Action CreateObject. |
Action |
2 |
Définissez le classificateur de l' Action CreateObject sur la classe dont l' Object sera une instance. Cette option est définie dans la fenêtre Propriétés > CreateObjectAction > Classificateur, à l'aide du bouton [...]. |
Action Pin |
3 |
Créez une Action Pin sur l' Action CreateObject, de type sortie. |
Action Pin |
4 |
Créez ou sélectionnez l’ Action suivante dans la séquence de traitement et ajoutez une broche Action de type entrée. Connectez les deux actions avec un connecteur de flux de contrôle et les deux Pins Action avec un connecteur de flux Object .
|
Contrôle du flux Flux Object |
5 |
Effectuez une Simulation sur le diagramme . Lorsque l' Action CreateObject est exécutée, elle crée un Object ayant les propriétés du classificateur et le stocke dans sa broche de sortie. L' Object lui-même est transmis via la connexion Object Flow à la broche d'entrée de Action 2, où ses propriétés peuvent être répertoriées dans la fenêtre Locals pour la Simulation . |
Créer Object à l'aide de JavaScript
Vous pouvez également créer des objets Simulation de manière dynamique à l'aide d'une commande JavaScript dans le champ « Effet » de l'élément Action . La commande est :
sim.newObject = sim.CreateObject("NomDeClasse");
ou
sim.newObject = new SimObject("ClassName"); ( JavaScript naturel)
C'est-à-dire : « Simuler la création d'un Object basé sur la classe <nom> ». La classe classificatrice existerait dans le même Paquetage que l' Action .
En ce qui concerne l'élément Action CreateObject, l' Object est créé pendant la Simulation et peut être transmis et traité par des éléments « en aval ». Dans cet exemple, l' Object créé est identifié comme sim.object1 et dans Action 2, il est accessible et l'un de ses attributs reçoit une valeur différente (également par JavaScript en tant qu'effet de l' Action ).
Instancier des objets internes
Comme décrit précédemment, vous pouvez créer un Object à l'aide JavaScript ou d'une Action CreateObject. De même, vous pouvez instancier des objets internes à l'aide JavaScript ou d'une Action CallBehavior.
Dans cet exemple, à l'aide JavaScript , la Simulation crée d'abord un object de test basé sur la classe 1. La classe 1 comporte un élément Activity et diagramme , avec un paramètre Activity 1 défini sur l' integer 5 et un paramètre Activity 2 défini sur la string 'test'. La valeur du paramètre Activity 1 est capturée sous la forme d'une valeur tampon 'buf'.