AutoCAD Visual LISP / AutoLISP :: Selecting Text Strings Of The Same Value

Apr 22, 2013

A code that scans all through the drawing and selects the texts of the same value regardless of the layer, color, style, ...etc..

Just selecting duplicates for highlighting nothing more.

View 9 Replies


ADVERTISEMENT

AutoCAD Visual LISP / AutoLISP :: Convert List With String Or Lists Of Strings To Text

May 22, 2013

Someday the light bulb is going off and I will understand mapcar and lambda. However.....I have a program that reads an excel file sheets. Sometimes the sheet only has 1 column, sometimes 2 or more.

I need to convert the saved values from the sheet to a list with the text spaced evenly. Unfortunately the text lengths vary. I would like a subroutine to pass the list to and return a list of strings with text aligned with padded spaces allowing for the longest text in each column. I am using the new list in a dialog box with fixed_width_font=true (so columns align).

Example 1-

(setq List1 (list "Col1-Line1" "Col1-Line2" "Col1-Line3-longer" "Col1-Line4"))
(AlignText List1)
returns
"Col1-Line1"
"Col1-Line2"
"Col1-Line3-longer"
"Col1-Line4"

so no padding needed

Example 2 -

(setq List2 (list (list "Col1-Line1" "Col1-Line2" "Col1-Line3-longer" "Col1-Line4") (list "Col2-Line1-longer" "Col2-Line2" "Col1-Line3" "Col2-Line4")))
(AlignText List1)
returns
"Col1-Line1        Col2-Line1-longer"
"Col1-Line2        Col2-Line2       "
"Col1-Line3-longer Col2-Line3      "
"Col1-Line4        Col2-Line4      "

 Example 3 -

(setq List3 (list (list "Col1-Line1" "Col1-Line2-longer" "Col1-Line3" "Col1-Line4") (list "Col2-Line1-longer" "Col2-Line2" "Col1-Line3" "Col2-Line4") (list "Col3-Line1-longer" "Col3-Line2" "Col1-Line3" "Col3-Line4")))
returns
"Col1-Line1        Col2-Line1-longer Col3-Line1-longer"
"Col1-Line2-longer Col2-Line2       Col3-Line2       "
"Col1-Line3-longer Col2-Line3      Col1-Line3       "
"Col1-Line4        Col2-Line4      Col3-Line4       "

View 5 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Passing Excel Cell Content (Text Strings)?

Oct 23, 2012

How can I pass the contents of a cell value (text string) to Acad? I want the user to click on a cell, then have lisp use the string as the name of a block to insert.

View 4 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Select Multiple Instances Of Text (dtext) With Different Strings

Apr 23, 2012

I am trying to select multiple instances of text (dtext) with different strings but want to change all of the fomats to the same settngs.  I have searched high and low on the web to no avail.  I am using AutoCAD 2012.

For example:  I want the routine to find all instances of "AA", "AB", "AC", "AD", "BA", "BB", "BC", "BD", etc... all the way up to "ZD".

Next I want all of those text entities to change to the following text formats:

Text Style = STANDARD_96Layer = F-ANNO-CKTText Justification = MIDDLE CENTERText Width = .8

Getting this to work with just finding one string at a time with the ssget function seems simple enough, but it's getting it to work with multiple strings that I can't get past.

View 8 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Associative List With Strings And Spaces

Aug 16, 2013

I'm making a program that reads a property file that follows the format:

"key=value"  for each line on the text file.

One specific line has the key "file" and the value is some file path that includes a space.file=C:/my folder/my file.txt
 
Now I can extract what the key and value is for any given line in the file.However, I want to put all of the data into an Associative List so that I will not need to keep opening the file each time I search for information. I've been using the cons function in order to create a dotted list, which is successful.  However I have an issue when I add this dotted list to the end of my associative list.

Suppose I have a key and a value already stored inside variables.  Below I have two lines of code, first the dotted list portion is printed, and works as expected.  The second line adds that dotted list to the associative list:

(princ "Cons: ")(princ (cons key val)) (princ "") ;Prints (file . C:/my folder/my file.txt)(setq assocList (append assocList (cons key val))) ;Error message here.
 
The error that I receive says "; error: bad list: "C:/my folder/my file.txt"..Here is the change:

(setq assocList (append assocList (list (cons key val))))

 Now, the dotted list is inserted properly and looks like this after printing the whole associative list: ((version . 1.0.1) (file . C:my foldermy file.txt))

View 1 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Return A List Of Strings Of Layout Tabs In Drawing

Mar 6, 2013

(layoutlist) ... returns a list of strings of the layout tabs in the drawing.I've used this ages... Isn't it a core lisp function, or is it coming from express tools or somewhere else?

View 5 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting All On Layer 5

Mar 26, 2013

What a lisp routine would look like for selecting all items on layer 5. 

View 4 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting Multiple Objects

Nov 2, 2011

How to modify this routine so that I can select multiple objects as opposed to one at a time?

(Defun c:cd ()
(setq newdim (entsel "
Select Dimension to clear:"))
(setq newdimvalue " ")
(command "dimedit" "n" newdimvalue newdim "")
(princ)
)

View 9 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting Only Vertical Dimensions

Oct 25, 2012

The title says it all, Im trying to find a way to select just the vertical dimensions. Quick select doesn't work because there's no difference between a vertical and a horizontal dimension, so i was wondering if there was a LISP or something else i could do to accomplish this.

View 5 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Set Cannoscale By Selecting Dims

Feb 9, 2012

I am still green at lisp creation.  I would like to create a lisp to change my cannoscale to match that of an existing dimension in model space.  we use tabs and therefore have many different scales for the vports in our drawings.  i want to be able to type my command, have acad ask for a annotative dimension to match, i click it, then the lisp resets my cannoscale to match.

View 4 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting File Location In Routine

Oct 19, 2011

I wrote this small program to automate plotting a drawing to pdf. Everything work fine except I cannot figure out how to allow it to let me pick where I want the file created and what I want to call it. In this routine, the "" at the 3rd from the end place will just automatically name the file and put it in the parent folder. If I replace the "" with pause, it lets me change the name, but will not let me choose the location.

What I'm looking for is for a dialogue box to pop up (explorer style) that will let me choose a location and name the file. This is what happens if you do it "long hand" inside ACAD, how to do it in the code.

(defun C:clpdf ()
(setvar "cmdecho" 0)
(setvar "osmode" 0)

[Code]....

View 3 Replies View Related

AutoCAD Visual LISP / AutoLISP :: SSGET For Selecting Multiple Objects

Nov 27, 2012

I have this code that I wrote years ago that I want to update to select two types of civil3d objects and show them selected with grips on the screen. This function works fine

(defun CELFEATURE ()
(ssget "_X" '((0 . "AECC_FEATURE_LINE")))
(setq sset (ssget "P"))
(if sset
(progn
(sssetfirst sset sset)
;(command "_.PROPERTIES")
)
)
)
(defun cF () (CELFEATURE))

but if I add the extra object like this which I assume is the wrong syntax i only get the second type of objects. Need correct syntax I should be using for selecting more than one object in an ssget statement.

(defun CELFEATURE ()
(ssget "_X" '((0 . "AECC_FEATURE_LINE","AECC_AUTO_CORRIDOR_FEATURE_LINE")))
(setq sset (ssget "P"))
(if sset
(progn
(sssetfirst sset sset)
;(command "_.PROPERTIES")
)
)
)

(defun cF () (CELFEATURE))

View 2 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting All Dynamic Blocks With A Pick

Jul 30, 2013

I used to have a lisp routine that would allow me to pick one dynamic block and it would select all instances including the blocks that have become anonymous. 

View 5 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting Object And Passing To VLA Offset

Feb 29, 2012

I'm trying to complete the code to select a p-line on layer G-POLY-GSF w/o asking for input. this (setq ent (ssget "X" (list (cons 8 "G-POLY-GSF"))) dosen't seem to work. What I'm I missing here?

(defun cf8 (/ ent dist obj)
(vl-load-com)
(setq ent (car (entsel "
Select line to offset: "))
;(setq ent (ssget "X" (list (cons 8 "G-POLY-GSF")))

[Code]....

View 8 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting Layer By Using Only Portion Of Its Full Name / Label

Jun 12, 2013

Ultimately I want to delete a bunch of Layers by selecting them using a portion of their name. Is there anything in cad that allows you to specifically select layers using only a portion of the layer name?

Based on AutoCAD Layer Standards: Users label layers with a code; for example: A-ANNO-TEXT

A - Stands for the Architectural Category the layer falls into

ANNO - Stands for Annotation

TEXT - Type of Annotation

I want to use the Layer Delete (-LAYDEL) command to delete all layers that begin with A-ANNO. In the Layer Manager (-LAYER) I am able to select specific layers using a " * " placed before and/or after " A-ANNO " to include all layers with that in its name.

When I write a script however (-LAYDEL); cad will ask me for the layer name, but will not allow me to use the *A-ANNO* to include all layers with that name: A-ANNO-TEXT, A-ANNO-GLAZ, A-ANNO-WALL, etc...

Is there anything in cad that allows you to specifically select layers using only a portion of the layer name??? I have to "taylor" drawings that I receive from companies who's layers may vary.

My script is in basic (NON LISP) language:

-LAYDEL
N
A-GENM
N
A-DOOR
N
A-DOOR-FRAM
N
A-DOOR-GLAZ
N
Y

View 9 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Constructing Infinite Lines By Selecting Objects?

Aug 12, 2013

Is there way that by selecting objects (Lines,Pl) it construct infinite lines ?

View 3 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Selecting Multiple Objects To Export Their Coordinates And ID

May 24, 2013

I am just starting learning lisp, And I am looking for a fast way to select multiple objects (usually circle) and export their coordinates and ID into a excel sheet through lisp programming.

As you might see in the attached drawing, the red circles are objects wanted. I have been trying to export their coordinates as well as their IDs in grids, e.g D28, Easting:  Northing:  . I still haven't found a good way to export ID for each circle.

As my code doesn't work, I wonder what's the most effective way to detect errors in lisp

View 5 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Existing Text To Keyboard Entry Text

Jun 21, 2012

I have two attributes "REVN" and "REVD" in a block "ATT" that I would like to change (globally preferably) to the following.

(1) Existing text to keyboard entry text.

(2) Colour from existing to 10

I am a bit lost in the (command "-attdef" .......)

(defun c:atc ()
(setq rev (getstring "Please enter review"))
 (setq dat (getstring "please enter date"))
 (command "-attdef" .."ATT".."REVN"....."c" "10")..)
 (command "-attdef" .."ATT".."REVD"....."c" "10")..)

View 4 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Text Won't Wrap In Text Window?

Oct 8, 2013

When I click on an object to retrieve it's extended data, the data keeps writing to the right, it does not return to the next line, when the text approaches the end of the screen.  Very difficult to analyze information.

View 4 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Text Width Before Text Creation

Mar 2, 2013

I want to know is there any formula/calculation for the width of text object before creation/insertion? At now I used approximated width size via a simple .
 
(Defun GetStrWidth (str H W) (fix (*(* H W) (strlen str))));;usage: (GetStrWidth "This is a Text." 2.5 0.8);;H: TextHeight; W: width factor. 

I know that for the existed text in drawing I can use textbox command, but for the texts that has not been created, what can I do? Is there any formula/calculation depends on font name, text height and width factor?

View 9 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Move All 3.5mm Text To Layer Text 3.5

Sep 12, 2012

We are using autocad 2012.

Is there a way to move all 3.5mm text to layer text3.5 and move all 5mm text to layer text5.

View 9 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Find All Text In Selected Items And Swap Text

Oct 25, 2012

A program that prompts:"select objects:" then I can select some objects like as text, line, circle,... after that program find all texts in selected items and swap text

swap means:   xxx/yyy ===> yyy/xxx ;    "/" is a divisor

swap function for one text is here:

(defun c:swap ( / pos ent el txt)
(vl-load-com)
(if(null #div#)(setq #div# "/"))
(setq #div#
(if(=(setq tmp(getstring(strcat "
Divisor character: <"#div#"> ")))"")
#div# tmp
)

[Code]....

but I want a program to prompt me like this:

(prompt "Select objects:")(terpri)
(setq a (ssget '((0 . "TEXT"))))

and gets divisor char </>:

after that:

(setq n (sslength a))
(repeat n

....

)

repeats n times, n=number of texts in my selection

View 6 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Using TEXT Not MTEXT To Create Multiple Lines Of Text?

Oct 4, 2011

3rd party tool which didn't match our scaling needs the file is a fas so I have tried to reverse engineer the whole function using trial and error. The following code works perfect except we need multiple (x amount) lines of text I have at current the M txt function which mimics and is effective for today however we need all lines to be individual.

I’m playing round with a loop but how to achieve my need..He had a 3rd party tool which didn't match our scaling needs the file is a fas so I have tried to reverse engineer the whole function using trial and error.

The following code works perfect except we need multiple (x amount) lines of text I have at current the M txt function which mimics and is effective for today however we need all lines to be individual.
 
;Starting lisp program...(defun C:REDtext ();Creating Layers (if non existant)...(command "layer" "m" "TEKST-1.5mm" "lt" "continuous" "" "c" "1" "" "");Memorising previous layer...(setq MYOLDLAYER (getvar "clayer"));Setting requierd layer...(COMMAND "LAYER" "SET" "TEKST-1.5mm" "");Setting variable "MYHEIGHT" to "DIMSCALE" x 2...(setq myheight (* 2 (getvar "DIMSCALE" )));Requesting and storing usser defind point...(setq MYPOINT (getpoint "Start punt :")); Requesting and storing user defind text...(setq MYTEXT (getstring T "Nieuw tekst :"));Placing text...(command "text" MYPOINT MYHEIGHT "0" MYTEXT); Restoring previous layer...(setvar "clayer" MYOLDLAYER);Closing lisp program...)

View 1 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Select Multiple Text To Heal Instead Of Single Text?

Aug 1, 2013

this code is used to fix specific font but its problem that it will prompt you to select single text 

i need to make it to select multiple text so it saves me a lot of time, 

;;; Process Individual request
(defun cht_ProcessIndividual ()
(setq sslen (sslength sset))
(while (> sslen 0)
(setq temp (ssname sset (setq sslen (1- sslen))))

[Code]...

View 2 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Changing Text Formatting Style Inside All Text Contents

Aug 4, 2013

I have inside every text,Mtext contents different text style like Arial_1 , Arial_2.

How i can give all the contents inside one style ? the normal procedure i will enter inside text to enter editing mode and changing text format style one by one. I  want it once.

I want to save my routing of entering every text to change its content text style.

(Notice:select all from outside without editing mode will not do the job)

View 2 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Get Z Value From Text

May 10, 2012

I have text objects with the same Z value and I will select as follows:

(setq sstxt (ssget '((0 . "TEXT")(8 . "APS-text"))))

How to store this value in another variable "zvalue" to apply to:

(command "change" "select text objects" "" "_p" "_e" zvalue "") ?

View 9 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Text With Bounding Box

Jan 13, 2012

I use the bounding box (vla-getboundingbox) to assess parameters of blocks.  These blocks have text on some of the faces that extends beyond the simple dimensions of the blocks themselves.  I'm wanting to have bounding box ignore the text and can't sort it out.  I've tried putting the text on a separate layer and turning it off and freezing it.  

 I've considered looking at sub entities and filtering out the text but I don't know if there is a solution here or not.  

View 5 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Text Files From MDB

Aug 29, 2012

I have an mdb database, with one table called MATRIX. That table has seven relevant fields, see attachment. What I want to have is for every language an txt file.

Like for example:

DUT.txt
2BK1;BATTERIJKAST sBk
2RK1;REMKAST sBk

and so on

ENG.txt
2BK1;BATTERY CUBICLE sBk
2RK1;BRAKE CUBICLE sBk

and so on

ITA.txt, the same
DEU.txt, the same
ESP.txt, the same
FRA.txt, the same

View 2 Replies View Related

AutoCAD Visual LISP / AutoLISP :: ID Duplicate Text

Jul 24, 2013

This is a routine that draws a line between duplicate text.

Would it be possible to have the line as bold red p-line so that its easier to identify.

;; This AutoLISP routine examines all the user-selected TEXT and MTEXT items,
;; and draws a line on the current layer between any two that have identical
;; string values.
;; Leading and trailing blanks spaces are ignored.
;; %% modifiers, like %%u, are not ignored.
;; Upper- and lower-case differences are not ignored.

(defun c:fdt () ;;Find Duplicate Text

(prompt "Select text items to examine: ")
(setq ss (ssget '((-4 . "<OR") (0 . "TEXT") (0 . "MTEXT") (-4 . "OR>"))))

(setq n 0)

[Code]....

View 9 Replies View Related

AutoCAD Visual LISP / AutoLISP :: How To Alphabetize Text

Oct 7, 2013

I've looked around several places for a LISP that will alphabetize existing text. I cant seem to find what I need. I am looking for a routine where I can manually select text in a given order to get the outcome of AA,AB,AC,AD, or BA,BB,BC., etc.

I've attached a drawing to better explain what I am looking for. I do not know how to write LISP routines, but I know a little to be able to modify an existing one.

View 4 Replies View Related

AutoCAD Visual LISP / AutoLISP :: Leader With No Text

Nov 27, 2011

I'm trying to create a leader with no attachments. Code below. But I can't seem to shut of the Annotation Dialog.

(setvar "cmddia" 0)

(vl-cmdf ".Qleader"     "S"     "A"     "N"     pt1 pt2   ""  )

Also I am trying to create a leader with text that is aligned and above the leader line.

View 6 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved