CADsite

  • do 18 07 2019, 09:41:51
  • Welkom, gast
Log in of registreer jezelf.

Login met gebruikersnaam, wachtwoord en sessielengte
Geavanceerd zoeken  

Nieuws:

Toon bijdragen

Deze sectie stelt je in staat om alle bijdragen van dit lid te bekijken. Je kunt alleen de bijdragen zien waar je op dit moment toegang toe hebt.

Topics - Bart Dheere

Pagina's: [1] 2
1
Autolisp / byblock --> bylayer
« Gepost op: do 14 07 2016, 10:01:38 »
Door bijgevoegde lisp worden 3d polylines omgezet naar 2d polylines. Bovendien wordt de elevations van de lijnen op 0 gezet.

Kan er mij iemand helpen in deze lisp een bewerking toe te voegen om de lijnen, die meestal in color 'Byblock' staan om te zetten in Bylayer?

Groeten en bedankt.

2
Autolisp / Omzet Blocks - uitdaging
« Gepost op: ma 27 06 2016, 09:53:41 »
In Civil3d bestaat de mogelijkheid om bepaalde gemeten punten na het importeren van de survey data om te zetten in het juiste symbool. Ik dacht dat dit kan met Description Key Set. Is er iemand met ervaring daarin?

Nu importeer ik alles via dxf. Lijnen worden aangepast en omgezet in de juiste layer. Daarvoor heb ik een aantal tools.

Voor het omzetten van de blocks zou dat waarschijnlijk wel mogelijk zijn om deze in de juiste om te zetten.
Bestaat daar een lisp voor?

Groeten,
Bart

3
Autolisp / Select polylines with blocks (Opgelost)
« Gepost op: do 09 06 2016, 21:21:28 »
Beste,

Na een meting op terrein met een landmeetkundig toestel, exporteren we de data in dxf-vorm. Een filterfunctie op datum wordt meestal toegepast bij het exporteren gezien de vorige metingen in dezelfde tekening niet meer nodig zijn.

De filterfunctie wordt enkel toegepast op de gemeten punten (blocks op layer 0). Dus in de geexporteerde dxf komen alle reeds gemeten lijnen in het project ook mee. Het toestel, Leica Viva GS15, laat niet toe te filteren op de lijnen.

Graag had ik enkel de lijnen kunnen selecteren met een gemeten punt (block) op het begin en einde van een vertex.
Kent iemand hier een lisp-oplossing voor?

Als voorbeeld stop ik dergelijke dxf in de bijlage.

Gegroet en dank.
Bart

4
Autolisp / Stepped offset OPGELOST
« Gepost op: do 04 02 2016, 10:56:09 »
Hallo allen,

Een tijdje terug zocht ik naar een macro/lisp die het mogelijk maakt een bepaalde offset te doen van een lijn. Deze topic is opgelost. Deze macro/lisp voegde ik toe aan een button, dat maakt het makkelijk om een offset te doen van een lijn met verschillende vaste offsets. Zo maakte ik een tiental knoppen met verschillende offsetbreedtes.

Graag had ik een macro/lisp gevonden om een stepped offset te kunnen doen van een 3dpolyline of een featureline. Terug met een vaste offset-breedte. De elevation difference wens ik wel  nog zelf te kunnen invoeren.

Groeten en dank.
Bart

5
AutoCAD probleem / selecteren overlappende objecten
« Gepost op: vr 15 01 2016, 09:39:19 »
Is er een mogelijkheid om enkel de overlappende objecten te laten highlighten bij een selectie.
Misschien bestaat er een instelling waarbij een ander kleur kan gegeven worden bij overlappende selecties.

Mag ik beroep doen op jullie deskundigheid terzake?

Groeten,
Bart

6
Autolisp / Totaal lijnen en oppervlaktes in Excel
« Gepost op: wo 13 01 2016, 08:06:50 »
Aan allen,

Onderaan staat een routine weergegeven welke het mogelijk maakt om, in excel, een opsomming weer te geven van de lijnvormige elementen in een tekening. Superhandige tool, zo heb ik de indruk.

De routine werkt perfect, enkel dienen nog wat ruwe kantjes afgevijlt te worden.

Hierbij twee vragen:

vraag 1 :
Handig ware om in excel de tekst  "SubTotal" in de tweede kolom weer te geven en de kolom met length te verschuiven naar de derde kolom.
Dat is enkel om eenvoudiger de data alfabetisch te sorteren.
Is dit mogelijk?

vraag 2:
Is er een mogelijkheid om in een tweede tabblad een totaal te maken van oppervlaktes van hatches.
Dit graag per layer en per vierkante meter.

dat zou super zijn.

Groeten en dank.
Bart




(defun c:ple (/   elist    en     i      layer    layer_list
      leng    pline     row      ss       sumlen   total
      x    xlApp     xlBook   xlBooks  xlCells  xlSheet
      xlSheets
          )
  (vl-load-com)
  (setq   xlApp      (vlax-get-or-create-object "Excel.Application")
   xlBooks  (vlax-get-property xlApp "Workbooks")
   xlBook      (vlax-invoke-method xlBooks "Add")
   xlSheets (vlax-get-property xlBook "Sheets")
   xlSheet      (vlax-get-property xlSheets "Item" 1)
   xlCells      (vlax-get-property xlSheet "Cells")
  )
  (vla-put-visible xlApp :vlax-true)
  ;headers
  (vlax-put-property xlCells "Item" 1 1 "Layer")
  (vlax-put-property xlCells "Item" 1 2 "Length")
 
  (setq row 2
   total 0)

  (setq ss (ssget "_X" (list (cons 0 "*POLYLINE"))) i -1)
  (repeat (sslength ss)
    (setq en (ssname ss (setq i (1+ i)))
     elist (entget en)
     layer (cdr (assoc 8 elist)))
    (if (not (member layer layer_list))
      (setq layer_list (cons layer layer_list))))
 
 
  (repeat (length layer_list)
    (setq layer (car layer_list))
    (vlax-put-property xlCells "Item" row 1 layer)
    (setq ss (ssget "_X" (list (cons 0 "*POLYLINE")(cons 8 layer))) i -1 sumlen 0)
    (repeat (sslength ss)
    (setq row (1+ row)) 
    (setq pline (vlax-ename->vla-object (ssname ss (setq i (1+ i)))))
    (setq leng  (vlax-curve-getdistatparam pline
        (vlax-curve-getendparam pline)))
    (vlax-put-property xlCells "Item" row 2 (rtos leng 4 3))
        (vlax-put-property xlCells "Item" row 2 (rtos leng 2 3)); for metric units 
    (setq sumlen (+ sumlen leng)))
    (setq row (1+ row))
    (vlax-put-property xlCells "Item" row 1 "SubTotal:")
    (vlax-put-property xlCells "Item" row 2 (rtos sumlen 4 3))
    (setq total (+ total sumlen))
    (vlax-put-property xlCells "Item" row 2 (rtos sumlen 2 3)); for metric units
    (setq layer_list (cdr layer_list))
    (setq row (+ row 2))
   
  )

; footers:
(vlax-put-property xlCells "Item" row 1 "Total:")
(vlax-put-property xlCells "Item" row 2 (rtos total 4 3))
(vlax-put-property xlCells "Item" row 2 (rtos total 2 3)); for metric units 

(mapcar (function (lambda(x)
          (vl-catch-all-apply
            (function (lambda()
              (progn
                (vlax-release-object x)
                (setq x nil)))))))
(list xlCells xlSheet xlSheets xlBook xlBooks xlApp)
)
(alert "Close Excel file manually")
(gc)(gc)
(princ)
  )
(princ "\t\t***\t  Type PLE to write polines length to Excel\t***")
(princ)

7
Autolisp / Area selected hatch - BIJKOMENDE VRAAG
« Gepost op: vr 08 01 2016, 17:35:54 »
Vond een lisp terug voor het achterhalen van de totale lengte van lijnen.
Kan dat voor geselecteerde hatches ook?


TLEN.LSP - Total LENgth of selected objects
(c) 1998 Tee Square Graphics
 
|;
 
(defun C:TLEN (/ ss tl n ent itm obj l)
  (setq ss (ssget)
        tl 0
        n (1- (sslength ss)))
  (while (>= n 0)
    (setq ent (entget (setq itm (ssname ss n)))
          obj (cdr (assoc 0 ent))
          l (cond
              ((= obj "LINE")
                (distance (cdr (assoc 10 ent))(cdr (assoc 11 ent))))
              ((= obj "ARC")
                (* (cdr (assoc 40 ent))
                   (if (minusp (setq l (- (cdr (assoc 51 ent))
                                          (cdr (assoc 50 ent)))))
                     (+ pi pi l) l)))
              ((or (= obj "CIRCLE")(= obj "SPLINE")(= obj "POLYLINE")
                   (= obj "LWPOLYLINE")(= obj "ELLIPSE"))
                (command "_.area" "_o" itm)
                (getvar "perimeter"))
              (T 0))
          tl (+ tl l)
          n (1- n)))
  (alert (strcat "Total length of selected objects is " (rtos tl)))
  (princ)
)

8
AutoCAD probleem / Geopende bestanden (opgelost)
« Gepost op: do 07 01 2016, 09:41:57 »
Bij het werken aan een bepaald project, staan tergelijkertijd verschillende tekeningen open.

Bestaat er in autocad een mogelijkheid om bestand aan te maken waarbij met 1 muisklik alle benodigde bestanden tergelijkertijd worden geopend?

Groeten,
Bart

9
AutoCAD probleem / hatch opp
« Gepost op: di 08 12 2015, 10:37:15 »
Heel vaak kan ik bij het hatchen de oppervlakte lezen in de properties. Heel soms gebeurt het dat dit niet lukt.

Heeft iemand een idee aan wat dit kan liggen?

Groeten,
Bart

10
Autolisp / Verbinden twee evenwijdige lijnen
« Gepost op: di 08 12 2015, 08:59:23 »
Met PEDIT -> Multiple -> Join -> Jointype -> Add is het mogelijk om twee evenwijdige lijnen te verbinden met elkaar.

Is er een mogelijkheid om dit met 1 klik of met een bepaald commando te doen. Ik dacht aan een lisp hiervoor.

Groeten,
Bart

11
AutoCAD probleem / Hatch met pattern, in bepaalde layer
« Gepost op: ma 30 11 2015, 15:40:43 »
Bestaat er een mogelijkheid om een hatch standaard op een layer te plaatsen? Dat een bepaald patroon eigen kan gemaakt worden aan een bepaalde layer.

Groeten,
Bart

12
Autolisp / Oppervlakte met layer
« Gepost op: do 19 11 2015, 16:25:27 »
Hallo iedereen,

Annotation en een field invoegen om oppervlakte van een hatch te weten is een sublieme manier om op een plan oppervlaktes van hatches te plaatsen. Persoonlijk vind ik het wat omslachtig om dit voor alle, soms heel veel, oppervlaktes te doen.

Onderstaande tool had ik gevonden en werkt heel goed. Is wel niet dynamisch, maar daar kan ik mee leven.
Gewoon klik op oppervlakte en inserten. Het kan niet eenvoudiger denk ik.

Naast de oppervlakte had ik echter graag de layernaam vermeld.

Wie kan mij helpen?

Groeten,
Bart
 
Re: Vierkanten meters
« Reactie #3 Gepost op: do 01 06 2006, 10:46:47 »
ReageerCitaat
Zie topic:
http://www.cadsite.be/smf/index.php/topic,1208.0.html

Of de volgende lisp routine:

;Oppervlakte - plaatst tekst met oppervlakte van object
;Geschreven door Olivier Hautekeete
;
------------------
| Hoofdprogramma |
--------------------------------------------------------------
(defun c:Opp ()
(variables1)
(vl-load-com)
(setq oAcad (vlax-get-acad-object)
oDoc (vla-get-activedocument oAcad)
EntNm (vlax-Ename->vla-Object (car (entsel "\nSelekteer een polyline")))
EntAre (vla-get-area EntNm)
opp (strcat "Opp: " (rtos EntAre 2 2) " m2"))
(plaats_text)
(variables2)
)
--------------------------------------------------------------
| Variables1
--------------------------------------------------------------
(defun variables1 ()
(setq osmo (getvar "osmode"))
(setq cmd (getvar "cmdecho"))
(setq fil (getvar "filedia"))
(setq diz (getvar "dimzin"))
(setvar "osmode" 0)
(setvar "cmdecho" 0)
(setvar "filedia" 0)
(setvar "dimzin" 2)
)
--------------------------------------------------------------
| Variables2
--------------------------------------------------------------
(defun variables2 ()
(setvar "osmode" osmo)
(setvar "cmdecho" cmd)
(setvar "filedia" fil)
(setvar "dimzin" diz)
)
--------------------------------------------------------------
(defun plaats_text ()
(setq p (getpoint "\nGeef de plaats aan voor de oppervlakte... "))
(entmake (list '(0 . "TEXT") ;type entiteit
(cons 10 p) ;tekst invoegpunt
'(40 . 0.5) ;teksthoogte                             
(cons 1 opp) ;de tekst zelf
)
)
)
--------------------------------------------------------------
| Lisp-melding
--------------------------------------------------------------
(princ "\nCopyright (C) Hautekeete Olivier - augustus 2005.")(princ)
(princ "\nStart het commando met 'OPP'.")(princ)
--------------------------------------------------------------


Groeten,

Reimer

13
AutoCAD probleem / Hatch tabel
« Gepost op: do 19 11 2015, 15:33:08 »
Kan een hatch uitgevoerd worden in een aangemaakte tabel. Graag had ik een hatch kunnen doen in een cel van een tabel mbt het maken van een legendelijst van gebruikte materialen.



14
AutoCAD probleem / Hatch splitsen
« Gepost op: do 22 10 2015, 08:50:14 »
Hallo,

Ik zoek een manier om een hatch (1 vlak) te splitsen in twee aparte vlakken. Ik heb reeds de hatch getrimd, maar daarmee is het tweede deel weg. Ik wens beide delen van de hatch te behouden.

Is daar een oplossing voor?

Groeten en bv dank,
Bart

15
Autolisp / LIsp Offset
« Gepost op: wo 23 09 2015, 16:20:57 »
Hallo iedereen,

Bij de opmaak van een asbuiltplan van wegeniswerken dienen ik regelmatig (lees heel frequent) bepaalde offsets van lijnen te doen. Met een knop op een toolbar kan dit makkelijker. Wel dien ik een macro met het commando van de lisp te koppelen aan die knop.

Gezien ik geen enkele notie heb van lisp-routines schrijven, wens ik hiervoor een algemene oproep te doen om zo'n lisp te schrijven.

Ik hoop dat hier mij iemand kan bij helpen.

Groeten en bij voorbaat dank.
Bart

Pagina's: [1] 2