J’utilise l’API SolidWorks Simulation en C# et je rencontre des difficultés pour appliquer une force sur une face circulaire de mon cylindre, obtenant une erreur 6 avec AddForce3. Par la suite, j’aimerais également exporter les valeurs de déplacement en un point précis après la simulation, mais les méthodes GetDisplacementComponentForAllStepsAtNode et GetDisplacementAtPoints ne me donnent pas les résultats attendus ou génèrent des erreurs.
L’application correcte d’une force via l’API SolidWorks Simulation et l’extraction des déplacements pour une étude statique nécessitent une compréhension précise des paramètres des méthodes AddForce3 et GetDisplacementAtPoints, comme détaillé par m_blt.
1. Appliquer une force normale avec AddForce3 :
Les erreurs (code 6 ou 3) sont souvent dues à une mauvaise configuration des paramètres, notamment le type de force, la géométrie de référence et le tableau des entités.
- Type de force et UCode : Pour appliquer une force normale à une ou plusieurs faces, définissez le type de force sur
swsForceTypeNormalet le paramètreuCodeà0. - Géométrie de référence : Laissez le paramètre
ReferenceGeometryvide (Emptyen VBA,nullen C#) lorsque la force est normale aux faces sélectionnées. - Valeur de l’effort : La magnitude de la force doit être passée dans le paramètre
TorqueNFVal. - Entités support : Le paramètre
DispArray(oubeamArray) doit être un tableau d’objetsFaceouEdgede SolidWorks, représentant les entités sur lesquelles la force est appliquée, et non le corps volumique lui-même.
2. Extraire les déplacements pour une étude statique avec GetDisplacementAtPoints :
La méthode GetDisplacementComponentForAllStepsAtNode est conçue pour les études non linéaires avec plusieurs pas de calcul. Pour une étude statique, qui ne comporte qu’un seul pas final, cette méthode renverra une erreur (code 4).
- Utiliser
GetDisplacementAtPoints: Pour obtenir les déplacements dans une étude statique, utilisez la méthodeGetDisplacementAtPoints. - Paramètres d’entrée : Cette méthode attend un tableau de coordonnées de points (par exemple,
[x1, y1, z1, x2, y2, z2, ...]) pour lesquels vous souhaitez récupérer les déplacements. - Gestion des erreurs (code 7) : Une erreur 7 peut indiquer un problème de conversion des données brutes des coordonnées de nœuds en un format attendu par la méthode. Assurez-vous que les types de données et le format du tableau de coordonnées sont corrects (par exemple, un tableau de
doubleen C#). - Résultat : La méthode renvoie un tableau contenant les numéros de nœuds et leurs valeurs de déplacement correspondantes, que vous pouvez ensuite exporter vers un fichier CSV.
Conseil de prévention : Toujours valider les types de paramètres et la structure des tableaux attendus par les fonctions de l’API en consultant la documentation officielle de SolidWorks API pour éviter les erreurs courantes liées aux arguments invalides ou aux tableaux mal formés.