FastFiber
Menu

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.

Toon bijdragen Menu

Berichten - alex4444

#1
Autolisp / Re: MLeader insert point
ma 21 10 2013, 16:01:56
Probeer dit.

(defun c:insp ()
(setq co nil)
(foreach n (entget (car (entsel))) (if (= (car n) 10) (setq co (append (list (cdr n)) co))))
(princ (nth 1 co))
(princ)
)

Groeten,
Alex
#2
Autolisp / Re: tablestyle excel
wo 16 10 2013, 12:05:01
Citaat van: roy_043 op wo 16 10 2013, 09:49:02
Helaas ben ik geen gebruiker van Excel. Ik verwacht dat je meer voorbeelden zult vinden in de VB/VBA/VBS hoek dan in de Lisp hoek. Ik zou i.i.g. op zoek gaan naar het Excel object model.
Overigens: Je kunt beter dit gebruiken
(vlax-dump-object object T) ; Door het extra argument worden ook de 'methods' gedumpt.

Bedankt voor de tip
#3
Autolisp / hyperlink naar autocad layout
wo 16 10 2013, 08:16:14
Weet iemand of het mogelijk is om met een hyperlink vanuit excel naar een layout te gaan?
Naar de dwg lukt;
=HYPERLINK("C:\Tekeningen\Alex\13N002_kantoor\1-Voorlopig Ontwerp\cad\0-plot\N200_begane grond.dwg";"drawing1")

Nu nog de layout activeren.

gr,
#4
Citaat van: roy_043 op di 15 10 2013, 16:37:59
Deze setting wordt niet in de dwg opgeslagen. Omdat de OP heeft gemeld dat het probleem tekeninggebonden is, kan dit niet de oplossing zijn. Ik ben overigens nog steeds benieuwd naar een reactie van de OP...

Je hebt helemaal gelijk. Volgende keer beter lezen.
#5
Autolisp / Re: tablestyle excel
wo 16 10 2013, 07:55:07
(vlax-dump-object (vlax-get-property (vlax-variant-value (vlax-get-property (vlax-get-property (vlax-get-property (vlax-get-property *ExcelApp% "activesheet") 'Range "A1:J1") 'listobject) 'tablestyle)) "parent"))

; TableStyles: nil
; Property values:
;   Application (RO) = #<VLA-OBJECT _Application 0000000029463478>
;   Count (RO) = 144
;   Creator (RO) = 1480803660
;   Parent (RO) = #<VLA-OBJECT _Workbook 0000000029627aa8>
;   _Default (RO) = ...Indexed contents not shown...
;   _NewEnum (RO) = #<IUnknown 000000002d9442f0>
T

En dan? Hoe kan ik deze lijstjes zelf toevoegen aan excel?
Dit lukt allemaal ook alleen als ik het geopende excel handmatig een tablestyle toevoeg. Als ik het meteen doe krijg ik vla-object nil.

Het lijkt me dat ik het vla-object moet creeeren.

Alvast bedankt.
#6
Autolisp / Re: lijst van coordinaten maken
di 15 10 2013, 13:49:41
Even een simpele lsp. Maar dit helpt je op weg. Je kan ze verbeteren door while in te bouwen. Kopieer deze code naar je commando regel, zet in een .lsp bestand. Type X.

Om te resetten type xc.

(defun c:x ( / p numb)
(setq numb (length pntl))
(prompt "\nPick point: ")
(setq p (getpoint))
(setq pntl (append (list (list (strcat (rtos numb) " X " (rtos (car p))) (strcat "Y " (rtos (cadr p))))) pntl))
(princ "\n")
(foreach n pntl (princ n) (terpri))
)

(defun c:xc ()
(setq pntl nil)
)


#7
zxet anders
cmd: grips
cmd: 1

cmd: = command in acad
#8
Autolisp / tablestyle excel
di 15 10 2013, 11:16:18
Ik laat acad een projectlijst aanmaken in excel. Nu wil ik een tablestyle toevoegen. Maar dit lijkt me niet te lukken. Ik kom met vl wel tot naam van de tablestyle maar ik kan hem niet zelf toevoegen.

Kan iemand mij helpen.

; OPEN EXCEL
(setq *excelapp% (vlax-get-or-create-object "Excel.Application"))
(vlax-put-property *excelapp% "Visible" :vlax-true)
(if (null (vlax-get-property *excelapp% "ActiveSheet"))
(vlax-invoke-method (vlax-get-property *excelapp% "WorkBooks") "Add")
)

; ALS IK HANDMATIG IN DE GEOPENDE EXCEL ONDER STYLES FORMAT AS TABLE AANKLIK AANZET OP DE CELL a1:j1 WERKT DIT
(vlax-dump-object (vlax-variant-value (vlax-get-property (vlax-get-property (vlax-get-property (vlax-get-property *ExcelApp% "activesheet") 'Range "A1:J1") 'listobject) 'tablestyle)))

; TableStyle: nil
; Property values:
; Application (RO) = #<VLA-OBJECT _Application 00000000295f8708>
; BuiltIn (RO) = -1
; Creator (RO) = 1480803660
; Name (RO) = "TableStyleMedium2"
; NameLocal (RO) = "Table Style Medium 2"
; Parent (RO) = #<VLA-OBJECT TableStyles 00000000296ef538>
; ShowAsAvailablePivotTableStyle = 0
; ShowAsAvailableTableStyle = -1
; TableStyleElements (RO) = #<VLA-OBJECT TableStyleElements 00000000296ef618>
; _Default (RO) = "TableStyleMedium2"
T

Nu wil ik geprogrammeerd de tablestyle als hierboven toevoegen aan een excel document.
Gr,
Alex
#9
AutoCAD probleem / Re: Vierkanten meters
do 07 03 2013, 11:13:04
Citaat van: HofCAD op di 06 06 2006, 19:38:38
Beste CADliefhebbers,

Een geweldige code van Tim Wiley, alleen snap ik niet waarom hij het programma AreaReact
zo gemaakt heeft dat het alleen LWpolylijnen accepteert.
Met bijna hetzelfde gemak, is het programma ook geschikt voor alle objecten met
een oppervlakte(area) zoals o.a. ook gewone polylines en circles.
Dit is leuk omdat het commando PEDIT  bij de optie Fit en Spline van LWpolyline een polyline
maakt.

Ik snap daarom niet goed, waarom hij onderstaande code uit de top van het programma:

(if
      (and
       (setq Sel (entsel "\n Select polyline to get area of: "))
       (setq EntData (entget (car Sel)))
        (= (cdr (assoc 0 EntData)) "LWPOLYLINE")
        (setq PolyObj (vlax-ename->vla-object (car Sel)))
       (setq Sel (nentsel "\n Select text of hold area value: "))
       (setq EntData (entget (car Sel)))


niet  bijv. als volgt heeft geschreven

(if
       (and
       (setq Sel (entsel "\n Select entity to get area of: "))
        (setq PolyObj (vlax-ename->vla-object (car Sel)))
        (vlax-property-available-p PolyObj 'area)
       (setq Sel (nentsel "\n Select text of hold area value: "))
      (setq EntData (entget (car Sel)))


Groetjes HofCAD CSI

PS Ik ben blond. :oops:

Dit werkt erg goed. Werkt fantastisch. Alleen zou ik het prettig vinden als het mogelijk is om niet eerst een tekst te moeten maken. Is het mogelijk deze applicatie zelf de tekst op b.v. middle center, op een eigen layer te zetten.

Met vriendelijke groet,
Alexander
FastFiber