ELEV is the current elevation of the point in display format. Inserts a connecting slope (or rise) between two point blocks.Īdjusts elevation points and connecting slopes or rises. Please AutoCAD:Be_bold in adding clarifying comments and improvements atĭefaults are in the GDD-GETVAR function for now. The working version of this software is located at the AutoCAD Wiki. GNU General Public License for more details. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. but WITHOUT ANY WARRANTY without even the implied warranty of This program is distributed in the hope that it will be useful, the Free Software Foundation, either version 3 of the License, or it under the terms of the GNU General Public License as published by This program is free software: you can redistribute it and/or modify the selection down to the beginning of the code. then still holding the key, use the arrow keys to shrink the top of key combination to highlight all the way to the top of the article, In Windows you may want to start below the code and use If you select too much, simply delete any extra from your destination file. Start highlighting OUTSIDE the code boxes and use the mouse or keyboard to Copy this code to a file on your computer. Source code AutoCAD Wiki AutoLISP code header. Media:gdd.mnu or Grading and Drainage Designer menu.Or download a single zip file at the HawsEDC web site. To use GDD, put the code on this page and the following block and menu files in the Support Files Search Path. It works like the AutoCAD Civil 3D Feature Lines tools to allow site grading without a calculator. (angle '(0.0 0.0 0.Grading and Drainage Designer is a 3D site design application that was created by David Wilkins and released as Free Software under the terms of the GPL on April 23, 2008. (vla-insertblock msp (vlax-3d-point ep) nm scl scl scl (if (not (vl-some '(lambda (a) (equal ep (vlax-curve-getclosestpointto a ep) fz)) sx)) (angle '(0.0 0.0 0.0) (vlax-curve-getfirstderiv x (vlax-curve-getstartparam x))) (vla-insertblock msp (vlax-3d-point sp) nm scl scl scl (if (not (vl-some '(lambda (a) (equal sp (vlax-curve-getclosestpointto a sp) fz)) sx)) (setq sp (vlax-curve-getstartpoint x) ep (vlax-curve-getendpoint x) sx (vl-remove x ss)) "LINE,LWPOLYLINE,ARC,ELLIPSE,SPLINE"))))) (mapcar 'set '(nm rot scl fz) (foo:settings)) (if (= 0 (logand 8 (getvar "UNDOCTL"))) (vla-StartUndoMark adoc) (setq activeundo T)) (setq rtn (cons (ssname ss (setq i (1- i))) rtn)) (if (not (wcmatch (strcase msg T) "*break*,*cancel*,*exit*")) (defun c:foo ( / *error* activeundo acadobj adoc ep msp nm rot scl sp ss ss_lst sx) Pretty ugly, but I guess better than nothing:Ġ Additional rotation of block in radiansġe-6 Tolerance to consider an end point touching a curve Sample_to_automate.dwg Edited October 22 by lucky9 Some bends blocks are also attached please have a look. I have tried your code but I am getting a error message "Select Block error: bad argument type: 2D/3D point: nil" I need to work with the block I have in the sample drawing attached herewith. (vl-cmdf "-Insert" blkname pt1 "" "" ang) (foreach x (vl-remove-if 'listp (mapcar 'cadr (ssnamex SS))) (setq blkname (cdr (assoc 2 (entget blk)))) (setq blk (car (entsel "\nSelect Block"))) (defun C:BLKPlace (/ ss blk blkname pt1 pt2 ang) The block 0 degree needs to be like the one in the rectangle. This is just a basic lisp to get you what you need. The rest of the lines were draw by picking the point not touching the white line first. The first point picked when drawing a line is always 10 the other endpoint will be 11.Īttached the red line is drawn from the center point of the white to the end of the blue line. If they are lines they would have to be drawn the same way.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |