Μετάβαση στο περιεχόμενο
Newsletter: Ημερήσια τεχνική ενημέρωση από το Michanikos.gr ×

AutoCad - 08. Vba, Excel. Κώδικες προγραμματάκια, οδηγίες σύνταξης κώδικα


iovo

Recommended Posts

08. Εδώ γράφουμε για ό,τι έχει σχέση με AutoCAD - Vba, EXCEL. Κώδικες προγραμματάκια, οδηγίες σύνταξης κώδικα.

Link to comment
Share on other sites

  • 7 months later...
  • Απαντήσεις 85
  • Created
  • Τελευταία απάντηση

Top Posters In This Topic

Καλημέρα,

 

Υπάρχει εντολή στο Autocad για να εξάγω σε txt ή σε Excel κατά προτίμηση, τις συντεταγμενες αρχής τέλους, μήκος 3d, μήκος xy μιας ομαδας lines?

 

Ευχαριστώ..

Link to comment
Share on other sites

Υπάρχει η εντολή LIST. Επιλεγεις τα αντικείμενα που θέλεις, πληκτρολογείς list στην command line και είσαι έτοιμος για txt. Τωρα για Excel, ... :?:

Link to comment
Share on other sites

αφού κάνεις το LIST κάνεις copy τις συντεταγμένες και paste σε ένα αρχείο excel.

στο excel πάς Δεδομένα-Κείμενο σε στήλες-οριοθετημένο

Εκεί θα πατήσεις το Διάστημα και στο κουτάκι Άλλο βάζεις ένα "="

και είσαι έτοιμος πιστεύω..

 

αυτό είναι για τις συντεταγμένες

Link to comment
Share on other sites

Ευχαριστώ για τις άμεσες απαντήσεις. Δυστυχώς η list όταν επιλέγεις πολλά αντικείμενα δηλ πολλές lines βγάζει για την καθεμια χωριστά σε μορφή:

 

LINE Layer: ""

Space: Model space

Handle = EA10

from point, X=364884.2416 Y=4247510.0741 Z= 165.0693

to point, X=364868.5303 Y=4247527.6218 Z= 165.8661

In Current UCS, Length = 23.5535, Angle in XY Plane = 132

3D Length = 23.5670, Angle from XY Plane = 2

Delta X = -15.7113, Delta Y = 17.5477, Delta Z = 0.7968

 

οποτε δεν βολευει. Εγώ έψαχνα για κάτι της μορφής

line length xa ya za xt yt zt

 

Ελπίζω να μην είναι ευσεβής πόθος..Έστω και ανεξάρτητη addon επιλογη καλοδεχούμενη!

Link to comment
Share on other sites

  • 2 weeks later...

AutoLISP routine PEXPORT

==================

 

 

 

(defun c:pexport ()

(setq sset (ssget '((-4 . "<OR")(0 . "POINT")

(0 . "LWPOLYLINE")(-4 . "OR>"))))

(if sset

(progn

(setq itm 0 num (sslength sset))

(setq fn (getfiled "Point Export File" "" "txt" 1))

(if (/= fn nil)

(progn

(setq fh (open fn "w"))

(while (< itm num)

(setq hnd (ssname sset itm))

(setq ent (entget hnd))

(setq obj (cdr (assoc 0 ent)))

(cond

((= obj "POINT")

(setq pnt (cdr (assoc 10 ent)))

(setq pnt (trans pnt 0 1));;**CAB

(princ (strcat (rtos (car pnt) 2 8-) ","

(rtos (cadr pnt) 2 8-) ","

(rtos (caddr pnt) 2 8-)) fh)

(princ "\n" fh)

)

((= obj "LWPOLYLINE")

(if (= (cdr (assoc 38 ent)) nil)

(setq elv 0.0)

(setq elv (cdr (assoc 38 ent)))

)

(foreach rec ent

(if (= (car rec) 10)

(progn

(setq pnt (cdr rec))

(setq pnt (trans pnt 0 1));;**CAB

(princ (strcat (rtos (car pnt) 2 8-) ","

(rtos (cadr pnt) 2 8-) ","

(rtos elv 2 8-)) fh)

(princ "\n" fh)

)

)

)

)

(t nil)

)

(setq itm (1+ itm))

)

(close fh)

)

)

)

)

(princ)

)

 

(princ "\nPoint Export φορτώθηκε. Για να το τρέξετε δώστε στο Command : PEXPORT")

(princ)

Link to comment
Share on other sites

Ώπα , gnusselt , και εσύ Λισπάς ! Μπράβο !

Εμ τι σουπερ ήρωας είναι?

@ gnusselt: αφού το έκανες το καλό, δώσε μας και δυο οδηγίες για το πως θα την ενσωματώσουμε στο autocad...και θα σου δώσουμε ένα σακούλι super φυστίκια!

Link to comment
Share on other sites

iliekater : Γράφεις τον κώδικα σε ένα απλό αρχείο κειμένου με όνομα pexport.lsp

 

Στη γραμμή εντολών του AutoCAD γράφεις : appload

Στο παράθυρο που εμφανίζεται βρίσκεις το αρχείο pexport.lsp και το φορτώνεις.

 

Command: APPLOAD

PEXPORT.lsp successfully loaded.

Command:

Point Export φορτώθηκε. Για να το τρέξετε δώστε στο Command : PEXPORT

Command: _

Link to comment
Share on other sites

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε προκειμένου να αφήσετε κάποιο σχόλιο

Πρέπει να είστε μέλος για να μπορέσετε να αφήσετε κάποιο σχόλιο

Δημιουργία λογαριασμού

Κάντε μια δωρεάν εγγραφή στην κοινότητά μας. Είναι εύκολο!

Εγγραφή νέου λογαριασμού

Σύνδεση

Εάν έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

×
×
  • Create New...

Σημαντικό

Χρησιμοποιούμε cookies για να βελτιώνουμε το περιεχόμενο του website μας. Μπορείτε να τροποποιήσετε τις ρυθμίσεις των cookie, ή να δώσετε τη συγκατάθεσή σας για την χρήση τους.