Vous pouvez placer des règles iLogic dans des fichiers externes plutôt que de les enregistrer dans le modèle Inventor, ainsi qu'importer ou exporter des règles externes.
Cette méthode de stockage permet d'utiliser la même règle dans différents emplacements.
Les règles iLogic peuvent utiliser le code dans d'autres ensembles NET. Vous pouvez spécifier le répertoire dans lequel ces ensembles NET sont stockés. Pour développer un ensemble NET, faites appel à des outils de programmation tels que Visual Studio. Pour plus d'informations sur l'utilisation des ensembles NET dans les règles, reportez-vous à la rubrique Règles de programmation avancées.
Importez ou exportez des paramètres de configuration iLogic sous forme de fichier XML à partager entre plusieurs utilisateurs et ordinateurs. Une fois configurés, les dossiers mappés en externe s'affichent sous une arborescence de répertoires standard qui est mise à jour ou actualisée dès que le contenu est modifié (sous-dossiers et règles incluses).
Les paramètres de configuration de règles externes sont utilisés et mappés lors de la création des répartitions.
Les formulaires globaux sont actualisés via une option contextuelle disponible avec le bouton droit de la souris de manière à refléter le formulaire le plus récent.
iLogic fournit une interface Automation. Vous pouvez utiliser cette interface à partir du code VBA, VB6 ou NET d'Inventor afin d'accéder aux paramètres et aux règles.
La classe iLogicAutomation permet d'activer cette fonctionnalité.
Dans un projet VBA et VB, vous allez l'utiliser comme classe à liaison tardive (déclarée comme un objet) sans ajouter de référence. Comme il ne s'agit pas d'un objet COM complet, vous ne pouvez pas parcourir ses méthodes.
Un exemple de macro VBA pour accéder à iLogic se trouve à l'emplacement suivant :
Users\Public\Documents\Autodesk\Inventor [version]\Samples\ iLogic Samples\API\iLogicAutoTest.ivb
Dans l'exemple de code suivant, la fonction GetiLogicAddin décrit comment accéder à l'objet iLogic Automation dans VBA ou VB.
Cet exemple de code, écrit en langage VBA d'Inventor, pilote la valeur d'un paramètre de texte. Il requiert qu'un paramètre nommé text0 existe dans le modèle Inventor. Il répertorie également tous les règles du modèle.
Il utilise iLogicAuto.ParamValue pour obtenir ou définir la valeur d'un paramètre. En interne, il utilise la propriété Paramètre iLogic.
iLogic utilise un type de données personnalisées appeléDoubleForEquals pour stocker les valeurs de paramètres. DoubleForEquals prend en charge la comparaison simple des nombres. Ce paramètre est similaire au type VB.NET standard Double, à l'exception près que les valeurs DoubleForEquals sont comparées comme si elles étaient des valeurs Single (7 décimales au lieu de 15). Par défaut, les paramètres de règles sont déclarés comme DoubleForEquals.
DoubleForEquals permet d'ignorer plus facilement l'erreur d'arrondi dans les comparaisons. Par exemple, supposons que votre pièce utilise les pouces comme unités de document, et que vous avez un paramètre avec une valeur de 13/16 pouces. La pièce n'est pas exactement égale à 13/16 dans une règle, car la valeur du paramètre est stockée en centimètres dans le modèle. La valeur est alors convertie en pouces pour pouvoir être utilisée dans la règle. Comparons les éléments suivants :
if d0 = 13/16 then ...
Dans cet exemple, la comparaison échoue si d0 est de type Double. Cependant, si d0 est de type DoubleForEquals, la comparaison réussit.
DoubleForEquals stocke la valeur en tant que type Double et effectue tous les calculs comme s'il s'agissait de valeurs Double. Seule la comparaison s'effectue avec des valeurs uniques.
Vous pouvez convertir une valeur de paramètre en valeur Double à l'aide de la fonction CDbl, si nécessaire.
DoubleForEquals est une structure (un type de valeur) en langage VB.NET.
DoubleForEquals traite les comparaisons à zéro comme des cas spéciaux. Lorsque l'un des nombres testés par égalité est égal à zéro, le test réussit si l'autre nombre est inférieur à 0.0000001 (en valeur absolue).
Cette comparaison permet d'ignorer plus facilement les erreurs d'arrondi pour les valeurs proches de 0. Par exemple, la comparaison suivante détermine que x = 0 :
angle = PI/2 x = cos(angle) If (x = 0) Then ... End If
DoubleForEquals est le type par défaut de tous les paramètres Inventor utilisé dans les règles. Vous pouvez désactiver ce paramètre pour les raisons suivantes :
Accédez aux didacticiels VB et à d'autres informations en ligne à l'aide de votre navigateur Web.
Vous pouvez installer les options de configuration iLogic dans le cadre d'une répartition d'Inventor :
Les options sont exportées vers l'emplacement suivant : C:\Users\[nom d'utilisateur]\AppData\Local\Autodesk\Inventor 2017\iLogicPreferences\iLogicOptions.xml.