fren
  Se connecter   Inscription

Nous sommes +23 000 professionnels du BIM !

Rejoignez-nous >
Vous avez une question ?

Besoin de support technique, d'un avis ou un conseil ?


  mardi 29 mars 2016
  15 Replies
  8.3K Visits
  Subscribe
Bonjour à tous,
après avoir bien galéré à essayer de rentrer une valeur NGF dans des éléments REVIT, je me suis finalement décidé à utiliser Dynamo pour le faire! ça fait un moment que je voulais essayer mais j'attendais d'avoir un vrai blocage avec les fonctions de base de Revit pour me lancer. ;)
Voilà donc en lien un extrait de ce 1er essai.

1er soucis: je n'arrive pas à additionner la valeur d'élévation du point projet à ma liste de valeurs d'élévation objets. L'addition d'une liste et d'une valeur fixe me donne une valeur fixe...:( Comment faire en sorte d'additionner cette valeur fixe à toutes les valeurs de la liste, et ainsi générer une nouvelle liste?

2e soucis: la fonction "+" ne permet d’additionner que 2 valeurs. Comment faire pour en additionner plus sans le faire 2 à 2? J'ai bien vu la fonction "Math.Sum" mais je ne comprends pas ce qu'elle attend comme entrée. Je voudrais pouvoir additionner la valeur 1 de la liste 1, à la valeur 1 de la liste 2 et à la valeur 1 de la liste 3; puis la valeur 2 de la liste 1 à la valeur 2 de la liste 2... et ainsi de suite
il y a plus d'un mois
·
#3233
0
Votes
Annuler
Salut,

Essaye un CodeBlock x+y, pour moi ça cycle bien sur toute la liste.

Sinon dans ton nœud +, modifie la combinaison en réglant "le plus long".
il y a plus d'un mois
·
#3238
0
Votes
Annuler
Le CodeBlock me permet bien d'additionner plusieurs valeurs mais réitère la même erreur quand je veux additionner la valeur fixe à toute la liste.
Séparément, quand je modifie la combinaison du +, j'obtiens cette fois une liste comme souhaité.
Dommage que cette option de combinaison ne soit pas accessible sur le Code Block.
Du coup je vais devoir additionner 2 valeurs (dont celle contenant la valeur unique) avec un "+" et utiliser ensuite le Code Block pour additionner le reste.

L'essentiel c'est que ça marche! Merci Julien!:)
il y a plus d'un mois
·
#3244
0
Votes
Annuler
Salut ,
Math sum te demande comme INPUT une liste pour faire une addition.
il y a plus d'un mois
·
#3245
0
Votes
Annuler
Effectivement mais je n'ai pas trouvé (pour l'instant) comment créer une liste de la forme:
[0] valeur 1 liste 1, valeur 1 liste 2, valeur 1 liste 3...
[1] valeur 2 liste 1, valeur 2 liste 2, valeur 2 liste 3...
...

pour utiliser ensuite "Math.Sum" et obtenir le résultat:
[0] valeur 1 liste 1 + valeur 1 liste 2 + valeur 1 liste 3...
[0] valeur 2 liste 1 + valeur 2 liste 2 + valeur 2 liste 3...
...
il y a plus d'un mois
·
#3247
0
Votes
Annuler
Je suis pas sur de bien saisir le problème mais voici déjà une petite definition avec quelques variations :)
il y a plus d'un mois
·
#3248
0
Votes
Annuler
Je suis pas sur de bien saisir le problème mais voici déjà une petite definition avec quelques variations :)

Et voici le fichier .dyn https://www.dropbox.com/s/2iy28yejk9jseul/0.9.2_ListeAddition.dyn?dl=0
il y a plus d'un mois
·
#3249
0
Votes
Annuler
Daniel Hurtubise a écrit:

Je suis pas sur de bien saisir le problème mais voici déjà une petite definition avec quelques variations :)


Oui, c'est de cette manière que j'ai procédé au final.:)
Mais je me disais qu'il devait exister un noeud permettant de rassembler des listes pour utiliser ensuite "Math.Sum".
il y a plus d'un mois
·
#3250
0
Votes
Annuler
C'est plus simple de faire avec un code block a mon avis.
il y a plus d'un mois
·
#3254
0
Votes
Annuler
Oui sûrement et d'ailleurs ça marche comme cela sans que ça soit trop compliqué.
Mais comme je débute, j'essaie de comprendre la fonctionnalité des nœuds au fur et à mesure.
il y a plus d'un mois
·
#3267
0
Votes
Annuler
Salut ,
Je propose ça !
il y a plus d'un mois
·
#3268
0
Votes
Annuler
J’espère que tes listes ont la même longueur !
il y a plus d'un mois
·
#3269
0
Votes
Annuler
Ah bah du coup je rejoins Daniel "c'est plus simple avec un Code Block"! ;)

Merci Emma pour cette réponse, ça pourra servir pour un autre code Dynamo.:)
il y a plus d'un mois
·
#3290
0
Votes
Annuler
Benoit,

je te propose ci-joint un petit code python qui permet j'ajouter une valeur fixe à une liste de valeur.
il y a plus d'un mois
·
#3291
0
Votes
Annuler
C'est moi ou je vois pas l'intérêt d'utiliser python ici?
il y a plus d'un mois
·
#3292
0
Votes
Annuler
J'y vois une alternative. Quand on regarde le code ça ne paraît pas très compliqué.
Je pense qu'on fonctionne tous un peu de la même manière: on utilise l'outil avec lequel on est le plus habitué même si c'est pas toujours le plus adapté.
En tout cas, moi, ça m'a permis de voir qu'on pouvais intégrer du Python directement dans Dynamo. Je pensais qu'il fallait faire soit l'un, soit l'autre.

Il faut y aller par étape pour résoudre un problème:
1) Essayer toutes les possibilités dans Revit
2) Contourner le problème...
3) Écrire une macro Dynamo
4) Ajouter du code Python à un script Dynamo
5) Programmer avec l'API
6) Postuler chez Autodesk !

Et bien ça me laisse une belle perspective d'évolution! ;)
Cette discussion ne contient encore aucune réponse.
Soyez le premier à y répondre !
Vous avez une question ?

Besoin de support technique, d'un avis ou un conseil ?


Découvrez les services Hexabim

recrutement

Recrutement

En savoir plus

Publicité

Publicité

En savoir plus

communication

Communication

En savoir plus

Hexabim

Se connecter