Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 10/12/2021 in all areas

  1. We have been using CIV3D for years and always auto strung the strings, we have around 270 codes in the "Description key sets". Some of these projects have in excess of 10,000 points. You just need a DWT that has the keys set up in it, there are basically 2 a numeric or a Alpha key set with a few that are both TR6 Tree 6m dia. Do you have access to a DWT that is set up ? If not we need to know what your codes look like. Ask who you bought the Civ3d from they should have some. Ok now for the real big news, in CIV3D you can export the Description keys but you can not import, so I wrote one it reads a excel csv with all the details and makes description keys.
    2 points
  2. thank you If you have other questions, you should put your question in the Civil 3D Customization Forum from here https://forums.autodesk.com/t5/civil-3d-customization/bd-p/190
    1 point
  3. try (defun c:testjionRawData (/ % C3D C3DDOC ENAME1 PNTNUMS POINTS RAWDATA) (vl-load-com) (defun getC3D () (vl-load-com) (setq C3D (strcat "HKEY_LOCAL_MACHINE\\" (if vlax-user-product-key (vlax-user-product-key) (vlax-product-key) ) ) C3D (vl-registry-read C3D "Release") C3D (substr C3D 1 (vl-string-search "." C3D (+ (vl-string-search "." C3D) 1) ) ) C3D (vla-getinterfaceobject (vlax-get-acad-object) (strcat "AeccXUiLand.AeccApplication." C3D) ) ) (setq C3Ddoc (vla-get-activedocument C3D)) ) (defun comp (opr1 item1 opr2 item2) (if (equal (item2 a) (item2 b) 0.1) (opr1 (item1 a) (item1 b)) (opr2 (item2 a) (item2 b)) ) ) (getC3D) (setq points (vlax-get C3Ddoc 'points)) (setq eName1 nil) (while (= eName1 nil) (initget 1) (setq eName1 (car (entsel "\nSelect AECC_COGO_POINT rawdescription: "))) (if (= (cdr (assoc 0 (entget eName1))) "AECC_COGO_POINT") (setq rawData (vlax-get (vlax-ename->vla-object eName1) 'rawdescription)) (setq eName1 nil) ) ) (if rawData (progn (setq points (vlax-get C3Ddoc 'points)) (setq pntnums nil) (vlax-for pntobj points (if (= (vlax-get pntobj 'rawdescription) rawData) (setq pntnums (cons (list (vlax-get pntobj 'easting) (vlax-get pntobj 'northing)(vlax-get pntobj 'elevation)) pntnums)) ) ) ;sort list (setq pntnums (mapcar '(lambda (%) (nth % pntnums)) (vl-sort-i pntnums '(lambda (a b) (comp > caDr < car)) ) ) ) ;;; (PRINC xy) (entmake (list '(0 . "POLYLINE") '(100 . "AcDbEntity") '(100 . "AcDb3dPolyline") '(66 . 1) '(62 . 1) '(10 0.0 0.0 0.0) '(70 . 8) '(210 0.0 0.0 1.0) ) ) (foreach pt pntnums (entmake (list '(0 . "VERTEX") '(100 . "AcDbEntity") '(100 . "AcDbVertex") '(100 . "AcDb3dPolylineVertex") (cons 10 pt) '(70 . 32) ) ) ) (entmake (list '(0 . "SEQEND") '(100 . "AcDbEntity") ) ) ) (prompt "\n** Nothing selected ** ")) (princ) )
    1 point
  4. hi try this (defun c:testjionRawData (/ % C3D C3DDOC ENAME1 PNTNUMS POINTS RAWDATA) (vl-load-com) (defun getC3D () (vl-load-com) (setq C3D (strcat "HKEY_LOCAL_MACHINE\\" (if vlax-user-product-key (vlax-user-product-key) (vlax-product-key) ) ) C3D (vl-registry-read C3D "Release") C3D (substr C3D 1 (vl-string-search "." C3D (+ (vl-string-search "." C3D) 1) ) ) C3D (vla-getinterfaceobject (vlax-get-acad-object) (strcat "AeccXUiLand.AeccApplication." C3D) ) ) (setq C3Ddoc (vla-get-activedocument C3D)) ) (defun comp (opr1 item1 opr2 item2) (if (equal (item2 a) (item2 b) 0.1) (opr1 (item1 a) (item1 b)) (opr2 (item2 a) (item2 b)) ) ) (getC3D) (setq points (vlax-get C3Ddoc 'points)) (setq eName1 nil) (while (= eName1 nil) (initget 1) (setq eName1 (car (entsel "\nSelect AECC_COGO_POINT rawdescription: "))) (if (= (cdr (assoc 0 (entget eName1))) "AECC_COGO_POINT") (setq rawData (vlax-get (vlax-ename->vla-object eName1) 'rawdescription)) (setq eName1 nil) ) ) (if rawData (progn (setq points (vlax-get C3Ddoc 'points)) (setq pntnums nil) (vlax-for pntobj points (if (= (vlax-get pntobj 'rawdescription) rawData) (setq pntnums (cons (list (vlax-get pntobj 'easting) (vlax-get pntobj 'northing)) pntnums)) ) ) ;sort list (setq pntnums (mapcar '(lambda (%) (nth % pntnums)) (vl-sort-i pntnums '(lambda (a b) (comp > caDr < car)) ) ) ) ;;; (PRINC xy) (entmake (list '(0 . "POLYLINE") '(100 . "AcDbEntity") '(100 . "AcDb3dPolyline") '(66 . 1) '(62 . 1) '(10 0.0 0.0 0.0) '(70 . 8) '(210 0.0 0.0 1.0) ) ) (foreach pt pntnums (entmake (list '(0 . "VERTEX") '(100 . "AcDbEntity") '(100 . "AcDbVertex") '(100 . "AcDb3dPolylineVertex") (cons 10 pt) '(70 . 32) ) ) ) (entmake (list '(0 . "SEQEND") '(100 . "AcDbEntity") ) ) ) (prompt "\n** Nothing selected ** ")) (princ) )
    1 point
  5. Reasons it's best to have the Survey crew create all the linework in the field: 1. They were actually there! Nothing worse than guessing what was actually out there in the field. We shouldn't have to go out to the sites to figure out what we're drawing. 2. Feature lines from field codes draw curves smoothly, accurately and are able to carry elevations as breaklines. Creating a surface that reflects curbs at an intersection would be impossible without them. Our crew isn't perfect so I'll show them the drawing after reducing it to see if it needs to be modified. They put in the wrong codes requiring them to be modified and re-reduced but the results are what matters. Even if I had to add all the linework coding I'd still do it rather than drawing lines.
    1 point
×
×
  • Create New...