Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 06/02/2025 in all areas

  1. Never stop thinking about problems, even when you are doing something outside.... Nice @GLAVCVS!
    3 points
  2. @PGia I went out for my 40-50 km bike ride today and I've been thinking about this for a while. I tried OVERKILL-MR and I admit I wasn't able to figure out the right ranges to remove the excess without causing any damage to the rest of the drawing (perhaps someone can prove otherwise). For this reason, in my opinion, I think you should look for another solution. I assume your ultimate goal is to have a clean drawing on which to create a polygon topology. To do this, use '_mapclean' in C3D, activating the options in 'Cleanup Actions': - Delete duplicates - Erase short objects - Break crossing objects - Dissolve pseudonodes Repeat this 2 or 3 times. I don't think this will solve all the problems. But it will leave the drawing ready for you to try creating a polygon topology. The problematic polylines that remain in the drawing will appear with each attempt to create the topology. It's a laborious but safe process. I imagine you're confused because you suddenly have to do something you haven't done before. But I think you'll have no choice but to waste a little time learning.
    3 points
  3. @GoldSA, Try this code: (prompt "\nTo run a LISP type: COMTXTCSV") (princ) (defun c:COMTXTCSV ( / old_snap ss len i lst file op minPt maxPt ssn lst elast ptlist) (setq old_osnap (getvar 'osmode)) (setvar 'osmode 0) (prompt "\nSelect TEXT or MTEXT:") (setq ss (ssget (list (cons 0 "*TEXT") (cons 8 "?????") (cons 62 1))) len (sslength ss) i 0 lst (list) ) (setq file (getfiled "Choose file save destination" "" "csv" 1) op (open file "w") ) (while (< i len) (vla-GetBoundingBox (vlax-ename->vla-object (ssname ss i)) 'minPt 'maxPt) (setq minPt (vlax-safearray->list minPt) maxPt (vlax-safearray->list maxPt) ssn (ssget "_F" (list minPt maxPt) (list (cons 0 "*TEXT") (cons -4 "<AND") (cons 8 "TEXT") (cons 62 4) (cons -4 "AND>"))) lst (cons (list (cdr (assoc 1 (entget (ssname ss i)))) (cdr (assoc 1 (entget (ssname ssn 0))))) lst) ) (if (= ssn nil) (progn (command-s "_RECTANG" minPt maxPt) (setq elast (entlast) ptlist (mapcar 'cdr (vl-remove-if-not (function (lambda (x) (= (car x) 10))) (entget elast))) ssn (ssget "_CP" ptlist (list (cons 0 "*TEXT") (cons -4 "<AND") (cons 8 "TEXT") (cons 62 4) (cons -4 "AND>"))) lst (cons (list (cdr (assoc 1 (entget (ssname ss i)))) (cdr (assoc 1 (entget (ssname ssn 0))))) lst) ) ) ) (setq i (1+ i)) ) (foreach val lst (write-line (strcat (car val) "," (cadr val)) op) ) (close op) (setvar 'osmode old_osnap) (prompt (strcat "\nThe text values are written in " (vl-filename-base file) ".csv!")) (princ) ) Two things to note: - the firtst one is inside this part of code "(setq ss (ssget (list (cons 0 "*TEXT") (cons 8 "?????") (cons 62 1)))", (cons 8 "?????")", the question marks present the red text values (I can't read the layer name, it is on chineese, but doesn't make a problem for me to performe COMTXTCSV) (picture 1). If the layer name is differnt, you need to put a right name for the layer name inside (cons 8 "?????"), which is the inside "(setq ss (ssget (list (cons 0 "*TEXT") (cons 8 "?????") (cons 62 1)))"". - the second one is inside this part of code "ssn (ssget "_F" (list minPt maxPt) (list (cons 0 "*TEXT") (cons -4 "<AND") (cons 8 "TEXT") (cons 62 4) (cons -4 "AND>")))" and this part of code "ssn (ssget "_CP" ptlist (list (cons 0 "*TEXT") (cons -4 "<AND") (cons 8 "TEXT") (cons 62 4) (cons -4 "AND>")))", if the layer name is different than "TEXT" inside the "(cons 8 "TEXT")", you need to replace into the correct layer name, and for the "TEXT COLOR" inside the "(cons 62 4)", you also need to replace into the correct color index (picture 2). After executing the COMTXTCSV command, I get this (picture 3): Best regards.
    2 points
  4. << MENS SANA IN CORPORE SANO >>
    1 point
  5. What you show in the image is different to what people think you want. Need a sample dwg. The way to go may be look for the red text by layer and then is any other text touching. Join the 2 answers and post to Excel. The to Excel can be done directly. Post sample dwg.
    1 point
  6. 1 point
  7. Do you want to sort the entities by their display order (with the bottommost entity first and the topmost last)? Or do you want to sort them alphabetically by text content?
    1 point
  8. Have you started a new post based on one you already had ? No need for that.
    1 point
  9. In short: You need the point to be transformed to be referenced to an official reference system: UTM WGS84, ETRS89, etc., and you also need to know the geographic zone it's in. Therefore, if your point isn't in an official reference system and you don't have transformation parameters, your first task is to find a way to relate them.
    1 point
  10. Converting a X y to a lat & long is not just use some formula, yes you use a formula but it has all sorts of values in it depending on where you are in the world. As you go around the world you have zones and these are relevant to where you live. There is formulas out there so google, or if you use CIV3D you can adopt a world zone and display Lat & Long's as a point style.
    1 point
×
×
  • Create New...