Bloc modifier lorsqu'il est inséré avec du vba

Bonjour,

J'insère un bloc sur un point avec du VBA (Macro), mais mon bloc est complètement modifié, c'est assez embêtant.

 

Voici comment j'insère mon bloc:

        PointCoords(0) = 0.01
        PointCoords(1) = 0.024
        PointCoords(2) = 0 ' Z
       
        Set swMathPoint = swMathUtility.CreatePoint(PointCoords)
        Set swSktBlkDef = swSktManager.MakeSketchBlockFromFile(swMathPoint, "Path to block", False, 1, 0)

 

Ce que j'obtiens:

Ce que j'aimerais:

 

(Je précise que si j'insère directement manuellement c'est bon, mais dès que je fais fonctionner la macro j'obtiens le premier résultat même en l'insérant manuellement).

 

Ps: Je suis sur SolidWorks 2013

Bonjour,

Vous avez obtenue cette macro via l'enregistreur de macro ?

Oui et non, j'ai également recherché sur des forums.

 

L'enregistreur de macro me donne ceci:

Dim myBlockDefinition As Object
Set myBlockDefinition = Part.SketchManager.MakeSketchBlockFromFile(Nothing, "Path to block", False, 1, 0)

 

Donc il me le palce n'importe ou. Mais le résultat est identique à ma première image.. donc ce que je ne veux pas.

Votre bloc doit-il être modifiable par la suite ? 

Avez-vous différents blocs suivant les valeurs de Ra ?

Salut,

Essayé de creuser avec l'aide sur cette méthode : http://help.solidworks.com/2015/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.isketchmanager~makesketchblockfromfile.html

 

Notamment au niveau des remarques.

A plus.

>> Votre bloc doit-il être modifiable par la suite ? 

Pas forcément

 

>> Avez-vous différents blocs suivant les valeurs de Ra ?

Oui mais je souhaite toujours insérer le Ra 3.2

 

>>Essayé de creuser avec l'aide sur cette méthode : http://help.solidworks.com/2015/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.isketchmanager~makesketchblockfromfile.html

J'utilise actuellement cette méthode, dans les remarques ile parlents juste de layer, je n'ai d'ailleurs pas très bien compris ce point.

 

Merci de votre aide

J'ai l'impression qu'il y a pas mal de bug avec les caractères spéciaux dans les blocs

Ma proposition : Etant donné que Ra 3.2 doit toujours rester, pourquoi ne pas créer un bloc en "image" afin de garder les caractères spéciaux qui ne sont pas modifiés ? Ensuite on peut insérer cette image dans un bloc et y insérer des champs modifiables. Ainsi le bloc reste solidaire

Oui ça peut-être une bonne idée, mais je crains une forte baisse de qualité en faisant une image. (Enfin y a t'il un moyen automatique de le faire avec solidworks ou je dois le faire via une capture d'écran ?)

Je ne sais pas du tout ... par contre il est possible de mettre une échelle plus grande sur le logiciel, de prendre une capture écran, et de réduire ensuite le facteur d'agrandissement dans SW; l'image réduite sera ainsi avec une meilleure qualité

J'ai testé en faisant une capture d'écran.

Mais même en ayant la plus grande taille possible j'obtiens une qualité médiocre. Donc cette solution-ci n'est pas envisageable.

Je viens de tenter de refaire mon bloc d'une autre manière, à première vu ça fonctionne mais je ne suis vraiment pas sur

1 « J'aime »

La qualité est médiocre sur les caractères spéciaux ou sur les écritures ?

Pourriez-vous nous indiquer vos différences entre les blocs ? Au cas où d'autres utilisateurs auraient le même soucis

La qualité d'image donc tout (Parce que j'ai fais une capture global) n'est pas bonne.

Et ma solution n'a pas marché du tout... je continue de chercher.

Et en utilisant des calques qui pourraient être gelés via macro ?

Quelques réponses de ce type ont été évoqués il y a quelques jours sur le sujet ci-dessous :

http://www.lynkoa.com/forum/3d/afichier-un-texte-dans-le-fond-de-plan-suivant-le-nom-de-la-page

 

Je ne sais pas comment ça pourrais marcher.

Je vais peut-être préciser ce à quoi ça me servira exactement:

 

Dans mon entreprise les fonds de plans ont été mis à jour, (Ecriture plus petite, etc.) Je me suis occuper de faire une macro qui met à jour le fond de plan (En le rechargeant).

Ensuite l'ancienne tolérance générale est plus grande et elle n'est pas mise à jour avec le fond de plan. Donc je souhaite faire une macro pour en inséré la nouvelle.

 

[edit]

Je pense que le principale problème est que le bloc perd les liens (Car j'ai un lien entre le texte et les Ra qui sont par la suite supprimé), après j'ai le problème des tailles d'écritures, mais en théorique si je fais tout dans l'ordre je ne devrais pas avoir ce problème.

Bon aucune solution trouvé (Et depuis bientôt une année j'ai laisser tomber ça :p)