Hydro8
Membres-
Compteur de contenus
227 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par Hydro8
-
Merci de passer par là :) La CIA / NSA s'est trompée :P Voilà le fichier zip que j'ai oublié la dernière fois. Super routine, comme d'habitude. Effectivement il faut que je vois comment regrouper par calque et générer un csv. Merci ! Export.zip
-
Merci pour ton intérêt ! - Pour la selection du calque, on peut même faire une selection arbitraire avec un wildcard. Par exemple tous les calques "SURFACES_APPART*". - Tu as bien compris pour le texte. Ils sont effectivement tous regroupés dans un calque unique et chaque pièce possède un texte. - Pour le moment il s'agit d'un simple text ("Séjour" par exemple) sans autre information. Est-il possible d'utiliser un mText ? (sans forcément plus d'information) - Il n'y a qu'un type de texte par appartement. Si une pièce se présente plusieurs fois, on met un numéro (chambre 1, chambre 2). Si une surface est coupée en deux, on détour l'obstacle.Par contre il arrive que certaine surface ne possède pas de texte. Dans ce cas elles sont listées indépendamment sans nom spécifique. - La surface et le périmètre sont nécessaires comme information. Si cela est possible, il serait super d'avoir le total par appartement ainsi que le nombre de polyligne composant ce total. - Il faudrait un export csv afin de pouvoir l'importer dans excel. Je ne sais pas si un changement de méthodologie pourrait simplifier le processus ?
-
Avec un Lisp trouvé sur internet je suis arrivé à quelque chose comme ça. La question est comment gérer par rapport au calque, est ce que c'est possible de trier par le nom de calque ?
-
Nous avons 9 licences perpétuelles avec un contrat de maintenant de 1500€ pour l'ensemble des licences. Maintenant cela change, dans 2 ans nous allons passer à un contrat de maintenance de 900€ par licence, soit 8100€ de contrat de maintenance.
-
Je te remercie de ta réponse. Je ne compte pas du tout remplacer Covadis, mais chez nous le prix est augmenté de 460% ... Autant dire que nous essayons de réduire au maximum le nombre de licence, notamment pour les ordinateurs qui l'utilisent que pour des opérations "basiques". Merci pour l'ensemble de ces liens qu'il va falloir que j'analyse.
-
A super merci ! J'avais tester quelque chose comme ça mais j'avais mis des parenthèses en trop. Top encore merci.
-
Bonjour Gros sujet que celui là, il s'agit de l'export des surfaces d'un plan. Pour le moment on le fait avec Covadis, mais au vu des derniers changements de politique, nous essayons de trouver à faire certaines choses par nous même. Donc là l'idée serait d'exporter la surface des pièces dans un XLS ou CSV (voir DOC). Voici le mode de fonctionnement de Covadis : - on sélectionne les polylignes : il faut un calque par appartement. - on sélectionne le calque avec le texte des pièces. Et il nous sort un listing avec les surfaces de chaque pièce groupées par appartement. Pensez-vous que quelque chose de semblable est possible en LISP ? A votre connaissance quelqu'un a déjà réalisé quelque chose comme cela ? Merci de votre aide.
-
Bonjour Je cherchais une routine afin d'isoler tous les calques qui commencent par "TestCalques". Je suis tombé sur cette routine : (defun c:testiso ( / laynames ss) (if (and (setq laynames "TestCalques*") (setq ss (ssget "_X" (list (cons 8 laynames) (cons 410 (getvar 'CTAB))))) ) (command "_.layiso" ss "") (prompt (strcat "\nNo objects found in layers " laynames "... ")) ) (princ) ) Du coup j'ai bien les calques qui commencent par "TestCalques" qui sont isolés. Par contre comment pouvoir renseigner plusieurs wildcards dans le code ? Par exemple pour isoler les calque qui commencent par "TestCalques" mais aussi ceux qui commencent par "Test2Calques" etc... Merci pour votre aide.
-
Content que tu ai réglé ton problème :) Quelqu'un sait s'il est possible de faire automatiquement des hachures AINSI31 coloré avec des hachures SOLID ?
-
Super merci !! Petit question qui à plus au moins à voir avec le sujet initial, est-il possible de faire des hachures AINSI31 rempli pour partie automatiquement ? Pour le moment nous faisons des hachures AINSI31, nous les décomposons et nous remplissons en SOLID une intervalle sur deux. Je me dis qu'il doit être possible de le faire en automatique mais je n'ai rien trouvé d'approchant sur internet ?
-
Bonjour J'essaye de faire une chose je pense simple sous autocad : des hachures automatique une fois une polyligne fermée. Pour réaliser cette fonction j'ai trouvé ce lisp : (defun c:plyhat (/ *error* oldcmd ply) (vl-load-com) (defun *error* (msg) (if oldcmd (setvar "CMDECHO" oldcmd)) (if (not (member msg '("Function cancelled" "quit / exit abort"))) (princ (strcat "\n<< Error: " msg " >>")) (princ "\n<< Cancelled >>")) (princ)) (setq oldcmd (getvar "CMDECHO")) (setvar "CMDECHO" 0) (command "_pline") (prompt "\nConstruct Polyline...") (while (eq 1 (logand 1 (getvar "CMDACTIVE"))) (command pause)) (vla-put-Closed (vlax-ename->vla-object (setq ply (entlast))) :vlax-true) (command "_hatch" "_S" ply "" "") (princ)) Il fonctionne bien, mon seul soucis c'est que j'aimerais le diffuser à d'autres personnes qui n'auront pas forcément en tête les options de la fonction polyligne. Du coup, est-il possible d'afficher les options de la fonction polyligne dans ce lisp ? Je veux parler de "Arc Demi-larg LOngueur annUler LArgeur" et des sous options quand on choisit Arc par exemple. Merci pour votre aide.
-
Merci beaucoup cela fonctionne parfaitement ! :D
-
Salut Je te remercie pour ton aide et pas de problème pour la première version ! Alors pour ce code : quand je clique sur autre chose qu'une polyligne, il continue à me demander une polyligne donc niquel. quand je clique sur rien (souvent des espaces vides autour des places de parking), il met "type d'argument incorrect lentityp nil", est-ce possible de là encore boucler sur la demande de polyligne ? quand je clique sur une polyligne, la fonction s'arrête et ne propose pas d'insérer le block ou de sélectionner une autre polyligne. Pour info, le code actuel : (defun c:MSPk (/ option base coeff) (setq base (vlax-ldata-get "MSPK" "Base" 11.5)) (setq coeff (vlax-ldata-get "MSPK" "Coeff" 0.35)) (if (= base nil) (setq base 11.5)) (if (= coeff nil) (setq coeff 0.35)) (initget "Paramètres Continuer") (setq option (getkword (strcat "\nOptions [Paramètres/Continuer] Données actuelles : " (rtos base) " | " (rtos coeff) " <Continuer> : " ) ;_ Fin de strcat ) ;_ Fin de getkword ) ;_ Fin de setq (if (= option "Paramètres") (setq base (getreal "\nChoisissez la base <11.5> (par défaut) : ") coeff (getreal "\nChoisissez le coefficient <0.35> (par défaut) : ")) ) (if (= base nil) (setq base 11.5)) (if (= coeff nil) (setq coeff 0.35)) (vlax-ldata-put "MSPK" "Base" base) (vlax-ldata-put "MSPK" "Coeff" coeff) (while (while (/= "LWPOLYLINE" (cdr (assoc 0 (entget (setq poly (car (entsel "\nChoix de la polyligne\n"))) ) ) ) ) ) (setq polyvla (vlax-ename->vla-object poly)) (setq surf (vlax-get-property polyvla 'area)) (setq dec 1) (cond ((< surf base) (setq surf1 surf surf2 0.0)) ((> surf base) (setq surf1 base surf2 (- surf surf1))) ((/= coeff 0.35)(setq surf1 base surf2 (- surf surf1))) ) (setq pins (getpoint"\nPoint d'insertion du bloc ?\n")) (command "_insert" "SurfPk" pins "1" "" "" (rtos surf1 2 dec) (rtos coeff 2 2) (rtos surf2 2 dec)) ) (princ) ) ;_ Fin de defun
-
Merci pour ta réponse. Si j'enlève le (not, il n'arrête plus la fonction si je sélectionne autre chose qu'une polyligne. Cependant quand j'en choisi une, il continue à demander une polyligne. (while (while (setq poly (car (entsel "\nChoix de la polyligne\n")))) (setq polyvla (vlax-ename->vla-object poly)) (setq surf (vlax-get-property polyvla 'area)) (setq dec 1) (cond ((< surf base) (setq surf1 surf surf2 0.0)) ((> surf base) (setq surf1 base surf2 (- surf surf1))) ((/= coeff 0.35)(setq surf1 base surf2 (- surf surf1))) ) (setq pins (getpoint"\nPoint d'insertion du bloc ?\n")) (command "_insert" "SurfPk" pins "1" "" "" (rtos surf1 2 dec) (rtos coeff 2 2) (rtos surf2 2 dec)) )
-
Bonjour, Je suis bloqué pour la répétition de la commande en cas de mauvais sélection. J'ai essayé de réutiliser le code fournis précédemment par didier mais cela ne fonctionne pas entièrement. Le code actuel : (defun c:MSPk (/ option base coeff) (setq base (vlax-ldata-get "MSPK" "Base" 11.5)) (setq coeff (vlax-ldata-get "MSPK" "Coeff" 0.35)) (if (= base nil) (setq base 11.5)) (if (= coeff nil) (setq coeff 0.35)) (initget "Paramètres Continuer") (setq option (getkword (strcat "\nOptions [Paramètres/Continuer] Données actuelles : " (rtos base) " | " (rtos coeff) " <Continuer> : " ) ;_ Fin de strcat ) ;_ Fin de getkword ) ;_ Fin de setq (if (= option "Paramètres") (setq base (getreal "\nChoisissez la base <11.5> (par défaut) : ") coeff (getreal "\nChoisissez le coefficient <0.35> (par défaut) : ")) ) (if (= base nil) (setq base 11.5)) (if (= coeff nil) (setq coeff 0.35)) (vlax-ldata-put "MSPK" "Base" base) (vlax-ldata-put "MSPK" "Coeff" coeff) (while (while (not (setq poly (car (entsel "\nChoix de la polyligne\n"))))) (redraw poly 3) (setq polyvla (vlax-ename->vla-object poly)) (setq surf (vlax-get-property polyvla 'area)) (setq dec 1) (cond ((< surf base) (setq surf1 surf surf2 0.0)) ((> surf base) (setq surf1 base surf2 (- surf surf1))) ((/= coeff 0.35)(setq surf1 base surf2 (- surf surf1))) ) (setq pins (getpoint"\nPoint d'insertion du bloc ?\n")) (command "_insert" "SurfPk" pins "1" "" "" (rtos surf1 2 dec) (rtos coeff 2 2) (rtos surf2 2 dec)) ) (princ) ) ;_ Fin de defun Quand je dois sélectionner la polyligne et que je clique sur un endroit vide, il continue de me demander une polyligne, niquel. Par contre quand je sélectionne une polyligne il se passe rien après. J'ai essayé de mettre un "princ 'test'" après la boucle de sélection, mais rien n'apparaît dans les logs. Question bonus, c'est possible de continuer à demander une polyligne même si un autre objet est sélectionné ? (hachure, block...) Merci pour votre aide.
-
Merci d'avoir pris le temps d'essayer et merci pour la réponse.
-
Bonjour Voila le lien vers le document : https://we.tl/t-ZYaXVBTuhB Petite question, est-il possible de faire un while dans un while ? Merci pour l'aide apportée !
-
Bonjour Je fais ça lundi. Concernant la base c'est la surface par défaut à déduire ( 11.50m² pour un parking simple, 23m² pour un double ou une valeur personnalisé dans certain cas )
-
Le déroulement que je vois : 1 - lancement de la commande 2 - choix de la polyligne ou Options Si choix de la polyligne : 3 - mise en place du bloc en prenant en compte les valeurs précédentes ou celles par défaut (11.5m² / 0.35) si pas de valeurs précédentes. Si options : 3 - demande de la base 4 - demande du coefficient 5 - choix de la polyligne 6 - mise en pace du bloc en prenant en compte les valeurs renseignées. Dans les deux cas, à la fin de la mise en place du bloc, choix de la prochaine polyligne.
-
Pardon la correction automatique à encore frappée. Je voulais dire boucle de sélection pour enchaîner les parkings.
-
Le top serait de pouvoir gérer manuellement le coeff et la base car un parking "simple" peut avoir plus de surface qu'un parking double. Ou suivant la typologie du parking (obligé de se garer par l'avant par exemple) le coefficient peut être exceptionnellement modifié. Et pouvoir faire une double de sélection pour ne pas relancer la fonction à chaque fois.
-
Bonjour La fonction fonctionne très bien surtout la boucle dans le choix de la polyligne très pratique !
-
Le texte dit : ...telles que ces valeurs résultent lors de l'établissement de la copropriété, de la consistance, de la superficie et de la situation des lots, sans égard à leur utilisation. On utilise donc le Coeff. de situation pour faire une différence entre deux appartements de même superficie. L'ordre des Géomètre-Expert indiqué de prendre en compte ensoleillement, bruit et masque. Concernant les places de stationnement, la pondération à 0.10 permet de réduire les écarts entre deux places sensiblement pareil. Si tu as un écart entre deux places qui ont un écart de 0.5m², cela provient du calcul et le juge ne pourra pas critiquer les éléments que tu as pris en compte. Après pour le calcul des charges du parking, celles ci sont répartis à une part pour chaque emplacement. Je suis pas forcément d'accord avec la façon de faire en France, cela serait plus simple de repartir à la surface seulement comme aux Etats-Unis d'Amérique.
-
La loi de 1965 indique que les lots de copropriété doivent participer relativement à leur superficie. On doit donc prendre en compte la superficie des emplacements de stationnement sinon on risque une action en révision. Après on joue sur le coefficient pour pas qu'il n'y est trop de différence sinon sa serait l'enfer pour les constructeurs en VEFA.
-
C'est parfait. Désolé de pas avoir été plus explicite au début.
