Créer une règle de taille du bloc

Maintenant que vous pouvez modifier la taille de chaque orifice, vous devez déterminer quelle face a l'orifice le plus grand, de sorte que le bloc puisse être dimensionné de façon appropriée. Cette opération requiert une autre règle.

  1. Ajoutez une nouvelle règle nommée block_size_rule.

    Pour déterminer le plus grand orifice, examinez les paramètres de taille des trois orifices et conservez la valeur la plus élevée. Comme avec block_shape_rule, le comportement des blocs en T doit être différent de celui des blocs coudés.

    Pour les blocs en T, les trois orifices sont utilisés. Vous avez donc besoin de vérifier la taille pour chacun d'eux. Pour les blocs coudés, il est inutile de vérifier l'orifice B, qui est masqué. Utilisez la fonction MaxOfMany pour obtenir la plus grande valeur à partir d'un jeu de valeurs d'entrée.

  2. Commencez block_size_rule comme indiqué, en tapant directement dans la zone de texte ou en insérant le texte à partir des instructions génériques disponibles dans la barre d'outils. Pour insérer la fonction MaxOfMany, développez le noeud Math dans la zone Extraits de code, puis cliquez deux fois sur MaxOfMany.

    Copier le bloc de code

    If block = "tee" Then
    port = MaxOfMany(port_a_size,port_b_size,port_c_size)
    ElseIf block = "elbow" Then
    port = MaxOfMany(port_a_size,port_c_size)
    End If

    Une nouvelle variable locale nommée orifice conserve la taille de l'orifice disponible le plus grand. Vous devez à présent indiquer au modèle ce qu'il doit faire avec ces informations. Le modèle obtient ses informations d'une feuille de calcul Excel incorporée. Il est donc nécessaire de consulter la feuille de calcul pour mettre à jour les tailles du modèle.

  3. Appuyez sur la touche Entrée deux fois pour ajouter quelques espaces dans la règle.
  4. Comme pour la règle que vous avez créée précédemment, insérez une copie de la fonction FindRow (incorporée). Modifiez-le pour obtenir les valeurs d'autres paramètres à partir de la feuille de calcul incorporée en désignant la ligne appropriée d'informations.

    Copier le bloc de code

    i = GoExcel.FindRow("3rd Party:Embedding 1", "Sheet1", "port_size", "=", port)

    Pour la recherche, utilisez la colonne port_size et la valeur de la variable.

  5. Définissez les paramètres du modèle avec des informations provenant de la feuille de calcul Excel incorporée, à l'aide de la ligne trouvée pour la plus grande taille d'orifice.

    Copier le bloc de code

    block_depth = GoExcel.CurrentRowValue("block_depth")
    port_c_depth_from_front = GoExcel.CurrentRowValue("port_c_depth_from_front")
    block_width = GoExcel.CurrentRowValue("block_width")
    port_a_hor_offset = GoExcel.CurrentRowValue("hor_offset")
    port_b_hor_offset = GoExcel.CurrentRowValue("hor_offset")
    port_c_hor_offset = GoExcel.CurrentRowValue ("hor_offset")

    Vous avez maintenant déterminé quel est l'orifice le plus grand. La partie supérieure du bloc est dimensionnée en conséquence. A présent, nous allons déterminer la hauteur du bloc en observant le T et le coude pour déterminer quel orifice est le plus grand sur la face des orifices A / B.

  6. Créez une autre instruction utilisant une autre variable locale porta pour maintenir cette valeur. Etant donné que l'orifice B n'est pas utilisé pour les blocs coudés, l'instruction inclut différentes étapes en fonction de ce paramètre.

    Copier le bloc de code

    If block = "tee" Then
    porta = MaxOfMany(port_a_size, port_b_size)
    ElseIf block = "elbow"
    porta = port_a_size
    End If

    La fonction MaxOfMany n'est pas utilisée pour les blocs coudés, étant donné qu'une seule valeur doit être prise en compte. Vous pouvez définir la variable à partir de cette valeur.

  7. Créez une autre instruction FindRow (incorporée) pour obtenir la hauteur du bloc à partir de la feuille de calcul Excel.

    Copier le bloc de code

    i = GoExcel.FindRow("3rd Party:Embedding 1", "Sheet1", "port_size", "=", porta)
  8. Utilisez la fonction CurrentRowValue pour définir la hauteur du bloc.

    Copier le bloc de code

    port_a_vert_offset = GoExcel.CurrentRowValue("vert_offset")
    port_b_vert_offset = GoExcel.CurrentRowValue("vert_offset")
  9. Enfin, définissez la valeur de deux paramètres supplémentaires. Le premier paramètre définit la hauteur du bloc. Le second paramètre définit le décalage vertical de l'orifice C.

    Pour cette valeur, vous ajoutez une logique spéciale pour insérer un espace supplémentaire au-delà du décalage vertical utilisé dans les autres orifices. Ces informations sont obtenues à partir d'une autre cellule de la feuille de calcul. Cette opération sert uniquement pour les blocs coudés.

    Copier le bloc de code

    If block = "elbow" Then
    port_c_vert_offset = GoExcel.CurrentRowValue("vert_offset") + (GoExcel.CurrentRowValue("port_dia")/4)
    Else
    port_c_vert_offset = GoExcel.CurrentRowValue("vert_offset")
    End If
    block_height = GoExcel.CurrentRowValue("block_height")

    La règle block_size est terminée.

  10. Cliquez sur OK dans la boîte de dialogue Modifier la règle.
  11. Modifiez la taille des orifices dans la boîte de dialogue Paramètres, puis observez la mise à jour du modèle.

Précédent | Suivant