Aller au contenu

LrDb

Membres
  • Compteur de contenus

    148
  • Inscription

  • Dernière visite

  • Jours gagnés

    1

Tout ce qui a été posté par LrDb

  1. LrDb

    placement cellule en 2 pts

    à poser dans un module: Sub Placecell0() CommandState.StartPrimitive New p_cell_anG_Sca End Sub à poser dans un module de class appelé "p_cell_anG_Sca" Implements IPrimitiveCommandEvents Private m_atPoints(0 To 1) As Point3d Private m_nPoints As Integer Dim Lg1 As Double Dim Lg2 As Double Private Sub IPrimitiveCommandEvents_Cleanup() End Sub Private Sub IPrimitiveCommandEvents_DataPoint(Point As Point3d, ByVal View As View) If m_nPoints = 0 Then CommandState.StartDynamics m_atPoints(0) = Point m_nPoints = 1 ShowPrompt "Place end point" Dim cel1 As CellElement Set cel1 = CreateCellElement2(ActiveSettings.CellName, m_atPoints(0), Point3dFromXY(1, 1), True, Matrix3dIdentity) Lg1 = cel1.Range.High.X - m_atPoints(0).X ElseIf m_nPoints = 1 Then m_atPoints(1) = Point Dim oCel As CellElement Set oCel = CreateCellElement2(ActiveSettings.CellName, m_atPoints(0), Point3dFromXY(Lg2 / Lg1, Lg2 / Lg1), True, Matrix3dFromAxisAndRotationAngle(2, Atn2(m_atPoints(1).Y - m_atPoints(0).Y, m_atPoints(1).X - m_atPoints(0).X))) ActiveModelReference.AddElement oCel oCel.Redraw m_atPoints(0) = m_atPoints(1) End If End Sub Private Sub IPrimitiveCommandEvents_Dynamics(Point As Point3d, ByVal View As View, ByVal DrawMode As MsdDrawingMode) If m_nPoints = 1 Then m_atPoints(1) = Point Dim oCel As CellElement Lg2 = Abs(Point3dDistance(m_atPoints(0), Point)) Set oCel = CreateCellElement2(ActiveSettings.CellName, m_atPoints(0), Point3dFromXY(Lg2 / Lg1, Lg2 / Lg1), True, Matrix3dFromAxisAndRotationAngle(2, Atn2(Point.Y - m_atPoints(0).Y, Point.X - m_atPoints(0).X))) oCel.Redraw DrawMode Dim oEl As LineElement Set oEl = CreateLineElement1(Nothing, m_atPoints) oEl.Redraw DrawMode End If End Sub Private Sub IPrimitiveCommandEvents_Keyin(ByVal Keyin As String) End Sub Private Sub IPrimitiveCommandEvents_Reset() CommandState.StartPrimitive Me m_nPoints = 0 End Sub Private Sub IPrimitiveCommandEvents_Start() ShowCommand "FROM VBA PlaceLine Example" ShowPrompt "Point d'insertion de la cellule" End Sub me suis inspiré du placement d'une ligne donné en exemple a bientôt LrDb
  2. LrDb

    placement cellule en 2 pts

    Si tu veux que ton echelle et ton orientation soient en même temps définie par 2 points, je ne pense pas, à ma conaissance, que celà soit possible sur V8. peut être sur V8i? XM?. si un autre utilisateur se manifeste ? sinon tu es obligé de faire une echelle par 3 points proportionnelle. mais tu dois dessiner des cellules de forme rectangulaire, j'imagine ? est ce que ton Echelle est à chaque fois différente d'un élément à l'autre
  3. LrDb

    placement cellule en 2 pts

    Bonjour Eric, c'est fait. tu peux charger le mdl à l'ouverture de microstation pour l'avoir "sous la main": Espace de travail>configuration puis dans catégorie choisi: appl de dessin puis ajoutes celltool.ma. pour compléter YannPro81, on peut aussi se faire un raccourci clavier avec comme commande: (en ayant au préalable choisit sa cellule active "ac=macellule" ) "place cell interractive;%d;1;1" le %d permet d'attendre un datapoint 1 echelle en X 1 echelle en Y slts LrDb
  4. LrDb

    placement cellule en 2 pts

    J'ai eu le même Pb, j'ai du me faire une autre adresse pour m'inscrire. c'est vraiment select microstation.... voir trop select surtout pour ceux qui ne pipent pas un mot in english... Je pense qu'ils estiment qu'il faut bac+12 pour s'en servir. A bientot, je t'envoie un mail en mp. LrDb
  5. LrDb

    placement cellule en 2 pts

    bonjour, Perso j'utilise sur V8 le mdl suivant http://communities.bentley.com/other/old_site_image_galleries/member_folders/m/phil_chouinard_bentleys_files/179.aspx cdlt LrDb
  6. Bonjour, timer
  7. bonjour, Supprimer la connexion au bout d'un "certain temps" (comme dirait fernand) d'inactivité pour membres et invités. LrDb
  8. Tu peux enregistrer une macro comme sur excel regardes ici Ce site appartient à l'un des intervenants programmation de bentley souvent présent et réactif dans le forum vba de bentley. pour la smartline, Cliques sur l'outils smartline dans la palette principale, type de sommet arrondi et entre ton rayon... ces valeurs sont enregistrées dans la macro en général (pas pour toutes les fonctions). LrDb
  9. Bonjour TBFT avec la rotation de vue par trois points: 'traçage des segments primaires Droite(1).trace Set el_Tp10 = Droite(1).G_Line Droite(4).trace Set el_Tp20 = Droite(4).G_Line 'parametrage de la rotation de vue CadInputQueue.SendCommand "ROTATE VIEW EXTENDED " SetCExpressionValue "dialogInfo.p.rotationMode", 3, "VIEWCTRL" CadInputQueue.SendCommand "ROTATE VIEW EXTENDED " SetCExpressionValue "dialogInfo.p.rotationMode", 3, "VIEWCTRL" CadInputQueue.SendTentativePoint el_Tp10.startPoint, 1 CadInputQueue.SendDataPoint el_Tp10.startPoint, 1 CadInputQueue.SendTentativePoint el_Tp10.EndPoint, 1 CadInputQueue.SendDataPoint el_Tp10.EndPoint, 1 CadInputQueue.SendTentativePoint el_Tp20.EndPoint, 1 CadInputQueue.SendDataPoint el_Tp20.EndPoint, 1 CadInputQueue.SendDataPoint Point3dFromXYZ(0, 0, 0), 1 CadInputQueue.SendReset RRotation = ActiveDesignFile.Views(1).Rotation 'Rotation = Matrix3dZero 'calcul du rayon mini rayon_mini = Droite(1).Longueur rayon = Droite(3).Longueur If rayon < rayon_mini Then rayon_mini = rayon rayon = Droite(4).Longueur / 2 If rayon < rayon_mini Then rayon_mini = rayon ' rayon_mini = rayon_mini / 2 MessageCenter.AddMessage "Le rayon maxi est de " + CStr(rayon_mini) + " m" 'MsgBox "Le rayon maxi est de " + CStr(rayon_mini) + " m" 'mise en place des coubes Dim ptPick As Point3d ptPick = Point3dInterpolate(el_Tp10.startPoint, 0.5, el_Tp20.EndPoint) Set Courbe(1) = el_Tp20.ConstructFillet(el_Tp10, Nothing, rayon_mini, ptPick, RRotation) ActiveModelReference.AddElement Courbe(1) Courbe(1).Redraw CadInputQueue.SendKeyin "view previous" CadInputQueue.SendKeyin "xy="
  10. Bonjour TBFT, 'traçage des segments primaires Droite(1).trace Set el_Tp10 = Droite(1).G_Line Droite(4).trace Set el_Tp20 = Droite(4).G_Line 'tu récupéres ici tes 2 droites juste après les avoir dessinées ..... 'mise en place des coubes Dim ptPick As Point3d 'fameux ptpick ptPick = Point3dInterpolate(el_Tp10.StartPoint, 0.5, el_Tp20.EndPoint) 'point milieu des 2 extrémités opposées (super fonction) Set Courbe(1) = el_Tp20.ConstructFillet(el_Tp10, Nothing, rayon_mini, ptPick, Rotation) ActiveModelReference.AddElement Courbe(1) Courbe(1).Redraw'pour la forme et voilà. Comme je te l'ai dis, l'ordre de sélection des 2 droites est hyper important edit: la matrice n'est pas bonne, ce doit-être ça il faut faire un rotation de vue par 3 points 1 extrémité droite4,point commun,+extrémité droite1 Matrix3d = object.Matrix3dRotationFromPoint3dOriginXY (Origin, XPoint, YPoint) et ensuite utiliser la rotation de views(1).rotation, pas matrx3Dzero. je viens seulement de m'apercevoir que c'était de la 3D :exclam: LrDb[Edité le 25/3/2011 par LrDb][Edité le 25/3/2011 par LrDb] [Edité le 25/3/2011 par LrDb]
  11. A première vu, emmelage de pinceaux. Set el_Tp10 = Droite(1).G_Line Set el_Tp20 = Droite(4).G_Line c'est là que cela merdoies tu devrais écrire dans ton module principal tes lignes. pas la peine de passer par module de class à cet endroit. Property Get G_Line() As LineElement Set G_Line = el_line; ici c'est la dernière dessinée End Property On obtiens pas la même chose en dessinant toutes les lignes Pourrais-tu envoyer de la même façon un dgn fini de ce que tu souhaites avec un p'tit txt d'explication par exemple. Une chose aussi très importante, l'ordre de selection de tes 2 droites au départ. qui détermine les droites 1 et 4 en haut ou en bas. LrDb [Edité le 24/3/2011 par LrDb] [Edité le 25/3/2011 par LrDb]
  12. Cliques sur "Recherche CADxp" fais une recherche de membre "lrdb" tu dois pouvoir envoyer un message privé. PS: je suis au travail, pas "@home" Merci pour les pièces jointes utilise ci-joint.com ou qqch comme ça LrDb
  13. Re, Mouais, donc, ton ptpick doit être le point milieu entre fin droite 4 et début droite 1 si j'ai bien compris. mais pour quoi dessiner 4 arcs? et que cherches-tu à faire réellement? (autant partir sur de bonne base) Cordialement LrDb
  14. Bonjour , Bizarre, as tu bien recopier les ptpick ? c'est hyper important. pour vérifier, copie ceci Dim liGverif As LineElement Set liGverif = CreateLineElement2(Nothing, ptPick(1), ptPick(2)) ActiveModelReference.AddElement liGverif liGverif.Redraw MsgBox "ligne1" Set liGverif = CreateLineElement2(Nothing, ptPick(2), ptPick(3)) ActiveModelReference.AddElement liGverif liGverif.Redraw MsgBox "ligne2" Set liGverif = CreateLineElement2(Nothing, ptPick(3), ptPick(4)) ActiveModelReference.AddElement liGverif liGverif.Redraw MsgBox "ligne3" Set liGverif = CreateLineElement2(Nothing, ptPick(4), ptPick(1)) ActiveModelReference.AddElement liGverif liGverif.Redraw MsgBox "ligne4" les lignes doivent se dessiner à la suite, dans le sens trigo ou l'inverse mais à la suite LrDb
  15. LrDb

    microstation>>>autoCAD

    Re, telecharge bentley viewer, la dernière version (on en a déjà parlé). renomme ton .cel en . dgn ouvre le .dgn puis tapes 'save as dwg' dans l'entrée clavier. = autant de dwg que de cellules. Il faut je pense, des .cel version 8 (Pas testé sur viewer) LrDb [Edité le 2/2/2011 par LrDb]
  16. LrDb

    microstation>>>autoCAD

    Bonjour, pas sûr d'avoir bien compris ta question. qu'as-tu comme logiciel? ici un pdf. LrDb
  17. LrDb

    type de ligne

    Bonjour, Pourrais-tu préciser ta question stp possèdes-tu des .lin autocad? si oui pas de pb tu peux les utiliser directement. Quels type de représentation souhaites-tu? Ceci dit, Il me semble que les styles de traits type point sont compatibles, pas les complexes. càd un trait + un symbol (texte par exemple): --------- EP---------EP----- Tu peux les créer sur µstation , il y a des exemples à modifier attention à l'echelle. Fais des recherches là dessus , une petite note ou cherche quelques .rsc LrDb
  18. LrDb

    cellule le long de l\'element

    Bonjour Harnoo, En effet je n'arrive pas à déterminer la distance non plus. ni le nombre de cellules à poser sur la ligne. Il me semble que c'était possible en V5 (bizarre) que je n'ai plus. Lance toi plutot dans le style de trait en duplicant tree line par exemple Je ne sais pas si tu connais bien les styles de trait mais en cas de pb, tu nous en fais part Merci LrDb
  19. LrDb

    Prob d\'impression

    Bonjour, Regardes d'abord si dans ton Gestionnaire de niveaux l'option tracé est activé Voir aussi les attributs d'impression (Classe Primaire/construction) Si c'est une histoire de couleur selectionne monochrome pour voir cdlt LrDb
  20. LrDb

    SAVE avec zoom étendu AUTO

    Comme on se retrouve SAAIDI, Il me semble, les autocadiens confirmeront qu'il faut utiliser _qsave à la place de _save LrDb
  21. Bonjour, traitement par lot: ici le traitement par lot est très simple d'utilisation, tu crées un fichier texte avec les commandes que tu souhaites sur chaque ligne. tu choisis les fichiers à traiter, tu lances l'utilitaire et tu rentres chez toi de bonne heure. Merci de bien vouloir répondre LrDb
  22. Quelle manip fais-tu alors? Je perds mon temps à jouer à la devinette avec tes questions dont les réponses sont dans l'aide. Précises correctement ta demande Bon wk LrDb
  23. SAAIDI, trie par modèle en cliquant dessus (comme explorateur) pour les trier puis tu les selectionnes avec la souris et touche Shift pour aller + vite puis Icone Rond avec Croix en rouge pour les effacer une fois sélectionnés. C'est bien celà ta question? Cdlt LrDb
  24. Utilise la palette labels Outils principal Labels utilise le 2ème icône commande clavier "edit tags" cdlt LrDb
  25. Post ton dwg je regarderais plus tard
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité