@ Επικοινωνία
XData-LData
Το autocad, όπως και κάθε άλλο πρόγραμμα σήμερα, αποτελείται από αντικείμενα. Το καθ' ένα από αυτά έχει τις δικές του ξεχωριστές ιδιότητες (χρώμα, layer κ.λ.π.). Το ωραίο σε αυτή την ιστορία είναι ότι, οι προγραμματιστές του, έδωσαν την δυνατότητα σε κάθε χρήστη, εκτός τις ιδιότητες, να μπορεί να αποθηκεύει διάφορες πληροφορίες σε καθ' ένα από αυτά τα αντικείμενα. Επί παραδείγματι μπορεί κάποιος να θέλει να συνδέσει δύο αντικείμενα μεταξύ τους, ή να θέλει να αποθηκεύσει μερικές τιμές και να τις έχει κάθε φορά που ανοίγει το σχέδιο έτοιμες προς χρήση. Υπάρχει τεράστια ευελιξία για το τι μπορείς να κάνεις με κάθε στοιχείο του autocad. Ακριβώς αυτήν την ευελιξία χρησιμοποιούν όλες οι σοβαρές εφαρμογές που βασίζονται στο autocad, για να προσθέτουν τα δικά τους στοιχεία στο σχέδιο.

Το autocad χρησιμοποιεί δύο ειδών τέτοιες πληροφορίες. Τις ονομάζει XData (Extended Entity Data) και LData (Autolisp Entity Data). Και τα δύο είδη αναπαριστώνται σαν λίστες, όπως και κάθε τι στο autocad, αλλά υπάρχουν σαφείς διαφορές στον τρόπο που χρησιμοποιούνται.

Κατ' αρχήν οι XData έχουν πολλούς περιορισμούς, όσον αφορά τον τύπο των πληροφοριών που μπορούν να κρατήσουν. Μια πληροφορία που θα μπει στα XData, πρέπει το πρώτο της στοιχείο, αυτό που χαρακτηρίζει την πληροφορία, να είναι οπωσδήποτε κάποιος DXF κωδικός (ακέραιος) από αυτούς που καθορίzει το autocad (βλέπε για τους κωδικούς αυτούς στο help του).

Αντίθετα οι LData πληροφορίες μπορούν να κρατήσουν τα πάντα και είναι πολύ πιο εύκολες στον χειρισμό τους από τις XData χρησιμοποιώντας την Visual Lisp (τα LData είναι καταχωρήσεις σε αυτό που το autocad ονομάζει dictionary). Υπάρχει όμως μια σημαντική διαφορά, η οποία είναι και καθοριστική για την χρήση τους. Το autocad δεν επεμβαίνει στις πληροφορίες LData, ακόμη και αν έχουν αναφορά σε κάποιο άλλο αντικείμενο (π.χ. να περιέχουν Handles), ενώ δεν συμβαίνει το ίδιο με τις XData. Σε αυτές, κάθε φορά που θα γίνει μια ενέργεια σε κάποιο αντικείμενο, το autocad τις εξετάζει και αν χρειάζεται, τις αναπροσαρμόζει. Αν είναι ανάγκη δηλαδή να συνδεθούν κάποια αντικείμενα μεταξύ τους, τότε σαφώς πρέπει να χρησιμοποιηθούν πληροφορίες XData.

Ένα παράδειγμα χρήσης των XData από το autocad είναι οι διαστάσεις (dimensions). Πολλές από τις μεταβλητές που καθορίζομε στα dimension styles, μπαίνουν σαν τέτοιες πληροφορίες σε κάθε αντικείμενο dimension, κάτω από την γενική ονομασία (application name) "ACAD". Για να τις δείτε, κωδικοποιημένες βέβαια σε DXF, δεν έχετε παρά να γράψετε (ή copy, paste από εδώ) στην γραμμή εντολής την έκφραση:
(cdadr(assoc -3 (entget (car(entsel)) '("ACAD"))))
και στην προτροπή του autocad "Select object: ", επιλέξετε μια σχεδιασμένη διάσταση.

XData πληροφορίες για κάθε αντικείμενο και σε αναγνώσιμη μορφή, σας δίνουν οι εντολές στο μενού Express (αν έχετε εγκαταστήσει τα Express tools) Attach XData και List Object Data.

Για άμεσο χειρισμό των XData και LData, χρησιμοποιείστε είτε τις ρουτίνες της Visual Lisp, είτε αυτές που δημοσιεύω εδώ στην ανάλογη σελίδα και στα θέματα XData και XRecord.