AutoCAD Visual LISP / AutoLISP :: Zoom Into A Set Of Coordinates Depending On Selection?
Dec 15, 2011
can do a routine that zooms into a coordinate, based on input. So for 1A, it would zoom into the coordinate for 1A.
1A = 1,1
1B = 1,2
1C = 1,3
1D = 1,4
I will try to attempt one shortly and will post it within 1 hour.
View 9 Replies
ADVERTISEMENT
Sep 20, 2012
We have user folders on severall servers, now I want the user menu's to be stored on the network so their home folder depends on what server it's located on. I tried using the vl-file-directory-p command but it doesn't seem to work.
Even worse, as soon as the userfolder is found I want to let the script check for a file called user.cuix in the Acad folder and if it doesn't excists copy it from another location to that folder (if possible).
This is what I got so far:
(setq UserName (getvar "loginname"))
(setq RootZW "\\users\zw\")
(setq RootVL "\\users\vl\")
(setq Company "\\CADConf\ACAD13\")
[Code] ..........
Next to this we have 4 other options as well, but to keep it short I left it at the first 2.
View 2 Replies
View Related
Feb 1, 2012
Is there anyway to use LISP to list the x,y coordinates of a pline?
View 3 Replies
View Related
Dec 7, 2013
I am looking for a method to export all the GPS coordinates which have been assigned to each point along with the properties of that point to an excel csv. In our drawings, there are multiple columns and each column has four points and each point has X,Y,Z coordinates. I want to export all this information to an excel sheet.
View 3 Replies
View Related
Dec 5, 2013
I want to get the minimum and maximum x, y coordinate values of selected lines. In other words, i want to find the top, bottom, left and right edges of a set of lines.
Is it possible to achieve this with a lisp code?
View 9 Replies
View Related
Jan 8, 2014
I have created a circle from 3topo points. Im having difficulty getting accurate elevation (z) of the center of circle (pile representation) via cad polyline listing. im getting same "z" all through out which in fact is not.
View 8 Replies
View Related
Mar 19, 2013
I need to draw a table with point number, easting, northing, elevation for a lot of points and need a lisp to read the xl spreadsheet and draw the table.
View 9 Replies
View Related
Jul 14, 2012
I'm writing function which will facilitate user to offset dimension. After enter command, he select dimension and select point near one of dimension's arrowheads. Then I'm calculating new XLinePoint1 or XLinePoint2 and replacing original.
I have everything done. I thought ... The problem is when user firstly create AlignedDimension and after that he create RotatedDimension by using continous function. After that XLinePoint1 and XLinePoint2 are not parallel to the DimLinePoint (look at image).
How can I get coordinates of points selected in red rectangles?
I know that one is specified as "dimension line defining point" but what about second? How can I get its coordinates? Or maybe there is other way to get this point?
View 6 Replies
View Related
Oct 21, 2013
I recently wrote a lisp routine that was supposed to get the 4 coordinates of a rectangle (LWPolyline). It worked fine in *MY* tests. But when someone else ran it, the routine operated as though the order of the points had been rearranged.
How can I get the points AND the order in which they belong?
Here's a sketch to show you what I mean. As part of my troubleshooting, I had a lisp routine draw a new pline using the points gathered by my first routine. The result of that on the left. On the right is the result of that when someone else runs the two routines.
Here's the code I used to get the points.
(defun getplinepointlist(ename)
(setq ent(entget ename))
(setq ptlist (list))
(while (setq pt(cdr(assoc 10 ent)))
[code].......
View 6 Replies
View Related
Nov 15, 2013
I've created a lisp that draws the boltholes of a pipe flanges, using the correct number of holes, at the correct diameter at the correct bolt-hole diameter and then rotates. Everything works seamlessly, when i do just one flange. But I've discovered that fewuently there will be mulitple times when a user will have to perform the command.
So the idea I had was to do the following:
Select all circles with (setq CirclesFirst (ssget "X" (list (cons 0 "CIRCLE"))))
Go through the code to create the new circles.
Select all circles with (setq Circles (ssget "X" (list (cons 0 "CIRCLE"))))
Remove selection set "CirclesFirst" from "Circles".
But what for some reason (command "_.select" Circles "R" CirclesFirst "") does not work.
View 9 Replies
View Related
Jul 16, 2013
I am having nearly 1000 drawings where I need to change the title block in a new format.
I am stuck up in moving all the entities in cordinates 15,280 (upper point) and 205,55 (lower Point) to 275,294 (upper point and correspoing lower point.
View 7 Replies
View Related
Oct 17, 2011
Is it possible to obtain a list of coordinates for view ports (with dxf codes or otherwise) similar to obtaining a list of (assoc 10) for polylines?
I'm aware I can get the center, width and height from the dxf codes, but what about for clipped view ports with irregular shapes?
View 2 Replies
View Related
Nov 30, 2012
i have found the following lisp in a previous thread: (shows XY coordinates of the selected blocks)
(defun C:MyFunc (/ ss Index Ename Lst)
(while (or (not ss) (= 0 (sslength ss))) (setq ss (ssget '((0 .
"INSERT")))))
(if ss
[Code]....
I want this information to be added to the blocks as hidden attributes so that i can extract them by attout. The work to be done is : attout to excel, autofill an attribute (numbering) then attin.
but my problem is that i cant think of a way to number those blocks IN ORDER (ie top to bottom or left to right) unless by sorting them in excel first by their x or y coordinates
View 9 Replies
View Related
Sep 8, 2011
I have a 2 point LWPOLYLINE that has the following coordinates at its end point when I 'ID' the point.
Command: id
Specify point: end
of X = 709369.3214 Y = 7153039.9690 Z = 269.2143
However if I use..
(vlax-safearray->list (vlax-variant-value (vla-get-coordinates (vlax-ename->vla-object (car (entsel))))))
I get this
(-450567.0 269.288 -450570.0 269.214)
and if I 'dump' the object..
; Coordinates = (-450567.0 269.288 -450570.0 269.214)
; Document (RO) = #<VLA-OBJECT IAcadDocument 09855674>
; Elevation = 7.17399e+006
I don't have a clue where the '-450567.0' is coming from.
I'm in Model Space in 'World' UCS, and I'm confused.. why does the 'ID'd' value not reflect whats going on when I use the vla-get-coordinates approach.
There are many other LWPolylines within the same model that behave normally.
I've attached the drawing (I think!)
View 7 Replies
View Related
Mar 5, 2013
I have few co-ordinates in notepad like mentioned below. How can i create polyline using read-line function in auto lisp.
x y
0.0,0.0
2.0,0.0
2.0,1.0
0.0,1.0
2.0,0.0
4.0,0.0
4.0,1.0
2.0,1.0
View 2 Replies
View Related
Mar 10, 2009
I'm currently working in a drawing that has 148 layout tabs and I frequently work in drawings with more tabs than that. when I switch tabs, I like to see everything in the tab. Is there a lisp that will do a zoom extents in every tab so I don't have to manually do it all the time?
View 9 Replies
View Related
Dec 18, 2012
I just started learning LISP yesterday, as our office needs an autosave LISP. People have requested it and I have to do it...
How I wanted to do it:
The LISP will be loaded on every PC of every person with AutoCAD.
On startup "command_count" will be on 0
When using a command like plinie this happens: (+ 1 command_count)
Commands like zoom, undo etc will be ignored
When command_count reaches 20 it executes the qsave command
If using the qsave command it resets the command_count to 0
Thats my not working LISP atm:
(defun c:losave ()(setq command_count 0)(+ 1 command_count)(if command_count 10 "_qsave"));(if command "_qsave" setq 0);(if command "_zoom" (- 2 command_count));(if command "_undo" (- 2 command_count));(if command "_qsave" (* 0 command_count));(setq command_count (+ 1 command_count))
View 9 Replies
View Related
Mar 28, 2012
I’m trying to create a view port, which covers my entire layout (white/ page area) using the following command
(command “mview” ‘(0 0 0) ‘(297.5 210 0))
However as you will note 0,0,0 is not the very edge corner of my layout (white area) and my white area is smaller then 297.5x 210mm (standard A4 landscape size)
How to obtain the exact measurements and starting coordinates to fully fill my entire layout page (white area)?
View 1 Replies
View Related
Sep 2, 2013
We have several AutoCAD drawings with hundreds of block references inserted with imprecise coordinates. Now we need to dimension all elements and need to correct these positions.
I am searching for a routine to round these positions up or down towards a 5mm precision so I don't have to manually move every single block element.
Is there any way to automate the task or do you know any workaround (like inserting the elements into a drawing with poorer unit precision settings)?
View 3 Replies
View Related
Mar 19, 2012
Would like to be able to select mtext explode it get x y coords of last line of text then turn it back to mtext and then launch mtext at a @0,-0.5 justification TL width 5 and display the ribbon.
All seems to work except the (command ...)
Below is my attempt.
(prompt "Select Note")
(setq ss (ssget))
(command "explode" ss)
(setq ss (ssget "l")) ;get last line of text
(setq ent (entget (ssname ss 0))
ent1 (cdr (assoc 10 ent))) ;get x y coords
(command "undo" "1") ;set exploded mtext back to mtext
(setvar "lastpoint" ent1)
(command "mtext" "@0,-0.4" "j" "TL" "w" "5")
View 2 Replies
View Related
Sep 14, 2013
I found this LISP code that can insert a block at coordinates from an ASCII.
(defun c:universal( / file f a osmode);PointsToBlocks(while (not file)(setq file (getfiled "Input file" "coords" "txt" 4)))(setq f (open file "r")osmode (getvar "OSMODE"))(setvar "OSMODE" 0)(while (setq a (read-line f))(command "._insert" "block1" a 1 1 0))(setvar "OSMODE" osmode)(princ)
What I want to be able to do is insert blocks from an ASCII and also set the x-, y-, and z-scales.
For example, I have these lines in ASCII, the data points refer to X position, Y position, Z position, X scale, Y scale, and Z scale.
30.593589,21.274607,26.235255,0.172826,0.766324,0.066442
30.710182,21.379792,27.054248,0.130816,0.700035,0.043114
View 1 Replies
View Related
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
Jun 20, 2011
I'm trying to define a grid based on polar coordinates.
Can be produced using the following MATLAB
n=1:50000;r=sqrt(n);t=360/((sqrt(5)+1)/2)+1)*pi/180*n;plot(r.*cos(t),r.*sin(t),'o')
I need to insert points based on the polar coordinates defined by the equations. I knew a little bit of LISP 10 Years ago, now it's a total blank. I've been trying to write a script to make this work but after 5 days I'm still without sucess.
View 8 Replies
View Related
Nov 13, 2012
What i would like to do is have autocad do a zoom extents automatically when I open a dwg. Is there a lisp routine that I can run to do this? I use to have something that would do this but I started a new job and cant remember.
View 3 Replies
View Related
Jul 25, 2012
The good news is that, if I were righting a routine that locks up AutoCAD, I'm finished. The bad news is that I'm not.
The code below is the portion of a routine where I have the user select 2 points and then pass those points to the Zoom command and the M2P osnap. The problem is that, when the Mid Between 2 Points osnap tries to use the first point, it returnns an "Invalid point" message, enters a loop and locks ACAD.
(defun C:ZC ()
(setq PointOne (getpoint "First point of M2P "))
(setq PointTwo (getpoint "Second point of M2P "))
[Code].....
View 2 Replies
View Related
Jun 14, 2013
I am looking for an example excel macro to zoom to an object given the obect entities handle.
View 2 Replies
View Related
Mar 6, 2013
I got a new work and get it done in the next 2 days, but first I need to do this... from a text file (or excel file, I got both) I got 3 columns, 1 one for node number, and 2 other for X and Y coordinates for each node.
So from that file I need to insert into autocad the node numbers as text (using the current style and height) at the point specified by the other two columns, that are the X,Y coordinates which will be the insertion point of text..
View 5 Replies
View Related
Oct 12, 2012
I have a drawing with various layouts that when I do a Zoom Extents the drawings is reduced to the size of a point.
I have done all the usual, ie: look for extra entities that are "out in space" so to speak and there are none.
I wonder if I have a block or image which may have an insertion point "out in space" and if this may be the issue.
Is there some way to Select all entities or Blocks (insertion point) that may exist outside a particular area ie: drawing limits.
View 3 Replies
View Related
May 26, 2010
how to make a routine for zoom extents, save all, and close all open drawings in a single routine?
View 3 Replies
View Related
Apr 10, 2012
I'm trying to fix an issue with entlast where if the user hits escape during the process, the wrong entity gets erased, etc. Here's the problem code...
From a function that would have just inserted a dynamic block at 0,0 then modified it - here's where we pick up..
(SETQ ss (SSGET "L"))
(vl-cmdf "_.copybase" (getvar "LASTPOINT") ss "")
(prompt "
Pick insertion point... then rotation angle ")
(vl-cmdf "erase" ss "")
(vl-cmdf "_.pasteblock" PAUSE)
(setvar "polarmode" 1)(setvar "autosnap" 63)(setvar "osmode" osm1)
(vl-cmdf "_.ROTATE" (entlast) "" (cdr (assoc 10 (entget (entlast)))) PAUSE)
(vl-cmdf "_.EXPLODE" (entlast) ""
)
I would like to do..(setq ss (vl-cmdf "_.pasteblock" PAUSE)), but of course, that doesn't work - it returns "T".
My goal is to get rid of the entlast usage from the last two lines - unexpected cancels rotate and explode the wrong entities.
If I try (setq ss (entlast)) or (ssget "L") after the pastblock, I might still get the wrong selection set if the user hits cancel before picking.
View 4 Replies
View Related
Mar 2, 2012
I am trying to select all blocks of a certian name. I am using the following:
(setq ss1bk (ssget "_X" (list (cons 2 blkname))))
My issue is that this will not select any dynamic or attribute blocks that are not at the default insert state.
how to select all of a block by name including reguardless of current state?
View 9 Replies
View Related