I would like to find a lisp that changes the scale of something that has an annotative scale and deletes all other scales in the object scale list. Often i have many different scales of existing dimensions or objects. i waste a lot of time opening the annotation object scale dialogue box, selecting add, finding my scale and deleting the old scale.
I work in autocad 2010 and I draw in scale 1:1 . What an annotation scale is, moreover I have never used annotative objects in my drawings.
Nonetheless, when I try to plot a drawing, while I am in the model view, I choose the scale in mm/units, I select the plot area and when I press preview or plot, I get the message THE ANNOTATION SCALE IS NOT EQUAL TO THE PLOT SCALE. DO YOU WANT TO CONTINUE?
I press yes, I print it and the outcome is always a bit smaller than it should be.
When i am in the layout mode and I try to plot, I dont get this message. But I dont know how scaling works in this case. For example I want to plot in a A4 paper, scale 1:100. So I type 1000mm/100units, as I did in the model mode, but the result is wrong.
A2008. Is there a setvar, setenv, registry entry etc. that can be used to change the scale of Multileaders with annotative off to have the same effect that DIMSCALE has on Q leaders? I want to have a single scale-independent Multileader style and modify it on the fly along with DIMSCALE and LTSCALE. I'd use Qleader but UCS's do odd things to text position and orientation.
Now, I am only a beginner to writing LISP, but I know that my problem is that it is reading the inch marks after the one in the scale name as a enter, but I don't know how to get around this. Also, I don't know how to get it to skip scales that are still in the drawing.
Any Lisp Routine to scale text objects a certain value and have the program actually scale each text object as you pick them.
The change text height using the Properties function does not work for what I need because the objects I need to scale are Mtext objects with Background Mask, and when you use the Properties function to change their text height it messes up the background mask so that you have to select each text entity and stretch the mask area smaller or larger, but if you use the scale function it scales the background mask as well so the background mask coverage is still the same.
I had been trying to insert a title block (block) in to a drawing as part of changing the title block But in some drawings the block gets scaled off. Is there any system variable or any solution to maintain the drawing without getting scaled while inserting block.
I had used -dwg units and this appears to single drawings only. Any other way to do this to all the files in a folder.
I have a problem that I cannot seem to solve. I have a drawings with a whole bunch of layout tabs that have a few viewports in each tab. One of these viewports on each layout tab is on the layer VIEWPORT. I did this so it would be easy to filter out the other viewports in the drawings. I am using the code below to change all of the viewports with the layer VIEWPORT to the Custom Scale 0.020833. This works for all of the layout tabs except the first tab. It will not for some odd reason work on the fist tab.
I have the below code (from a user here on the forum) which works great for aligning text, mtext and blocks to 2 points. For annotative entities, it respects the rotation angle for mtext and text.
ie I have an mtext object at 1"=20' scale and at 1"=40' scale. I run the command when the current annotative scale is 1"=40'. The object at 40' scale has changed, but the 20' scale is unchanged. This is working as I would like it to.
But for annotative blocks, it gets weirded out. In the above example, the block at 40' will rotate, but so will the attributes at 20' scale. But linework and hatching at 20' scale will be unchanged. it looks really weird. how to get it to play nice with blocks. Ideally, I'd like the block to be at different rotation angles in different annotative scales.
(defun C:R2P (/ ss ang edata); = Rotate objects to align with 2 Points (setq ss (ssget '((0 . "*TEXT,INSERT"))) ang (angle (getpoint " First alignment point: ") (getpoint " Second alignment point: ")) ) (repeat (sslength ss) (setq edata (entget (ssname ss 0))) (entmod (subst (cons 50 ang) (assoc 50 edata) edata)) (ssdel (ssname ss 0) ss) ))
I couldn’t figure out how these three types of scales are correlated with one another. For example, my drawing unit in AutoCAD is meter. And thus if I need to print my drawing with a scale of 1:200 then I set the annotation scale to be 1:2viewport scale to be 1:2plot scale 100:1000
if I need to print my drawing with a scale of 1:20 then I set the annotation scale to be 5:1viewport scale to be 5:1plot scale 100:1000
I couldn’t derive the rule that controls these three types of scales. This is also quite confusing when working with C3D! Sounds not the same logic is applied.
am in the process of setting up a standard file for all designers to use our local office. This file will have most of the styles created for profiles, alignments, surfaces, profile views, etc... as mostly specified by the customer and industry standards.
I am having trouble maintaining the correct annotation scale in the viewport in paperspace and when plotting.
The attached word document has 3 figures. Fig 1 shows the correct viewport scale and correct annotation scale. Fig 2 shows how the annotation scale abruptly changes during the plotting process. This abrupt annotation scale change sometimes happens during the regen process or when I switch from layout to model space and back to layout.The annotation scale goes from 1:1 to 1:40 just as in the viewport. This change in annotation scale is not supposed to happen because I want to preserve a certain plotting height for my text versus a viewport scale by using various annotation scales.
I have researched the procedures for annotation scale and have not found any info related to this "abrupt change in annotation scale".
Curiously , this abrupt change in annotation scale does not happen if the text does not belong to any styles within Civil 3D. Stand alone text stays at the correct annotation scale and is not affected in the same way.
I have a block that i would like to scale based on the plot scale when plotting.
We set up our drawings full size and occasionally we want to plot them at half size. We do this by setting the plot scale to 1:2 (custom) in the plotting dialog. We have a few blocks that we want to print at the same size on paper, essentially become twice as big.
Is there is a way to fix the size or just set a few scale states and have them automatically adjust based on the plot scale (not drawing/annotative scale)?
Where else do they keep this setting? I only have found it in Active Layout in extended dada
(entget (vlax-vla-object->ename(vla-get-activelayout (vla-get-activedocument(vlax-get-acad-object)))) '("*")) The last pice of extended data is: ("PLOTTRANSPARENCY" (1071 . 0)) When i change it to 1 (setq layout(vla-get-activelayout (vla-get-activedocument(vlax-get-acad-object)))) (vla-getXdata layout "PLOTTRANSPARENCY" 'type 'data) (vlax-safearray-fill data '("PLOTTRANSPARENCY" 1)) (vla-setXdata layout type data)
it stays there (extended data), but the setting in Plot dialog box doesn't change!!! And it still prints no transparency.
It takes to save the drawing and reopen it again to see the change.
The command -PLOT does not have this setting as well, so my options back to VBA or Lisp, but HOW?
I am aware of the plot stamp available in the Plot Dialog box, however, we are looking at ways to imbed this info in the dwg. I currently have the WD_TB with an attribute for FULLFILENAME, an attribute for PLOT DATE, and an attribute for PLOT TIME12. So I get the information on the dwg. I would like to be able to run all these attributes as a string. I have tried FULLFILENAME|PLOT DATE|PLOT TIME12 with spaces, commas, ( ), " ", etc. and I do not know the proper syntax to get this to work. I have also tried (getenv "FULLFILENAME") or the getvar, in the title descriptions box.
Is it possible to open a dwg, change something and then plot a layout with visual lisp. This is my start. Opening is working, but plotting not. I have to switch between drawings before the function is going on. Sometimes it's plotting an empty sheet and otherwise an error: ERROR: Automation Error. Description was not provided.