Bonjour, j'ai besoin de changer le système, je ne trouve pas la solution
Je parviens à tracer ma canalisation des points xyz mettre le bon diamètre, mais il me nomme le système en : non défini.
Comment faire SVP ci-joint la partie du programme.
Merci, bonne journée.
Le titre du sujet a été modifié par un modérateur pour faciliter la recherche. Titre original:
C# modifier le système canalisation souple
Résolu ! Accéder à la solution.
Résolu par bendosan. Accéder à la solution.
Bonjour @be-bj,
Le paramètre système "Type de Système" attend un ElementId et non pas une chaine de caractère.
Même si ton image est tronquée tu semble vouloir changer ce paramètre.
Le BuiltInParameter et bien le "RBS_PIPING_SYSTEM_TYPE_PARAM" ?
Voici comment on change le type de système d'une canalisation flexible :
PipingSystemType chaufRetPippingSystemType
= new FilteredElementCollector(doc)
.OfClass(typeof(PipingSystemType))
.Cast<PipingSystemType>()
.Where(pst => pst.Name == "Chauffage retour")
.FirstOrDefault();
using (Transaction tx = new Transaction(doc))
{
tx.Start("Changement Type Système");
Parameter parameter = element.get_Parameter(BuiltInParameter.RBS_PIPING_SYSTEM_TYPE_PARAM);
parameter.Set(chaufRetPippingSystemType.Id);
tx.Commit();
}
Bonjour @be-bj
La communauté a essayé de répondre à votre question. Si vous pensez qu'une ou plusieurs de ces réponses vous aident, voulez vous avoir l'amabilité de cliquer sur le bouton APPROUVER LA SOLUTION en bas de la réponse qui apporte une solution?
Merci de ne pas accepter comme solution le message que vous êtes en train de lire.
Si nos équipes de support technique ont pu vous apporter une solution ou contribuer significativement à vous aider en dehors de ce forum, pouvez vous partager ici la solution trouvée et cliquer sur le bouton APPROUVER LA SOLUTION de façon qu'elle bénéficie à la communauté?
Merci.
Désolée ça ne fonctionne pas, la canalisation est bien crée
Merci, bonne journée
// ----------------------------
// CREATION DE LA CANALISATION EAU FROIDE
// ----------------------------
trans.Start("Create Flexible");
FlexPipe _flexpipe = rvtDoc.Create.NewFlexPipe(lstPnts, FlexType);
// affiche dans la liste de controle
bj_Page.listBox1.Items.Add("index " + _flexpipe.Id);
trans.Commit();
// bj_Page.listBox1.Items.Add("\t" + e.Name + " id " + e.Id + " débit " + Deb_EF);
// --------------------------------
// INDEX DU SYSTEME SECTIONNER
// --------------------------------
int idInt = 185906;
ElementId id = new ElementId(idInt);
Element eltB = rvtDoc.GetElement(id);
// ----------------------------
// SYSTEME
// -----------------------------
// Parameter parametreTypeSysteme = _flexpipe.get_Parameter(BuiltInParameter.RBS_PIPING_SYSTEM_TYPE_PARAM);
PipingSystemType chaufRetPippingSystemType = new FilteredElementCollector(rvtDoc).OfClass(typeof(PipingSystemType)).Cast<PipingSystemType>().Where(pst => pst.Name == "Chauffage retour").FirstOrDefault();
using (Transaction tx = new Transaction(rvtDoc))
{
tx.Start("Changement Type Système");
Parameter parameter = _flexpipe.get_Parameter(BuiltInParameter.RBS_PIPING_SYSTEM_TYPE_PARAM);
//parameter.Set(chaufRetPippingSystemType.Id);
parameter.Set(eltB.Id);
tx.Commit();
}
Vous n'avez pas trouvé ce que vous recherchiez ? Posez une question à la communauté ou partagez vos connaissances.